summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_1.s108
-rw-r--r--asm/battle_2.s16487
-rw-r--r--asm/battle_4.s31160
-rw-r--r--asm/battle_5.s40
-rw-r--r--asm/battle_7.s298
-rw-r--r--asm/battle_9.s2847
-rw-r--r--asm/battle_anim.s4205
-rw-r--r--asm/battle_anim_80A9C70.s20
-rwxr-xr-xasm/battle_anim_80D51AC.s92
-rw-r--r--asm/battle_anim_80FE840.s2250
-rwxr-xr-xasm/battle_anim_815A0D4.s540
-rw-r--r--asm/battle_anim_8170478.s204
-rw-r--r--asm/battle_anim_sound_tasks.s92
-rw-r--r--asm/battle_controller_linkopponent.s144
-rw-r--r--asm/battle_controller_linkpartner.s118
-rw-r--r--asm/battle_controller_opponent.s182
-rw-r--r--asm/battle_controller_player.s396
-rw-r--r--asm/battle_controller_player_partner.s160
-rw-r--r--asm/battle_controller_recorded_opponent.s146
-rw-r--r--asm/battle_controller_recorded_player.s148
-rw-r--r--asm/battle_controller_safari.s80
-rw-r--r--asm/battle_controller_wally.s122
-rwxr-xr-xasm/battle_frontier_1.s254
-rwxr-xr-xasm/battle_frontier_2.s58
-rwxr-xr-xasm/battle_interface.s5734
-rw-r--r--asm/battle_link_817C95C.s24
-rw-r--r--asm/battle_message.s3089
-rw-r--r--asm/battle_setup.s96
-rwxr-xr-xasm/battle_tower.s54
-rw-r--r--asm/battle_transition.s16
-rw-r--r--asm/berry_blender.s66
-rw-r--r--asm/bike.s4
-rw-r--r--asm/braille_puzzles.s627
-rw-r--r--asm/cable_club.s66
-rw-r--r--asm/clear_save_data_screen.s399
-rw-r--r--asm/clock.s6
-rw-r--r--asm/coins.s16
-rw-r--r--asm/contest.s514
-rw-r--r--asm/contest_ai.s304
-rw-r--r--asm/contest_effect.s150
-rw-r--r--asm/contest_link_80F57C4.s120
-rw-r--r--asm/contest_link_80FC4F4.s60
-rwxr-xr-xasm/contest_link_81D9DE4.s12
-rw-r--r--asm/contest_painting.s8
-rw-r--r--asm/credits.s6
-rw-r--r--asm/crt0.s2
-rw-r--r--asm/decoration.s7167
-rw-r--r--asm/decoration_inventory.s459
-rw-r--r--asm/dewford_trend.s2
-rw-r--r--asm/diploma.s387
-rw-r--r--asm/easy_chat.s12
-rw-r--r--asm/evolution_scene.s244
-rw-r--r--asm/field_control_avatar.s100
-rw-r--r--asm/field_door.s44
-rw-r--r--asm/field_effect.s54
-rw-r--r--asm/field_effect_helpers.s62
-rw-r--r--asm/field_ground_effect.s24
-rw-r--r--asm/field_message_box.s24
-rw-r--r--asm/field_player_avatar.s12
-rw-r--r--asm/field_poison.s4
-rw-r--r--asm/field_screen.s40
-rw-r--r--asm/field_tasks.s40
-rw-r--r--asm/fldeff_80F9BCC.s38
-rwxr-xr-xasm/fldeff_cut.s14
-rw-r--r--asm/fldeff_emotion.s328
-rwxr-xr-xasm/fldeff_groundshake.s4
-rw-r--r--asm/fldeff_strength.s4
-rw-r--r--asm/fldeff_sweetscent.s2
-rw-r--r--asm/fldeff_teleport.s2
-rwxr-xr-xasm/international_string_util.s127
-rw-r--r--asm/intro.s22
-rw-r--r--asm/item.s12
-rwxr-xr-xasm/item_menu.s4
-rw-r--r--asm/item_use.s6
-rw-r--r--asm/librfu.s2267
-rw-r--r--asm/librfu_intr.s696
-rw-r--r--asm/link.s400
-rw-r--r--asm/macros/event.s4
-rw-r--r--asm/mail.s1035
-rw-r--r--asm/main_menu.s14
-rw-r--r--asm/map_obj_8097404.s10
-rw-r--r--asm/map_obj_lock.s16
-rw-r--r--asm/mauville_old_man.s10
-rwxr-xr-xasm/menu.s4
-rw-r--r--asm/menu_helpers.s2
-rw-r--r--asm/metatile_behavior.s2610
-rw-r--r--asm/money.s311
-rw-r--r--asm/mystery_event_menu.s8
-rw-r--r--asm/mystery_event_script.s8
-rw-r--r--asm/naming_screen.s6
-rwxr-xr-xasm/party_menu.s38
-rw-r--r--asm/player_pc.s2
-rwxr-xr-xasm/pokeball.s42
-rw-r--r--asm/pokeblock_feed.s6
-rw-r--r--asm/pokedex.s6
-rw-r--r--asm/pokemon_2.s356
-rwxr-xr-xasm/pokemon_icon.s16
-rw-r--r--asm/pokemon_item_effect.s4
-rwxr-xr-xasm/pokemon_storage_system.s108
-rwxr-xr-xasm/pokemon_summary_screen.s7832
-rwxr-xr-xasm/pokenav.s16
-rw-r--r--asm/porthole.s282
-rwxr-xr-xasm/rayquaza_scene.s21
-rw-r--r--asm/record_mixing.s34
-rw-r--r--asm/recorded_battle.s44
-rw-r--r--asm/region_map.s2
-rw-r--r--asm/reset_rtc_screen.s4
-rw-r--r--asm/reshow_battle_screen.s1040
-rw-r--r--asm/roamer.s502
-rw-r--r--asm/rom3.s3775
-rw-r--r--asm/rom4.s128
-rw-r--r--asm/rom6.s138
-rw-r--r--asm/rom_80A5C6C.s268
-rw-r--r--asm/save.s164
-rw-r--r--asm/save_failed_screen.s707
-rwxr-xr-xasm/save_location.s205
-rw-r--r--asm/scrcmd.s5744
-rw-r--r--asm/script_menu.s38
-rwxr-xr-xasm/script_movement.s12
-rw-r--r--asm/script_pokemon_util_80F87D8.s50
-rw-r--r--asm/secret_base.s24
-rw-r--r--asm/shop.s10
-rw-r--r--asm/slot_machine.s6
-rw-r--r--asm/starter_choose.s8
-rw-r--r--asm/tileset.s1793
-rw-r--r--asm/title_screen.s18
-rw-r--r--asm/trade.s94
-rw-r--r--asm/trader.s10
-rw-r--r--asm/trainer_card.s20
-rwxr-xr-xasm/trainer_rematch.s2
-rw-r--r--asm/trainer_see.s334
-rw-r--r--asm/truck_scene.s589
-rw-r--r--asm/tv.s16938
-rwxr-xr-xasm/unk_text_util_2.s583
-rw-r--r--asm/unknown_task.s16
-rwxr-xr-xasm/walda_phrase.s543
-rw-r--r--asm/wild_encounter.s12
137 files changed, 5742 insertions, 125005 deletions
diff --git a/asm/battle_1.s b/asm/battle_1.s
index d1a4e6ea0..9a981e222 100644
--- a/asm/battle_1.s
+++ b/asm/battle_1.s
@@ -1358,8 +1358,8 @@ _080356AA:
.pool
thumb_func_end trs_config
- thumb_func_start c2_berry_program_update_menu
-c2_berry_program_update_menu: @ 80356D0
+ thumb_func_start sub_80356D0
+sub_80356D0: @ 80356D0
push {lr}
movs r0, 0x2
bl DisableInterrupts
@@ -1381,10 +1381,10 @@ c2_berry_program_update_menu: @ 80356D0
pop {r0}
bx r0
.pool
- thumb_func_end c2_berry_program_update_menu
+ thumb_func_end sub_80356D0
- thumb_func_start sub_803570C
-sub_803570C: @ 803570C
+ thumb_func_start ApplyPlayerChosenFrameToBattleMenu
+ApplyPlayerChosenFrameToBattleMenu: @ 803570C
push {lr}
movs r0, 0x2
movs r1, 0x12
@@ -1422,10 +1422,10 @@ _0803575A:
pop {r0}
bx r0
.pool
- thumb_func_end sub_803570C
+ thumb_func_end ApplyPlayerChosenFrameToBattleMenu
- thumb_func_start load_battle_oval_graphics
-load_battle_oval_graphics: @ 8035770
+ thumb_func_start DrawMainBattleBackground
+DrawMainBattleBackground: @ 8035770
push {r4,r5,lr}
ldr r0, =gBattleTypeFlags
ldr r1, [r0]
@@ -1547,8 +1547,8 @@ _080358E0:
.4byte _08035A40
.4byte _08035A70
_08035904:
- ldr r4, =gUnknown_0831ABA8
- ldr r5, =gUnknown_02022FF0
+ ldr r4, =gBattleTerrainTable
+ ldr r5, =gBattleTerrain
ldrb r1, [r5]
lsls r0, r1, 2
adds r0, r1
@@ -1665,10 +1665,10 @@ _08035A8A:
pop {r0}
bx r0
.pool
- thumb_func_end load_battle_oval_graphics
+ thumb_func_end DrawMainBattleBackground
- thumb_func_start sub_8035AA4
-sub_8035AA4: @ 8035AA4
+ thumb_func_start LoadBattleTextboxAndBackground
+LoadBattleTextboxAndBackground: @ 8035AA4
push {lr}
ldr r0, =gUnknown_08C00000
movs r1, 0xC0
@@ -1685,12 +1685,12 @@ sub_8035AA4: @ 8035AA4
movs r1, 0
movs r2, 0x40
bl LoadCompressedPalette
- bl sub_803570C
- bl load_battle_oval_graphics
+ bl ApplyPlayerChosenFrameToBattleMenu
+ bl DrawMainBattleBackground
pop {r0}
bx r0
.pool
- thumb_func_end sub_8035AA4
+ thumb_func_end LoadBattleTextboxAndBackground
thumb_func_start sub_8035AE4
sub_8035AE4: @ 8035AE4
@@ -1888,7 +1888,7 @@ sub_8035C4C: @ 8035C4C
bne _08035C68
ldr r0, =gText_Draw
movs r1, 0x15
- bl battle_show_message_maybe
+ bl sub_814F9EC
b _08035D68
.pool
_08035C68:
@@ -1964,10 +1964,10 @@ _08035CE2:
_08035CFC:
ldr r0, =gText_Win
movs r1, 0x17
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gText_Loss
movs r1, 0x16
- bl battle_show_message_maybe
+ bl sub_814F9EC
b _08035D68
.pool
_08035D20:
@@ -1985,19 +1985,19 @@ _08035D20:
_08035D36:
ldr r0, =gText_Win
movs r1, 0x16
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gText_Loss
movs r1, 0x17
- bl battle_show_message_maybe
+ bl sub_814F9EC
b _08035D68
.pool
_08035D58:
ldr r0, =gText_Win
movs r1, 0x17
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gText_Loss
movs r1, 0x16
- bl battle_show_message_maybe
+ bl sub_814F9EC
_08035D68:
pop {r0}
bx r0
@@ -2068,14 +2068,14 @@ _08035DDC:
_08035DE6:
adds r0, r1, 0
movs r1, 0x11
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldrb r1, [r4, 0x18]
movs r0, 0x4
b _08035E14
_08035DF4:
adds r0, r1, 0
movs r1, 0x12
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldrb r1, [r4, 0x18]
movs r0, 0x4
str r0, [sp]
@@ -2085,7 +2085,7 @@ _08035DF4:
_08035E08:
adds r0, r1, 0
movs r1, 0x13
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldrb r1, [r4, 0x18]
movs r0, 0x8
_08035E14:
@@ -2099,7 +2099,7 @@ _08035E1A:
_08035E22:
adds r0, r1, 0
movs r1, 0x14
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldrb r1, [r4, 0x18]
movs r0, 0x8
str r0, [sp]
@@ -2139,14 +2139,14 @@ _08035E66:
adds r1, r0, r4
adds r0, r1, 0
movs r1, 0xF
- bl battle_show_message_maybe
+ bl sub_814F9EC
lsls r0, r6, 3
subs r0, r6
lsls r0, 2
adds r1, r0, r4
adds r0, r1, 0
movs r1, 0x10
- bl battle_show_message_maybe
+ bl sub_814F9EC
movs r4, 0x7
str r4, [sp]
adds r0, r7, 0
@@ -2236,7 +2236,7 @@ _08035F64:
ldrsh r0, [r5, r1]
cmp r0, 0
beq _08035FCC
- ldr r4, =gUnknown_02022E18
+ ldr r4, =gBattle_BG1_X
ldrh r0, [r5, 0xA]
bl Sin2
lsls r0, 16
@@ -2251,7 +2251,7 @@ _08035F7E:
adds r0, r2, 0
subs r0, r1
strh r0, [r4]
- ldr r4, =gUnknown_02022E1C
+ ldr r4, =gBattle_BG2_X
ldrh r0, [r5, 0xC]
bl Sin2
lsls r0, 16
@@ -2266,16 +2266,16 @@ _08035F9C:
adds r0, r3, 0
subs r0, r1
strh r0, [r4]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldr r2, =0x0000ffdc
adds r1, r2, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
b _08036038
.pool
_08035FCC:
- ldr r4, =gUnknown_02022E18
+ ldr r4, =gBattle_BG1_X
ldrh r0, [r5, 0xA]
bl Sin2
lsls r0, 16
@@ -2290,7 +2290,7 @@ _08035FDE:
adds r0, r3, 0
subs r0, r1
strh r0, [r4]
- ldr r4, =gUnknown_02022E1A
+ ldr r4, =gBattle_BG1_Y
ldrh r0, [r5, 0xA]
bl Cos2
lsls r0, 16
@@ -2302,7 +2302,7 @@ _08035FFC:
asrs r0, 5
subs r0, 0xA4
strh r0, [r4]
- ldr r4, =gUnknown_02022E1C
+ ldr r4, =gBattle_BG2_X
ldrh r0, [r5, 0xC]
bl Sin2
lsls r0, 16
@@ -2317,7 +2317,7 @@ _08036014:
adds r0, r2, 0
subs r0, r1
strh r0, [r4]
- ldr r4, =gUnknown_02022E1E
+ ldr r4, =gBattle_BG2_Y
ldrh r0, [r5, 0xC]
bl Cos2
lsls r0, 16
@@ -2457,8 +2457,8 @@ _08036138:
.pool
thumb_func_end task00_0800F6FC
- thumb_func_start sub_8036154
-sub_8036154: @ 8036154
+ thumb_func_start LoadBattleEntryBackground
+LoadBattleEntryBackground: @ 8036154
push {r4,r5,lr}
ldr r0, =gBattleTypeFlags
ldr r1, [r0]
@@ -2504,11 +2504,11 @@ sub_8036154: @ 8036154
movs r0, 0x4A
movs r1, 0x36
bl SetGpuReg
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldr r2, =0x0000ff5c
adds r1, r2, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
ldr r0, =gUnknown_0831AA00
bl LoadCompressedObjectPicUsingHeap
@@ -2632,8 +2632,8 @@ _08036350:
lsls r0, 24
cmp r0, 0
bne _0803639C
- ldr r4, =gUnknown_0831ABA8
- ldr r5, =gUnknown_02022FF0
+ ldr r4, =gBattleTerrainTable
+ ldr r5, =gBattleTerrain
ldrb r1, [r5]
lsls r0, r1, 2
adds r0, r1
@@ -2668,10 +2668,10 @@ _080363AC:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8036154
+ thumb_func_end LoadBattleEntryBackground
- thumb_func_start sub_80363C4
-sub_80363C4: @ 80363C4
+ thumb_func_start LoadChosenBattleElement
+LoadChosenBattleElement: @ 80363C4
push {r4,lr}
lsls r0, 24
lsrs r0, 24
@@ -2778,8 +2778,8 @@ _080364A8:
.4byte _08036510
.4byte _08036518
_080364CC:
- ldr r2, =gUnknown_0831ABA8
- ldr r0, =gUnknown_02022FF0
+ ldr r2, =gBattleTerrainTable
+ ldr r0, =gBattleTerrain
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -2888,8 +2888,8 @@ _080365B4:
.4byte _0803661C
.4byte _08036624
_080365D8:
- ldr r2, =gUnknown_0831ABA8
- ldr r0, =gUnknown_02022FF0
+ ldr r2, =gBattleTerrainTable
+ ldr r0, =gBattleTerrain
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -3003,8 +3003,8 @@ _080366C8:
.4byte _08036738
.4byte _08036740
_080366EC:
- ldr r2, =gUnknown_0831ABA8
- ldr r0, =gUnknown_02022FF0
+ ldr r2, =gBattleTerrainTable
+ ldr r0, =gBattleTerrain
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -3051,7 +3051,7 @@ _08036742:
b _08036758
.pool
_08036750:
- bl sub_803570C
+ bl ApplyPlayerChosenFrameToBattleMenu
b _08036758
_08036756:
movs r4, 0x1
@@ -3060,6 +3060,6 @@ _08036758:
pop {r4}
pop {r1}
bx r1
- thumb_func_end sub_80363C4
+ thumb_func_end LoadChosenBattleElement
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_2.s b/asm/battle_2.s
deleted file mode 100644
index fb0073566..000000000
--- a/asm/battle_2.s
+++ /dev/null
@@ -1,16487 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
- thumb_func_start sub_8036760
-sub_8036760: @ 8036760
- push {lr}
- bl MoveSaveBlocks_ResetHeap
- bl sub_8056F28
- bl dp11_init
- bl init_uns_table_pokemon_copy
- bl sub_8185F84
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080367CC
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- beq _08036798
- bl InitBattle
- b _080367BA
- .pool
-_08036798:
- movs r0, 0x80
- lsls r0, 15
- ands r1, r0
- cmp r1, 0
- bne _080367B4
- bl battle_wireless_setup_if_required_maybe
- ldr r0, =sub_8037ADC
- bl SetMainCallback2
- b _080367BA
- .pool
-_080367B4:
- ldr r0, =intro_end
- bl SetMainCallback2
-_080367BA:
- ldr r1, =gBattleCommunication
- movs r0, 0
- strb r0, [r1]
- b _080367D0
- .pool
-_080367CC:
- bl InitBattle
-_080367D0:
- pop {r0}
- bx r0
- thumb_func_end sub_8036760
-
- thumb_func_start InitBattle
-InitBattle: @ 80367D4
- push {r4,r5,lr}
- sub sp, 0x4
- movs r0, 0
- bl SetHBlankCallback
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0
- str r0, [sp]
- movs r1, 0xC0
- lsls r1, 19
- ldr r2, =0x05006000
- mov r0, sp
- bl CpuSet
- movs r0, 0x4C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x40
- movs r1, 0xF0
- bl SetGpuReg
- ldr r1, =0x00005051
- movs r0, 0x44
- bl SetGpuReg
- movs r0, 0x48
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x4A
- movs r1, 0
- bl SetGpuReg
- ldr r0, =gUnknown_02022E24
- movs r2, 0xF0
- strh r2, [r0]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _08036870
- ldr r0, =gPartnerTrainerId
- ldrh r1, [r0]
- ldr r0, =0x00000c03
- cmp r1, r0
- beq _08036870
- ldr r1, =gUnknown_02022E26
- movs r0, 0x9F
- strh r0, [r1]
- ldr r0, =gUnknown_02022E28
- strh r2, [r0]
- ldr r1, =gUnknown_02022E2A
- movs r0, 0x20
- strh r0, [r1]
- b _080368BE
- .pool
-_08036870:
- ldr r0, =gUnknown_02022E26
- ldr r2, =0x00005051
- adds r1, r2, 0
- strh r1, [r0]
- bl dp12_8087EA4
- ldr r0, =gUnknown_02038C28
- movs r3, 0xF0
- movs r5, 0xF0
- lsls r5, 3
- adds r2, r0, r5
- movs r1, 0x4F
-_08036888:
- strh r3, [r0]
- strh r3, [r2]
- adds r2, 0x2
- adds r0, 0x2
- subs r1, 0x1
- cmp r1, 0
- bge _08036888
- movs r1, 0x50
- ldr r4, =gUnknown_0831AC70
- ldr r0, =gUnknown_02038C28
- ldr r3, =0x0000ff10
- movs r5, 0x82
- lsls r5, 4
- adds r2, r0, r5
- adds r0, 0xA0
-_080368A6:
- strh r3, [r0]
- strh r3, [r2]
- adds r2, 0x2
- adds r0, 0x2
- adds r1, 0x1
- cmp r1, 0x9F
- ble _080368A6
- ldr r0, [r4]
- ldr r1, [r4, 0x4]
- ldr r2, [r4, 0x8]
- bl sub_80BA038
-_080368BE:
- bl ResetPaletteFade
- ldr r0, =gUnknown_02022E14
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E16
- strh r1, [r0]
- ldr r0, =gUnknown_02022E18
- strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
- strh r1, [r0]
- ldr r0, =gUnknown_02022E1C
- strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
- strh r1, [r0]
- ldr r0, =gUnknown_02022E20
- strh r1, [r0]
- ldr r0, =gUnknown_02022E22
- strh r1, [r0]
- bl sub_80B0BD0
- ldr r2, =gUnknown_02022FF0
- strb r0, [r2]
- ldr r4, =gBattleTypeFlags
- ldr r0, [r4]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- beq _080368FE
- movs r0, 0x8
- strb r0, [r2]
-_080368FE:
- bl c2_berry_program_update_menu
- bl sub_8035AA4
- bl ResetSpriteData
- bl ResetTasks
- bl sub_8036154
- bl FreeAllSpritePalettes
- ldr r1, =gReservedSpritePaletteCount
- movs r0, 0x4
- strb r0, [r1]
- ldr r0, =vblank_cb_08078BB4
- bl SetVBlankCallback
- bl sub_803269C
- ldr r2, [r4]
- movs r1, 0xA0
- lsls r1, 1
- adds r0, r2, 0
- ands r0, r1
- cmp r0, r1
- beq _0803693E
- ldr r1, =0x00400040
- adds r0, r2, 0
- ands r0, r1
- cmp r0, r1
- bne _08036994
-_0803693E:
- ldr r0, =sub_8037458
- bl SetMainCallback2
- b _080369AE
- .pool
-_08036994:
- movs r0, 0x40
- ands r2, r0
- cmp r2, 0
- beq _080369A8
- ldr r0, =sub_8037DF4
- bl SetMainCallback2
- b _080369AE
- .pool
-_080369A8:
- ldr r0, =sub_8036FAC
- bl SetMainCallback2
-_080369AE:
- ldr r5, =gBattleTypeFlags
- ldr r0, [r5]
- ldr r1, =0x01000002
- ands r0, r1
- cmp r0, 0
- bne _080369E8
- ldr r4, =gEnemyParty
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- adds r0, r4, 0
- movs r2, 0x1
- bl CreateNPCTrainerParty
- ldr r0, [r5]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _080369E4
- movs r1, 0x96
- lsls r1, 1
- adds r0, r4, r1
- ldr r1, =gTrainerBattleOpponent_B
- ldrh r1, [r1]
- movs r2, 0
- bl CreateNPCTrainerParty
-_080369E4:
- bl SetWildMonHeldItem
-_080369E8:
- ldr r1, =gMain
- ldr r2, =0x00000439
- adds r1, r2
- ldrb r0, [r1]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1]
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- ldr r5, =0x00000ca9
- adds r1, r5
- ldrb r2, [r1]
- movs r0, 0x9
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldr r4, =gPlayerParty
- movs r0, 0xFA
- lsls r0, 1
- adds r5, r4, r0
-_08036A10:
- adds r0, r4, 0
- movs r1, 0x3
- bl AdjustFriendship
- adds r4, 0x64
- cmp r4, r5
- ble _08036A10
- movs r1, 0
- ldr r0, =gBattleCommunication
- strb r1, [r0]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end InitBattle
-
- thumb_func_start sub_8036A5C
-sub_8036A5C: @ 8036A5C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r6, 0
- mov r9, r6
- movs r0, 0xCE
- lsls r0, 1
- mov r10, r0
- mov r8, r6
-_08036A72:
- movs r0, 0x64
- mov r4, r9
- muls r4, r0
- ldr r0, =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- lsls r0, 16
- lsrs r7, r0, 16
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
- adds r1, r0, 0
- cmp r5, 0
- beq _08036AEE
- cmp r5, r10
- beq _08036ABA
- cmp r7, 0
- beq _08036ABA
- cmp r1, 0
- bne _08036ABA
- movs r0, 0x1
- mov r2, r8
- lsls r0, r2
- orrs r6, r0
- lsls r0, r6, 16
- lsrs r6, r0, 16
-_08036ABA:
- cmp r5, 0
- beq _08036AEE
- cmp r7, 0
- beq _08036AD6
- cmp r5, r10
- beq _08036ACA
- cmp r1, 0
- beq _08036AD6
-_08036ACA:
- movs r0, 0x2
- mov r1, r8
- lsls r0, r1
- orrs r6, r0
- lsls r0, r6, 16
- lsrs r6, r0, 16
-_08036AD6:
- cmp r5, 0
- beq _08036AEE
- cmp r5, r10
- beq _08036AEE
- cmp r7, 0
- bne _08036AEE
- movs r0, 0x3
- mov r2, r8
- lsls r0, r2
- orrs r6, r0
- lsls r0, r6, 16
- lsrs r6, r0, 16
-_08036AEE:
- movs r0, 0x2
- add r8, r0
- movs r1, 0x1
- add r9, r1
- mov r2, r9
- cmp r2, 0x5
- ble _08036A72
- ldr r4, =gBattleStruct
- ldr r0, [r4]
- movs r1, 0xC1
- lsls r1, 1
- adds r0, r1
- strb r6, [r0]
- ldr r0, [r4]
- ldr r5, =0x00000183
- adds r0, r5
- lsrs r1, r6, 8
- strb r1, [r0]
- ldr r0, =0x000008d2
- bl FlagGet
- ldr r1, [r4]
- adds r1, r5
- lsls r0, 7
- ldrb r2, [r1]
- orrs r0, r2
- strb r0, [r1]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8036A5C
-
- thumb_func_start sub_8036B44
-sub_8036B44: @ 8036B44
- push {r4-r7,lr}
- ldr r0, =gBattleStruct
- ldr r5, [r0]
- movs r0, 0xC2
- lsls r0, 1
- adds r4, r5, r0
- bl IsEnigmaBerryValid
- cmp r0, 0x1
- bne _08036BC0
- movs r2, 0
- ldr r7, =gSaveBlock1Ptr
- movs r1, 0xC6
- lsls r1, 1
- adds r5, r1
- adds r6, r7, 0
- ldr r3, =0x000031f8
-_08036B66:
- adds r0, r4, r2
- ldr r1, [r6]
- adds r1, r3
- adds r1, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x5
- ble _08036B66
- adds r1, r4, r2
- movs r0, 0xFF
- strb r0, [r1]
- movs r2, 0
- adds r3, r5, 0
- ldr r6, =gSaveBlock1Ptr
- ldr r5, =0x00003214
-_08036B86:
- adds r0, r3, r2
- ldr r1, [r6]
- adds r1, r5
- adds r1, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x11
- ble _08036B86
- ldr r0, [r7]
- ldr r1, =0x00003226
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r4, 0x7]
- ldr r0, [r7]
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- b _08036C00
- .pool
-_08036BC0:
- movs r0, 0xAF
- bl ItemIdToBerryType
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryInfo
- adds r3, r0, 0
- movs r2, 0
- movs r0, 0xC6
- lsls r0, 1
- adds r5, r0
-_08036BD8:
- adds r0, r4, r2
- adds r1, r3, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x5
- ble _08036BD8
- adds r1, r4, r2
- movs r0, 0xFF
- strb r0, [r1]
- adds r0, r5, 0
- movs r2, 0
- adds r1, r0, 0
- adds r1, 0x11
-_08036BF4:
- strb r2, [r1]
- subs r1, 0x1
- cmp r1, r0
- bge _08036BF4
- movs r0, 0
- strb r0, [r4, 0x7]
-_08036C00:
- strb r0, [r4, 0x1A]
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8036B44
-
- thumb_func_start berry_801017C
-berry_801017C: @ 8036C08
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08036C20
- b _08036D4C
-_08036C20:
- bl IsEnigmaBerryValid
- cmp r0, 0x1
- bne _08036CDC
- movs r5, 0
- ldr r3, =gEnigmaBerries
- ldr r0, =gSaveBlock1Ptr
- mov r8, r0
- adds r6, r3, 0
- mov r4, r8
- ldr r2, =0x000031f8
- adds r7, r3, 0
- adds r7, 0x38
-_08036C3A:
- adds r1, r5, r6
- ldr r0, [r4]
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r5, r7
- ldr r0, [r4]
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- adds r5, 0x1
- cmp r5, 0x5
- ble _08036C3A
- adds r1, r5, r3
- movs r0, 0xFF
- strb r0, [r1]
- adds r0, r3, 0
- adds r0, 0x38
- adds r0, r5, r0
- movs r1, 0x1
- negs r1, r1
- strb r1, [r0]
- movs r5, 0
- adds r7, r3, 0
- adds r7, 0x8
- ldr r4, =gSaveBlock1Ptr
- ldr r2, =0x00003214
- adds r6, r3, 0
- adds r6, 0x40
-_08036C78:
- adds r1, r5, r7
- ldr r0, [r4]
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r5, r6
- ldr r0, [r4]
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- adds r5, 0x1
- cmp r5, 0x11
- ble _08036C78
- mov r1, r8
- ldr r0, [r1]
- ldr r2, =0x00003226
- adds r0, r2
- ldrb r1, [r0]
- strb r1, [r3, 0x7]
- ldrb r0, [r0]
- adds r1, r3, 0
- adds r1, 0x3F
- strb r0, [r1]
- mov r4, r8
- ldr r0, [r4]
- ldr r1, =0x00003227
- adds r0, r1
- ldrb r1, [r0]
- strb r1, [r3, 0x1A]
- ldrb r1, [r0]
- adds r0, r3, 0
- adds r0, 0x52
- strb r1, [r0]
- b _08036EA0
- .pool
-_08036CDC:
- movs r0, 0xAF
- bl ItemIdToBerryType
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryInfo
- adds r6, r0, 0
- movs r5, 0
- ldr r4, =gEnigmaBerries
- adds r7, r4, 0
- adds r7, 0x38
- adds r3, r4, 0
-_08036CF6:
- adds r1, r5, r4
- adds r2, r6, r5
- ldrb r0, [r2]
- strb r0, [r1]
- adds r1, r5, r7
- ldrb r0, [r2]
- strb r0, [r1]
- adds r5, 0x1
- cmp r5, 0x5
- ble _08036CF6
- adds r1, r5, r3
- movs r0, 0xFF
- strb r0, [r1]
- adds r0, r3, 0
- adds r0, 0x38
- adds r0, r5, r0
- movs r1, 0x1
- negs r1, r1
- strb r1, [r0]
- movs r5, 0
- adds r4, r3, 0
- adds r4, 0x8
- movs r1, 0
- adds r2, r3, 0
- adds r2, 0x40
-_08036D28:
- adds r0, r5, r4
- strb r1, [r0]
- adds r0, r5, r2
- strb r1, [r0]
- adds r5, 0x1
- cmp r5, 0x11
- ble _08036D28
- movs r1, 0
- strb r1, [r3, 0x7]
- adds r0, r3, 0
- adds r0, 0x3F
- strb r1, [r0]
- strb r1, [r3, 0x1A]
- adds r0, 0x13
- strb r1, [r0]
- b _08036EA0
- .pool
-_08036D4C:
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08036DF0
- movs r0, 0x80
- lsls r0, 1
- ands r1, r0
- movs r2, 0x4
- mov r8, r2
- cmp r1, 0
- beq _08036D66
- movs r4, 0x2
- mov r8, r4
-_08036D66:
- movs r5, 0
- cmp r5, r8
- blt _08036D6E
- b _08036EA0
-_08036D6E:
- ldr r0, =gLinkPlayers
- mov r12, r0
- ldr r3, =gEnigmaBerries
- adds r6, r3, 0
- movs r1, 0x8
- adds r1, r6
- mov r9, r1
-_08036D7C:
- lsls r1, r5, 8
- ldr r0, =gUnknown_020223C8
- adds r7, r1, r0
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- add r0, r12
- ldrb r3, [r0, 0x18]
- movs r4, 0
- adds r5, 0x1
- mov r10, r5
- lsls r1, r3, 3
- subs r0, r1, r3
- adds r5, r1, 0
- lsls r0, 2
- adds r1, r0, r6
-_08036D9C:
- adds r0, r7, r4
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, 0x1
- adds r4, 0x1
- cmp r4, 0x5
- ble _08036D9C
- subs r0, r5, r3
- lsls r0, 2
- adds r1, r4, r0
- adds r1, r6
- movs r2, 0xFF
- strb r2, [r1]
- movs r4, 0
- mov r2, r9
- adds r1, r0, r2
- adds r2, r7, 0
- adds r2, 0x8
-_08036DC0:
- adds r0, r2, r4
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, 0x1
- adds r4, 0x1
- cmp r4, 0x11
- ble _08036DC0
- subs r0, r5, r3
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r7, 0x7]
- strb r1, [r0, 0x7]
- ldrb r1, [r7, 0x1A]
- strb r1, [r0, 0x1A]
- mov r5, r10
- cmp r5, r8
- blt _08036D7C
- b _08036EA0
- .pool
-_08036DF0:
- movs r5, 0
- ldr r4, =gEnigmaBerries
- mov r9, r4
-_08036DF6:
- lsls r0, r5, 8
- ldr r1, =gUnknown_020223C8
- adds r7, r0, r1
- movs r4, 0
- adds r2, r5, 0x1
- mov r10, r2
- lsls r0, r5, 3
- mov r8, r0
- adds r1, r5, 0x2
- mov r12, r1
- subs r1, r0, r5
- mov r2, r12
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- mov r2, r9
- adds r3, r0, r2
- lsls r1, 2
- adds r2, r1, r2
-_08036E1C:
- adds r0, r7, r4
- ldrb r1, [r0]
- strb r1, [r2]
- ldrb r0, [r0]
- strb r0, [r3]
- adds r3, 0x1
- adds r2, 0x1
- adds r4, 0x1
- cmp r4, 0x5
- ble _08036E1C
- mov r0, r8
- subs r3, r0, r5
- lsls r3, 2
- adds r1, r4, r3
- add r1, r9
- ldrb r0, [r1]
- movs r2, 0xFF
- orrs r0, r2
- strb r0, [r1]
- mov r0, r12
- lsls r2, r0, 3
- subs r2, r0
- lsls r2, 2
- adds r1, r4, r2
- add r1, r9
- ldrb r0, [r1]
- movs r4, 0xFF
- orrs r0, r4
- strb r0, [r1]
- movs r4, 0
- ldr r0, =gEnigmaBerries
- adds r0, 0x8
- adds r2, r0
- adds r3, r0
- adds r6, r7, 0
- adds r6, 0x8
-_08036E64:
- adds r0, r6, r4
- ldrb r1, [r0]
- strb r1, [r3]
- ldrb r0, [r0]
- strb r0, [r2]
- adds r2, 0x1
- adds r3, 0x1
- adds r4, 0x1
- cmp r4, 0x11
- ble _08036E64
- mov r0, r8
- subs r2, r0, r5
- lsls r2, 2
- add r2, r9
- ldrb r0, [r7, 0x7]
- strb r0, [r2, 0x7]
- mov r1, r12
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r9
- ldrb r1, [r7, 0x7]
- strb r1, [r0, 0x7]
- ldrb r1, [r7, 0x1A]
- strb r1, [r2, 0x1A]
- ldrb r1, [r7, 0x1A]
- strb r1, [r0, 0x1A]
- mov r5, r10
- cmp r5, 0x1
- ble _08036DF6
-_08036EA0:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end berry_801017C
-
- thumb_func_start sub_8036EB8
-sub_8036EB8: @ 8036EB8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- movs r6, 0
- ldr r0, =gUnknown_020223C4
- ldrh r2, [r0]
- movs r1, 0x80
- lsls r1, 1
- mov r12, r0
- cmp r2, r1
- bne _08036EFC
- cmp r3, 0
- bne _08036EEC
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0xC
- b _08036EF2
- .pool
-_08036EEC:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0x8
-_08036EF2:
- orrs r1, r2
- str r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_08036EFC:
- cmp r6, 0
- bne _08036FA0
- movs r2, 0
- cmp r2, r4
- bge _08036F20
- ldr r1, =gUnknown_020223C4
- mov r8, r1
- movs r5, 0x80
- lsls r5, 1
-_08036F0E:
- adds r1, r5
- adds r2, 0x1
- cmp r2, r4
- bge _08036F20
- mov r7, r8
- ldrh r0, [r7]
- ldrh r7, [r1]
- cmp r0, r7
- beq _08036F0E
-_08036F20:
- cmp r2, r4
- bne _08036F48
- cmp r3, 0
- bne _08036F38
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0xC
- b _08036F3E
- .pool
-_08036F38:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0x8
-_08036F3E:
- orrs r1, r2
- str r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_08036F48:
- cmp r6, 0
- bne _08036FA0
- movs r2, 0
- ldr r5, =gBattleTypeFlags
- cmp r2, r4
- bge _08036F8A
- mov r0, r12
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 2
- cmp r1, r0
- beq _08036F82
-_08036F60:
- lsls r0, r2, 8
- add r0, r12
- ldrh r0, [r0]
- movs r1, 0xC0
- lsls r1, 2
- cmp r0, r1
- bls _08036F72
- cmp r2, r3
- bne _08036F8A
-_08036F72:
- adds r2, 0x1
- cmp r2, r4
- bge _08036F8A
- lsls r0, r2, 8
- add r0, r12
- ldrh r0, [r0]
- cmp r0, r1
- bne _08036F60
-_08036F82:
- cmp r2, r3
- beq _08036F60
- cmp r2, r3
- bge _08036F60
-_08036F8A:
- cmp r2, r4
- bne _08036F98
- ldr r0, [r5]
- movs r1, 0xC
- b _08036F9C
- .pool
-_08036F98:
- ldr r0, [r5]
- movs r1, 0x8
-_08036F9C:
- orrs r0, r1
- str r0, [r5]
-_08036FA0:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8036EB8
-
- thumb_func_start sub_8036FAC
-sub_8036FAC: @ 8036FAC
- push {r4-r6,lr}
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gBattleScripting
- adds r0, 0x25
- strb r6, [r0]
- movs r0, 0x1
- adds r5, r6, 0
- eors r5, r0
- ldr r0, =gBattleCommunication
- ldrb r0, [r0]
- cmp r0, 0x12
- bls _08036FD8
- b _0803744C
-_08036FD8:
- lsls r0, 2
- ldr r1, =_08036FF0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08036FF0:
- .4byte _0803703C
- .4byte _08037080
- .4byte _08037144
- .4byte _080371D8
- .4byte _08037200
- .4byte _0803742C
- .4byte _08037438
- .4byte _08037230
- .4byte _08037258
- .4byte _0803742C
- .4byte _08037438
- .4byte _08037288
- .4byte _080372B0
- .4byte _0803742C
- .4byte _08037438
- .4byte _08037318
- .4byte _08037378
- .4byte _080373A0
- .4byte _080373E0
-_0803703C:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _08037068
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- bl sub_805EF14
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1]
-_08037068:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _08037072
- b _0803744C
-_08037072:
- bl sub_800E0E8
- b _0803744C
- .pool
-_08037080:
- ldr r2, =gBattleTypeFlags
- ldr r1, [r2]
- movs r6, 0x2
- adds r0, r1, 0
- ands r0, r6
- cmp r0, 0
- beq _08037124
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- bne _08037098
- b _0803744C
-_08037098:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _080370EE
- ldr r4, =gBattleStruct
- ldr r0, [r4]
- movs r5, 0xC0
- lsls r5, 1
- adds r0, r5
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldr r2, =0x00000181
- adds r1, r0, r2
- movs r0, 0x3
- strb r0, [r1]
- bl sub_8036A5C
- bl sub_8036B44
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- cmp r1, r0
- bne _080370D8
- ldr r0, =gLinkPlayers
- movs r1, 0
- strh r1, [r0, 0x18]
- movs r1, 0x1
- strh r1, [r0, 0x34]
-_080370D8:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- adds r1, r5
- movs r2, 0x20
- bl link_0800A448
- ldr r0, =gBattleCommunication
- strb r6, [r0]
-_080370EE:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _080370F8
- b _0803744C
-_080370F8:
- movs r0, 0
- movs r1, 0
- bl sub_800DFB4
- b _0803744C
- .pool
-_08037124:
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- bne _08037134
- movs r0, 0x4
- orrs r1, r0
- str r1, [r2]
-_08037134:
- ldr r1, =gBattleCommunication
- movs r0, 0xF
- strb r0, [r1]
- bl berry_801017C
- b _0803744C
- .pool
-_08037144:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _08037152
- b _0803744C
-_08037152:
- bl sub_800A5B4
- movs r0, 0x2
- adds r1, r6, 0
- bl sub_8036EB8
- bl berry_801017C
- ldr r0, =task00_0800F6FC
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r2, r1
- movs r1, 0
- movs r0, 0x87
- lsls r0, 1
- strh r0, [r2, 0xA]
- movs r0, 0x5A
- strh r0, [r2, 0xC]
- strh r1, [r2, 0x12]
- ldr r0, =gBattleStruct
- ldr r3, [r0]
- movs r4, 0xC1
- lsls r4, 1
- adds r0, r3, r4
- ldrb r1, [r0]
- adds r4, 0x1
- adds r0, r3, r4
- ldrb r0, [r0]
- lsls r0, 8
- orrs r1, r0
- strh r1, [r2, 0xE]
- ldr r1, =gUnknown_020223C4
- lsls r4, r5, 8
- adds r1, 0x2
- adds r4, r1
- ldrh r0, [r4]
- strh r0, [r2, 0x10]
- lsls r0, r6, 8
- adds r0, r1
- ldrh r0, [r0]
- bl sub_8185F90
- ldrh r0, [r4]
- bl sub_8185F90
- bl sub_8068AA4
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_080371D8:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _080371E4
- b _0803744C
-_080371E4:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty
- movs r2, 0xC8
- bl link_0800A448
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_08037200:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _0803720E
- b _0803744C
-_0803720E:
- bl sub_800A5B4
- ldr r0, =gEnemyParty
- lsls r1, r5, 8
- ldr r2, =gUnknown_020223C4
- adds r1, r2
- movs r2, 0xC8
- bl memcpy
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_08037230:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _0803723C
- b _0803744C
-_0803723C:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty + 200
- movs r2, 0xC8
- bl link_0800A448
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_08037258:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _08037266
- b _0803744C
-_08037266:
- bl sub_800A5B4
- ldr r0, =gEnemyParty + 200
- lsls r1, r5, 8
- ldr r2, =gUnknown_020223C4
- adds r1, r2
- movs r2, 0xC8
- bl memcpy
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_08037288:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _08037294
- b _0803744C
-_08037294:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty + 400
- movs r2, 0xC8
- bl link_0800A448
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_080372B0:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _080372BE
- b _0803744C
-_080372BE:
- bl sub_800A5B4
- ldr r4, =gEnemyParty + 400
- lsls r1, r5, 8
- ldr r0, =gUnknown_020223C4
- adds r1, r0
- adds r0, r4, 0
- movs r2, 0xC8
- bl memcpy
- ldr r1, =0xfffffe70
- adds r0, r4, r1
- bl shedinja_something
- ldr r2, =0xfffffed4
- adds r0, r4, r2
- bl shedinja_something
- adds r0, r4, 0
- subs r0, 0xC8
- bl shedinja_something
- adds r0, r4, 0
- subs r0, 0x64
- bl shedinja_something
- adds r0, r4, 0
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0x64
- bl shedinja_something
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_08037318:
- bl sub_8032768
- bl sub_8184E58
- ldr r2, =gBattleCommunication
- movs r0, 0
- strb r0, [r2, 0x1]
- strb r0, [r2, 0x2]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08037372
- movs r3, 0
- ldr r1, =gLinkPlayers
- ldrb r0, [r1]
- adds r5, r2, 0
- cmp r0, 0x3
- bne _08037356
- movs r4, 0xFF
- adds r2, r1, 0
-_08037344:
- adds r2, 0x1C
- adds r3, 0x1
- cmp r3, 0x1
- bgt _08037356
- ldrh r1, [r2]
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0x3
- beq _08037344
-_08037356:
- cmp r3, 0x2
- bne _0803736C
- movs r0, 0x10
- strb r0, [r5]
- b _0803744C
- .pool
-_0803736C:
- movs r0, 0x12
- strb r0, [r5]
- b _0803744C
-_08037372:
- movs r0, 0x12
- strb r0, [r2]
- b _0803744C
-_08037378:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _0803744C
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_0203BD2C
- movs r2, 0x4
- bl link_0800A448
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_080373A0:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- bne _0803744C
- bl sub_800A5B4
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x4
- ands r0, r1
- cmp r0, 0
- bne _080373CA
- ldr r0, =gUnknown_0203BD2C
- lsls r1, r5, 8
- ldr r2, =gUnknown_020223C4
- adds r1, r2
- movs r2, 0x4
- bl memcpy
-_080373CA:
- ldr r1, =gBattleCommunication
- b _08037446
- .pool
-_080373E0:
- ldr r0, =gUnknown_02024333
- adds r1, r0, 0x1
- bl battle_load_something
- lsls r0, 24
- cmp r0, 0
- beq _0803744C
- ldr r2, =gUnknown_03005D00
- ldr r1, =gMain
- ldr r0, [r1]
- str r0, [r2]
- ldr r0, =sub_8039EF0
- str r0, [r1]
- ldr r0, =sub_8038420
- bl SetMainCallback2
- ldr r2, =gBattleTypeFlags
- ldr r1, [r2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0803744C
- movs r0, 0x20
- orrs r1, r0
- str r1, [r2]
- b _0803744C
- .pool
-_0803742C:
- ldr r0, =gBattleCommunication
- ldrb r1, [r0]
- adds r1, 0x1
- strb r1, [r0]
- movs r1, 0x1
- strb r1, [r0, 0x1]
-_08037438:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1, 0x1]
- subs r0, 0x1
- strb r0, [r1, 0x1]
- lsls r0, 24
- cmp r0, 0
- bne _0803744C
-_08037446:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0803744C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8036FAC
-
- thumb_func_start sub_8037458
-sub_8037458: @ 8037458
- push {r4-r7,lr}
- sub sp, 0x4
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gBattleScripting
- adds r0, 0x25
- strb r6, [r0]
- movs r0, 0x1
- adds r7, r6, 0
- eors r7, r0
- ldr r0, =gBattleCommunication
- ldrb r0, [r0]
- cmp r0, 0x10
- bls _08037486
- b _080379D6
-_08037486:
- lsls r0, 2
- ldr r1, =_0803749C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0803749C:
- .4byte _080374E0
- .4byte _08037518
- .4byte _0803761C
- .4byte _08037670
- .4byte _08037694
- .4byte _08037710
- .4byte _08037734
- .4byte _080377B0
- .4byte _080377CC
- .4byte _080377FC
- .4byte _08037818
- .4byte _08037848
- .4byte _08037864
- .4byte _08037908
- .4byte _0803793A
- .4byte _0803795C
- .4byte _080379A0
-_080374E0:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0803750C
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- bl sub_805EF14
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1]
-_0803750C:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- beq _08037518
- bl sub_800E0E8
-_08037518:
- ldr r2, =gBattleTypeFlags
- ldr r1, [r2]
- movs r3, 0x2
- adds r0, r1, 0
- ands r0, r3
- cmp r0, 0
- beq _080375FC
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- bne _08037530
- b _080379D6
-_08037530:
- ldr r6, =gLinkPlayers
- movs r0, 0
- strh r0, [r6, 0x18]
- strh r3, [r6, 0x34]
- adds r1, r6, 0
- adds r1, 0x50
- movs r0, 0x1
- strh r0, [r1]
- adds r1, 0x1C
- movs r0, 0x3
- strh r0, [r1]
- adds r0, r6, 0
- adds r0, 0x40
- ldr r4, =gTrainerBattleOpponent_A
- ldrh r1, [r4]
- bl GetFrontierTrainerName
- adds r0, r6, 0
- adds r0, 0x5C
- ldr r5, =gTrainerBattleOpponent_B
- ldrh r1, [r5]
- bl GetFrontierTrainerName
- ldrh r1, [r4]
- mov r0, sp
- bl sub_8165B88
- mov r0, sp
- ldrb r0, [r0]
- adds r1, r6, 0
- adds r1, 0x52
- strh r0, [r1]
- ldrh r1, [r5]
- mov r0, sp
- bl sub_8165B88
- mov r0, sp
- ldrb r1, [r0]
- adds r0, r6, 0
- adds r0, 0x6E
- strh r1, [r0]
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _080375C4
- ldr r4, =gBattleStruct
- ldr r0, [r4]
- movs r5, 0xC0
- lsls r5, 1
- adds r0, r5
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldr r2, =0x00000181
- adds r1, r0, r2
- movs r0, 0x3
- strb r0, [r1]
- bl sub_8036A5C
- bl sub_8036B44
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- adds r1, r5
- movs r2, 0x20
- bl link_0800A448
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1]
-_080375C4:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _080375CE
- b _080379D6
-_080375CE:
- movs r0, 0
- movs r1, 0
- bl sub_800DFB4
- b _080379D6
- .pool
-_080375FC:
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- bne _0803760C
- movs r0, 0x4
- orrs r1, r0
- str r1, [r2]
-_0803760C:
- ldr r1, =gBattleCommunication
- movs r0, 0xD
- strb r0, [r1]
- bl berry_801017C
- b _080379D6
- .pool
-_0803761C:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _0803762A
- b _080379D6
-_0803762A:
- bl sub_800A5B4
- movs r0, 0x2
- adds r1, r6, 0
- bl sub_8036EB8
- bl berry_801017C
- ldr r0, =task00_0800F6FC
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0
- movs r0, 0x87
- lsls r0, 1
- strh r0, [r1, 0xA]
- movs r0, 0x5A
- strh r0, [r1, 0xC]
- strh r2, [r1, 0x12]
- adds r0, 0xEB
- strh r0, [r1, 0xE]
- strh r0, [r1, 0x10]
- b _08037986
- .pool
-_08037670:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _0803767C
- b _080379D6
-_0803767C:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty
-_08037686:
- movs r2, 0xC8
- bl link_0800A448
- b _08037986
- .pool
-_08037694:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _080376A2
- b _080379D6
-_080376A2:
- bl sub_800A5B4
- ldr r0, =gLinkPlayers
- lsls r1, r6, 3
- subs r1, r6
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x18]
- cmp r0, 0
- beq _080376E8
- ldr r4, =gPlayerParty
- lsls r1, r7, 8
- ldr r5, =gUnknown_020223C4
- adds r1, r5
- adds r0, r4, 0
- movs r2, 0xC8
- bl memcpy
- movs r0, 0x96
- lsls r0, 1
- adds r4, r0
- lsls r1, r6, 8
- adds r1, r5
- adds r0, r4, 0
- movs r2, 0xC8
- bl memcpy
- b _08037986
- .pool
-_080376E8:
- ldr r4, =gPlayerParty
- lsls r1, r6, 8
- ldr r5, =gUnknown_020223C4
- adds r1, r5
- adds r0, r4, 0
- movs r2, 0xC8
- bl memcpy
- movs r1, 0x96
- lsls r1, 1
- adds r4, r1
- lsls r1, r7, 8
- adds r1, r5
- adds r0, r4, 0
- movs r2, 0xC8
- b _08037982
- .pool
-_08037710:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _0803771C
- b _080379D6
-_0803771C:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty + 200
- movs r2, 0x64
- bl link_0800A448
- b _08037986
- .pool
-_08037734:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _08037742
- b _080379D6
-_08037742:
- bl sub_800A5B4
- ldr r0, =gLinkPlayers
- lsls r1, r6, 3
- subs r1, r6
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x18]
- cmp r0, 0
- beq _08037788
- ldr r4, =gPlayerParty + 200
- lsls r1, r7, 8
- ldr r5, =gUnknown_020223C4
- adds r1, r5
- adds r0, r4, 0
- movs r2, 0x64
- bl memcpy
- movs r2, 0x96
- lsls r2, 1
- adds r4, r2
- lsls r1, r6, 8
- adds r1, r5
- adds r0, r4, 0
- movs r2, 0x64
- bl memcpy
- b _08037986
- .pool
-_08037788:
- ldr r4, =gPlayerParty + 200
- lsls r1, r6, 8
- ldr r5, =gUnknown_020223C4
- adds r1, r5
- adds r0, r4, 0
- movs r2, 0x64
- bl memcpy
- movs r0, 0x96
- lsls r0, 1
- adds r4, r0
- lsls r1, r7, 8
- adds r1, r5
- adds r0, r4, 0
- movs r2, 0x64
- b _08037982
- .pool
-_080377B0:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _080377BC
- b _080379D6
-_080377BC:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gEnemyParty
- b _08037686
- .pool
-_080377CC:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _080377DA
- b _080379D6
-_080377DA:
- bl sub_800A5B4
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _080377EA
- b _08037986
-_080377EA:
- ldr r0, =gEnemyParty
- ldr r1, =gUnknown_020223C4
- movs r2, 0xC8
- b _08037982
- .pool
-_080377FC:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _08037808
- b _080379D6
-_08037808:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gEnemyParty + 200
- b _08037686
- .pool
-_08037818:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _08037826
- b _080379D6
-_08037826:
- bl sub_800A5B4
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _08037836
- b _08037986
-_08037836:
- ldr r0, =gEnemyParty + 200
- ldr r1, =gUnknown_020223C4
- movs r2, 0xC8
- b _08037982
- .pool
-_08037848:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _08037854
- b _080379D6
-_08037854:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gEnemyParty + 400
- b _08037686
- .pool
-_08037864:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- beq _08037872
- b _080379D6
-_08037872:
- bl sub_800A5B4
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- beq _0803788A
- ldr r0, =gEnemyParty + 400
- ldr r1, =gUnknown_020223C4
- movs r2, 0xC8
- bl memcpy
-_0803788A:
- ldr r4, =gPlayerParty
- adds r0, r4, 0
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0x64
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0xC8
- bl shedinja_something
- movs r1, 0x96
- lsls r1, 1
- adds r0, r4, r1
- bl shedinja_something
- movs r2, 0xC8
- lsls r2, 1
- adds r0, r4, r2
- bl shedinja_something
- movs r1, 0xFA
- lsls r1, 1
- adds r0, r4, r1
- bl shedinja_something
- ldr r4, =gEnemyParty
- adds r0, r4, 0
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0x64
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0xC8
- bl shedinja_something
- movs r2, 0x96
- lsls r2, 1
- adds r0, r4, r2
- bl shedinja_something
- movs r1, 0xC8
- lsls r1, 1
- adds r0, r4, r1
- bl shedinja_something
- movs r2, 0xFA
- lsls r2, 1
- adds r0, r4, r2
- bl shedinja_something
- b _08037986
- .pool
-_08037908:
- bl sub_8032768
- bl sub_8184E58
- ldr r2, =gBattleCommunication
- movs r0, 0
- strb r0, [r2, 0x1]
- strb r0, [r2, 0x2]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08037934
- movs r0, 0xE
- strb r0, [r2]
- b _080379D6
- .pool
-_08037934:
- movs r0, 0x10
- strb r0, [r2]
- b _080379D6
-_0803793A:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _080379D6
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_0203BD2C
- movs r2, 0x4
- bl link_0800A448
- b _08037986
- .pool
-_0803795C:
- bl sub_800A550
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x3
- bne _080379D6
- bl sub_800A5B4
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x4
- ands r0, r1
- cmp r0, 0
- bne _08037986
- ldr r0, =gUnknown_0203BD2C
- lsls r1, r7, 8
- ldr r2, =gUnknown_020223C4
- adds r1, r2
- movs r2, 0x4
-_08037982:
- bl memcpy
-_08037986:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080379D6
- .pool
-_080379A0:
- ldr r0, =gUnknown_02024333
- adds r1, r0, 0x1
- bl battle_load_something
- lsls r0, 24
- cmp r0, 0
- beq _080379D6
- bl sub_8166188
- ldr r2, =gUnknown_03005D00
- ldr r1, =gMain
- ldr r0, [r1]
- str r0, [r2]
- ldr r0, =sub_8039EF0
- str r0, [r1]
- ldr r0, =sub_8038420
- bl SetMainCallback2
- ldr r2, =gBattleTypeFlags
- ldr r1, [r2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080379D6
- movs r0, 0x20
- orrs r1, r0
- str r1, [r2]
-_080379D6:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8037458
-
- thumb_func_start sub_80379F8
-sub_80379F8: @ 80379F8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- movs r0, 0
- mov r8, r0
- ldr r6, =gUnknown_02022FF8
- mov r10, r6
-_08037A12:
- ldr r1, [sp]
- add r1, r8
- movs r0, 0x64
- adds r4, r1, 0
- muls r4, r0
- ldr r0, =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- mov r1, r8
- lsls r5, r1, 5
- strh r0, [r6]
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- strh r0, [r6, 0x2]
- movs r0, 0x4
- add r0, r10
- mov r9, r0
- adds r7, r5, r0
- adds r0, r4, 0
- movs r1, 0x2
- adds r2, r7, 0
- bl GetMonData
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- strb r0, [r6, 0xF]
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- strh r0, [r6, 0x10]
- adds r0, r4, 0
- movs r1, 0x3A
- bl GetMonData
- strh r0, [r6, 0x12]
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
- mov r1, r10
- adds r1, 0x14
- adds r5, r1
- str r0, [r5]
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- str r0, [r6, 0x18]
- adds r0, r4, 0
- bl GetMonGender
- strb r0, [r6, 0x1C]
- adds r0, r7, 0
- bl StripExtCtrlCodes
- adds r0, r4, 0
- movs r1, 0x3
- bl GetMonData
- cmp r0, 0x1
- beq _08037AA4
- adds r0, r7, 0
- movs r1, 0
- bl sub_81DB4DC
-_08037AA4:
- adds r6, 0x20
- movs r1, 0x1
- add r8, r1
- mov r0, r8
- cmp r0, 0x2
- ble _08037A12
- ldr r0, =gUnknown_02023058
- ldr r0, [r0]
- mov r1, r9
- subs r1, 0x4
- movs r2, 0x60
- bl memcpy
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80379F8
-
- thumb_func_start sub_8037ADC
-sub_8037ADC: @ 8037ADC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r0, 0x4
- mov r9, r0
- movs r4, 0xF
- ldr r6, =gBattleTypeFlags
- ldr r0, [r6]
- movs r1, 0x80
- lsls r1, 1
- ands r0, r1
- cmp r0, 0
- beq _08037B02
- movs r1, 0x2
- mov r9, r1
- movs r4, 0x3
-_08037B02:
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gBattleScripting
- adds r0, 0x25
- movs r2, 0
- mov r8, r2
- strb r7, [r0]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0xB4
- str r1, [sp]
- adds r0, 0xAC
- mov r10, r0
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- ldr r5, =gBattleCommunication
- ldrb r0, [r5]
- cmp r0, 0x1
- beq _08037BA4
- cmp r0, 0x1
- bgt _08037B50
- cmp r0, 0
- beq _08037B5E
- b _08037D0A
- .pool
-_08037B50:
- cmp r0, 0x2
- bne _08037B56
- b _08037C64
-_08037B56:
- cmp r0, 0x3
- bne _08037B5C
- b _08037C9E
-_08037B5C:
- b _08037D0A
-_08037B5E:
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- bne _08037B68
- b _08037D0A
-_08037B68:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _08037B74
- b _08037D0A
-_08037B74:
- ldr r4, =gUnknown_02023058
- movs r0, 0x60
- bl Alloc
- str r0, [r4]
- movs r0, 0
- bl sub_80379F8
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- movs r2, 0x60
- bl link_0800A448
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- b _08037D0A
- .pool
-_08037BA4:
- bl sub_800A550
- adds r1, r4, 0
- ands r1, r0
- cmp r1, r4
- beq _08037BB2
- b _08037D0A
-_08037BB2:
- bl sub_800A5B4
- movs r5, 0
- cmp r8, r9
- bge _08037C2E
- lsls r0, r7, 3
- subs r0, r7
- lsls r6, r0, 2
- mov r8, r5
- ldr r4, =gUnknown_020223C4
-_08037BC6:
- cmp r5, r7
- beq _08037C1E
- mov r2, r9
- cmp r2, 0x4
- bne _08037C14
- ldr r2, =gLinkPlayers
- mov r1, r8
- adds r0, r1, r2
- ldrh r1, [r0, 0x18]
- movs r3, 0x1
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _08037BF8
- adds r0, r6, r2
- ldrh r1, [r0, 0x18]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _08037C04
- b _08037C1E
- .pool
-_08037BF8:
- adds r0, r6, r2
- ldrh r1, [r0, 0x18]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _08037C1E
-_08037C04:
- ldr r0, =gUnknown_02022FF8
- adds r1, r4, 0
- movs r2, 0x60
- bl memcpy
- b _08037C1E
- .pool
-_08037C14:
- ldr r0, =gUnknown_02022FF8
- adds r1, r4, 0
- movs r2, 0x60
- bl memcpy
-_08037C1E:
- movs r2, 0x80
- lsls r2, 1
- adds r4, r2
- movs r0, 0x1C
- add r8, r0
- adds r5, 0x1
- cmp r5, r9
- blt _08037BC6
-_08037C2E:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r1, =gMain
- ldr r0, [r1, 0x8]
- ldr r2, [sp]
- str r0, [r2]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- mov r2, r10
- str r0, [r2]
- ldr r0, =sub_8037ADC
- str r0, [r1, 0x8]
- bl sub_81B9150
- b _08037D0A
- .pool
-_08037C64:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _08037D0A
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08037D0A
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- beq _08037C98
- bl sub_800ADF8
- b _08037D0A
- .pool
-_08037C98:
- bl sub_800AC34
- b _08037D0A
-_08037C9E:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- beq _08037CE4
- bl sub_8010500
- lsls r0, 24
- cmp r0, 0
- beq _08037D0A
- mov r1, r10
- ldr r0, [r1]
- str r0, [r6]
- ldr r1, =gMain
- ldr r2, [sp]
- ldr r0, [r2]
- str r0, [r1, 0x8]
- ldr r0, =InitBattle
- bl SetMainCallback2
- ldr r4, =gUnknown_02023058
- ldr r0, [r4]
- bl Free
- mov r0, r8
- str r0, [r4]
- b _08037D0A
- .pool
-_08037CE4:
- ldr r0, =gUnknown_03003124
- ldrb r5, [r0]
- cmp r5, 0
- bne _08037D0A
- mov r1, r10
- ldr r0, [r1]
- str r0, [r6]
- ldr r1, =gMain
- ldr r2, [sp]
- ldr r0, [r2]
- str r0, [r1, 0x8]
- ldr r0, =InitBattle
- bl SetMainCallback2
- ldr r4, =gUnknown_02023058
- ldr r0, [r4]
- bl Free
- str r5, [r4]
-_08037D0A:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8037ADC
-
- thumb_func_start intro_end
-intro_end: @ 8037D2C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- movs r1, 0xB4
- adds r1, r0
- mov r8, r1
- adds r7, r0, 0
- adds r7, 0xAC
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- ldr r5, =gBattleCommunication
- ldrb r0, [r5]
- cmp r0, 0
- beq _08037D64
- cmp r0, 0x1
- beq _08037DA4
- b _08037DD6
- .pool
-_08037D64:
- ldr r4, =gUnknown_02023058
- movs r0, 0x60
- bl Alloc
- str r0, [r4]
- movs r0, 0x3
- bl sub_80379F8
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- ldr r1, =gMain
- ldr r0, [r1, 0x8]
- mov r2, r8
- str r0, [r2]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- str r0, [r7]
- ldr r0, =intro_end
- str r0, [r1, 0x8]
- bl sub_81B9150
- b _08037DD6
- .pool
-_08037DA4:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0
- bne _08037DD6
- movs r0, 0x2
- strb r0, [r5]
- ldr r1, =gBattleTypeFlags
- ldr r0, [r7]
- str r0, [r1]
- ldr r1, =gMain
- mov r2, r8
- ldr r0, [r2]
- str r0, [r1, 0x8]
- ldr r0, =InitBattle
- bl SetMainCallback2
- ldr r4, =gUnknown_02023058
- ldr r0, [r4]
- bl Free
- str r6, [r4]
-_08037DD6:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end intro_end
-
- thumb_func_start sub_8037DF4
-sub_8037DF4: @ 8037DF4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gBattleScripting
- adds r0, 0x25
- strb r7, [r0]
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- ldr r0, =gBattleCommunication
- ldrb r0, [r0]
- cmp r0, 0xA
- bls _08037E20
- b _080383F8
-_08037E20:
- lsls r0, 2
- ldr r1, =_08037E38
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08037E38:
- .4byte _08037E64
- .4byte _08037EA8
- .4byte _08037F50
- .4byte _08038026
- .4byte _0803804C
- .4byte _08038140
- .4byte _08038164
- .4byte _080382CC
- .4byte _0803832C
- .4byte _0803836C
- .4byte _080383BC
-_08037E64:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _08037E90
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- bl sub_805EF14
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1]
-_08037E90:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _08037E9A
- b _080383F8
-_08037E9A:
- bl sub_800E0E8
- b _080383F8
- .pool
-_08037EA8:
- ldr r2, =gBattleTypeFlags
- ldr r1, [r2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08037F30
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- bne _08037EBE
- b _080383F8
-_08037EBE:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _08037F02
- ldr r4, =gBattleStruct
- ldr r0, [r4]
- movs r5, 0xC0
- lsls r5, 1
- adds r0, r5
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldr r2, =0x00000181
- adds r1, r0, r2
- movs r0, 0x3
- strb r0, [r1]
- bl sub_8036A5C
- bl sub_8036B44
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- adds r1, r5
- movs r2, 0x20
- bl link_0800A448
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_08037F02:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _08037F0C
- b _080383F8
-_08037F0C:
- movs r0, 0
- movs r1, 0
- bl sub_800DFB4
- b _080383F8
- .pool
-_08037F30:
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- bne _08037F40
- movs r0, 0x4
- orrs r1, r0
- str r1, [r2]
-_08037F40:
- ldr r1, =gBattleCommunication
- movs r0, 0x7
- strb r0, [r1]
- bl berry_801017C
- b _080383F8
- .pool
-_08037F50:
- bl sub_800A550
- movs r1, 0xF
- ands r1, r0
- cmp r1, 0xF
- beq _08037F5E
- b _080383F8
-_08037F5E:
- bl sub_800A5B4
- movs r0, 0x4
- adds r1, r7, 0
- bl sub_8036EB8
- bl berry_801017C
- bl sub_8068AA4
- ldr r0, =task00_0800F6FC
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- movs r1, 0x87
- lsls r1, 1
- strh r1, [r0, 0xA]
- movs r1, 0x5A
- strh r1, [r0, 0xC]
- strh r2, [r0, 0x12]
- strh r2, [r0, 0xE]
- strh r2, [r0, 0x10]
- ldr r1, =gUnknown_020223C4
- adds r4, r0, 0
- adds r5, r1, 0x2
- movs r7, 0x3F
- movs r6, 0x3
-_08037FA4:
- ldrh r0, [r5]
- str r2, [sp]
- bl sub_8185F90
- ldr r0, =gLinkPlayers
- ldr r2, [sp]
- adds r0, r2, r0
- ldrh r0, [r0, 0x18]
- cmp r0, 0x1
- beq _08037FE6
- cmp r0, 0x1
- bgt _08037FD4
- cmp r0, 0
- beq _08037FDE
- b _0803800C
- .pool
-_08037FD4:
- cmp r0, 0x2
- beq _08037FEE
- cmp r0, 0x3
- beq _08037FFE
- b _0803800C
-_08037FDE:
- ldrh r0, [r5]
- adds r1, r7, 0
- ands r1, r0
- b _08037FF6
-_08037FE6:
- ldrh r0, [r5]
- adds r1, r7, 0
- ands r1, r0
- b _08038006
-_08037FEE:
- ldrh r0, [r5]
- adds r1, r7, 0
- ands r1, r0
- lsls r1, 6
-_08037FF6:
- ldrh r0, [r4, 0xE]
- orrs r1, r0
- strh r1, [r4, 0xE]
- b _0803800C
-_08037FFE:
- ldrh r0, [r5]
- adds r1, r7, 0
- ands r1, r0
- lsls r1, 6
-_08038006:
- ldrh r0, [r4, 0x10]
- orrs r1, r0
- strh r1, [r4, 0x10]
-_0803800C:
- movs r0, 0x80
- lsls r0, 1
- adds r5, r0
- adds r2, 0x1C
- subs r6, 0x1
- cmp r6, 0
- bge _08037FA4
- bl ZeroEnemyPartyMons
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_08038026:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _08038032
- b _080383F8
-_08038032:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty
- movs r2, 0xC8
- bl link_0800A448
- b _080383A6
- .pool
-_0803804C:
- bl sub_800A550
- movs r1, 0xF
- ands r1, r0
- cmp r1, 0xF
- beq _0803805A
- b _080383F8
-_0803805A:
- bl sub_800A5B4
- movs r6, 0
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- mov r8, r0
- ldr r4, =gUnknown_020223C4
- movs r5, 0
-_0803806C:
- cmp r6, r7
- bne _080380A0
- ldr r0, =gLinkPlayers
- adds r0, r5, r0
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _0803808C
- cmp r0, 0x1
- bge _08038098
- cmp r0, 0
- beq _08038090
- b _0803812A
- .pool
-_0803808C:
- cmp r0, 0x3
- bne _0803812A
-_08038090:
- ldr r0, =gPlayerParty
- b _08038110
- .pool
-_08038098:
- ldr r0, =gPlayerParty + 300
- b _08038110
- .pool
-_080380A0:
- ldr r2, =gLinkPlayers
- adds r0, r5, r2
- ldrh r1, [r0, 0x18]
- movs r3, 0x1
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _080380C4
- mov r1, r8
- adds r0, r1, r2
- ldrh r1, [r0, 0x18]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _080380D2
- b _080380F8
- .pool
-_080380C4:
- mov r1, r8
- adds r0, r1, r2
- ldrh r1, [r0, 0x18]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _080380F8
-_080380D2:
- adds r0, r5, r2
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _080380E4
- cmp r0, 0x1
- bge _080380F0
- cmp r0, 0
- beq _080380E8
- b _0803812A
-_080380E4:
- cmp r0, 0x3
- bne _0803812A
-_080380E8:
- ldr r0, =gPlayerParty
- b _08038110
- .pool
-_080380F0:
- ldr r0, =gPlayerParty + 300
- b _08038110
- .pool
-_080380F8:
- adds r0, r5, r2
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _0803810A
- cmp r0, 0x1
- bge _08038120
- cmp r0, 0
- beq _0803810E
- b _0803812A
-_0803810A:
- cmp r0, 0x3
- bne _0803812A
-_0803810E:
- ldr r0, =gEnemyParty
-_08038110:
- adds r1, r4, 0
- movs r2, 0xC8
- bl memcpy
- b _0803812A
- .pool
-_08038120:
- ldr r0, =gEnemyParty + 300
- adds r1, r4, 0
- movs r2, 0xC8
- bl memcpy
-_0803812A:
- movs r2, 0x80
- lsls r2, 1
- adds r4, r2
- adds r5, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _0803806C
- b _080383A6
- .pool
-_08038140:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _0803814C
- b _080383F8
-_0803814C:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty + 200
- movs r2, 0x64
- bl link_0800A448
- b _080383A6
- .pool
-_08038164:
- bl sub_800A550
- movs r1, 0xF
- ands r1, r0
- cmp r1, 0xF
- beq _08038172
- b _080383F8
-_08038172:
- bl sub_800A5B4
- movs r6, 0
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- mov r8, r0
- ldr r4, =gUnknown_020223C4
- movs r5, 0
-_08038184:
- cmp r6, r7
- bne _080381B8
- ldr r0, =gLinkPlayers
- adds r0, r5, r0
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _080381A4
- cmp r0, 0x1
- bge _080381B0
- cmp r0, 0
- beq _080381A8
- b _08038242
- .pool
-_080381A4:
- cmp r0, 0x3
- bne _08038242
-_080381A8:
- ldr r0, =gPlayerParty + 200
- b _08038228
- .pool
-_080381B0:
- ldr r0, =gPlayerParty + 500
- b _08038228
- .pool
-_080381B8:
- ldr r2, =gLinkPlayers
- adds r0, r5, r2
- ldrh r1, [r0, 0x18]
- movs r3, 0x1
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _080381DC
- mov r1, r8
- adds r0, r1, r2
- ldrh r1, [r0, 0x18]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _080381EA
- b _08038210
- .pool
-_080381DC:
- mov r1, r8
- adds r0, r1, r2
- ldrh r1, [r0, 0x18]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _08038210
-_080381EA:
- adds r0, r5, r2
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _080381FC
- cmp r0, 0x1
- bge _08038208
- cmp r0, 0
- beq _08038200
- b _08038242
-_080381FC:
- cmp r0, 0x3
- bne _08038242
-_08038200:
- ldr r0, =gPlayerParty + 200
- b _08038228
- .pool
-_08038208:
- ldr r0, =gPlayerParty + 500
- b _08038228
- .pool
-_08038210:
- adds r0, r5, r2
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _08038222
- cmp r0, 0x1
- bge _08038238
- cmp r0, 0
- beq _08038226
- b _08038242
-_08038222:
- cmp r0, 0x3
- bne _08038242
-_08038226:
- ldr r0, =gEnemyParty + 200
-_08038228:
- adds r1, r4, 0
- movs r2, 0x64
- bl memcpy
- b _08038242
- .pool
-_08038238:
- ldr r0, =gEnemyParty + 500
- adds r1, r4, 0
- movs r2, 0x64
- bl memcpy
-_08038242:
- movs r2, 0x80
- lsls r2, 1
- adds r4, r2
- adds r5, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _08038184
- ldr r4, =gPlayerParty
- adds r0, r4, 0
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0x64
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0xC8
- bl shedinja_something
- movs r1, 0x96
- lsls r1, 1
- adds r0, r4, r1
- bl shedinja_something
- movs r2, 0xC8
- lsls r2, 1
- adds r0, r4, r2
- bl shedinja_something
- movs r1, 0xFA
- lsls r1, 1
- adds r0, r4, r1
- bl shedinja_something
- ldr r4, =gEnemyParty
- adds r0, r4, 0
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0x64
- bl shedinja_something
- adds r0, r4, 0
- adds r0, 0xC8
- bl shedinja_something
- movs r2, 0x96
- lsls r2, 1
- adds r0, r4, r2
- bl shedinja_something
- movs r1, 0xC8
- lsls r1, 1
- adds r0, r4, r1
- bl shedinja_something
- movs r2, 0xFA
- lsls r2, 1
- adds r0, r4, r2
- bl shedinja_something
- b _080383A6
- .pool
-_080382CC:
- bl sub_8032768
- bl sub_8184E58
- ldr r3, =gBattleCommunication
- movs r0, 0
- strb r0, [r3, 0x1]
- strb r0, [r3, 0x2]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08038326
- movs r6, 0
- ldr r0, =gLinkPlayers
- ldrb r1, [r0]
- adds r4, r3, 0
- adds r2, r0, 0
- cmp r1, 0x3
- bne _0803830A
- movs r3, 0xFF
-_080382F8:
- adds r2, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- bgt _0803830A
- ldrh r1, [r2]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0x3
- beq _080382F8
-_0803830A:
- cmp r6, 0x4
- bne _08038320
- movs r0, 0x8
- strb r0, [r4]
- b _080383F8
- .pool
-_08038320:
- movs r0, 0xA
- strb r0, [r4]
- b _080383F8
-_08038326:
- movs r0, 0xA
- strb r0, [r3]
- b _080383F8
-_0803832C:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _080383F8
- ldr r0, =gBattleStruct
- ldr r4, [r0]
- movs r0, 0xC0
- lsls r0, 1
- adds r4, r0
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- str r0, [r4]
- ldr r0, =gUnknown_0203BD2C
- ldr r0, [r0]
- str r0, [r4, 0x4]
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- movs r2, 0x8
- bl link_0800A448
- b _080383A6
- .pool
-_0803836C:
- bl sub_800A550
- movs r1, 0xF
- ands r1, r0
- cmp r1, 0xF
- bne _080383F8
- bl sub_800A5B4
- movs r2, 0
- b _08038386
-_08038380:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
-_08038386:
- cmp r2, 0x3
- bhi _080383A6
- ldr r4, =gUnknown_020223C4
- lsls r3, r2, 8
- adds r0, r3, r4
- ldrh r0, [r0]
- movs r1, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08038380
- adds r1, r4, 0x4
- adds r1, r3, r1
- ldr r0, =gUnknown_0203BD2C
- movs r2, 0x4
- bl memcpy
-_080383A6:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080383F8
- .pool
-_080383BC:
- ldr r0, =gUnknown_02024333
- adds r1, r0, 0x1
- bl battle_load_something
- lsls r0, 24
- cmp r0, 0
- beq _080383F8
- ldr r2, =gUnknown_03005D00
- ldr r1, =gMain
- ldr r0, [r1]
- str r0, [r2]
- ldr r0, =sub_8039EF0
- str r0, [r1]
- ldr r0, =sub_8038420
- bl SetMainCallback2
- ldr r3, =gBattleTypeFlags
- ldr r2, [r3]
- movs r0, 0x2
- ands r0, r2
- cmp r0, 0
- beq _080383F8
- ldr r0, =gTrainerBattleOpponent_A
- movs r4, 0x80
- lsls r4, 4
- adds r1, r4, 0
- strh r1, [r0]
- movs r0, 0x20
- orrs r2, r0
- str r2, [r3]
-_080383F8:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8037DF4
-
- thumb_func_start sub_8038420
-sub_8038420: @ 8038420
- push {lr}
- sub sp, 0x4
- bl AnimateSprites
- bl BuildOamBuffer
- bl RunTextPrinters
- bl UpdatePaletteFade
- bl RunTasks
- ldr r0, =gMain
- ldrh r1, [r0, 0x2C]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08038482
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- beq _08038482
- bl rfu_lacks_rfufunc
- lsls r0, 24
- cmp r0, 0
- beq _08038482
- ldr r2, =gScriptResult
- ldr r1, =gBattleOutcome
- movs r0, 0x5
- strb r0, [r1]
- movs r0, 0x5
- strh r0, [r2]
- bl ResetPaletteFadeControl
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_80384E4
- bl SetMainCallback2
-_08038482:
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8038420
-
- thumb_func_start sub_803849C
-sub_803849C: @ 803849C
- push {lr}
- ldr r1, =gMain
- ldr r0, =gUnknown_03005D00
- ldr r0, [r0]
- str r0, [r1]
- ldr r2, =gUnknown_02039B28
- movs r0, 0x3
- strb r0, [r2, 0x15]
- ldr r0, =0x00000439
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- bl ZeroEnemyPartyMons
- movs r0, 0x5A
- bl m4aSongNumStop
- bl sub_805F094
- bl dp11_free
- bl sub_8057028
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803849C
-
- thumb_func_start sub_80384E4
-sub_80384E4: @ 80384E4
- push {lr}
- bl UpdatePaletteFade
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08038512
- ldr r0, =gMPlay_SE1
- bl m4aMPlayStop
- ldr r0, =gMPlay_SE2
- bl m4aMPlayStop
- bl sub_803849C
- bl FreeAllWindowBuffers
- ldr r0, =gMain
- ldr r0, [r0, 0x8]
- bl SetMainCallback2
-_08038512:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80384E4
-
- thumb_func_start sub_8038528
-sub_8038528: @ 8038528
- movs r1, 0
- strh r1, [r0, 0x2E]
- ldr r1, =sub_8038538
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_8038528
-
- thumb_func_start sub_8038538
-sub_8038538: @ 8038538
- push {r4,r5,lr}
- adds r3, r0, 0
- ldr r5, =0x0201c000
- movs r0, 0x2E
- ldrsh r1, [r3, r0]
- cmp r1, 0x1
- beq _0803856C
- cmp r1, 0x1
- bgt _08038554
- cmp r1, 0
- beq _0803855A
- b _080385DC
- .pool
-_08038554:
- cmp r1, 0x2
- beq _080385C8
- b _080385DC
-_0803855A:
- ldrh r0, [r3, 0x2E]
- adds r0, 0x1
- strh r0, [r3, 0x2E]
- strh r1, [r3, 0x30]
- ldr r0, =0x00000281
- strh r0, [r3, 0x32]
- strh r1, [r3, 0x34]
- movs r0, 0x1
- strh r0, [r3, 0x36]
-_0803856C:
- ldrh r0, [r3, 0x36]
- subs r0, 0x1
- strh r0, [r3, 0x36]
- lsls r0, 16
- cmp r0, 0
- bne _080385DC
- movs r0, 0x2
- strh r0, [r3, 0x36]
- movs r4, 0x30
- ldrsh r2, [r3, r4]
- movs r0, 0x34
- ldrsh r1, [r3, r0]
- lsls r1, 5
- adds r2, r1
- movs r4, 0x32
- ldrsh r0, [r3, r4]
- subs r0, r1
- movs r4, 0x3D
- lsls r0, 1
- adds r0, r5
- lsls r2, 1
- adds r2, r5
- movs r1, 0x1C
-_0803859A:
- strh r4, [r2]
- strh r4, [r0]
- adds r0, 0x4
- adds r2, 0x4
- subs r1, 0x2
- cmp r1, 0
- bge _0803859A
- ldrh r0, [r3, 0x34]
- adds r0, 0x1
- strh r0, [r3, 0x34]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x15
- bne _080385DC
- ldrh r0, [r3, 0x2E]
- adds r0, 0x1
- strh r0, [r3, 0x2E]
- movs r0, 0x20
- strh r0, [r3, 0x30]
- b _080385DC
- .pool
-_080385C8:
- ldrh r0, [r3, 0x30]
- subs r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x14
- bne _080385DC
- ldr r0, =sub_8036760
- bl SetMainCallback2
-_080385DC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8038538
-
- thumb_func_start CreateNPCTrainerParty
-CreateNPCTrainerParty: @ 80385E8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x28
- str r0, [sp, 0x10]
- lsls r1, 16
- lsrs r1, 16
- str r1, [sp, 0x14]
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0
- mov r9, r0
- movs r0, 0x80
- lsls r0, 3
- cmp r1, r0
- bne _08038610
- movs r0, 0
- b _080389E2
-_08038610:
- ldr r4, =gBattleTypeFlags
- ldr r0, [r4]
- ldr r1, =0x043f0908
- ands r0, r1
- ldr r1, [sp, 0x14]
- lsls r1, 2
- str r1, [sp, 0x20]
- cmp r0, 0x8
- beq _08038624
- b _080389D2
-_08038624:
- cmp r2, 0x1
- bne _0803862C
- bl ZeroEnemyPartyMons
-_0803862C:
- ldr r0, [r4]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _08038668
- ldr r0, =gTrainers
- ldr r2, [sp, 0x20]
- ldr r3, [sp, 0x14]
- adds r1, r2, r3
- lsls r1, 3
- adds r1, r0
- adds r2, r1, 0
- adds r2, 0x20
- ldrb r1, [r2]
- movs r4, 0x3
- str r4, [sp, 0x1C]
- adds r4, r0, 0
- cmp r1, 0x3
- bhi _0803867C
- adds r2, r1, 0
- str r2, [sp, 0x1C]
- b _0803867C
- .pool
-_08038668:
- ldr r1, =gTrainers
- ldr r2, [sp, 0x20]
- ldr r3, [sp, 0x14]
- adds r0, r2, r3
- lsls r0, 3
- adds r0, r1
- adds r0, 0x20
- ldrb r0, [r0]
- str r0, [sp, 0x1C]
- adds r4, r1, 0
-_0803867C:
- movs r0, 0
- str r0, [sp, 0x18]
- b _080389B4
- .pool
-_08038688:
- ldr r2, [sp, 0x20]
- ldr r3, [sp, 0x14]
- adds r0, r2, r3
- lsls r0, 3
- adds r1, r0, r4
- ldrb r0, [r1, 0x18]
- cmp r0, 0x1
- bne _0803869E
- movs r0, 0x80
- mov r10, r0
- b _080386B0
-_0803869E:
- ldrb r1, [r1, 0x2]
- movs r0, 0x80
- ands r0, r1
- movs r1, 0x88
- mov r10, r1
- cmp r0, 0
- beq _080386B0
- movs r2, 0x78
- mov r10, r2
-_080386B0:
- movs r6, 0
- ldr r2, [sp, 0x20]
- ldr r3, [sp, 0x14]
- adds r0, r2, r3
- lsls r0, 3
- adds r1, r4, 0x4
- adds r0, r1
- ldrb r0, [r0]
- ldr r3, [sp, 0x18]
- adds r3, 0x1
- str r3, [sp, 0x24]
- cmp r0, 0xFF
- beq _080386E6
- adds r3, r1, 0
-_080386CC:
- ldr r0, [sp, 0x14]
- adds r1, r2, r0
- lsls r1, 3
- adds r0, r6, r1
- adds r0, r3
- ldrb r0, [r0]
- add r9, r0
- adds r6, 0x1
- adds r1, r6, r1
- adds r1, r3
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _080386CC
-_080386E6:
- ldr r1, [sp, 0x20]
- ldr r2, [sp, 0x14]
- adds r0, r1, r2
- lsls r1, r0, 3
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _08038794
- cmp r0, 0x1
- bgt _08038700
- cmp r0, 0
- beq _0803870E
- b _080389AC
-_08038700:
- cmp r0, 0x2
- bne _08038706
- b _08038854
-_08038706:
- cmp r0, 0x3
- bne _0803870C
- b _080388E8
-_0803870C:
- b _080389AC
-_0803870E:
- adds r0, r4, 0
- adds r0, 0x24
- adds r0, r1, r0
- ldr r4, [r0]
- movs r6, 0
- ldr r3, [sp, 0x18]
- lsls r2, r3, 3
- adds r0, r2, r4
- ldrh r1, [r0, 0x4]
- movs r0, 0xB
- muls r0, r1
- ldr r1, =gSpeciesNames
- adds r0, r1
- ldrb r0, [r0]
- adds r5, r2, 0
- cmp r0, 0xFF
- beq _08038750
- adds r3, r1, 0
- movs r7, 0xB
-_08038734:
- adds r0, r2, r4
- ldrh r0, [r0, 0x4]
- adds r1, r0, 0
- muls r1, r7
- adds r0, r6, r1
- adds r0, r3
- ldrb r0, [r0]
- add r9, r0
- adds r6, 0x1
- adds r1, r6, r1
- adds r1, r3
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _08038734
-_08038750:
- mov r2, r9
- lsls r0, r2, 8
- add r10, r0
- adds r4, r5, r4
- ldrh r1, [r4]
- lsls r0, r1, 5
- subs r0, r1
- movs r1, 0xFF
- bl __divsi3
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r3, [sp, 0x18]
- movs r1, 0x64
- adds r0, r3, 0
- muls r0, r1
- ldr r2, [sp, 0x10]
- adds r0, r2, r0
- ldrh r1, [r4, 0x4]
- ldrb r2, [r4, 0x2]
- movs r3, 0x1
- str r3, [sp]
- mov r3, r10
- str r3, [sp, 0x4]
- movs r3, 0x2
- str r3, [sp, 0x8]
- movs r3, 0
- str r3, [sp, 0xC]
- adds r3, r6, 0
- bl CreateMon
- b _080389AC
- .pool
-_08038794:
- adds r0, r4, 0
- adds r0, 0x24
- adds r0, r1, r0
- ldr r7, [r0]
- movs r6, 0
- ldr r4, [sp, 0x18]
- lsls r2, r4, 4
- adds r0, r2, r7
- ldrh r1, [r0, 0x4]
- movs r0, 0xB
- muls r0, r1
- ldr r1, =gSpeciesNames
- adds r0, r1
- ldrb r0, [r0]
- mov r8, r2
- cmp r0, 0xFF
- beq _080387D6
- adds r3, r1, 0
- movs r4, 0xB
-_080387BA:
- adds r0, r2, r7
- ldrh r0, [r0, 0x4]
- adds r1, r0, 0
- muls r1, r4
- adds r0, r6, r1
- adds r0, r3
- ldrb r0, [r0]
- add r9, r0
- adds r6, 0x1
- adds r1, r6, r1
- adds r1, r3
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _080387BA
-_080387D6:
- mov r2, r9
- lsls r0, r2, 8
- add r10, r0
- mov r3, r8
- adds r4, r3, r7
- ldrh r1, [r4]
- lsls r0, r1, 5
- subs r0, r1
- movs r1, 0xFF
- bl __divsi3
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, [sp, 0x18]
- movs r1, 0x64
- adds r5, r0, 0
- muls r5, r1
- ldr r2, [sp, 0x10]
- adds r5, r2, r5
- ldrh r1, [r4, 0x4]
- ldrb r2, [r4, 0x2]
- movs r0, 0x1
- str r0, [sp]
- mov r3, r10
- str r3, [sp, 0x4]
- movs r0, 0x2
- str r0, [sp, 0x8]
- movs r0, 0
- str r0, [sp, 0xC]
- adds r0, r5, 0
- adds r3, r6, 0
- bl CreateMon
- movs r6, 0
- mov r0, r8
- adds r0, 0x6
- adds r4, r7, r0
-_08038820:
- adds r1, r6, 0
- adds r1, 0xD
- adds r0, r5, 0
- adds r2, r4, 0
- bl SetMonData
- adds r1, r6, 0
- adds r1, 0x11
- ldrh r0, [r4]
- lsls r2, r0, 1
- adds r2, r0
- lsls r2, 2
- ldr r0, =gBattleMoves + 0x4 @ PP offset
- adds r2, r0
- adds r0, r5, 0
- bl SetMonData
- adds r4, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _08038820
- b _080389AC
- .pool
-_08038854:
- adds r0, r4, 0
- adds r0, 0x24
- adds r0, r1, r0
- ldr r4, [r0]
- movs r6, 0
- ldr r0, [sp, 0x18]
- lsls r2, r0, 3
- adds r0, r2, r4
- ldrh r1, [r0, 0x4]
- movs r0, 0xB
- muls r0, r1
- ldr r1, =gSpeciesNames
- adds r0, r1
- ldrb r0, [r0]
- adds r5, r2, 0
- cmp r0, 0xFF
- beq _08038896
- adds r3, r1, 0
- movs r7, 0xB
-_0803887A:
- adds r0, r2, r4
- ldrh r0, [r0, 0x4]
- adds r1, r0, 0
- muls r1, r7
- adds r0, r6, r1
- adds r0, r3
- ldrb r0, [r0]
- add r9, r0
- adds r6, 0x1
- adds r1, r6, r1
- adds r1, r3
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _0803887A
-_08038896:
- mov r2, r9
- lsls r0, r2, 8
- add r10, r0
- adds r5, r4
- ldrh r1, [r5]
- lsls r0, r1, 5
- subs r0, r1
- movs r1, 0xFF
- bl __divsi3
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r3, [sp, 0x18]
- movs r0, 0x64
- adds r4, r3, 0
- muls r4, r0
- ldr r1, [sp, 0x10]
- adds r4, r1, r4
- ldrh r1, [r5, 0x4]
- ldrb r2, [r5, 0x2]
- movs r0, 0x1
- str r0, [sp]
- mov r3, r10
- str r3, [sp, 0x4]
- movs r0, 0x2
- str r0, [sp, 0x8]
- movs r0, 0
- str r0, [sp, 0xC]
- adds r0, r4, 0
- adds r3, r6, 0
- bl CreateMon
- adds r5, 0x6
- adds r0, r4, 0
- movs r1, 0xC
- adds r2, r5, 0
- bl SetMonData
- b _080389AC
- .pool
-_080388E8:
- adds r0, r4, 0
- adds r0, 0x24
- adds r0, r1, r0
- ldr r7, [r0]
- movs r6, 0
- ldr r4, [sp, 0x18]
- lsls r2, r4, 4
- adds r0, r2, r7
- ldrh r1, [r0, 0x4]
- movs r0, 0xB
- muls r0, r1
- ldr r1, =gSpeciesNames
- adds r0, r1
- ldrb r0, [r0]
- mov r8, r2
- cmp r0, 0xFF
- beq _0803892A
- adds r3, r1, 0
- movs r4, 0xB
-_0803890E:
- adds r0, r2, r7
- ldrh r0, [r0, 0x4]
- adds r1, r0, 0
- muls r1, r4
- adds r0, r6, r1
- adds r0, r3
- ldrb r0, [r0]
- add r9, r0
- adds r6, 0x1
- adds r1, r6, r1
- adds r1, r3
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _0803890E
-_0803892A:
- mov r2, r9
- lsls r0, r2, 8
- add r10, r0
- mov r3, r8
- adds r5, r3, r7
- ldrh r1, [r5]
- lsls r0, r1, 5
- subs r0, r1
- movs r1, 0xFF
- bl __divsi3
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, [sp, 0x18]
- movs r1, 0x64
- adds r4, r0, 0
- muls r4, r1
- ldr r2, [sp, 0x10]
- adds r4, r2, r4
- ldrh r1, [r5, 0x4]
- ldrb r2, [r5, 0x2]
- movs r0, 0x1
- str r0, [sp]
- mov r3, r10
- str r3, [sp, 0x4]
- movs r0, 0x2
- str r0, [sp, 0x8]
- movs r0, 0
- str r0, [sp, 0xC]
- adds r0, r4, 0
- adds r3, r6, 0
- bl CreateMon
- adds r5, 0x6
- adds r0, r4, 0
- movs r1, 0xC
- adds r2, r5, 0
- bl SetMonData
- movs r6, 0
- adds r5, r4, 0
- mov r0, r8
- adds r0, 0x8
- adds r4, r7, r0
-_08038982:
- adds r1, r6, 0
- adds r1, 0xD
- adds r0, r5, 0
- adds r2, r4, 0
- bl SetMonData
- adds r1, r6, 0
- adds r1, 0x11
- ldrh r0, [r4]
- lsls r2, r0, 1
- adds r2, r0
- lsls r2, 2
- ldr r0, =gBattleMoves + 0x4 @ PP offset
- adds r2, r0
- adds r0, r5, 0
- bl SetMonData
- adds r4, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _08038982
-_080389AC:
- ldr r4, [sp, 0x24]
- str r4, [sp, 0x18]
- ldr r4, =gTrainers
- ldr r0, [sp, 0x18]
-_080389B4:
- ldr r1, [sp, 0x1C]
- cmp r0, r1
- bge _080389BC
- b _08038688
-_080389BC:
- ldr r2, =gBattleTypeFlags
- ldr r1, =gTrainers
- ldr r3, [sp, 0x20]
- ldr r4, [sp, 0x14]
- adds r0, r3, r4
- lsls r0, 3
- adds r0, r1
- ldrb r1, [r0, 0x18]
- ldr r0, [r2]
- orrs r0, r1
- str r0, [r2]
-_080389D2:
- ldr r0, =gTrainers
- ldr r2, [sp, 0x20]
- ldr r3, [sp, 0x14]
- adds r1, r2, r3
- lsls r1, 3
- adds r1, r0
- adds r1, 0x20
- ldrb r0, [r1]
-_080389E2:
- add sp, 0x28
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end CreateNPCTrainerParty
-
- thumb_func_start sub_8038A04
-sub_8038A04: @ 8038A04
- push {lr}
- ldr r0, =0x04000006
- ldrh r0, [r0]
- subs r0, 0x6F
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x30
- bhi _08038A1E
- movs r1, 0x98
- lsls r1, 8
- movs r0, 0x8
- bl SetGpuReg
-_08038A1E:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8038A04
-
- thumb_func_start vblank_cb_08078BB4
-vblank_cb_08078BB4: @ 8038A28
- push {lr}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x013f0102
- ands r0, r1
- cmp r0, 0
- bne _08038A3A
- bl Random
-_08038A3A:
- ldr r0, =gUnknown_02022E14
- ldrh r1, [r0]
- movs r0, 0x10
- bl SetGpuReg
- ldr r0, =gUnknown_02022E16
- ldrh r1, [r0]
- movs r0, 0x12
- bl SetGpuReg
- ldr r0, =gUnknown_02022E18
- ldrh r1, [r0]
- movs r0, 0x14
- bl SetGpuReg
- ldr r0, =gUnknown_02022E1A
- ldrh r1, [r0]
- movs r0, 0x16
- bl SetGpuReg
- ldr r0, =gUnknown_02022E1C
- ldrh r1, [r0]
- movs r0, 0x18
- bl SetGpuReg
- ldr r0, =gUnknown_02022E1E
- ldrh r1, [r0]
- movs r0, 0x1A
- bl SetGpuReg
- ldr r0, =gUnknown_02022E20
- ldrh r1, [r0]
- movs r0, 0x1C
- bl SetGpuReg
- ldr r0, =gUnknown_02022E22
- ldrh r1, [r0]
- movs r0, 0x1E
- bl SetGpuReg
- ldr r0, =gUnknown_02022E24
- ldrh r1, [r0]
- movs r0, 0x40
- bl SetGpuReg
- ldr r0, =gUnknown_02022E26
- ldrh r1, [r0]
- movs r0, 0x44
- bl SetGpuReg
- ldr r0, =gUnknown_02022E28
- ldrh r1, [r0]
- movs r0, 0x42
- bl SetGpuReg
- ldr r0, =gUnknown_02022E2A
- ldrh r1, [r0]
- movs r0, 0x46
- bl SetGpuReg
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- bl sub_80BA0A8
- pop {r0}
- bx r0
- .pool
- thumb_func_end vblank_cb_08078BB4
-
- thumb_func_start nullsub_17
-nullsub_17: @ 8038B00
- bx lr
- thumb_func_end nullsub_17
-
- thumb_func_start sub_8038B04
-sub_8038B04: @ 8038B04
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _08038B24
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- movs r1, 0xFF
- lsls r1, 8
- ands r0, r1
- lsrs r0, 8
- ldrh r1, [r5, 0x30]
- adds r0, r1
- strh r0, [r5, 0x20]
- b _08038B36
-_08038B24:
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- movs r1, 0xFF
- lsls r1, 8
- ands r0, r1
- asrs r0, 8
- ldrh r1, [r5, 0x30]
- subs r1, r0
- strh r1, [r5, 0x20]
-_08038B36:
- movs r1, 0xC0
- lsls r1, 1
- adds r0, r1, 0
- ldrh r1, [r5, 0x32]
- adds r0, r1
- strh r0, [r5, 0x32]
- adds r0, r5, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08038B6A
- ldr r4, =0x00002710
- adds r0, r4, 0
- bl FreeSpriteTilesByTag
- adds r0, r4, 0
- bl FreeSpritePaletteByTag
- adds r0, r5, 0
- bl FreeSpriteOamMatrix
- adds r0, r5, 0
- bl DestroySprite
-_08038B6A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8038B04
-
- thumb_func_start sub_8038B74
-sub_8038B74: @ 8038B74
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- ldr r0, =sub_8038B04
- str r0, [r4, 0x1C]
- movs r0, 0x68
- bl PlaySE
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8038B74
-
- thumb_func_start sub_8038B94
-sub_8038B94: @ 8038B94
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- ldr r0, =gBattleScripting
- adds r0, 0x25
- ldrb r2, [r0]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08038C04
- ldr r1, =gLinkPlayers
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x18]
- cmp r0, 0x1
- beq _08038BF0
- cmp r0, 0x1
- bgt _08038BE8
- cmp r0, 0
- beq _08038C04
- b _08038C0C
- .pool
-_08038BE8:
- cmp r0, 0x2
- beq _08038C04
- cmp r0, 0x3
- bne _08038C0C
-_08038BF0:
- ldr r0, =gEnemyParty
- str r0, [sp, 0x4]
- ldr r1, =gPlayerParty
- str r1, [sp, 0x8]
- b _08038C0C
- .pool
-_08038C04:
- ldr r2, =gPlayerParty
- str r2, [sp, 0x4]
- ldr r3, =gEnemyParty
- str r3, [sp, 0x8]
-_08038C0C:
- movs r7, 0
- movs r0, 0
- mov r8, r0
- ldr r1, [sp]
- lsls r1, 2
- str r1, [sp, 0xC]
- movs r2, 0xCE
- lsls r2, 1
- mov r10, r2
- mov r9, r0
-_08038C20:
- movs r0, 0x64
- mov r4, r8
- muls r4, r0
- ldr r3, [sp, 0x4]
- adds r4, r3, r4
- adds r0, r4, 0
- movs r1, 0x41
- 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
- adds r1, r0, 0
- cmp r5, 0
- beq _08038C90
- cmp r5, r10
- beq _08038C64
- cmp r6, 0
- beq _08038C64
- cmp r1, 0
- bne _08038C64
- movs r0, 0x1
- mov r2, r9
- lsls r0, r2
- orrs r7, r0
-_08038C64:
- cmp r5, 0
- beq _08038C90
- cmp r6, 0
- beq _08038C7C
- cmp r5, r10
- beq _08038C74
- cmp r1, 0
- beq _08038C7C
-_08038C74:
- movs r0, 0x2
- mov r3, r9
- lsls r0, r3
- orrs r7, r0
-_08038C7C:
- cmp r5, 0
- beq _08038C90
- cmp r5, r10
- beq _08038C90
- cmp r6, 0
- bne _08038C90
- movs r0, 0x3
- mov r1, r9
- lsls r0, r1
- orrs r7, r0
-_08038C90:
- movs r2, 0x2
- add r9, r2
- movs r3, 0x1
- add r8, r3
- mov r0, r8
- cmp r0, 0x5
- ble _08038C20
- ldr r1, =gTasks
- ldr r2, [sp, 0xC]
- ldr r3, [sp]
- adds r0, r2, r3
- lsls r0, 3
- adds r0, r1
- strh r7, [r0, 0xE]
- movs r7, 0
- movs r0, 0
- mov r8, r0
- movs r1, 0xCE
- lsls r1, 1
- mov r10, r1
- mov r9, r0
-_08038CBA:
- movs r0, 0x64
- mov r4, r8
- muls r4, r0
- ldr r2, [sp, 0x8]
- adds r4, r2, r4
- adds r0, r4, 0
- movs r1, 0x41
- 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
- adds r1, r0, 0
- cmp r5, 0
- beq _08038D2A
- cmp r5, r10
- beq _08038CFE
- cmp r6, 0
- beq _08038CFE
- cmp r1, 0
- bne _08038CFE
- movs r0, 0x1
- mov r3, r9
- lsls r0, r3
- orrs r7, r0
-_08038CFE:
- cmp r5, 0
- beq _08038D2A
- cmp r6, 0
- beq _08038D16
- cmp r5, r10
- beq _08038D0E
- cmp r1, 0
- beq _08038D16
-_08038D0E:
- movs r0, 0x2
- mov r1, r9
- lsls r0, r1
- orrs r7, r0
-_08038D16:
- cmp r5, 0
- beq _08038D2A
- cmp r5, r10
- beq _08038D2A
- cmp r6, 0
- bne _08038D2A
- movs r0, 0x3
- mov r2, r9
- lsls r0, r2
- orrs r7, r0
-_08038D2A:
- movs r3, 0x2
- add r9, r3
- movs r0, 0x1
- add r8, r0
- mov r1, r8
- cmp r1, 0x5
- ble _08038CBA
- ldr r1, =gTasks
- ldr r2, [sp, 0xC]
- ldr r3, [sp]
- adds r0, r2, r3
- lsls r0, 3
- adds r0, r1
- strh r7, [r0, 0x10]
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8038B94
-
- thumb_func_start sub_8038D64
-sub_8038D64: @ 8038D64
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- bl SetHBlankCallback
- movs r0, 0
- bl SetVBlankCallback
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0x21
- negs r2, r2
- ands r1, r2
- str r1, [r0]
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _08038DAC
- ldr r0, =gMain
- ldr r0, [r0, 0x8]
- bl SetMainCallback2
- bl sub_8057028
- bl dp11_free
- bl sub_805F094
- b _08038EB6
- .pool
-_08038DAC:
- str r0, [sp]
- movs r1, 0xC0
- lsls r1, 19
- ldr r2, =0x05006000
- mov r0, sp
- bl CpuSet
- movs r0, 0x4C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x40
- movs r1, 0xF0
- bl SetGpuReg
- ldr r4, =0x00005051
- movs r0, 0x44
- adds r1, r4, 0
- bl SetGpuReg
- movs r0, 0x48
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x4A
- movs r1, 0
- bl SetGpuReg
- ldr r1, =gUnknown_02022E24
- movs r0, 0xF0
- strh r0, [r1]
- ldr r0, =gUnknown_02022E26
- strh r4, [r0]
- bl dp12_8087EA4
- ldr r0, =gUnknown_02038C28
- movs r3, 0xF0
- movs r1, 0xF0
- lsls r1, 3
- adds r2, r0, r1
- movs r1, 0x4F
-_08038DFE:
- strh r3, [r0]
- strh r3, [r2]
- adds r2, 0x2
- adds r0, 0x2
- subs r1, 0x1
- cmp r1, 0
- bge _08038DFE
- movs r1, 0x50
- ldr r0, =gUnknown_02038C28
- ldr r3, =0x0000ff10
- movs r4, 0x82
- lsls r4, 4
- adds r2, r0, r4
- adds r0, 0xA0
-_08038E1A:
- strh r3, [r0]
- strh r3, [r2]
- adds r2, 0x2
- adds r0, 0x2
- adds r1, 0x1
- cmp r1, 0x9F
- ble _08038E1A
- bl ResetPaletteFade
- ldr r0, =gUnknown_02022E14
- movs r4, 0
- strh r4, [r0]
- ldr r0, =gUnknown_02022E16
- strh r4, [r0]
- ldr r0, =gUnknown_02022E18
- strh r4, [r0]
- ldr r0, =gUnknown_02022E1A
- strh r4, [r0]
- ldr r0, =gUnknown_02022E1C
- strh r4, [r0]
- ldr r0, =gUnknown_02022E1E
- strh r4, [r0]
- ldr r0, =gUnknown_02022E20
- strh r4, [r0]
- ldr r0, =gUnknown_02022E22
- strh r4, [r0]
- bl c2_berry_program_update_menu
- ldr r0, =gUnknown_08C004E0
- movs r1, 0
- movs r2, 0x40
- bl LoadCompressedPalette
- bl sub_803570C
- bl ResetSpriteData
- bl ResetTasks
- bl sub_8036154
- movs r0, 0x4A
- movs r1, 0x37
- bl SetGpuReg
- bl FreeAllSpritePalettes
- ldr r1, =gReservedSpritePaletteCount
- movs r0, 0x4
- strb r0, [r1]
- ldr r0, =vblank_cb_08078BB4
- bl SetVBlankCallback
- ldr r0, =task00_0800F6FC
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0x87
- lsls r2, 1
- strh r2, [r1, 0xA]
- movs r2, 0x5A
- strh r2, [r1, 0xC]
- movs r2, 0x1
- strh r2, [r1, 0x12]
- bl sub_8038B94
- ldr r0, =sub_8038F14
- bl SetMainCallback2
- ldr r0, =gBattleCommunication
- strb r4, [r0]
-_08038EB6:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8038D64
-
- thumb_func_start sub_8038F14
-sub_8038F14: @ 8038F14
- push {lr}
- bl sub_8038F34
- bl AnimateSprites
- bl BuildOamBuffer
- bl RunTextPrinters
- bl UpdatePaletteFade
- bl RunTasks
- pop {r0}
- bx r0
- thumb_func_end sub_8038F14
-
- thumb_func_start sub_8038F34
-sub_8038F34: @ 8038F34
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r0, =gBattleCommunication
- ldrb r1, [r0]
- adds r4, r0, 0
- cmp r1, 0x9
- bls _08038F44
- b _080391C6
-_08038F44:
- lsls r0, r1, 2
- ldr r1, =_08038F58
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08038F58:
- .4byte _08038F80
- .4byte _08038FA0
- .4byte _08038FC2
- .4byte _080390C8
- .4byte _08039100
- .4byte _08039118
- .4byte _0803912C
- .4byte _0803914C
- .4byte _08039166
- .4byte _08039184
-_08038F80:
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- ldr r1, =gBattleCommunication
- movs r0, 0xFF
- strb r0, [r1, 0x1]
- b _08039174
- .pool
-_08038FA0:
- ldrb r0, [r4, 0x1]
- subs r0, 0x1
- strb r0, [r4, 0x1]
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _08038FB0
- b _080391C6
-_08038FB0:
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- b _0803910C
-_08038FC2:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08038FD0
- b _080391C6
-_08038FD0:
- bl sub_8185FAC
- ldr r2, =gMain
- ldr r1, =0x00000439
- adds r2, r1
- movs r1, 0x1
- ands r1, r0
- lsls r1, 2
- ldrb r3, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- movs r3, 0x2
- cmp r0, 0
- beq _08038FFC
- movs r3, 0x4
-_08038FFC:
- movs r4, 0
- ldr r6, =gSaveBlock2Ptr
- cmp r4, r3
- bge _08039022
- ldr r1, =gLinkPlayers
- ldrb r0, [r1]
- cmp r0, 0x3
- bne _08039022
- movs r5, 0xFF
- adds r2, r1, 0
-_08039010:
- adds r2, 0x1C
- adds r4, 0x1
- cmp r4, r3
- bge _08039022
- ldrh r1, [r2]
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0x3
- beq _08039010
-_08039022:
- ldr r0, [r6]
- ldr r1, =0x00000ca9
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- bne _080390AC
- cmp r4, r3
- bne _080390AC
- ldr r0, =0x000008d2
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08039074
- bl FreeAllWindowBuffers
- ldr r0, =sub_80392A8
- bl SetMainCallback2
- b _080391C6
- .pool
-_08039074:
- ldr r2, =gMain
- ldr r1, =0x00000439
- adds r0, r2, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _08039090
- ldr r0, [r2, 0x8]
- b _080390B0
- .pool
-_08039090:
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- bne _08039172
- ldr r0, =sub_80B3AF8
- movs r1, 0x5
- bl CreateTask
- b _08039172
- .pool
-_080390AC:
- ldr r0, =gMain
- ldr r0, [r0, 0x8]
-_080390B0:
- bl SetMainCallback2
- bl sub_8057028
- bl dp11_free
- bl sub_805F094
- b _080391C6
- .pool
-_080390C8:
- movs r0, 0
- str r0, [sp, 0x4]
- movs r1, 0xC0
- lsls r1, 19
- ldr r2, =0x05006000
- add r0, sp, 0x4
- bl CpuSet
- movs r4, 0
-_080390DA:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80363C4
- adds r4, 0x1
- cmp r4, 0x1
- ble _080390DA
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- b _08039172
- .pool
-_08039100:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080391C6
-_0803910C:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _080391C6
- .pool
-_08039118:
- ldr r0, =sub_80B3AF8
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _080391C6
- b _08039172
- .pool
-_0803912C:
- bl sub_800A520
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080391C6
- bl sub_800ADF8
- ldr r0, =gUnknown_0824978D
- movs r1, 0
- bl battle_show_message_maybe
- b _08039172
- .pool
-_0803914C:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- cmp r0, 0
- bne _080391C6
- bl sub_800A520
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080391C6
- b _08039172
-_08039166:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _08039172
- bl sub_800AC34
-_08039172:
- ldr r1, =gBattleCommunication
-_08039174:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080391C6
- .pool
-_08039184:
- ldr r2, =gMain
- ldr r1, =0x00000439
- adds r0, r2, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- adds r3, r2, 0
- cmp r0, 0
- beq _080391A6
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _080391A6
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080391C6
-_080391A6:
- ldr r0, =0x00000439
- adds r2, r3, r0
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldr r0, [r3, 0x8]
- bl SetMainCallback2
- bl sub_8057028
- bl dp11_free
- bl sub_805F094
-_080391C6:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8038F34
-
- thumb_func_start sub_80391E0
-sub_80391E0: @ 80391E0
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- cmp r1, 0x6
- bhi _080392A0
- lsls r0, r1, 2
- ldr r1, =_08039200
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08039200:
- .4byte _0803921C
- .4byte _08039230
- .4byte _08039244
- .4byte _08039258
- .4byte _0803926C
- .4byte _08039280
- .4byte _08039294
-_0803921C:
- ldr r0, =gUnknown_0831AA08
- lsls r1, r2, 2
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 30
- lsrs r0, 30
- b _080392A0
- .pool
-_08039230:
- ldr r0, =gUnknown_0831AA08
- lsls r1, r2, 2
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 28
- lsrs r0, 30
- b _080392A0
- .pool
-_08039244:
- ldr r0, =gUnknown_0831AA08
- lsls r1, r2, 2
- adds r1, r0
- ldrh r0, [r1]
- lsls r0, 23
- lsrs r0, 27
- b _080392A0
- .pool
-_08039258:
- ldr r0, =gUnknown_0831AA08
- lsls r1, r2, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- lsls r0, 29
- lsrs r0, 30
- b _080392A0
- .pool
-_0803926C:
- ldr r0, =gUnknown_0831AA08
- lsls r1, r2, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- lsls r0, 28
- lsrs r0, 31
- b _080392A0
- .pool
-_08039280:
- ldr r0, =gUnknown_0831AA08
- lsls r1, r2, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- lsls r0, 26
- lsrs r0, 30
- b _080392A0
- .pool
-_08039294:
- ldr r0, =gUnknown_0831AA08
- lsls r1, r2, 2
- adds r1, r0
- ldr r0, [r1]
- lsls r0, 8
- lsrs r0, 22
-_080392A0:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80391E0
-
- thumb_func_start sub_80392A8
-sub_80392A8: @ 80392A8
- push {r4,lr}
- sub sp, 0x8
- movs r0, 0
- bl SetHBlankCallback
- movs r0, 0
- bl SetVBlankCallback
- movs r4, 0
- str r4, [sp, 0x4]
- movs r1, 0xC0
- lsls r1, 19
- ldr r2, =0x05006000
- add r0, sp, 0x4
- bl CpuSet
- bl ResetPaletteFade
- ldr r0, =gUnknown_02022E14
- strh r4, [r0]
- ldr r0, =gUnknown_02022E16
- strh r4, [r0]
- ldr r0, =gUnknown_02022E18
- strh r4, [r0]
- ldr r0, =gUnknown_02022E1A
- strh r4, [r0]
- ldr r0, =gUnknown_02022E1C
- strh r4, [r0]
- ldr r0, =gUnknown_02022E1E
- strh r4, [r0]
- ldr r0, =gUnknown_02022E20
- strh r4, [r0]
- ldr r0, =gUnknown_02022E22
- strh r4, [r0]
- bl c2_berry_program_update_menu
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- bl sub_803570C
-_080392FE:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80363C4
- adds r4, 0x1
- cmp r4, 0x1
- ble _080392FE
- bl ResetSpriteData
- bl ResetTasks
- bl FreeAllSpritePalettes
- ldr r1, =gReservedSpritePaletteCount
- movs r0, 0x4
- strb r0, [r1]
- ldr r0, =vblank_cb_08078BB4
- bl SetVBlankCallback
- ldr r0, =sub_803937C
- bl SetMainCallback2
- movs r0, 0x1
- negs r0, r0
- movs r4, 0
- str r4, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r0, =gBattleCommunication
- strb r4, [r0]
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80392A8
-
- thumb_func_start sub_803937C
-sub_803937C: @ 803937C
- push {lr}
- bl sub_803939C
- bl AnimateSprites
- bl BuildOamBuffer
- bl RunTextPrinters
- bl UpdatePaletteFade
- bl RunTasks
- pop {r0}
- bx r0
- thumb_func_end sub_803937C
-
- thumb_func_start sub_803939C
-sub_803939C: @ 803939C
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r0, =gBattleCommunication
- ldrb r1, [r0]
- adds r4, r0, 0
- cmp r1, 0xC
- bls _080393AC
- b _0803975E
-_080393AC:
- lsls r0, r1, 2
- ldr r1, =_080393C0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080393C0:
- .4byte _080393F4
- .4byte _08039414
- .4byte _08039450
- .4byte _08039470
- .4byte _0803949C
- .4byte _080394D8
- .4byte _0803957C
- .4byte _08039704
- .4byte _080395CC
- .4byte _08039610
- .4byte _08039678
- .4byte _080396A8
- .4byte _08039704
-_080393F4:
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- b _0803975C
- .pool
-_08039414:
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08039434
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- bne _08039434
- ldr r0, =sub_80B3AF8
- movs r1, 0x5
- bl CreateTask
-_08039434:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- b _0803975C
- .pool
-_08039450:
- ldr r0, =sub_80B3AF8
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _0803945E
- b _0803975E
-_0803945E:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- b _0803975C
- .pool
-_08039470:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0803947E
- b _0803975E
-_0803947E:
- ldr r0, =gText_RecordBattleToPass
- movs r1, 0
- bl battle_show_message_maybe
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- b _0803975C
- .pool
-_0803949C:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- beq _080394AC
- b _0803975E
-_080394AC:
- str r0, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- ldr r0, =gText_BattleYesNoChoice
- movs r1, 0xC
- bl battle_show_message_maybe
- ldr r4, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r4, 0x1]
- bl sub_8056B74
- b _080396EA
- .pool
-_080394D8:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08039500
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- bne _080394EC
- b _0803975E
-_080394EC:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0
- b _0803951E
- .pool
-_08039500:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08039526
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- beq _08039510
- b _0803975E
-_08039510:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0x1
-_0803951E:
- strb r0, [r4, 0x1]
- bl sub_8056B74
- b _0803975E
-_08039526:
- movs r5, 0x1
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _08039560
- movs r0, 0x5
- bl PlaySE
- ldr r4, =gBattleCommunication
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- beq _08039540
- b _080396EA
-_08039540:
- str r5, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- bl sub_8185338
- strb r0, [r4, 0x1]
- movs r0, 0xA
- strb r0, [r4]
- b _0803975E
- .pool
-_08039560:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0803956A
- b _0803975E
-_0803956A:
- movs r0, 0x5
- bl PlaySE
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- b _0803975C
- .pool
-_0803957C:
- bl sub_800A520
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0803958A
- b _0803975E
-_0803958A:
- str r0, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080395B4
- bl sub_800ADF8
- ldr r0, =gUnknown_0824978D
- movs r1, 0
- bl battle_show_message_maybe
-_080395B4:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- b _0803975C
- .pool
-_080395CC:
- ldrb r0, [r4, 0x1]
- subs r0, 0x1
- strb r0, [r4, 0x1]
- lsls r0, 24
- cmp r0, 0
- beq _080395DA
- b _0803975E
-_080395DA:
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080395F6
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _080395F6
- bl sub_800AC34
-_080395F6:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- b _0803975C
- .pool
-_08039610:
- ldr r2, =gMain
- ldr r1, =0x00000439
- adds r0, r2, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- adds r3, r2, 0
- cmp r0, 0
- beq _08039634
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- bne _08039634
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08039634
- b _0803975E
-_08039634:
- ldr r0, =0x00000439
- adds r2, r3, r0
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08039650
- b _0803975E
-_08039650:
- ldr r0, [r3, 0x8]
- bl SetMainCallback2
- bl sub_8057028
- bl dp11_free
- bl sub_805F094
- b _0803975E
- .pool
-_08039678:
- ldrb r0, [r4, 0x1]
- cmp r0, 0x1
- bne _080396A0
- movs r0, 0x37
- bl PlaySE
- ldr r0, =gText_BattleRecordedOnPass
-_08039686:
- bl StrCpyDecodeToDisplayedStringBattle
- ldr r0, =gDisplayedStringBattle
- movs r1, 0
- bl battle_show_message_maybe
- movs r0, 0x80
- strb r0, [r4, 0x1]
- b _080396EA
- .pool
-_080396A0:
- ldr r0, =gUnknown_08242481
- b _08039686
- .pool
-_080396A8:
- bl sub_800A520
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0803975E
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- cmp r0, 0
- bne _0803975E
- ldr r4, =gBattleCommunication
- ldrb r0, [r4, 0x1]
- subs r0, 0x1
- strb r0, [r4, 0x1]
- lsls r0, 24
- cmp r0, 0
- bne _0803975E
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080396EA
- bl sub_800ADF8
- ldr r0, =gUnknown_0824978D
- movs r1, 0
- bl battle_show_message_maybe
-_080396EA:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _0803975E
- .pool
-_08039704:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- bne _0803975E
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _08039744
- bl sub_800A520
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0803975E
- movs r0, 0x1
- negs r0, r0
- str r4, [sp]
- b _0803974A
- .pool
-_08039744:
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
-_0803974A:
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, =gBattleCommunication
- movs r0, 0x20
- strb r0, [r1, 0x1]
- movs r0, 0x8
-_0803975C:
- strb r0, [r1]
-_0803975E:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803939C
-
- thumb_func_start shedinja_something
-shedinja_something: @ 803976C
- push {r4,r5,lr}
- sub sp, 0x10
- adds r4, r0, 0
- add r5, sp, 0xC
- movs r0, 0x1
- strb r0, [r5]
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- ldr r1, =0x0000012f
- cmp r0, r1
- bne _080397B4
- adds r0, r4, 0
- movs r1, 0x3
- bl GetMonData
- ldrb r1, [r5]
- cmp r0, r1
- beq _080397B4
- adds r0, r4, 0
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- ldr r1, =gUnknown_0831ACA0
- mov r0, sp
- bl StringCompareWithoutExtCtrlCodes
- cmp r0, 0
- bne _080397B4
- adds r0, r4, 0
- movs r1, 0x3
- adds r2, r5, 0
- bl SetMonData
-_080397B4:
- add sp, 0x10
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end shedinja_something
-
- thumb_func_start sub_80397C4
-sub_80397C4: @ 80397C4
- ldr r2, =gUnknown_0831ABA0
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- lsls r1, 3
- adds r1, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 3
- bx lr
- .pool
- thumb_func_end sub_80397C4
-
- thumb_func_start oac_poke_opponent
-oac_poke_opponent: @ 80397DC
- push {lr}
- sub sp, 0x4
- ldr r1, =sub_803980C
- str r1, [r0, 0x1C]
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- movs r0, 0x80
- lsls r0, 10
- ldr r1, =0x00002108
- str r1, [sp]
- movs r1, 0
- movs r2, 0xA
- movs r3, 0xA
- bl BeginNormalPaletteFade
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end oac_poke_opponent
-
- thumb_func_start sub_803980C
-sub_803980C: @ 803980C
- push {lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_020243FC
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0803982C
- ldrh r0, [r2, 0x24]
- adds r0, 0x2
- strh r0, [r2, 0x24]
- lsls r0, 16
- cmp r0, 0
- bne _0803982C
- ldr r0, =sub_8039838
- str r0, [r2, 0x1C]
-_0803982C:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803980C
-
- thumb_func_start sub_8039838
-sub_8039838: @ 8039838
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08039880
- ldrh r0, [r4, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8076918
- ldr r1, =gHealthBoxesIds
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- adds r0, r1
- ldrb r0, [r0]
- bl sub_80729D0
- ldr r0, =sub_8039894
- str r0, [r4, 0x1C]
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- movs r0, 0x80
- lsls r0, 10
- ldr r1, =0x00002108
- str r1, [sp]
- movs r1, 0
- movs r2, 0xA
- movs r3, 0
- bl BeginNormalPaletteFade
-_08039880:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039838
-
- thumb_func_start sub_8039894
-sub_8039894: @ 8039894
- push {lr}
- adds r2, r0, 0
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080398B0
- ldrh r1, [r2, 0x32]
- adds r0, r2, 0
- movs r2, 0
- movs r3, 0x1
- bl BattleAnimateFrontSprite
-_080398B0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039894
-
- thumb_func_start SpriteCallbackDummy_2
-SpriteCallbackDummy_2: @ 80398B8
- bx lr
- thumb_func_end SpriteCallbackDummy_2
-
- thumb_func_start sub_80398BC
-sub_80398BC: @ 80398BC
- movs r1, 0x6
- strh r1, [r0, 0x34]
- movs r1, 0x1
- strh r1, [r0, 0x36]
- ldr r1, =sub_80398D0
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_80398BC
-
- thumb_func_start sub_80398D0
-sub_80398D0: @ 80398D0
- push {r4,lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x36]
- subs r0, 0x1
- strh r0, [r3, 0x36]
- lsls r0, 16
- cmp r0, 0
- bne _08039924
- movs r0, 0x8
- strh r0, [r3, 0x36]
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- ldrb r2, [r0]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r4, 0x5
- negs r4, r4
- adds r0, r4, 0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- ldrh r0, [r3, 0x34]
- subs r0, 0x1
- strh r0, [r3, 0x34]
- lsls r0, 16
- asrs r2, r0, 16
- cmp r2, 0
- bne _08039924
- ldrb r1, [r1]
- adds r0, r4, 0
- ands r0, r1
- mov r1, r12
- strb r0, [r1]
- ldr r0, =SpriteCallbackDummy_2
- str r0, [r3, 0x1C]
- ldr r0, =gUnknown_02022F88
- str r2, [r0]
-_08039924:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80398D0
-
- thumb_func_start sub_8039934
-sub_8039934: @ 8039934
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r9, r0
- ldrh r0, [r0, 0x2E]
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r6, 2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- beq _0803995C
- adds r4, r0, 0
- b _08039960
- .pool
-_0803995C:
- mov r0, r9
- ldrh r4, [r0, 0x32]
-_08039960:
- ldr r1, =gBattlePartyID
- lsls r0, r6, 1
- adds r5, r0, r1
- ldrh r0, [r5]
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r7, =gEnemyParty
- adds r0, r7
- movs r1, 0
- bl GetMonData
- cmp r4, 0xC9
- bne _080399E4
- ldrh r0, [r5]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r7
- movs r1, 0
- bl GetMonData
- adds r2, r0, 0
- movs r0, 0xC0
- lsls r0, 18
- ands r0, r2
- lsrs r0, 18
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r2
- lsrs r1, 12
- orrs r0, r1
- movs r1, 0xC0
- lsls r1, 2
- ands r1, r2
- lsrs r1, 6
- orrs r0, r1
- movs r1, 0x3
- ands r1, r2
- orrs r0, r1
- movs r1, 0x1C
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _080399D0
- movs r0, 0xC9
- b _080399DA
- .pool
-_080399D0:
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
-_080399DA:
- ldr r1, =gUnknown_08300D38
- lsls r0, 2
- b _08039A1C
- .pool
-_080399E4:
- ldr r0, =0x00000181
- cmp r4, r0
- bne _08039A08
- ldr r0, =gUnknown_08525F78
- ldr r1, =gBattleMonForms
- adds r1, r6, r1
- ldrb r1, [r1]
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- b _08039A20
- .pool
-_08039A08:
- movs r0, 0xCE
- lsls r0, 1
- cmp r4, r0
- bls _08039A18
- ldr r0, =gUnknown_08300D38
- b _08039A1E
- .pool
-_08039A18:
- ldr r1, =gUnknown_08300D38
- lsls r0, r4, 2
-_08039A1C:
- adds r0, r1
-_08039A1E:
- ldrb r0, [r0, 0x1]
-_08039A20:
- lsrs r1, r0, 3
- movs r0, 0x8
- subs r0, r1
- mov r1, r9
- strh r0, [r1, 0x34]
- movs r0, 0x1
- strh r0, [r1, 0x36]
- ldr r0, =sub_8039A48
- str r0, [r1, 0x1C]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039934
-
- thumb_func_start sub_8039A48
-sub_8039A48: @ 8039A48
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x36]
- subs r0, 0x1
- strh r0, [r4, 0x36]
- lsls r0, 16
- cmp r0, 0
- bne _08039AC8
- movs r0, 0x2
- strh r0, [r4, 0x36]
- ldrh r0, [r4, 0x26]
- adds r0, 0x8
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x34]
- subs r0, 0x1
- strh r0, [r4, 0x34]
- lsls r0, 16
- cmp r0, 0
- bge _08039A7C
- adds r0, r4, 0
- bl FreeSpriteOamMatrix
- adds r0, r4, 0
- bl DestroySprite
- b _08039AC8
-_08039A7C:
- ldrh r0, [r4, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- bl GetBankIdentity
- ldr r1, =gBattleSpritesGfx
- ldr r1, [r1]
- lsls r0, 24
- lsrs r0, 22
- adds r1, 0x4
- adds r1, r0
- ldr r2, =gBattleMonForms
- movs r3, 0x2E
- ldrsh r0, [r4, r3]
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 11
- ldr r1, [r1]
- adds r1, r0
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- lsls r0, 8
- adds r1, r0
- movs r2, 0
- movs r0, 0xFF
-_08039AAE:
- strb r2, [r1]
- adds r1, 0x1
- subs r0, 0x1
- cmp r0, 0
- bge _08039AAE
- ldr r0, =gBattleMonForms
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- adds r1, r0
- ldrb r1, [r1]
- adds r0, r4, 0
- bl StartSpriteAnim
-_08039AC8:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039A48
-
- thumb_func_start sub_8039AD8
-sub_8039AD8: @ 8039AD8
- movs r1, 0x8
- strh r1, [r0, 0x34]
- adds r1, r0, 0
- adds r1, 0x3E
- ldrb r1, [r1]
- lsls r1, 29
- lsrs r1, 31
- strh r1, [r0, 0x36]
- ldr r1, =sub_8039AF4
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_8039AD8
-
- thumb_func_start sub_8039AF4
-sub_8039AF4: @ 8039AF4
- push {lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x34]
- subs r0, 0x1
- strh r0, [r3, 0x34]
- lsls r0, 16
- cmp r0, 0
- bne _08039B26
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- ldrb r2, [r0]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- movs r0, 0x8
- strh r0, [r3, 0x34]
-_08039B26:
- pop {r0}
- bx r0
- thumb_func_end sub_8039AF4
-
- thumb_func_start sub_8039B2C
-sub_8039B2C: @ 8039B2C
- movs r1, 0x3E
- adds r1, r0
- mov r12, r1
- movs r1, 0x1
- ldrh r2, [r0, 0x36]
- ands r2, r1
- lsls r2, 2
- mov r1, r12
- ldrb r3, [r1]
- movs r1, 0x5
- negs r1, r1
- ands r1, r3
- orrs r1, r2
- mov r2, r12
- strb r1, [r2]
- movs r1, 0
- strh r1, [r0, 0x36]
- ldr r1, =SpriteCallbackDummy_2
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_8039B2C
-
- thumb_func_start sub_8039B58
-sub_8039B58: @ 8039B58
- push {r4,lr}
- adds r4, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08039BA0
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08039B80
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x02000002
- ands r0, r1
- cmp r0, 0
- beq _08039B94
-_08039B80:
- ldrh r0, [r4, 0x32]
- bl HasTwoFramesAnimation
- lsls r0, 24
- cmp r0, 0
- beq _08039B94
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAnim
-_08039B94:
- ldrh r1, [r4, 0x32]
- adds r0, r4, 0
- movs r2, 0x1
- movs r3, 0x1
- bl BattleAnimateFrontSprite
-_08039BA0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039B58
-
- thumb_func_start sub_8039BB4
-sub_8039BB4: @ 8039BB4
- ldr r1, =oac_poke_ally_
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_8039BB4
-
- thumb_func_start oac_poke_ally_
-oac_poke_ally_: @ 8039BC0
- push {lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_020243FC
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08039BE4
- ldrh r0, [r2, 0x24]
- subs r0, 0x2
- strh r0, [r2, 0x24]
- lsls r0, 16
- asrs r1, r0, 16
- cmp r1, 0
- bne _08039BE4
- ldr r0, =nullsub_19
- str r0, [r2, 0x1C]
- strh r1, [r2, 0x30]
-_08039BE4:
- pop {r0}
- bx r0
- .pool
- thumb_func_end oac_poke_ally_
-
- thumb_func_start sub_8039BF0
-sub_8039BF0: @ 8039BF0
- ldr r1, =nullsub_19
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_8039BF0
-
- thumb_func_start nullsub_19
-nullsub_19: @ 8039BFC
- bx lr
- thumb_func_end nullsub_19
-
- thumb_func_start sub_8039C00
-sub_8039C00: @ 8039C00
- push {lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_020243FC
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08039C20
- ldrh r0, [r2, 0x30]
- ldrh r1, [r2, 0x24]
- adds r0, r1
- strh r0, [r2, 0x24]
- ldrh r0, [r2, 0x32]
- ldrh r1, [r2, 0x26]
- adds r0, r1
- strh r0, [r2, 0x26]
-_08039C20:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039C00
-
- thumb_func_start dp11b_obj_instanciate
-dp11b_obj_instanciate: @ 8039C28
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- lsls r2, 24
- lsrs r2, 24
- mov r9, r2
- lsls r3, 24
- lsrs r3, 24
- mov r10, r3
- cmp r1, 0
- beq _08039C64
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- lsls r2, r4, 1
- adds r0, r2, r4
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- b _08039C76
- .pool
-_08039C64:
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- lsls r2, r4, 1
- adds r0, r2, r4
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
-_08039C76:
- ands r0, r1
- adds r6, r2, 0
- cmp r0, 0
- bne _08039D2C
- ldr r0, =objc_dp11b_pingpong
- bl CreateInvisibleSpriteWithCallback
- lsls r0, 24
- lsrs r5, r0, 24
- mov r0, r8
- cmp r0, 0x1
- bne _08039CD0
- ldr r0, =gHealthBoxesIds
- adds r0, r4, r0
- ldrb r7, [r0]
- ldr r2, =gUnknown_020244D0
- ldr r0, [r2]
- ldr r0, [r0, 0x4]
- adds r1, r6, r4
- lsls r1, 2
- adds r0, r1, r0
- strb r5, [r0, 0x2]
- ldr r0, [r2]
- ldr r0, [r0, 0x4]
- adds r1, r0
- ldrb r0, [r1]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1]
- ldr r2, =gSprites
- lsls r3, r5, 4
- adds r0, r3, r5
- lsls r0, 2
- adds r0, r2
- movs r1, 0x80
- b _08039CFE
- .pool
-_08039CD0:
- ldr r0, =gBankSpriteIds
- adds r0, r4, r0
- ldrb r7, [r0]
- ldr r2, =gUnknown_020244D0
- ldr r0, [r2]
- ldr r0, [r0, 0x4]
- adds r1, r6, r4
- lsls r1, 2
- adds r0, r1, r0
- strb r5, [r0, 0x3]
- ldr r0, [r2]
- ldr r0, [r0, 0x4]
- adds r1, r0
- ldrb r0, [r1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1]
- ldr r2, =gSprites
- lsls r3, r5, 4
- adds r0, r3, r5
- lsls r0, 2
- adds r0, r2
- movs r1, 0xC0
-_08039CFE:
- strh r1, [r0, 0x2E]
- adds r4, r2, 0
- adds r1, r3, r5
- lsls r1, 2
- adds r1, r4
- mov r2, r9
- lsls r0, r2, 24
- asrs r0, 24
- movs r2, 0
- strh r0, [r1, 0x30]
- mov r3, r10
- lsls r0, r3, 24
- asrs r0, 24
- strh r0, [r1, 0x32]
- strh r7, [r1, 0x34]
- mov r0, r8
- strh r0, [r1, 0x36]
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r4
- strh r2, [r0, 0x24]
- strh r2, [r0, 0x26]
-_08039D2C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end dp11b_obj_instanciate
-
- thumb_func_start dp11b_obj_free
-dp11b_obj_free: @ 8039D48
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x1
- bne _08039D9C
- ldr r6, =gUnknown_020244D0
- ldr r0, [r6]
- ldr r1, [r0, 0x4]
- lsls r0, r2, 1
- adds r0, r2
- lsls r5, r0, 2
- adds r3, r5, r1
- ldrb r1, [r3]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08039DEA
- ldr r2, =gSprites
- ldrb r1, [r3, 0x2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x34]
- lsls r1, 24
- lsrs r4, r1, 24
- bl DestroySprite
- ldr r0, [r6]
- ldr r1, [r0, 0x4]
- adds r1, r5, r1
- ldrb r2, [r1]
- movs r0, 0x3
- negs r0, r0
- b _08039DD6
- .pool
-_08039D9C:
- ldr r6, =gUnknown_020244D0
- ldr r0, [r6]
- ldr r1, [r0, 0x4]
- lsls r0, r2, 1
- adds r0, r2
- lsls r5, r0, 2
- adds r3, r5, r1
- ldrb r1, [r3]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08039DEA
- ldr r2, =gSprites
- ldrb r1, [r3, 0x3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x34]
- lsls r1, 24
- lsrs r4, r1, 24
- bl DestroySprite
- ldr r0, [r6]
- ldr r1, [r0, 0x4]
- adds r1, r5, r1
- ldrb r2, [r1]
- movs r0, 0x5
- negs r0, r0
-_08039DD6:
- ands r0, r2
- strb r0, [r1]
- ldr r0, =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- movs r0, 0
- strh r0, [r1, 0x24]
- strh r0, [r1, 0x26]
-_08039DEA:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end dp11b_obj_free
-
- thumb_func_start objc_dp11b_pingpong
-objc_dp11b_pingpong: @ 8039DF8
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x34]
- lsls r0, 24
- lsrs r5, r0, 24
- movs r1, 0x36
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bne _08039E10
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- b _08039E14
-_08039E10:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
-_08039E14:
- movs r2, 0x32
- ldrsh r1, [r4, r2]
- bl Sin
- ldr r2, =gSprites
- lsls r1, r5, 4
- adds r1, r5
- lsls r1, 2
- adds r1, r2
- ldrh r2, [r4, 0x32]
- adds r0, r2
- strh r0, [r1, 0x26]
- ldrh r0, [r4, 0x30]
- ldrh r1, [r4, 0x2E]
- adds r0, r1
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x2E]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end objc_dp11b_pingpong
-
- thumb_func_start sub_8039E44
-sub_8039E44: @ 8039E44
- push {lr}
- adds r2, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08039E5C
- ldrh r1, [r2, 0x32]
- adds r0, r2, 0
- bl BattleAnimateBackSprite
-_08039E5C:
- pop {r0}
- bx r0
- thumb_func_end sub_8039E44
-
- thumb_func_start sub_8039E60
-sub_8039E60: @ 8039E60
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8039E9C
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08039E7A
- ldr r0, =nullsub_19
- str r0, [r4, 0x1C]
-_08039E7A:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039E60
-
- thumb_func_start sub_8039E84
-sub_8039E84: @ 8039E84
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r0, =sub_8039E60
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039E84
-
- thumb_func_start sub_8039E9C
-sub_8039E9C: @ 8039E9C
- push {lr}
- adds r2, r0, 0
- adds r0, 0x2C
- ldrb r1, [r0]
- movs r0, 0x3F
- ands r0, r1
- cmp r0, 0
- bne _08039EBE
- ldr r1, =gUnknown_0831ACE0
- adds r0, r2, 0
- adds r0, 0x2B
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- adds r0, r2, 0
- adds r0, 0x28
- strb r1, [r0]
-_08039EBE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039E9C
-
- thumb_func_start nullsub_20
-nullsub_20: @ 8039EC8
- bx lr
- thumb_func_end nullsub_20
-
- thumb_func_start sub_8039ECC
-sub_8039ECC: @ 8039ECC
- push {lr}
- bl sub_8039F40
- ldr r1, =gBattleCommunication
- movs r0, 0
- strb r0, [r1, 0x1]
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_8012FAC
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039ECC
-
- thumb_func_start sub_8039EF0
-sub_8039EF0: @ 8039EF0
- push {r4,r5,lr}
- ldr r0, =gBattleMainFunc
- ldr r0, [r0]
- bl _call_via_r0
- ldr r1, =gActiveBank
- movs r0, 0
- strb r0, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r0, 0
- beq _08039F2A
- ldr r5, =gBattleBankFunc
- adds r4, r1, 0
-_08039F0C:
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r5
- ldr r0, [r0]
- bl _call_via_r0
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _08039F0C
-_08039F2A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039EF0
-
- thumb_func_start sub_8039F40
-sub_8039F40: @ 8039F40
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r0, 0
- bl sub_803D580
- bl sub_803D6A0
- movs r2, 0
- movs r3, 0
- ldr r0, =gUnknown_02024260
- mov r10, r0
- ldr r1, =gUnknown_02024258
- mov r9, r1
- ldr r0, =gUnknown_02024250
- mov r8, r0
- ldr r1, =gLastUsedMovesByBanks
- mov r12, r1
- ldr r5, =gDisableStructs
- movs r4, 0
- ldr r7, =gUnknown_02024240
- ldr r6, =gUnknown_02024268
-_08039F70:
- ldr r0, =gStatuses3
- adds r0, r4, r0
- str r3, [r0]
- movs r1, 0
-_08039F78:
- adds r0, r5, r1
- strb r3, [r0]
- adds r1, 0x1
- cmp r1, 0x1B
- bls _08039F78
- movs r0, 0x2
- strb r0, [r5, 0x16]
- ldr r1, =gUnknown_02024284
- adds r0, r2, r1
- strb r3, [r0]
- mov r0, r12
- strh r3, [r0]
- mov r1, r8
- strh r3, [r1]
- mov r0, r9
- strh r3, [r0]
- mov r1, r10
- strh r3, [r1]
- ldr r0, =gUnknown_02024270
- adds r1, r2, r0
- movs r0, 0xFF
- strb r0, [r1]
- strh r3, [r6]
- strh r3, [r7]
- ldr r1, =gBattleResources
- ldr r0, [r1]
- ldr r0, [r0, 0x4]
- adds r0, r4
- str r3, [r0]
- ldr r1, =gUnknown_02024230
- adds r0, r4, r1
- str r3, [r0]
- movs r0, 0x2
- add r10, r0
- add r9, r0
- add r8, r0
- add r12, r0
- adds r5, 0x1C
- adds r4, 0x4
- adds r7, 0x2
- adds r6, 0x2
- adds r2, 0x1
- cmp r2, 0x3
- ble _08039F70
- movs r5, 0
- ldr r3, =gSideTimers
- ldr r4, =gSideAffecting
- movs r2, 0x1
-_08039FD8:
- strh r5, [r4]
- movs r1, 0
-_08039FDC:
- adds r0, r3, r1
- strb r5, [r0]
- adds r1, 0x1
- cmp r1, 0xB
- bls _08039FDC
- adds r3, 0xC
- adds r4, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _08039FD8
- movs r1, 0
- ldr r2, =gBankAttacker
- strb r1, [r2]
- ldr r0, =gBankTarget
- strb r1, [r0]
- ldr r2, =gBattleWeather
- strh r1, [r2]
- ldr r1, =gWishFutureKnock
- movs r2, 0
- movs r3, 0
-_0803A004:
- adds r0, r1, r2
- strb r3, [r0]
- adds r2, 0x1
- cmp r2, 0x2B
- bls _0803A004
- ldr r2, =gHitMarker
- movs r0, 0
- str r0, [r2]
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- bne _0803A090
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- bne _0803A0AE
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x15]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0803A0AE
- movs r0, 0x80
- b _0803A0AC
- .pool
-_0803A090:
- ldr r0, =0x02000002
- ands r1, r0
- cmp r1, 0
- bne _0803A0AE
- bl sub_8185FB8
- lsls r0, 24
- cmp r0, 0
- beq _0803A0AE
- ldr r1, =gHitMarker
- ldr r0, [r1]
- movs r1, 0x80
- orrs r0, r1
- ldr r2, =gHitMarker
-_0803A0AC:
- str r0, [r2]
-_0803A0AE:
- ldr r3, =gBattleScripting
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x15]
- lsls r0, 30
- lsrs r0, 31
- movs r1, 0
- strb r0, [r3, 0x1D]
- ldr r0, =gUnknown_02024212
- strb r1, [r0]
- ldr r0, =gBattleOutcome
- strb r1, [r0]
- ldr r0, =gBattleExecBuffer
- str r1, [r0]
- ldr r0, =gUnknown_0202432E
- movs r2, 0
- strh r1, [r0]
- ldr r1, =gBattleResources
- ldr r0, [r1]
- ldr r0, [r0, 0x8]
- adds r0, 0x20
- strb r2, [r0]
- ldr r0, [r1]
- ldr r0, [r0, 0xC]
- adds r0, 0x20
- strb r2, [r0]
- ldr r5, =gUnknown_0202432C
- ldr r6, =gBattleMoveDamage
- ldr r7, =gUnknown_020243FC
- ldr r0, =gUnknown_03005D54
- mov r8, r0
- ldr r1, =gAbsentBankFlags
- mov r9, r1
- ldr r2, =gEnemyParty
- mov r10, r2
- ldr r1, =gBattleCommunication
- movs r2, 0
- adds r0, r1, 0x7
-_0803A0FA:
- strb r2, [r0]
- subs r0, 0x1
- cmp r0, r1
- bge _0803A0FA
- movs r4, 0
- strh r4, [r5]
- movs r0, 0
- str r0, [r6]
- strh r0, [r7]
- strb r4, [r3, 0x18]
- strb r4, [r3, 0x19]
- mov r0, r8
- strb r4, [r0]
- mov r1, r9
- strb r4, [r1]
- ldr r5, =gBattleStruct
- ldr r0, [r5]
- adds r0, 0x6C
- strb r4, [r0]
- ldr r0, [r5]
- adds r0, 0x79
- strb r4, [r0]
- ldr r0, [r5]
- adds r0, 0x7A
- strb r4, [r0]
- mov r0, r10
- movs r1, 0xB
- bl GetMonData
- ldr r6, [r5]
- adds r6, 0x7C
- ldr r2, =gBaseStats
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r1, [r1, 0x8]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =0x000004fb
- bl __divsi3
- strb r0, [r6]
- ldr r0, [r5]
- adds r0, 0x7B
- movs r1, 0x3
- strb r1, [r0]
- ldr r0, [r5]
- strb r4, [r0, 0x12]
- ldr r0, [r5]
- adds r0, 0x4A
- movs r1, 0x1
- strb r1, [r0]
- movs r2, 0
- movs r1, 0
- adds r6, r5, 0
-_0803A16A:
- ldr r0, [r5]
- adds r0, r2, r0
- adds r0, 0x98
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, r2, r0
- adds r0, 0xB8
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, r2, r0
- adds r0, 0xC8
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, r2, r0
- adds r0, 0xD0
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, r2, r0
- adds r0, 0xE0
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, r2, r0
- adds r0, 0xE8
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, r2, r0
- adds r0, 0xF0
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, r2, r0
- adds r0, 0xF8
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x7
- ble _0803A16A
- movs r2, 0
- ldr r4, =gBattleStruct
- movs r3, 0xA5
- lsls r3, 2
- movs r1, 0x6
-_0803A1BA:
- ldr r0, [r4]
- adds r0, r2, r0
- adds r0, r3
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x3
- ble _0803A1BA
- ldr r0, [r6]
- adds r0, 0xDF
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r6]
- adds r0, 0x92
- strb r1, [r0]
- bl Random
- ldr r1, =gUnknown_02024330
- strh r0, [r1]
- ldr r1, =gBattleResults
- movs r2, 0
- movs r3, 0
-_0803A1E4:
- adds r0, r1, r2
- strb r3, [r0]
- adds r2, 0x1
- cmp r2, 0x43
- bls _0803A1E4
- ldr r0, =gEnemyParty
- bl IsMonShiny
- ldr r3, =gBattleResults
- movs r1, 0x1
- ands r1, r0
- lsls r1, 6
- ldrb r2, [r3, 0x5]
- movs r0, 0x41
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x5]
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- movs r1, 0xA8
- lsls r1, 2
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- ldr r2, =0x000002a1
- adds r0, r2
- strb r1, [r0]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8039F40
-
- thumb_func_start sub_803A284
-sub_803A284: @ 803A284
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- ldr r4, =gDisableStructs
- ldr r5, =gActiveBank
- ldrb r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- mov r1, sp
- adds r0, r4
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldr r0, [r0]
- str r0, [r1]
- ldr r2, =gBattleMoves
- ldr r3, =gCurrentMove
- ldrh r1, [r3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- mov r12, r4
- mov r9, r5
- ldr r6, =gStatuses3
- mov r10, r6
- cmp r0, 0x7F
- beq _0803A35C
- movs r5, 0
- mov r6, r9
- movs r4, 0x58
- ldr r2, =gBattleMons
- adds r2, 0x18
- movs r1, 0x6
-_0803A2D4:
- ldrb r0, [r6]
- muls r0, r4
- adds r0, r5, r0
- adds r0, r2
- strb r1, [r0]
- adds r5, 0x1
- cmp r5, 0x7
- ble _0803A2D4
- movs r5, 0
- ldr r7, =gNoOfAllBanks
- ldrb r7, [r7]
- cmp r5, r7
- bge _0803A348
- ldr r0, =gBattleMons + 0x50
- mov r8, r0
- ldr r4, =gDisableStructs
- ldr r3, =gStatuses3
-_0803A2F6:
- movs r0, 0x58
- muls r0, r5
- mov r1, r8
- adds r2, r0, r1
- ldr r1, [r2]
- movs r0, 0x80
- lsls r0, 19
- ands r0, r1
- cmp r0, 0
- beq _0803A31A
- ldrb r0, [r4, 0x14]
- ldr r6, =gActiveBank
- ldrb r6, [r6]
- cmp r0, r6
- bne _0803A31A
- ldr r0, =0xfbffffff
- ands r1, r0
- str r1, [r2]
-_0803A31A:
- ldr r1, [r3]
- movs r0, 0x18
- ands r0, r1
- cmp r0, 0
- beq _0803A33A
- ldrb r0, [r4, 0x15]
- ldr r7, =gActiveBank
- ldrb r7, [r7]
- cmp r0, r7
- bne _0803A33A
- movs r0, 0x19
- negs r0, r0
- ands r1, r0
- str r1, [r3]
- movs r0, 0
- strb r0, [r4, 0x15]
-_0803A33A:
- adds r4, 0x1C
- adds r3, 0x4
- adds r5, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- blt _0803A2F6
-_0803A348:
- ldr r1, =gCurrentMove
- ldrh r0, [r1]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- ldr r2, =gBattleMoves
- adds r1, r2
- ldrb r0, [r1]
- cmp r0, 0x7F
- bne _0803A414
-_0803A35C:
- mov r3, r9
- ldrb r1, [r3]
- movs r0, 0x58
- adds r2, r1, 0
- muls r2, r0
- ldr r0, =gBattleMons
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- ldr r1, =0x15100007
- ands r0, r1
- str r0, [r2]
- ldrb r1, [r3]
- lsls r1, 2
- add r1, r10
- ldr r0, [r1]
- ldr r2, =0x0003043f
- ands r0, r2
- str r0, [r1]
- movs r5, 0
- ldr r6, =gNoOfAllBanks
- ldrb r6, [r6]
- cmp r5, r6
- bge _0803A430
- mov r7, r9
- movs r6, 0
-_0803A390:
- ldrb r0, [r7]
- bl GetBankSide
- adds r4, r0, 0
- lsls r0, r5, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _0803A3D0
- ldr r1, =gStatuses3
- lsls r0, r5, 2
- adds r2, r0, r1
- ldr r1, [r2]
- movs r0, 0x18
- ands r0, r1
- cmp r0, 0
- beq _0803A3D0
- ldr r0, =gDisableStructs
- adds r0, r6, r0
- ldrb r0, [r0, 0x15]
- ldrb r3, [r7]
- cmp r0, r3
- bne _0803A3D0
- movs r0, 0x19
- negs r0, r0
- ands r1, r0
- movs r0, 0x10
- orrs r1, r0
- str r1, [r2]
-_0803A3D0:
- adds r6, 0x1C
- adds r5, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- blt _0803A390
- ldr r6, =gDisableStructs
- mov r12, r6
- ldr r7, =gActiveBank
- mov r9, r7
- b _0803A430
- .pool
-_0803A414:
- mov r0, r9
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- ldr r1, =gBattleMons
- adds r1, 0x50
- adds r0, r1
- movs r1, 0
- str r1, [r0]
- mov r2, r9
- ldrb r0, [r2]
- lsls r0, 2
- add r0, r10
- str r1, [r0]
-_0803A430:
- movs r5, 0
- ldr r3, =gBattleStruct
- mov r8, r3
- ldr r6, =gUnknown_020244AC
- mov r10, r6
- ldr r7, =gNoOfAllBanks
- ldrb r7, [r7]
- cmp r5, r7
- bge _0803A490
- ldr r3, =gBattleMons + 0x50
- ldr r7, =gBitTable
- ldr r6, =gActiveBank
-_0803A448:
- movs r0, 0x58
- muls r0, r5
- adds r4, r0, r3
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r7
- ldr r0, [r0]
- lsls r2, r0, 16
- ldr r1, [r4]
- adds r0, r1, 0
- ands r0, r2
- cmp r0, 0
- beq _0803A466
- bics r1, r2
- str r1, [r4]
-_0803A466:
- ldr r1, [r4]
- movs r0, 0xE0
- lsls r0, 8
- ands r0, r1
- cmp r0, 0
- beq _0803A486
- mov r2, r8
- ldr r0, [r2]
- adds r0, r5, r0
- ldrb r0, [r0, 0x14]
- ldrb r2, [r6]
- cmp r0, r2
- bne _0803A486
- ldr r0, =0xffff1fff
- ands r1, r0
- str r1, [r4]
-_0803A486:
- adds r5, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- blt _0803A448
-_0803A490:
- mov r1, r9
- ldrb r0, [r1]
- add r0, r10
- movs r1, 0
- strb r1, [r0]
- mov r2, r9
- ldrb r0, [r2]
- ldr r3, =gUnknown_020244B0
- adds r0, r3
- strb r1, [r0]
- ldrb r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- mov r6, r12
- adds r1, r0, r6
- movs r5, 0
- movs r2, 0
-_0803A4B4:
- adds r0, r1, r5
- strb r2, [r0]
- adds r5, 0x1
- cmp r5, 0x1B
- bls _0803A4B4
- ldr r7, =gCurrentMove
- ldrh r0, [r7]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- ldr r0, =gBattleMoves
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x7F
- bne _0803A540
- mov r2, r9
- ldrb r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- mov r1, sp
- ldrb r1, [r1, 0xA]
- strb r1, [r0, 0xA]
- ldrb r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- mov r1, sp
- ldrb r1, [r1, 0x15]
- strb r1, [r0, 0x15]
- ldrb r0, [r2]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- add r1, r12
- mov r0, sp
- ldrb r2, [r0, 0xF]
- lsls r2, 28
- movs r4, 0xF
- lsrs r2, 28
- ldrb r3, [r1, 0xF]
- movs r0, 0x10
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0xF]
- mov r3, r9
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- mov r1, sp
- ldrb r1, [r1, 0xF]
- lsrs r1, 4
- lsls r1, 4
- ldrb r2, [r0, 0xF]
- ands r4, r2
- orrs r4, r1
- strb r4, [r0, 0xF]
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- mov r1, sp
- ldrb r1, [r1, 0x14]
- strb r1, [r0, 0x14]
-_0803A540:
- movs r0, 0
- ldr r6, =gBattleMoveFlags
- strb r0, [r6]
- mov r7, r9
- ldrb r1, [r7]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- movs r4, 0
- movs r1, 0x2
- strb r1, [r0, 0x16]
- ldrb r0, [r7]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- add r1, r12
- mov r0, sp
- ldrb r0, [r0, 0x18]
- movs r2, 0x2
- ands r2, r0
- ldrb r3, [r1, 0x18]
- movs r0, 0x3
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0x18]
- ldrb r0, [r7]
- lsls r0, 1
- ldr r1, =gLastUsedMovesByBanks
- adds r0, r1
- movs r2, 0
- strh r4, [r0]
- ldrb r0, [r7]
- lsls r0, 1
- ldr r3, =gUnknown_02024250
- adds r0, r3
- strh r4, [r0]
- ldrb r0, [r7]
- lsls r0, 1
- ldr r6, =gUnknown_02024258
- adds r0, r6
- strh r4, [r0]
- ldrb r0, [r7]
- lsls r0, 1
- ldr r7, =gUnknown_02024260
- adds r0, r7
- strh r4, [r0]
- mov r1, r9
- ldrb r0, [r1]
- lsls r0, 1
- ldr r3, =gUnknown_02024240
- adds r0, r3
- strh r4, [r0]
- ldrb r0, [r1]
- ldr r6, =gUnknown_02024270
- adds r0, r6
- movs r1, 0xFF
- strb r1, [r0]
- mov r7, r9
- ldrb r0, [r7]
- mov r3, r8
- ldr r1, [r3]
- lsls r0, 1
- adds r0, r1
- adds r0, 0x98
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 1
- adds r0, r1
- adds r0, 0x99
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE0
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE1
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE2
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE3
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE4
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE5
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE6
- strb r2, [r0]
- ldrb r0, [r7]
- ldr r1, [r3]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE7
- strb r2, [r0]
- ldr r1, [r3]
- adds r1, 0x92
- ldrb r0, [r7]
- lsls r0, 2
- ldr r6, =gBitTable
- adds r0, r6
- ldr r2, [r0]
- ldrb r0, [r1]
- bics r0, r2
- strb r0, [r1]
- movs r5, 0
- ldr r7, =gNoOfAllBanks
- ldrb r7, [r7]
- cmp r5, r7
- bge _0803A6B4
- mov r3, r9
- mov r7, r8
- movs r6, 0
-_0803A656:
- ldrb r0, [r3]
- cmp r5, r0
- beq _0803A68C
- lsls r0, r5, 24
- lsrs r0, 24
- str r3, [sp, 0x1C]
- bl GetBankSide
- adds r4, r0, 0
- ldr r3, [sp, 0x1C]
- ldrb r0, [r3]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- ldr r3, [sp, 0x1C]
- cmp r4, r0
- beq _0803A68C
- ldr r0, [r7]
- lsls r1, r5, 1
- adds r0, r1, r0
- adds r0, 0x98
- strb r6, [r0]
- ldr r0, [r7]
- adds r1, r0
- adds r1, 0x99
- strb r6, [r1]
-_0803A68C:
- ldrb r0, [r3]
- ldr r1, [r7]
- lsls r0, 1
- lsls r2, r5, 3
- adds r0, r2
- adds r0, r1
- adds r0, 0xE0
- strb r6, [r0]
- ldrb r0, [r3]
- ldr r1, [r7]
- lsls r0, 1
- adds r0, r2
- adds r0, r1
- adds r0, 0xE1
- strb r6, [r0]
- adds r5, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- blt _0803A656
-_0803A6B4:
- mov r1, r9
- ldrb r0, [r1]
- mov r2, r8
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC8
- movs r2, 0
- strb r2, [r0]
- mov r3, r9
- ldrb r0, [r3]
- mov r6, r8
- ldr r1, [r6]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC9
- strb r2, [r0]
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- ldrb r0, [r3]
- lsls r0, 2
- adds r1, r0
- movs r2, 0
- str r2, [r1]
- ldr r0, =gCurrentMove
- strh r2, [r0]
- ldr r0, [r6]
- adds r0, 0xDA
- movs r1, 0xFF
- strb r1, [r0]
- ldrb r0, [r3]
- bl ClearBankMoveHistory
- mov r7, r9
- ldrb r0, [r7]
- bl ClearBankAbilityHistory
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803A284
-
- thumb_func_start sub_803A75C
-sub_803A75C: @ 803A75C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r5, 0
- ldr r6, =gBattleMons
- ldr r0, =gStatuses3
- mov r8, r0
- ldr r1, =gBattleStruct
- mov r12, r1
- ldr r2, =gUnknown_020244AC
- mov r9, r2
- ldr r3, =gUnknown_020244B0
- mov r10, r3
- ldr r7, =gProtectStructs
- ldr r4, =gActiveBank
- movs r3, 0x58
- adds r2, r6, 0
- adds r2, 0x18
- movs r1, 0x6
-_0803A788:
- ldrb r0, [r4]
- muls r0, r3
- adds r0, r5, r0
- adds r0, r2
- strb r1, [r0]
- adds r5, 0x1
- cmp r5, 0x7
- ble _0803A788
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r2, r6, 0
- adds r2, 0x50
- adds r0, r2
- movs r1, 0
- str r1, [r0]
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- lsls r0, 2
- add r0, r8
- str r1, [r0]
- movs r5, 0
- ldr r6, =gNoOfAllBanks
- ldrb r6, [r6]
- cmp r5, r6
- bge _0803A830
- adds r3, r2, 0
- movs r4, 0
- ldr r0, =gBitTable
- mov r8, r0
-_0803A7C6:
- ldr r1, [r3]
- movs r0, 0x80
- lsls r0, 19
- ands r0, r1
- cmp r0, 0
- beq _0803A7E6
- ldr r2, =gDisableStructs
- adds r0, r4, r2
- ldrb r0, [r0, 0x14]
- ldr r6, =gActiveBank
- ldrb r6, [r6]
- cmp r0, r6
- bne _0803A7E6
- ldr r0, =0xfbffffff
- ands r1, r0
- str r1, [r3]
-_0803A7E6:
- ldr r1, =gActiveBank
- ldrb r0, [r1]
- lsls r0, 2
- add r0, r8
- ldr r0, [r0]
- lsls r2, r0, 16
- ldr r1, [r3]
- adds r0, r1, 0
- ands r0, r2
- cmp r0, 0
- beq _0803A800
- bics r1, r2
- str r1, [r3]
-_0803A800:
- ldr r1, [r3]
- movs r0, 0xE0
- lsls r0, 8
- ands r0, r1
- cmp r0, 0
- beq _0803A822
- mov r2, r12
- ldr r0, [r2]
- adds r0, r5, r0
- ldrb r0, [r0, 0x14]
- ldr r6, =gActiveBank
- ldrb r6, [r6]
- cmp r0, r6
- bne _0803A822
- ldr r0, =0xffff1fff
- ands r1, r0
- str r1, [r3]
-_0803A822:
- adds r3, 0x58
- adds r4, 0x1C
- adds r5, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- blt _0803A7C6
-_0803A830:
- ldr r1, =gActiveBank
- ldrb r0, [r1]
- add r0, r9
- movs r1, 0
- strb r1, [r0]
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- add r0, r10
- strb r1, [r0]
- ldrb r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- ldr r3, =gDisableStructs
- adds r1, r0, r3
- movs r5, 0
- movs r2, 0
-_0803A852:
- adds r0, r1, r5
- strb r2, [r0]
- adds r5, 0x1
- cmp r5, 0x1B
- bls _0803A852
- ldr r6, =gActiveBank
- ldrb r1, [r6]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r0, 0x2
- negs r0, r0
- mov r9, r0
- ands r0, r2
- strb r0, [r1]
- ldrb r1, [r6]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r3, 0x3
- negs r3, r3
- mov r8, r3
- mov r0, r8
- ands r0, r2
- strb r0, [r1]
- ldrb r1, [r6]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r6, 0x5
- negs r6, r6
- adds r0, r6, 0
- ands r0, r2
- strb r0, [r1]
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- subs r3, 0x6
- mov r10, r3
- mov r0, r10
- ands r0, r2
- strb r0, [r1]
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldr r2, =gActiveBank
- ldrb r1, [r2]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r5, 0x21
- negs r5, r5
- adds r0, r5, 0
- ands r0, r2
- strb r0, [r1]
- ldr r3, =gActiveBank
- ldrb r1, [r3]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r4, 0x41
- negs r4, r4
- adds r0, r4, 0
- ands r0, r2
- strb r0, [r1]
- ldrb r1, [r3]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r3, 0x7F
- adds r0, r3, 0
- ands r0, r2
- strb r0, [r1]
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1, 0x1]
- mov r0, r9
- ands r0, r2
- strb r0, [r1, 0x1]
- ldr r2, =gActiveBank
- ldrb r1, [r2]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1, 0x1]
- mov r0, r8
- ands r0, r2
- strb r0, [r1, 0x1]
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1, 0x1]
- adds r0, r6, 0
- ands r0, r2
- strb r0, [r1, 0x1]
- ldr r2, =gActiveBank
- ldrb r1, [r2]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1, 0x1]
- movs r0, 0x19
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x1]
- ldr r1, =gActiveBank
- ldrb r0, [r1]
- lsls r0, 4
- adds r0, r7
- ldrb r1, [r0, 0x1]
- ands r5, r1
- strb r5, [r0, 0x1]
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- lsls r0, 4
- adds r0, r7
- ldrb r1, [r0, 0x1]
- ands r4, r1
- strb r4, [r0, 0x1]
- ldrb r0, [r2]
- lsls r0, 4
- adds r0, r7
- ldrb r1, [r0, 0x1]
- ands r3, r1
- strb r3, [r0, 0x1]
- ldrb r0, [r2]
- lsls r0, 4
- adds r0, r7
- ldrb r1, [r0, 0x2]
- mov r3, r9
- ands r3, r1
- strb r3, [r0, 0x2]
- ldrb r0, [r2]
- lsls r0, 4
- adds r0, r7
- ldrb r1, [r0, 0x2]
- mov r2, r8
- ands r2, r1
- strb r2, [r0, 0x2]
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- lsls r0, 4
- adds r0, r7
- ldrb r1, [r0, 0x2]
- ands r6, r1
- strb r6, [r0, 0x2]
- ldrb r0, [r3]
- lsls r0, 4
- adds r0, r7
- ldrb r1, [r0, 0x2]
- mov r6, r10
- ands r6, r1
- strb r6, [r0, 0x2]
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- ldr r1, =gDisableStructs
- adds r0, r1
- movs r2, 0
- movs r1, 0x2
- strb r1, [r0, 0x16]
- ldrb r0, [r3]
- lsls r0, 1
- ldr r3, =gLastUsedMovesByBanks
- adds r0, r3
- movs r3, 0
- strh r2, [r0]
- ldr r6, =gActiveBank
- ldrb r0, [r6]
- lsls r0, 1
- ldr r1, =gUnknown_02024250
- adds r0, r1
- strh r2, [r0]
- ldrb r0, [r6]
- lsls r0, 1
- ldr r6, =gUnknown_02024258
- adds r0, r6
- strh r2, [r0]
- ldr r1, =gActiveBank
- ldrb r0, [r1]
- lsls r0, 1
- ldr r6, =gUnknown_02024260
- adds r0, r6
- strh r2, [r0]
- ldrb r0, [r1]
- lsls r0, 1
- ldr r1, =gUnknown_02024240
- adds r0, r1
- strh r2, [r0]
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- ldr r6, =gUnknown_02024270
- adds r0, r6
- movs r1, 0xFF
- strb r1, [r0]
- ldrb r0, [r2]
- mov r2, r12
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC8
- strb r3, [r0]
- ldr r6, =gActiveBank
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC9
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0x98
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0x99
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE0
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE1
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE2
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE3
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE4
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE5
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE6
- strb r3, [r0]
- ldrb r0, [r6]
- ldr r1, [r2]
- lsls r0, 3
- adds r0, r1
- adds r0, 0xE7
- strb r3, [r0]
- ldr r1, [r2]
- adds r1, 0x92
- ldrb r0, [r6]
- lsls r0, 2
- ldr r2, =gBitTable
- adds r0, r2
- ldr r2, [r0]
- ldrb r0, [r1]
- bics r0, r2
- strb r0, [r1]
- movs r5, 0
- ldr r3, =gNoOfAllBanks
- ldrb r3, [r3]
- cmp r5, r3
- bge _0803AB02
- adds r3, r6, 0
- mov r7, r12
- movs r6, 0
-_0803AAA4:
- ldrb r0, [r3]
- cmp r5, r0
- beq _0803AADA
- lsls r0, r5, 24
- lsrs r0, 24
- str r3, [sp]
- bl GetBankSide
- adds r4, r0, 0
- ldr r3, [sp]
- ldrb r0, [r3]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- ldr r3, [sp]
- cmp r4, r0
- beq _0803AADA
- ldr r0, [r7]
- lsls r1, r5, 1
- adds r0, r1, r0
- adds r0, 0x98
- strb r6, [r0]
- ldr r0, [r7]
- adds r1, r0
- adds r1, 0x99
- strb r6, [r1]
-_0803AADA:
- ldrb r0, [r3]
- ldr r1, [r7]
- lsls r0, 1
- lsls r2, r5, 3
- adds r0, r2
- adds r0, r1
- adds r0, 0xE0
- strb r6, [r0]
- ldrb r0, [r3]
- ldr r1, [r7]
- lsls r0, 1
- adds r0, r2
- adds r0, r1
- adds r0, 0xE1
- strb r6, [r0]
- adds r5, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- blt _0803AAA4
-_0803AB02:
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- lsls r0, 2
- adds r1, r0
- movs r0, 0
- str r0, [r1]
- ldr r4, =gBattleMons
- ldrb r0, [r2]
- movs r3, 0x58
- adds r2, r0, 0
- muls r2, r3
- b _0803AB6C
- .pool
-_0803AB6C:
- adds r2, r4
- ldr r5, =gBaseStats
- ldrh r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r0, [r0, 0x6]
- adds r2, 0x21
- strb r0, [r2]
- ldr r6, =gActiveBank
- ldrb r0, [r6]
- adds r1, r0, 0
- muls r1, r3
- adds r1, r4
- ldrh r2, [r1]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r5
- ldrb r0, [r0, 0x7]
- adds r1, 0x22
- strb r0, [r1]
- ldrb r0, [r6]
- bl ClearBankMoveHistory
- ldrb r0, [r6]
- bl ClearBankAbilityHistory
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803A75C
-
- thumb_func_start bc_8012FAC
-bc_8012FAC: @ 803ABC0
- push {r4,r5,lr}
- ldr r5, =gBattleCommunication
- ldrb r0, [r5]
- cmp r0, 0
- beq _0803ABD4
- cmp r0, 0x1
- beq _0803ABF8
- b _0803AC2E
- .pool
-_0803ABD4:
- ldr r4, =gActiveBank
- ldrb r0, [r5, 0x1]
- strb r0, [r4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl dp01_build_cmdbuf_x00_a_b_0
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- b _0803AC2E
- .pool
-_0803ABF8:
- ldr r0, =gBattleExecBuffer
- ldr r2, [r0]
- cmp r2, 0
- bne _0803AC2E
- ldrb r0, [r5, 0x1]
- adds r0, 0x1
- strb r0, [r5, 0x1]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bne _0803AC2C
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_load_battlefield
- str r0, [r1]
- b _0803AC2E
- .pool
-_0803AC2C:
- strb r2, [r5]
-_0803AC2E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end bc_8012FAC
-
- thumb_func_start bc_load_battlefield
-bc_load_battlefield: @ 803AC34
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r5, [r0]
- cmp r5, 0
- bne _0803AC64
- movs r0, 0
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r0, =gUnknown_02022FF0
- ldrb r1, [r0]
- movs r0, 0
- bl dp01_build_cmdbuf_x2E_a
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803AC84
- str r0, [r1]
- ldr r0, =gBattleCommunication
- strb r5, [r0]
- strb r5, [r0, 0x1]
-_0803AC64:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_load_battlefield
-
- thumb_func_start sub_803AC84
-sub_803AC84: @ 803AC84
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gBattleExecBuffer
- ldr r1, [r0]
- cmp r1, 0
- beq _0803AC98
- b _0803AF4E
-_0803AC98:
- ldr r2, =gActiveBank
- strb r1, [r2]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r1, r0
- bcc _0803ACA6
- b _0803AF48
-_0803ACA6:
- movs r7, 0x58
- ldr r0, =gBattleMons
- mov r8, r0
- mov r9, r2
- movs r1, 0x48
- add r1, r8
- mov r10, r1
-_0803ACB4:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0803ACFC
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803ACFC
- ldrb r0, [r4]
- muls r0, r7
- mov r2, r8
- adds r3, r0, r2
- movs r2, 0
- movs r1, 0
-_0803ACDA:
- adds r0, r3, r2
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x57
- bls _0803ACDA
- b _0803ADCA
- .pool
-_0803ACFC:
- mov r1, r9
- ldrb r0, [r1]
- muls r0, r7
- mov r2, r8
- adds r3, r0, r2
- movs r2, 0
- ldr r6, =gBaseStats
- ldr r5, =gBattleBufferB
- ldr r4, =gActiveBank
-_0803AD0E:
- adds r0, r3, r2
- ldrb r1, [r4]
- lsls r1, 9
- adds r1, 0x4
- adds r1, r2, r1
- adds r1, r5
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x57
- bls _0803AD0E
- mov r1, r9
- ldrb r0, [r1]
- adds r2, r0, 0
- muls r2, r7
- add r2, r8
- ldrh r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0, 0x6]
- adds r2, 0x21
- strb r0, [r2]
- mov r2, r9
- ldrb r0, [r2]
- adds r2, r0, 0
- muls r2, r7
- add r2, r8
- ldrh r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0, 0x7]
- adds r2, 0x22
- strb r0, [r2]
- mov r1, r9
- ldrb r0, [r1]
- adds r1, r0, 0
- muls r1, r7
- add r1, r8
- ldrh r0, [r1]
- ldrb r1, [r1, 0x17]
- lsrs r1, 7
- bl GetAbilityBySpecies
- mov r2, r9
- ldrb r1, [r2]
- muls r1, r7
- add r1, r8
- adds r1, 0x20
- strb r0, [r1]
- ldrb r0, [r2]
- bl GetBankSide
- ldr r1, =gBattleStruct
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0xA8
- ldr r1, [r1]
- adds r1, r0
- mov r2, r9
- ldrb r0, [r2]
- muls r0, r7
- add r0, r8
- ldrh r0, [r0, 0x28]
- strh r0, [r1]
- movs r2, 0
- ldr r4, =gActiveBank
- movs r5, 0x58
- ldr r1, =gBattleMons + 0x18
- adds r6, r4, 0
- movs r0, 0x18
- negs r0, r0
- adds r0, r1
- mov r12, r0
- movs r3, 0x6
-_0803ADAA:
- ldrb r0, [r4]
- muls r0, r5
- adds r0, r2, r0
- adds r0, r1
- strb r3, [r0]
- adds r2, 0x1
- cmp r2, 0x7
- ble _0803ADAA
- ldrb r0, [r6]
- adds r1, r0, 0
- muls r1, r7
- mov r0, r12
- adds r0, 0x50
- adds r1, r0
- movs r0, 0
- str r0, [r1]
-_0803ADCA:
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- cmp r0, 0
- bne _0803ADE4
- movs r0, 0
- bl dp01_build_cmdbuf_x07_7_7_7
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803ADE4:
- ldr r5, =gBattleTypeFlags
- ldr r0, [r5]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0803AE60
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0803AE0A
- movs r0, 0
- bl dp01_build_cmdbuf_x07_7_7_7
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803AE0A:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0803AEC0
- ldr r0, [r5]
- ldr r1, =0x063f0902
- ands r0, r1
- cmp r0, 0
- bne _0803AEC0
- ldrb r0, [r4]
- muls r0, r7
- add r0, r8
- ldrh r0, [r0]
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r4]
- muls r1, r7
- add r1, r10
- ldr r2, [r1]
- movs r1, 0x2
- bl HandleSetPokedexFlag
- b _0803AEC0
- .pool
-_0803AE60:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0803AEC0
- ldr r0, [r5]
- ldr r1, =0x063f0902
- ands r0, r1
- cmp r0, 0
- bne _0803AE96
- ldrb r0, [r4]
- muls r0, r7
- add r0, r8
- ldrh r0, [r0]
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r4]
- muls r1, r7
- add r1, r10
- ldr r2, [r1]
- movs r1, 0x2
- bl HandleSetPokedexFlag
-_0803AE96:
- movs r0, 0
- bl dp01_build_cmdbuf_x04_4_4_4
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlePartyID
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- ldr r1, =gBattleResults
- strh r0, [r1, 0x20]
-_0803AEC0:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0803AEF6
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _0803AEEA
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _0803AEF6
-_0803AEEA:
- movs r0, 0
- bl dp01_build_cmdbuf_x07_7_7_7
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803AEF6:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _0803AF20
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _0803AF20
- movs r0, 0
- bl dp01_build_cmdbuf_x07_7_7_7
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803AF20:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _0803AF32
- bl sub_81A56B4
-_0803AF32:
- mov r1, r9
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcs _0803AF48
- b _0803ACB4
-_0803AF48:
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_801333C
- str r0, [r1]
-_0803AF4E:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803AC84
-
- thumb_func_start bc_801333C
-bc_801333C: @ 803AF80
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x30
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _0803AF92
- b _0803B10C
-_0803AF92:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- bne _0803AFA0
- b _0803B0AC
-_0803AFA0:
- movs r7, 0
- add r0, sp, 0x4
- mov r8, r0
- mov r6, r8
- mov r5, sp
-_0803AFAA:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, =gEnemyParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _0803AFD0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- bne _0803AFE8
-_0803AFD0:
- ldr r0, =0x0000ffff
- strh r0, [r5]
- movs r0, 0
- b _0803AFFA
- .pool
-_0803AFE8:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- strh r0, [r5]
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
-_0803AFFA:
- str r0, [r6]
- adds r6, 0x8
- adds r5, 0x8
- adds r7, 0x1
- cmp r7, 0x5
- ble _0803AFAA
- movs r0, 0x1
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- mov r1, sp
- movs r2, 0x80
- bl dp01_build_cmdbuf_x30_TODO
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- movs r7, 0
- mov r6, r8
- mov r5, sp
-_0803B026:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _0803B04C
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- bne _0803B060
-_0803B04C:
- ldr r0, =0x0000ffff
- strh r0, [r5]
- movs r0, 0
- b _0803B072
- .pool
-_0803B060:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- strh r0, [r5]
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
-_0803B072:
- str r0, [r6]
- adds r6, 0x8
- adds r5, 0x8
- adds r7, 0x1
- cmp r7, 0x5
- ble _0803B026
- movs r0, 0
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- mov r1, sp
- movs r2, 0x80
- bl dp01_build_cmdbuf_x30_TODO
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_battle_begin_message
- b _0803B10A
- .pool
-_0803B0AC:
- movs r7, 0
- add r6, sp, 0x4
- mov r5, sp
-_0803B0B2:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _0803B0D8
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- bne _0803B0E8
-_0803B0D8:
- ldr r0, =0x0000ffff
- strh r0, [r5]
- movs r0, 0
- b _0803B0FA
- .pool
-_0803B0E8:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- strh r0, [r5]
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
-_0803B0FA:
- str r0, [r6]
- adds r6, 0x8
- adds r5, 0x8
- adds r7, 0x1
- cmp r7, 0x5
- ble _0803B0B2
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_8013568
-_0803B10A:
- str r0, [r1]
-_0803B10C:
- add sp, 0x30
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_801333C
-
- thumb_func_start bc_battle_begin_message
-bc_battle_begin_message: @ 803B120
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803B142
- movs r0, 0x1
- bl GetBankByPlayerAI
- ldr r1, =gActiveBank
- strb r0, [r1]
- ldrb r1, [r1]
- movs r0, 0
- bl b_std_message
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B180
- str r0, [r1]
-_0803B142:
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_battle_begin_message
-
- thumb_func_start bc_8013568
-bc_8013568: @ 803B158
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803B170
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B3CC
- str r0, [r1]
- movs r0, 0
- movs r1, 0
- bl b_std_message
-_0803B170:
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_8013568
-
- thumb_func_start sub_803B180
-sub_803B180: @ 803B180
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803B1D0
- ldr r0, =gBattleTypeFlags
- ldr r2, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r2
- cmp r0, 0
- beq _0803B1B8
- movs r0, 0x80
- lsls r0, 18
- ands r0, r2
- cmp r0, 0
- beq _0803B1B8
- movs r1, 0x80
- lsls r1, 24
- ands r1, r2
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- b _0803B1BA
- .pool
-_0803B1B8:
- movs r0, 0x1
-_0803B1BA:
- bl GetBankByPlayerAI
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x1
- bl b_std_message
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B25C
- str r0, [r1]
-_0803B1D0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B180
-
- thumb_func_start sub_803B1DC
-sub_803B1DC: @ 803B1DC
- push {r4,r5,lr}
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- beq _0803B1FC
- movs r0, 0x80
- lsls r0, 18
- ands r0, r1
- cmp r0, 0
- beq _0803B1FC
- movs r5, 0x2
- cmp r1, 0
- bge _0803B1FE
-_0803B1FC:
- movs r5, 0x3
-_0803B1FE:
- ldr r1, =gActiveBank
- movs r0, 0
- strb r0, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803B23A
- adds r4, r1, 0
-_0803B20E:
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r5
- bne _0803B228
- movs r0, 0
- bl dp01_build_cmdbuf_x2F_2F_2F_2F
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803B228:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803B20E
-_0803B23A:
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_801362C
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B1DC
-
- thumb_func_start sub_803B25C
-sub_803B25C: @ 803B25C
- push {r4-r6,lr}
- ldr r0, =gBattleTypeFlags
- ldr r2, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r2
- cmp r0, 0
- beq _0803B298
- movs r0, 0x80
- lsls r0, 18
- ands r0, r2
- cmp r0, 0
- beq _0803B298
- movs r1, 0x80
- lsls r1, 24
- ands r1, r2
- negs r0, r1
- orrs r0, r1
- lsrs r5, r0, 31
- b _0803B29A
- .pool
-_0803B288:
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B1DC
- b _0803B2F0
- .pool
-_0803B298:
- movs r5, 0x1
-_0803B29A:
- ldr r0, =gBattleExecBuffer
- ldr r2, [r0]
- cmp r2, 0
- bne _0803B2F2
- ldr r0, =gActiveBank
- strb r2, [r0]
- ldr r1, =gNoOfAllBanks
- adds r4, r0, 0
- ldrb r1, [r1]
- cmp r2, r1
- bcs _0803B2EC
- adds r6, r4, 0
-_0803B2B2:
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r5
- bne _0803B2D8
- movs r0, 0
- bl dp01_build_cmdbuf_x2F_2F_2F_2F
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x00008040
- ands r0, r1
- cmp r0, 0
- bne _0803B288
-_0803B2D8:
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gActiveBank
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803B2B2
-_0803B2EC:
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_801362C
-_0803B2F0:
- str r0, [r1]
-_0803B2F2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B25C
-
- thumb_func_start bc_801362C
-bc_801362C: @ 803B314
- push {r4-r7,lr}
- ldr r0, =gBattleExecBuffer
- ldr r1, [r0]
- cmp r1, 0
- bne _0803B384
- ldr r2, =gActiveBank
- strb r1, [r2]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r1, r0
- bcs _0803B37E
- adds r4, r2, 0
- ldr r6, =gBattleMons
- movs r5, 0x58
- adds r7, r6, 0
- adds r7, 0x48
-_0803B334:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0803B36C
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x063f0902
- ands r0, r1
- cmp r0, 0
- bne _0803B36C
- ldrb r0, [r4]
- muls r0, r5
- adds r0, r6
- ldrh r0, [r0]
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r4]
- muls r1, r5
- adds r1, r7
- ldr r2, [r1]
- movs r1, 0x2
- bl HandleSetPokedexFlag
-_0803B36C:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803B334
-_0803B37E:
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B3CC
- str r0, [r1]
-_0803B384:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_801362C
-
- thumb_func_start sub_803B3AC
-sub_803B3AC: @ 803B3AC
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803B3BC
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B3CC
- str r0, [r1]
-_0803B3BC:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B3AC
-
- thumb_func_start sub_803B3CC
-sub_803B3CC: @ 803B3CC
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803B418
- ldr r1, =gBattleTypeFlags
- ldr r2, [r1]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r2
- cmp r0, 0
- beq _0803B3F4
- movs r0, 0x80
- lsls r0, 18
- ands r0, r2
- cmp r0, 0
- beq _0803B3F4
- movs r3, 0x1
- cmp r2, 0
- bge _0803B3F6
-_0803B3F4:
- movs r3, 0
-_0803B3F6:
- ldr r0, [r1]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0803B412
- adds r0, r3, 0
- bl GetBankByPlayerAI
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x1
- bl b_std_message
-_0803B412:
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B4C8
- str r0, [r1]
-_0803B418:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B3CC
-
- thumb_func_start sub_803B42C
-sub_803B42C: @ 803B42C
- push {r4,r5,lr}
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- beq _0803B44C
- movs r0, 0x80
- lsls r0, 18
- ands r0, r1
- cmp r0, 0
- beq _0803B44C
- movs r5, 0x3
- cmp r1, 0
- bge _0803B44E
-_0803B44C:
- movs r5, 0x2
-_0803B44E:
- ldr r1, =gActiveBank
- movs r0, 0
- strb r0, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803B48A
- adds r4, r1, 0
-_0803B45E:
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r5
- bne _0803B478
- movs r0, 0
- bl dp01_build_cmdbuf_x2F_2F_2F_2F
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803B478:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803B45E
-_0803B48A:
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r0, 0x4C
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0xD9
- strb r1, [r0]
- ldr r0, [r2]
- movs r2, 0xD1
- lsls r2, 1
- adds r0, r2
- strb r1, [r0]
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B628
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B42C
-
- thumb_func_start sub_803B4C8
-sub_803B4C8: @ 803B4C8
- push {r4-r6,lr}
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- beq _0803B500
- movs r0, 0x80
- lsls r0, 18
- ands r0, r1
- cmp r0, 0
- beq _0803B500
- movs r6, 0x1
- cmp r1, 0
- bge _0803B502
- b _0803B500
- .pool
-_0803B4F0:
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B42C
- b _0803B572
- .pool
-_0803B500:
- movs r6, 0
-_0803B502:
- ldr r0, =gBattleExecBuffer
- ldr r2, [r0]
- cmp r2, 0
- bne _0803B574
- ldr r0, =gActiveBank
- strb r2, [r0]
- ldr r1, =gNoOfAllBanks
- adds r4, r0, 0
- ldrb r1, [r1]
- cmp r2, r1
- bcs _0803B554
- adds r5, r4, 0
-_0803B51A:
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r6
- bne _0803B540
- movs r0, 0
- bl dp01_build_cmdbuf_x2F_2F_2F_2F
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- bne _0803B4F0
-_0803B540:
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gActiveBank
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803B51A
-_0803B554:
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r0, 0x4C
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0xD9
- strb r1, [r0]
- ldr r0, [r2]
- movs r2, 0xD1
- lsls r2, 1
- adds r0, r2
- strb r1, [r0]
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B628
-_0803B572:
- str r0, [r1]
-_0803B574:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B4C8
-
- thumb_func_start sub_803B598
-sub_803B598: @ 803B598
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r1, [r0]
- cmp r1, 0
- bne _0803B606
- ldr r2, =gActiveBank
- strb r1, [r2]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r1, r0
- bcs _0803B5E6
- adds r4, r2, 0
- ldr r5, =gBattlePartyID
-_0803B5B2:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803B5D4
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r5
- ldrb r1, [r0]
- movs r0, 0
- movs r2, 0
- bl dp01_build_cmdbuf_x05_a_b_c
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803B5D4:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803B5B2
-_0803B5E6:
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r0, 0x4C
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0xD9
- strb r1, [r0]
- ldr r0, [r2]
- movs r2, 0xD1
- lsls r2, 1
- adds r0, r2
- strb r1, [r0]
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803B628
- str r0, [r1]
-_0803B606:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B598
-
- thumb_func_start sub_803B628
-sub_803B628: @ 803B628
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r0, 0
- mov r9, r0
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _0803B642
- b _0803B8B2
-_0803B642:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x4C
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803B6C2
- movs r5, 0
- ldr r1, =gNoOfAllBanks
- mov r10, r1
- ldrb r3, [r1]
- cmp r5, r3
- bge _0803B668
- ldr r2, =gTurnOrder
-_0803B65C:
- adds r0, r5, r2
- strb r5, [r0]
- adds r5, 0x1
- ldrb r0, [r1]
- cmp r5, r0
- blt _0803B65C
-_0803B668:
- movs r5, 0
- b _0803B6B8
- .pool
-_0803B67C:
- adds r4, r5, 0x1
- mov r8, r4
- ldrb r1, [r1]
- cmp r8, r1
- bge _0803B6B6
- ldr r6, =gTurnOrder
- ldr r1, =gNoOfAllBanks
- mov r10, r1
- lsls r7, r5, 24
-_0803B68E:
- adds r0, r5, r6
- ldrb r0, [r0]
- adds r1, r4, r6
- ldrb r1, [r1]
- movs r2, 0x1
- bl b_first_side
- lsls r0, 24
- cmp r0, 0
- beq _0803B6AC
- lsls r1, r4, 24
- lsrs r1, 24
- lsrs r0, r7, 24
- bl sub_803CEDC
-_0803B6AC:
- adds r4, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- blt _0803B68E
-_0803B6B6:
- mov r5, r8
-_0803B6B8:
- mov r1, r10
- ldrb r0, [r1]
- subs r0, 0x1
- cmp r5, r0
- blt _0803B67C
-_0803B6C2:
- ldr r5, =gBattleStruct
- ldr r0, [r5]
- movs r4, 0xD1
- lsls r4, 1
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803B6FC
- str r0, [sp]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0xFF
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _0803B6FC
- ldr r0, [r5]
- adds r0, r4
- movs r1, 0x1
- strb r1, [r0]
- b _0803B8B2
- .pool
-_0803B6FC:
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r0, 0x4C
- ldr r1, =gNoOfAllBanks
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bcs _0803B756
- ldr r5, =gTurnOrder
- adds r4, r2, 0
-_0803B710:
- ldr r0, [r4]
- adds r0, 0x4C
- ldrb r0, [r0]
- adds r0, r5
- ldrb r1, [r0]
- movs r0, 0
- str r0, [sp]
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _0803B736
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
-_0803B736:
- ldr r1, [r4]
- adds r1, 0x4C
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- mov r3, r9
- cmp r3, 0
- beq _0803B748
- b _0803B8B2
-_0803B748:
- ldr r0, [r4]
- adds r0, 0x4C
- ldr r1, =gNoOfAllBanks
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803B710
-_0803B756:
- movs r0, 0
- str r0, [sp]
- movs r0, 0x9
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _0803B770
- b _0803B8B2
-_0803B770:
- str r0, [sp]
- movs r0, 0xB
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _0803B786
- b _0803B8B2
-_0803B786:
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r0, 0xD9
- ldr r1, =gNoOfAllBanks
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bcs _0803B7DA
- ldr r5, =gTurnOrder
- adds r4, r2, 0
-_0803B79A:
- ldr r0, [r4]
- adds r0, 0xD9
- ldrb r0, [r0]
- adds r0, r5
- ldrb r1, [r0]
- movs r0, 0
- movs r2, 0
- bl ItemBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _0803B7BC
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
-_0803B7BC:
- ldr r1, [r4]
- adds r1, 0xD9
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- mov r0, r9
- cmp r0, 0
- bne _0803B8B2
- ldr r0, [r4]
- adds r0, 0xD9
- ldr r1, =gNoOfAllBanks
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803B79A
-_0803B7DA:
- movs r5, 0
- ldr r1, =gBattleStruct
- mov r8, r1
- movs r7, 0x6
- ldr r6, =gUnknown_0202421C
- ldr r2, =gChosenMovesByBanks
- movs r4, 0xFF
- movs r3, 0
-_0803B7EA:
- mov r1, r8
- ldr r0, [r1]
- adds r0, r5, r0
- adds r0, 0x5C
- strb r7, [r0]
- adds r1, r5, r6
- ldrb r0, [r1]
- orrs r0, r4
- strb r0, [r1]
- strh r3, [r2]
- adds r2, 0x2
- adds r5, 0x1
- cmp r5, 0x3
- ble _0803B7EA
- movs r0, 0
- bl sub_803D580
- bl sub_803D6A0
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x91
- ldr r1, =gAbsentBankFlags
- ldrb r1, [r1]
- strb r1, [r0]
- ldr r0, =gText_EmptyString3
- movs r1, 0
- bl battle_show_message_maybe
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803BE74
- str r0, [r1]
- bl sub_803F988
- ldr r1, =gBattleCommunication
- movs r2, 0
- adds r0, r1, 0x7
-_0803B834:
- strb r2, [r0]
- subs r0, 0x1
- cmp r0, r1
- bge _0803B834
- movs r5, 0
- ldr r3, =gNoOfAllBanks
- ldr r2, =gBattleStruct
- ldr r6, =gBattleScripting
- ldr r7, =gBattleMoveFlags
- ldrb r0, [r3]
- cmp r5, r0
- bge _0803B866
- ldr r0, =gBattleMons
- movs r4, 0x9
- negs r4, r4
- adds r1, r0, 0
- adds r1, 0x50
-_0803B856:
- ldr r0, [r1]
- ands r0, r4
- str r0, [r1]
- adds r1, 0x58
- adds r5, 0x1
- ldrb r0, [r3]
- cmp r5, r0
- blt _0803B856
-_0803B866:
- ldr r0, [r2]
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- strb r1, [r0, 0x1]
- ldr r0, [r2]
- movs r3, 0xD0
- lsls r3, 1
- adds r0, r3
- strb r1, [r0]
- ldr r0, [r2]
- adds r3, 0x1
- adds r0, r3
- strb r1, [r0]
- movs r1, 0
- strb r1, [r6, 0x14]
- ldr r0, [r2]
- adds r0, 0x4D
- strb r1, [r0]
- ldr r0, [r2]
- strb r1, [r0, 0x3]
- strb r1, [r7]
- bl Random
- ldr r1, =gUnknown_02024330
- strh r0, [r1]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _0803B8B2
- bl StopCryAndClearCrySongs
- ldr r0, =gUnknown_082DB8BE
- bl b_call_bc_move_exec
-_0803B8B2:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803B628
-
- thumb_func_start bc_8013B1C
-bc_8013B1C: @ 803B904
- push {r4-r6,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803B994
- ldr r1, =gBattleMainFunc
- ldr r0, =BattleTurnPassed
- str r0, [r1]
- ldr r3, =gNoOfAllBanks
- ldr r1, =gBattleCommunication
- movs r2, 0
- adds r0, r1, 0x7
-_0803B91C:
- strb r2, [r0]
- subs r0, 0x1
- cmp r0, r1
- bge _0803B91C
- movs r4, 0
- ldrb r3, [r3]
- cmp r4, r3
- bge _0803B96E
- ldr r5, =gBattleMons
- adds r6, r5, 0
- adds r6, 0x4C
-_0803B932:
- movs r0, 0x58
- adds r2, r4, 0
- muls r2, r0
- adds r1, r5, 0
- adds r1, 0x50
- adds r1, r2, r1
- ldr r3, [r1]
- subs r0, 0x61
- ands r3, r0
- str r3, [r1]
- adds r2, r6
- ldr r0, [r2]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- beq _0803B964
- movs r0, 0x80
- lsls r0, 5
- ands r3, r0
- cmp r3, 0
- beq _0803B964
- lsls r0, r4, 24
- lsrs r0, 24
- bl CancelMultiTurnMoves
-_0803B964:
- adds r4, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- blt _0803B932
-_0803B96E:
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- strb r1, [r0, 0x1]
- ldr r0, [r2]
- movs r3, 0xD0
- lsls r3, 1
- adds r0, r3
- strb r1, [r0]
- ldr r0, [r2]
- adds r3, 0x1
- adds r0, r3
- strb r1, [r0]
- ldr r0, [r2]
- strb r1, [r0, 0x3]
- ldr r0, =gBattleMoveFlags
- strb r1, [r0]
-_0803B994:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_8013B1C
-
- thumb_func_start BattleTurnPassed
-BattleTurnPassed: @ 803B9BC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r0, 0x1
- bl sub_803D580
- ldr r0, =gBattleOutcome
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803B9EA
- bl UpdateTurnCounters
- lsls r0, 24
- cmp r0, 0
- beq _0803B9DE
- b _0803BB78
-_0803B9DE:
- bl TurnBasedEffects
- lsls r0, 24
- cmp r0, 0
- beq _0803B9EA
- b _0803BB78
-_0803B9EA:
- bl sub_8041728
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _0803B9F8
- b _0803BB78
-_0803B9F8:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x4D
- strb r1, [r0]
- bl sub_8041364
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0803BA0E
- b _0803BB78
-_0803BA0E:
- movs r0, 0
- bl sub_803D580
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffffdff
- ands r0, r1
- ldr r1, =0xfff7ffff
- ands r0, r1
- ldr r1, =0xffbfffff
- ands r0, r1
- ldr r1, =0xffefffff
- ands r0, r1
- str r0, [r2]
- ldr r0, =gBattleScripting
- strb r4, [r0, 0x18]
- strb r4, [r0, 0x19]
- strb r4, [r0, 0x14]
- ldr r0, =gBattleMoveDamage
- str r4, [r0]
- ldr r0, =gBattleMoveFlags
- strb r4, [r0]
- ldr r1, =gBattleCommunication
- movs r2, 0
- adds r0, r1, 0x4
-_0803BA40:
- strb r2, [r0]
- subs r0, 0x1
- cmp r0, r1
- bge _0803BA40
- ldr r0, =gBattleOutcome
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803BA98
- ldr r1, =gFightStateTracker
- movs r0, 0xC
- strb r0, [r1]
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_bs_exec
- str r0, [r1]
- b _0803BB78
- .pool
-_0803BA98:
- ldr r1, =gBattleResults
- ldrb r0, [r1, 0x13]
- ldr r2, =gBattleStruct
- mov r8, r2
- cmp r0, 0xFE
- bhi _0803BAB2
- adds r0, 0x1
- strb r0, [r1, 0x13]
- ldr r1, [r2]
- adds r1, 0xDA
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0803BAB2:
- movs r2, 0
- ldr r4, =gNoOfAllBanks
- ldr r0, =gAbsentBankFlags
- mov r12, r0
- ldr r1, =gText_EmptyString3
- mov r9, r1
- ldrb r0, [r4]
- cmp r2, r0
- bge _0803BAE0
- ldr r7, =gUnknown_0202421C
- movs r6, 0xFF
- movs r5, 0
- ldr r3, =gChosenMovesByBanks
-_0803BACC:
- adds r1, r2, r7
- ldrb r0, [r1]
- orrs r0, r6
- strb r0, [r1]
- strh r5, [r3]
- adds r3, 0x2
- adds r2, 0x1
- ldrb r1, [r4]
- cmp r2, r1
- blt _0803BACC
-_0803BAE0:
- movs r2, 0
- ldr r3, =gBattleStruct
- movs r1, 0x6
-_0803BAE6:
- ldr r0, [r3]
- adds r0, r2, r0
- adds r0, 0x5C
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x3
- ble _0803BAE6
- mov r2, r8
- ldr r0, [r2]
- adds r0, 0x91
- mov r2, r12
- ldrb r1, [r2]
- strb r1, [r0]
- mov r0, r9
- movs r1, 0
- bl battle_show_message_maybe
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803BE74
- str r0, [r1]
- bl Random
- ldr r1, =gUnknown_02024330
- strh r0, [r1]
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 10
- ands r0, r1
- cmp r0, 0
- beq _0803BB5C
- ldr r0, =gUnknown_082DB881
- bl b_call_bc_move_exec
- b _0803BB78
- .pool
-_0803BB5C:
- movs r0, 0x80
- lsls r0, 11
- ands r1, r0
- cmp r1, 0
- beq _0803BB78
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0xDA
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803BB78
- ldr r0, =gUnknown_082DB8BE
- bl b_call_bc_move_exec
-_0803BB78:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end BattleTurnPassed
-
- thumb_func_start sub_803BB88
-sub_803BB88: @ 803BB88
- push {r4-r7,lr}
- sub sp, 0x4
- ldr r1, =gBattleMons
- ldr r0, =gActiveBank
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2E]
- cmp r0, 0xAF
- bne _0803BBB8
- ldr r1, =gEnigmaBerries
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r2, [r0, 0x7]
- b _0803BBC2
- .pool
-_0803BBB8:
- ldrh r0, [r1, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r2, r0, 24
-_0803BBC2:
- ldr r1, =gStringBank
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- strb r0, [r1]
- cmp r2, 0x25
- bne _0803BBD0
- b _0803BD4C
-_0803BBD0:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0803BBDE
- b _0803BD4C
-_0803BBDE:
- ldr r1, =gBattleMons
- ldrb r2, [r3]
- movs r0, 0x58
- muls r0, r2
- adds r0, r1
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x32
- bne _0803BBF2
- b _0803BD4C
-_0803BBF2:
- adds r0, r2, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- bge _0803BC86
- movs r7, 0
-_0803BC08:
- lsrs r4, r7, 24
- adds r0, r4, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r6, r0
- beq _0803BC2C
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r5
- adds r0, r1
- adds r2, r0, 0
- adds r2, 0x20
- ldrb r0, [r2]
- cmp r0, 0x17
- bne _0803BC2C
- b _0803BD54
-_0803BC2C:
- adds r0, r4, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r6, r0
- beq _0803BC76
- ldr r3, =gBattleMons
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- movs r2, 0x58
- muls r0, r2
- adds r1, r0, r3
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1A
- beq _0803BC76
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0803BC76
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0803BC76
- adds r0, r5, 0
- muls r0, r2
- adds r0, r3
- adds r2, r0, 0
- adds r2, 0x20
- ldrb r0, [r2]
- cmp r0, 0x47
- bne _0803BC76
- b _0803BD70
-_0803BC76:
- movs r0, 0x80
- lsls r0, 17
- adds r7, r0
- adds r5, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- blt _0803BC08
-_0803BC86:
- ldr r4, =gActiveBank
- ldrb r1, [r4]
- movs r0, 0
- str r0, [sp]
- movs r0, 0xF
- movs r2, 0x2A
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- beq _0803BCF8
- ldr r6, =gBattleMons
- ldrb r0, [r4]
- movs r3, 0x58
- muls r0, r3
- adds r1, r0, r6
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x8
- beq _0803BCBE
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x8
- bne _0803BCF8
-_0803BCBE:
- ldr r0, =gBattleScripting
- subs r1, r5, 0x1
- strb r1, [r0, 0x17]
- ldr r2, =gLastUsedAbility
- adds r0, r1, 0
- muls r0, r3
- adds r0, r6
- adds r0, 0x20
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- b _0803BD90
- .pool
-_0803BCF8:
- ldr r1, =gBattleMons
- ldr r0, =gActiveBank
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x0400e000
- ands r0, r1
- cmp r0, 0
- bne _0803BD22
- ldr r1, =gStatuses3
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 3
- ands r0, r1
- cmp r0, 0
- beq _0803BD40
-_0803BD22:
- ldr r1, =gBattleCommunication
- movs r0, 0
- strb r0, [r1, 0x5]
- movs r0, 0x1
- b _0803BD92
- .pool
-_0803BD40:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x10
- ands r0, r1
- cmp r0, 0
- bne _0803BD8C
-_0803BD4C:
- movs r0, 0
- b _0803BD92
- .pool
-_0803BD54:
- ldr r0, =gBattleScripting
- strb r5, [r0, 0x17]
- ldr r1, =gLastUsedAbility
- ldrb r0, [r2]
- strb r0, [r1]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- b _0803BD90
- .pool
-_0803BD70:
- ldr r0, =gBattleScripting
- strb r5, [r0, 0x17]
- ldr r1, =gLastUsedAbility
- ldrb r0, [r2]
- strb r0, [r1]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- b _0803BD90
- .pool
-_0803BD8C:
- ldr r1, =gBattleCommunication
- movs r0, 0x1
-_0803BD90:
- strb r0, [r1, 0x5]
-_0803BD92:
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_803BB88
-
- thumb_func_start sub_803BDA0
-sub_803BDA0: @ 803BDA0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r3, 0
- ldr r0, =gBattlePartyID
- mov r8, r0
- ldr r1, =gUnknown_0203CF00
- mov r12, r1
- ldr r7, =gBattleStruct
- lsls r0, r5, 1
- adds r4, r0, r5
- adds r6, r0, 0
-_0803BDBC:
- mov r0, r12
- adds r2, r3, r0
- ldr r1, [r7]
- adds r0, r4, r3
- adds r0, r1
- adds r0, 0x60
- ldrb r0, [r0]
- strb r0, [r2]
- adds r3, 0x1
- cmp r3, 0x2
- ble _0803BDBC
- mov r1, r8
- adds r0, r6, r1
- ldrb r0, [r0]
- bl pokemon_order_func
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r7, =gBattleStruct
- ldr r0, [r7]
- adds r0, r5, r0
- adds r0, 0x5C
- ldrb r0, [r0]
- bl pokemon_order_func
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_81B8FB0
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0803BE4C
- movs r3, 0
- adds r4, r7, 0
- adds r6, r5
- movs r0, 0x2
- adds r1, r5, 0
- eors r1, r0
- ldr r7, =gUnknown_0203CF00
- lsls r0, r1, 1
- adds r5, r0, r1
-_0803BE1A:
- ldr r0, [r4]
- adds r1, r6, r3
- adds r1, r0
- adds r1, 0x60
- adds r2, r3, r7
- ldrb r0, [r2]
- strb r0, [r1]
- ldr r1, [r4]
- adds r0, r5, r3
- adds r0, r1
- adds r0, 0x60
- ldrb r1, [r2]
- strb r1, [r0]
- adds r3, 0x1
- cmp r3, 0x2
- ble _0803BE1A
- b _0803BE66
- .pool
-_0803BE4C:
- movs r3, 0
- adds r2, r6, r5
- ldr r4, =gUnknown_0203CF00
-_0803BE52:
- ldr r0, [r7]
- adds r1, r2, r3
- adds r1, r0
- adds r1, 0x60
- adds r0, r3, r4
- ldrb r0, [r0]
- strb r0, [r1]
- adds r3, 0x1
- cmp r3, 0x2
- ble _0803BE52
-_0803BE66:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803BDA0
-
- thumb_func_start sub_803BE74
-sub_803BE74: @ 803BE74
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x1C
- ldr r0, =gBattleCommunication
- movs r1, 0
- strb r1, [r0, 0x4]
- ldr r0, =gActiveBank
- strb r1, [r0]
- ldr r0, =gNoOfAllBanks
- bl _0803CD12
- .pool
-_0803BE9C:
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gBattleCommunication
- ldrb r0, [r4]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x8
- bls _0803BEB8
- bl _0803CD04
-_0803BEB8:
- lsls r0, 2
- ldr r1, =_0803BED0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0803BED0:
- .4byte _0803BEF4
- .4byte _0803BF0C
- .4byte _0803C02C
- .4byte _0803C7D8
- .4byte _0803CAD0
- .4byte _0803CB84
- .4byte _0803CBC8
- .4byte _0803CBF4
- .4byte _0803CC38
-_0803BEF4:
- bl sub_8185FD0
- ldr r1, =gBattleCommunication
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- adds r0, r1
- bl _0803CC20
- .pool
-_0803BF0C:
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- ldr r4, =gBattleStruct
- ldr r0, [r4]
- adds r1, r0
- adds r1, 0x5C
- movs r0, 0x6
- strb r0, [r1]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- bne _0803BF68
- movs r1, 0x2
- movs r0, 0x2
- ands r0, r5
- cmp r0, 0
- beq _0803BF68
- eors r5, r1
- adds r0, r5, 0
- bl GetBankByPlayerAI
- ldr r1, [r4]
- adds r1, 0x91
- ldrb r1, [r1]
- ldr r2, =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0803BF68
- ldr r4, =gBattleCommunication
- adds r0, r5, 0
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x5
- beq _0803BF68
- bl _0803CD04
-_0803BF68:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x91
- ldrb r3, [r0]
- ldr r1, =gBitTable
- ldr r4, =gActiveBank
- ldrb r2, [r4]
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ands r3, r0
- cmp r3, 0
- beq _0803BFD0
- ldr r0, =gUnknown_0202421C
- adds r0, r2, r0
- movs r1, 0xD
- strb r1, [r0]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- bne _0803BFBC
- ldr r0, =gBattleCommunication
- ldrb r1, [r4]
- adds r1, r0
- movs r0, 0x5
- strb r0, [r1]
- bl _0803CD04
- .pool
-_0803BFBC:
- ldr r0, =gBattleCommunication
- ldrb r1, [r4]
- adds r1, r0
- movs r0, 0x4
- strb r0, [r1]
- bl _0803CD04
- .pool
-_0803BFD0:
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 5
- ands r0, r1
- cmp r0, 0
- bne _0803BFF0
- movs r0, 0x80
- lsls r0, 15
- ands r1, r0
- cmp r1, 0
- beq _0803C00C
-_0803BFF0:
- ldr r0, =gUnknown_0202421C
- adds r0, r2, r0
- strb r3, [r0]
- ldr r1, =gBattleCommunication
- ldrb r0, [r4]
- bl _0803CC72
- .pool
-_0803C00C:
- ldr r0, =gUnknown_0202421C
- ldrb r1, [r0]
- ldr r0, =gBattleBufferB
- ldrb r2, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r2, r0
- movs r0, 0
- bl dp01_build_cmdbuf_x12_a_bb
- bl _0803CB68
- .pool
-_0803C02C:
- ldr r3, =gBattleExecBuffer
- ldr r1, =gBitTable
- ldr r6, =gActiveBank
- ldrb r5, [r6]
- lsls r0, r5, 2
- adds r0, r1
- ldr r2, [r0]
- lsls r1, r2, 4
- movs r0, 0xF0
- lsls r0, 24
- orrs r1, r0
- orrs r1, r2
- lsls r0, r2, 8
- orrs r1, r0
- lsls r2, 12
- orrs r1, r2
- ldr r0, [r3]
- ands r0, r1
- cmp r0, 0
- beq _0803C058
- bl _0803CD04
-_0803C058:
- ldr r4, =gBattleBufferB
- lsls r0, r5, 9
- adds r4, 0x1
- adds r0, r4
- ldrb r1, [r0]
- adds r0, r5, 0
- bl sub_8184FBC
- ldr r1, =gUnknown_0202421C
- ldrb r0, [r6]
- adds r1, r0, r1
- lsls r0, 9
- adds r0, r4
- ldrb r0, [r0]
- strb r0, [r1]
- ldrb r0, [r6]
- lsls r0, 9
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0xC
- bls _0803C084
- b _0803C6C4
-_0803C084:
- lsls r0, 2
- ldr r1, =_0803C0A8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0803C0A8:
- .4byte _0803C0DC
- .4byte _0803C230
- .4byte _0803C268
- .4byte _0803C6C4
- .4byte _0803C6C4
- .4byte _0803C440
- .4byte _0803C48C
- .4byte _0803C6C4
- .4byte _0803C6C4
- .4byte _0803C6C4
- .4byte _0803C6C4
- .4byte _0803C6C4
- .4byte _0803C4B4
-_0803C0DC:
- bl AreAllMovesUnusable
- lsls r0, 24
- cmp r0, 0
- beq _0803C134
- ldr r0, =gBattleCommunication
- ldr r3, =gActiveBank
- ldrb r1, [r3]
- adds r1, r0
- movs r4, 0
- movs r0, 0x6
- strb r0, [r1]
- ldrb r1, [r3]
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0x54
- strb r4, [r1]
- ldrb r1, [r3]
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0x84
- movs r0, 0x4
- strb r0, [r1]
- ldrb r1, [r3]
- ldr r2, [r2]
- adds r2, r1, r2
- ldr r0, =gBattleBufferB
- lsls r1, 9
- adds r0, 0x3
- adds r1, r0
- ldrb r0, [r1]
- strb r0, [r2, 0xC]
- bl _0803CD70
- .pool
-_0803C134:
- ldr r3, =gDisableStructs
- ldr r5, =gActiveBank
- ldrb r4, [r5]
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- adds r0, r3
- ldrh r2, [r0, 0x6]
- cmp r2, 0
- beq _0803C188
- ldr r1, =gChosenMovesByBanks
- lsls r0, r4, 1
- adds r0, r1
- strh r2, [r0]
- ldrb r2, [r5]
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r1, r2, r1
- adds r1, 0x80
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0xC]
- strb r0, [r1]
- ldr r1, =gBattleCommunication
- ldrb r0, [r5]
- adds r0, r1
- movs r1, 0x4
- strb r1, [r0]
- bl _0803CD70
- .pool
-_0803C188:
- add r2, sp, 0x4
- ldr r3, =gBattleMons
- movs r1, 0x58
- adds r0, r4, 0
- muls r0, r1
- adds r0, r3
- ldrh r0, [r0]
- strh r0, [r2, 0x10]
- ldrb r0, [r5]
- muls r0, r1
- adds r0, r3
- adds r0, 0x21
- ldrb r0, [r0]
- strb r0, [r2, 0x12]
- ldrb r0, [r5]
- muls r0, r1
- adds r0, r3
- adds r0, 0x22
- ldrb r0, [r0]
- strb r0, [r2, 0x13]
- movs r4, 0
- mov r1, sp
- adds r1, 0xC
- str r1, [sp, 0x18]
- add r2, sp, 0x10
- mov r10, r2
- mov r8, r3
- adds r7, r5, 0
- movs r6, 0x58
- movs r0, 0xC
- add r0, r8
- mov r9, r0
- add r5, sp, 0x4
-_0803C1CA:
- lsls r2, r4, 1
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r2, r0
- add r0, r9
- ldrh r0, [r0]
- strh r0, [r5]
- ldr r1, [sp, 0x18]
- adds r3, r1, r4
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r4, r0
- mov r1, r8
- adds r1, 0x24
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r3]
- ldrb r0, [r7]
- adds r1, r0, 0
- muls r1, r6
- adds r2, r1
- add r2, r9
- ldrh r0, [r2]
- add r1, r8
- adds r1, 0x3B
- ldrb r1, [r1]
- lsls r2, r4, 24
- lsrs r2, 24
- bl CalculatePPWithBonus
- mov r2, r10
- adds r1, r2, r4
- strb r0, [r1]
- adds r5, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- ble _0803C1CA
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x1
- ands r1, r0
- movs r0, 0
- movs r2, 0
- add r3, sp, 0x4
- bl sub_8033E30
- b _0803C42E
- .pool
-_0803C230:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x021f0902
- ands r0, r1
- cmp r0, 0
- bne _0803C23E
- b _0803C48C
-_0803C23E:
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- movs r1, 0x1
- bl sub_8185008
- ldr r1, =gUnknown_02024220
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, =gUnknown_082DB879
- b _0803C784
- .pool
-_0803C268:
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- ldr r3, =gBattleStruct
- ldr r1, [r3]
- adds r1, r0, r1
- adds r1, 0x58
- ldr r2, =gBattlePartyID
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1]
- ldr r7, =gBattleMons
- ldrb r2, [r5]
- movs r6, 0x58
- adds r0, r2, 0
- muls r0, r6
- adds r1, r7, 0
- adds r1, 0x50
- adds r0, r1
- ldr r1, [r0]
- ldr r0, =0x0400e000
- ands r1, r0
- cmp r1, 0
- bne _0803C2B8
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- bne _0803C2B8
- ldr r0, =gStatuses3
- lsls r1, r2, 2
- adds r1, r0
- ldr r1, [r1]
- movs r0, 0x80
- lsls r0, 3
- ands r1, r0
- cmp r1, 0
- beq _0803C2EC
-_0803C2B8:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, 0x60
- ldr r0, [r3]
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0x6
- b _0803C400
- .pool
-_0803C2EC:
- str r1, [sp]
- movs r0, 0xC
- adds r1, r2, 0
- movs r2, 0x17
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _0803C374
- ldrb r1, [r5]
- str r4, [sp]
- movs r0, 0xC
- movs r2, 0x47
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0803C33C
- ldrb r0, [r5]
- muls r0, r6
- adds r1, r0, r7
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0803C33C
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0803C33C
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1A
- bne _0803C374
-_0803C33C:
- ldr r5, =gActiveBank
- ldrb r1, [r5]
- movs r0, 0
- str r0, [sp]
- movs r0, 0xF
- movs r2, 0x2A
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0803C3B0
- ldr r2, =gBattleMons
- ldrb r1, [r5]
- movs r0, 0x58
- muls r0, r1
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x8
- beq _0803C374
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x8
- bne _0803C3B0
-_0803C374:
- subs r1, r4, 0x1
- lsls r1, 4
- movs r0, 0x4
- orrs r1, r0
- lsls r1, 24
- lsrs r1, 24
- ldr r0, =gLastUsedAbility
- ldrb r3, [r0]
- ldr r4, =gBattleStruct
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r2, r0, 1
- adds r2, r0
- adds r2, 0x60
- ldr r0, [r4]
- adds r0, r2
- str r0, [sp]
- movs r0, 0
- movs r2, 0x6
- bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
- b _0803C42E
- .pool
-_0803C3B0:
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r4, r0, 0
- cmp r1, 0x2
- bne _0803C3D8
- ldr r0, =gUnknown_0202421C
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0803C3D8
- ldr r0, =gBattleStruct
- ldr r3, [r0]
- adds r0, r3, 0
- adds r0, 0x5C
- b _0803C3EE
- .pool
-_0803C3D8:
- ldrb r0, [r4]
- cmp r0, 0x3
- bne _0803C410
- ldr r0, =gUnknown_0202421C
- ldrb r0, [r0, 0x1]
- cmp r0, 0x2
- bne _0803C410
- ldr r0, =gBattleStruct
- ldr r3, [r0]
- adds r0, r3, 0
- adds r0, 0x5D
-_0803C3EE:
- ldrb r2, [r0]
- ldrb r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- adds r0, 0x60
- adds r3, r0
- str r3, [sp]
- movs r0, 0
- movs r1, 0
-_0803C400:
- movs r3, 0
- bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
- b _0803C42E
- .pool
-_0803C410:
- ldr r2, =gBattleStruct
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, 0x60
- ldr r0, [r2]
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0
- movs r2, 0x6
- movs r3, 0
- bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
-_0803C42E:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- b _0803C6C4
- .pool
-_0803C440:
- bl IsPlayerPartyAndPokemonStorageFull
- lsls r0, 24
- cmp r0, 0
- bne _0803C44C
- b _0803C6C4
-_0803C44C:
- ldr r1, =gUnknown_02024220
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- lsls r0, 2
- adds r0, r1
- ldr r1, =gUnknown_082DAB11
- str r1, [r0]
- ldr r0, =gBattleCommunication
- ldrb r1, [r3]
- adds r1, r0
- movs r4, 0
- movs r0, 0x6
- strb r0, [r1]
- ldrb r1, [r3]
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0x54
- strb r4, [r1]
- ldrb r1, [r3]
- b _0803C7A0
- .pool
-_0803C48C:
- ldr r2, =gBattleStruct
- ldr r4, =gActiveBank
- ldrb r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- adds r0, 0x60
- ldr r1, [r2]
- adds r1, r0
- movs r0, 0
- bl sub_8033E6C
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _0803C6C4
- .pool
-_0803C4B4:
- ldr r4, =gBattleCommunication
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- adds r0, r4
- movs r1, 0x7
- strb r1, [r0]
- ldrb r0, [r5]
- bl GetBankIdentity
- movs r6, 0x2
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- adds r0, r4
- movs r1, 0x1
- strb r1, [r0]
- ldrb r0, [r5]
- bl sub_8185008
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r1, =gBattleMons
- lsls r0, 24
- lsrs r0, 24
- movs r7, 0x58
- muls r0, r7
- adds r4, r1, 0
- adds r4, 0x50
- adds r0, r4
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 5
- ands r0, r1
- cmp r0, 0
- bne _0803C532
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- muls r0, r7
- adds r0, r4
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _0803C550
-_0803C532:
- movs r0, 0
- bl dp01_build_cmdbuf_x32_32_32_32
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- bl _0803CD70
- .pool
-_0803C550:
- ldr r4, =gUnknown_0202421C
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0803C590
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x2
- bl sub_8185008
- b _0803C6AE
- .pool
-_0803C590:
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _0803C5B6
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- b _0803C668
-_0803C5B6:
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803C628
- ldr r4, =gProtectStructs
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 20
- adds r0, r4
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- blt _0803C616
- ldr r4, =gDisableStructs
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r4
- ldrh r0, [r1, 0x6]
- cmp r0, 0
- beq _0803C628
-_0803C616:
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r6
- b _0803C668
- .pool
-_0803C628:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 10
- ands r0, r1
- cmp r0, 0
- beq _0803C690
- ldr r4, =gUnknown_0202421C
- ldr r6, =gActiveBank
- ldrb r0, [r6]
- bl GetBankIdentity
- movs r5, 0x2
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803C690
- ldr r1, =gRngValue
- ldr r0, =gUnknown_0203BD30
- ldr r0, [r0]
- str r0, [r1]
- ldrb r0, [r6]
- bl GetBankIdentity
- eors r0, r5
-_0803C668:
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1
- bl sub_8185008
- b _0803C6AE
- .pool
-_0803C690:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- movs r1, 0x2
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x3
- bl sub_8185008
-_0803C6AE:
- movs r0, 0
- bl dp01_build_cmdbuf_x32_32_32_32
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- b _0803CD70
- .pool
-_0803C6C4:
- ldr r1, =gBattleTypeFlags
- ldr r2, [r1]
- movs r5, 0x8
- adds r0, r2, 0
- ands r0, r5
- adds r3, r1, 0
- cmp r0, 0
- beq _0803C720
- ldr r0, =0x043f0100
- ands r2, r0
- cmp r2, 0
- beq _0803C720
- ldr r0, =gBattleBufferB
- ldr r4, =gActiveBank
- ldrb r2, [r4]
- lsls r1, r2, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x3
- bne _0803C720
- ldr r1, =gUnknown_02024220
- lsls r0, r2, 2
- adds r0, r1
- ldr r1, =gUnknown_082DB9BA
- str r1, [r0]
- ldr r1, =gBattleCommunication
- ldrb r0, [r4]
- adds r0, r1
- movs r3, 0
- strb r5, [r0]
- b _0803C792
- .pool
-_0803C720:
- ldr r0, [r3]
- ldr r1, =0x0200000a
- ands r0, r1
- cmp r0, 0x8
- bne _0803C760
- ldr r0, =gBattleBufferB
- ldr r4, =gActiveBank
- ldrb r1, [r4]
- lsls r1, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x3
- bne _0803C760
- ldr r0, =gUnknown_082DAAFE
- bl b_call_bc_move_exec
- ldr r1, =gBattleCommunication
- ldrb r0, [r4]
- adds r0, r1
- b _0803CC20
- .pool
-_0803C760:
- bl sub_803BB88
- lsls r0, 24
- cmp r0, 0
- beq _0803C7C4
- ldr r0, =gBattleBufferB
- ldr r4, =gActiveBank
- ldrb r2, [r4]
- lsls r1, r2, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x3
- bne _0803C7C4
- ldr r1, =gUnknown_02024220
- lsls r0, r2, 2
- adds r0, r1
- ldr r1, =gUnknown_082DAB0B
-_0803C784:
- str r1, [r0]
- ldr r0, =gBattleCommunication
- ldrb r1, [r4]
- adds r1, r0
- movs r3, 0
- movs r0, 0x6
- strb r0, [r1]
-_0803C792:
- ldrb r1, [r4]
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0x54
- strb r3, [r1]
- ldrb r1, [r4]
-_0803C7A0:
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0x84
- movs r0, 0x1
- strb r0, [r1]
- b _0803CD70
- .pool
-_0803C7C4:
- ldr r2, =gBattleCommunication
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r1, r2
- b _0803CB74
- .pool
-_0803C7D8:
- ldr r4, =gBattleExecBuffer
- ldr r1, =gBitTable
- ldr r3, =gActiveBank
- ldrb r5, [r3]
- lsls r0, r5, 2
- adds r0, r1
- ldr r2, [r0]
- lsls r0, r2, 4
- movs r1, 0xF0
- lsls r1, 24
- orrs r0, r1
- orrs r0, r2
- lsls r1, r2, 8
- orrs r0, r1
- lsls r2, 12
- orrs r0, r2
- ldr r1, [r4]
- ands r1, r0
- adds r4, r3, 0
- cmp r1, 0
- beq _0803C804
- b _0803CD04
-_0803C804:
- ldr r1, =gUnknown_0202421C
- adds r0, r5, r1
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x9
- bls _0803C812
- b _0803CD04
-_0803C812:
- lsls r0, 2
- ldr r1, =_0803C830
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0803C830:
- .4byte _0803C858
- .4byte _0803C99C
- .4byte _0803C9D4
- .4byte _0803CA0A
- .4byte _0803CA2C
- .4byte _0803CA40
- .4byte _0803CA54
- .4byte _0803CA84
- .4byte _0803CA98
- .4byte _0803CABC
-_0803C858:
- ldr r1, =gBattleBufferB
- ldrb r3, [r4]
- lsls r0, r3, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r1, [r0]
- cmp r1, 0x3
- blt _0803C88A
- cmp r1, 0x9
- ble _0803C878
- cmp r1, 0xF
- beq _0803C87E
- b _0803C88A
- .pool
-_0803C878:
- adds r0, r3, r2
- strb r1, [r0]
- b _0803CD70
-_0803C87E:
- adds r1, r3, r2
- movs r0, 0x2
- strb r0, [r1]
- bl sub_803CDF8
- b _0803CD70
-_0803C88A:
- movs r0, 0x2
- bl sub_818603C
- ldr r4, =gBattleBufferB
- ldr r6, =gActiveBank
- ldrb r3, [r6]
- lsls r1, r3, 9
- adds r5, r4, 0x2
- adds r0, r1, r5
- ldrb r2, [r0]
- adds r7, r4, 0x3
- adds r1, r7
- ldrb r0, [r1]
- lsls r0, 8
- orrs r2, r0
- ldr r0, =0x0000ffff
- cmp r2, r0
- bne _0803C8D0
- ldr r0, =gBattleCommunication
- adds r0, r3, r0
- movs r1, 0x1
- strb r1, [r0]
- ldrb r0, [r6]
- bl sub_8185008
- b _0803CD04
- .pool
-_0803C8D0:
- bl sub_803FB4C
- lsls r0, 24
- cmp r0, 0
- beq _0803C91C
- ldrb r0, [r6]
- movs r1, 0x1
- bl sub_8185008
- ldr r0, =gBattleCommunication
- ldrb r1, [r6]
- adds r1, r0
- movs r3, 0
- movs r0, 0x6
- strb r0, [r1]
- ldrb r1, [r6]
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0x54
- strb r3, [r1]
- ldrb r0, [r6]
- lsls r0, 9
- adds r1, r4, 0x1
- adds r0, r1
- strb r3, [r0]
- ldrb r1, [r6]
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0x84
- movs r0, 0x2
- strb r0, [r1]
- b _0803CD70
- .pool
-_0803C91C:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 10
- ands r0, r1
- cmp r0, 0
- bne _0803C942
- ldrb r0, [r6]
- lsls r1, r0, 9
- adds r1, r5
- ldrb r1, [r1]
- bl sub_8184FBC
- ldrb r0, [r6]
- lsls r1, r0, 9
- adds r1, r7
- ldrb r1, [r1]
- bl sub_8184FBC
-_0803C942:
- ldrb r0, [r6]
- ldr r4, =gBattleStruct
- ldr r1, [r4]
- adds r1, r0, r1
- adds r1, 0x80
- lsls r0, 9
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r0, =gChosenMovesByBanks
- ldrb r2, [r6]
- lsls r5, r2, 1
- adds r5, r0
- ldr r3, =gBattleMons
- ldr r4, [r4]
- adds r0, r2, r4
- adds r0, 0x80
- ldrb r0, [r0]
- lsls r0, 1
- movs r1, 0x58
- muls r1, r2
- adds r0, r1
- adds r3, 0xC
- adds r0, r3
- ldrh r0, [r0]
- strh r0, [r5]
- ldrb r0, [r6]
- adds r4, r0, r4
- lsls r0, 9
- adds r0, r7
- ldrb r0, [r0]
- strb r0, [r4, 0xC]
- ldr r0, =gBattleCommunication
- ldrb r1, [r6]
- b _0803CB72
- .pool
-_0803C99C:
- ldr r2, =gBattleBufferB
- ldr r5, =gActiveBank
- ldrb r4, [r5]
- lsls r1, r4, 9
- adds r0, r2, 0x1
- adds r0, r1, r0
- ldrb r3, [r0]
- adds r2, 0x2
- adds r1, r2
- ldrb r0, [r1]
- lsls r0, 8
- orrs r3, r0
- cmp r3, 0
- bne _0803C9BA
- b _0803CC1C
-_0803C9BA:
- ldr r0, =gLastUsedItem
- strh r3, [r0]
- ldr r0, =gBattleCommunication
- ldrb r1, [r5]
- b _0803CB72
- .pool
-_0803C9D4:
- ldr r0, =gBattleBufferB
- ldr r4, =gActiveBank
- ldrb r2, [r4]
- lsls r1, r2, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x6
- bne _0803CA04
- ldr r0, =gBattleCommunication
- adds r0, r2, r0
- movs r1, 0x1
- strb r1, [r0]
- ldrb r0, [r4]
- bl sub_8185008
- b _0803CD04
- .pool
-_0803CA04:
- bl sub_803CDF8
- b _0803CB6E
-_0803CA0A:
- ldr r2, =gHitMarker
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 8
- orrs r0, r1
- str r0, [r2]
- ldr r2, =gBattleCommunication
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r1, r2
- b _0803CB74
- .pool
-_0803CA2C:
- ldr r2, =gBattleCommunication
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r1, r2
- b _0803CB74
- .pool
-_0803CA40:
- ldr r2, =gBattleCommunication
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r1, r2
- b _0803CB74
- .pool
-_0803CA54:
- ldr r3, =gBattleBufferB
- ldr r0, =gActiveBank
- ldrb r4, [r0]
- lsls r1, r4, 9
- adds r0, r3, 0x1
- adds r0, r1, r0
- ldrb r2, [r0]
- adds r3, 0x2
- adds r1, r3
- ldrb r0, [r1]
- lsls r0, 8
- orrs r2, r0
- cmp r2, 0
- bne _0803CA72
- b _0803CC1C
-_0803CA72:
- ldr r1, =gBattleCommunication
- adds r1, r4, r1
- b _0803CB74
- .pool
-_0803CA84:
- ldr r2, =gBattleCommunication
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r1, r2
- b _0803CB74
- .pool
-_0803CA98:
- ldr r2, =gHitMarker
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 8
- orrs r0, r1
- str r0, [r2]
- ldr r2, =gBattleCommunication
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r1, r2
- b _0803CB74
- .pool
-_0803CABC:
- ldr r2, =gBattleCommunication
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r1, r2
- b _0803CB74
- .pool
-_0803CAD0:
- ldr r3, =gBattleExecBuffer
- ldr r6, =gBitTable
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r6
- ldr r2, [r0]
- lsls r1, r2, 4
- movs r0, 0xF0
- lsls r0, 24
- orrs r1, r0
- orrs r1, r2
- lsls r0, r2, 8
- orrs r1, r0
- lsls r2, 12
- orrs r1, r2
- ldr r0, [r3]
- ands r0, r1
- cmp r0, 0
- beq _0803CAFA
- b _0803CD04
-_0803CAFA:
- bl sub_803CDB8
- lsls r0, 24
- lsrs r0, 24
- negs r1, r0
- orrs r1, r0
- lsrs r4, r1, 31
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x41
- ands r0, r1
- cmp r0, 0x1
- bne _0803CB3C
- movs r1, 0x2
- movs r0, 0x2
- ands r0, r5
- cmp r0, 0
- bne _0803CB3C
- adds r0, r5, 0
- eors r0, r1
- bl GetBankByPlayerAI
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r1, 0x91
- ldrb r1, [r1]
- lsls r0, 24
- lsrs r0, 22
- adds r0, r6
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _0803CB5C
-_0803CB3C:
- movs r0, 0
- movs r1, 0
- adds r2, r4, 0
- bl sub_8034464
- b _0803CB66
- .pool
-_0803CB5C:
- movs r0, 0
- movs r1, 0x1
- adds r2, r4, 0
- bl sub_8034464
-_0803CB66:
- ldr r4, =gActiveBank
-_0803CB68:
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803CB6E:
- ldr r0, =gBattleCommunication
- ldrb r1, [r4]
-_0803CB72:
- adds r1, r0
-_0803CB74:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0803CD04
- .pool
-_0803CB84:
- ldr r3, =gBattleExecBuffer
- ldr r1, =gBitTable
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r2, [r0]
- lsls r1, r2, 4
- movs r0, 0xF0
- lsls r0, 24
- orrs r1, r0
- orrs r1, r2
- lsls r0, r2, 8
- orrs r1, r0
- lsls r2, 12
- orrs r1, r2
- ldr r0, [r3]
- ands r0, r1
- cmp r0, 0
- beq _0803CBAE
- b _0803CD04
-_0803CBAE:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1, 0x4]
- adds r0, 0x1
- strb r0, [r1, 0x4]
- b _0803CD04
- .pool
-_0803CBC8:
- ldr r5, =gActiveBank
- ldrb r2, [r5]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r1, r2, r0
- adds r0, r1, 0
- adds r0, 0x54
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803CCB4
- ldr r0, =gBattleCommunication
- adds r0, r2, r0
- adds r1, 0x84
- ldrb r1, [r1]
- strb r1, [r0]
- b _0803CD04
- .pool
-_0803CBF4:
- ldr r3, =gBattleExecBuffer
- ldr r1, =gBitTable
- ldr r0, =gActiveBank
- ldrb r4, [r0]
- lsls r0, r4, 2
- adds r0, r1
- ldr r2, [r0]
- lsls r1, r2, 4
- movs r0, 0xF0
- lsls r0, 24
- orrs r1, r0
- orrs r1, r2
- lsls r0, r2, 8
- orrs r1, r0
- lsls r2, 12
- orrs r1, r2
- ldr r0, [r3]
- ands r0, r1
- cmp r0, 0
- bne _0803CD04
-_0803CC1C:
- ldr r0, =gBattleCommunication
- adds r0, r4, r0
-_0803CC20:
- movs r1, 0x1
- strb r1, [r0]
- b _0803CD04
- .pool
-_0803CC38:
- ldr r5, =gActiveBank
- ldrb r2, [r5]
- ldr r4, =gBattleStruct
- ldr r0, [r4]
- adds r0, r2, r0
- adds r0, 0x54
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803CCB4
- ldr r0, =gBattleBufferB
- lsls r1, r2, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0xD
- bne _0803CC94
- ldr r2, =gHitMarker
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 8
- orrs r0, r1
- str r0, [r2]
- ldr r1, =gUnknown_0202421C
- ldrb r0, [r5]
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0]
- ldr r1, =gBattleCommunication
- ldrb r0, [r5]
-_0803CC72:
- adds r0, r1
- movs r1, 0x4
- strb r1, [r0]
- b _0803CD04
- .pool
-_0803CC94:
- adds r0, r2, 0
- movs r1, 0x1
- bl sub_8185008
- ldr r2, =gBattleCommunication
- ldrb r0, [r5]
- adds r2, r0, r2
- ldr r1, [r4]
- adds r0, r1
- adds r0, 0x84
- ldrb r0, [r0]
- strb r0, [r2]
- b _0803CD04
- .pool
-_0803CCB4:
- ldr r0, =gBankAttacker
- strb r2, [r0]
- ldr r7, =gBattlescriptCurrInstr
- ldr r6, =gUnknown_02024220
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r6
- ldr r4, [r0]
- str r4, [r7]
- ldr r3, =gBattleExecBuffer
- ldr r1, =gBitTable
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r2, [r0]
- lsls r1, r2, 4
- movs r0, 0xF0
- lsls r0, 24
- orrs r1, r0
- orrs r1, r2
- lsls r0, r2, 8
- orrs r1, r0
- lsls r2, 12
- orrs r1, r2
- ldr r0, [r3]
- ands r0, r1
- cmp r0, 0
- bne _0803CCFA
- ldr r0, =gBattleScriptingCommandsTable
- ldrb r1, [r4]
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- bl _call_via_r0
-_0803CCFA:
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r6
- ldr r1, [r7]
- str r1, [r0]
-_0803CD04:
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r1, 0x1
- strb r1, [r0]
- ldr r0, =gNoOfAllBanks
- lsls r1, 24
- lsrs r1, 24
-_0803CD12:
- adds r5, r0, 0
- ldrb r0, [r5]
- cmp r1, r0
- bcs _0803CD1E
- bl _0803BE9C
-_0803CD1E:
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x4]
- ldrb r1, [r5]
- cmp r0, r1
- bne _0803CD70
- movs r0, 0x1
- bl sub_818603C
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803D2E8
- str r0, [r1]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _0803CD70
- movs r4, 0
- ldrb r5, [r5]
- cmp r4, r5
- bge _0803CD70
-_0803CD4A:
- ldr r0, =gUnknown_0202421C
- adds r0, r4, r0
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0803CD66
- lsls r0, r4, 24
- lsrs r0, 24
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r1, r4, r1
- adds r1, 0x5C
- ldrb r1, [r1]
- bl sub_80571DC
-_0803CD66:
- adds r4, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- blt _0803CD4A
-_0803CD70:
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803BE74
-
- thumb_func_start sub_803CDB8
-sub_803CDB8: @ 803CDB8
- push {r4,r5,lr}
- movs r3, 0
- movs r1, 0
- ldr r0, =gNoOfAllBanks
- ldrb r2, [r0]
- adds r5, r0, 0
- cmp r3, r2
- bge _0803CDDA
- ldr r4, =gBattleCommunication
-_0803CDCA:
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0x5
- bne _0803CDD4
- adds r3, 0x1
-_0803CDD4:
- adds r1, 0x1
- cmp r1, r2
- blt _0803CDCA
-_0803CDDA:
- adds r0, r3, 0x1
- ldrb r5, [r5]
- cmp r0, r5
- beq _0803CDF0
- movs r0, 0
- b _0803CDF2
- .pool
-_0803CDF0:
- movs r0, 0x1
-_0803CDF2:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_803CDB8
-
- thumb_func_start sub_803CDF8
-sub_803CDF8: @ 803CDF8
- push {r4-r7,lr}
- ldr r7, =gActiveBank
- ldrb r0, [r7]
- ldr r6, =gBattleStruct
- ldr r1, [r6]
- adds r1, r0, r1
- adds r1, 0x5C
- ldr r4, =gBattleBufferB
- lsls r0, 9
- adds r2, r4, 0x1
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- ldrb r0, [r7]
- lsls r1, r0, 9
- adds r1, r2
- ldrb r1, [r1]
- bl sub_8184FBC
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x42
- ands r0, r1
- cmp r0, 0x42
- bne _0803CEC6
- ldrb r0, [r7]
- ldr r2, [r6]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0x60
- ldrb r2, [r1]
- movs r0, 0xF
- ands r0, r2
- strb r0, [r1]
- ldrb r0, [r7]
- ldr r2, [r6]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0x60
- lsls r0, 9
- adds r5, r4, 0x2
- adds r0, r5
- ldrb r2, [r0]
- movs r3, 0xF0
- adds r0, r3, 0
- ands r0, r2
- ldrb r2, [r1]
- orrs r0, r2
- strb r0, [r1]
- ldrb r1, [r7]
- ldr r2, [r6]
- lsls r0, r1, 1
- adds r0, r1
- adds r0, r2
- adds r0, 0x61
- lsls r1, 9
- adds r4, 0x3
- mov r12, r4
- add r1, r12
- ldrb r1, [r1]
- strb r1, [r0]
- ldrb r0, [r7]
- movs r4, 0x2
- eors r0, r4
- ldr r2, [r6]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0x60
- ldrb r2, [r1]
- adds r0, r3, 0
- ands r0, r2
- strb r0, [r1]
- ldrb r0, [r7]
- eors r0, r4
- ldr r2, [r6]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0x60
- ldrb r0, [r7]
- lsls r0, 9
- adds r0, r5
- ldrb r0, [r0]
- ands r3, r0
- lsrs r3, 4
- ldrb r0, [r1]
- orrs r3, r0
- strb r3, [r1]
- ldrb r0, [r7]
- eors r4, r0
- ldr r0, [r6]
- lsls r1, r4, 1
- adds r1, r4
- adds r1, r0
- adds r1, 0x62
- ldrb r0, [r7]
- lsls r0, 9
- add r0, r12
- ldrb r0, [r0]
- strb r0, [r1]
-_0803CEC6:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803CDF8
-
- thumb_func_start sub_803CEDC
-sub_803CEDC: @ 803CEDC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r2, =gUnknown_0202407A
- adds r4, r0, r2
- ldrb r5, [r4]
- adds r2, r1, r2
- ldrb r3, [r2]
- strb r3, [r4]
- strb r5, [r2]
- ldr r2, =gTurnOrder
- adds r0, r2
- ldrb r5, [r0]
- adds r1, r2
- ldrb r2, [r1]
- strb r2, [r0]
- strb r5, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803CEDC
-
- thumb_func_start b_first_side
-b_first_side: @ 803CF10
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _0803CFD8
- ldr r1, [sp, 0x8]
- str r1, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _0803CFD8
- ldr r1, =gBattleMons
- movs r0, 0x58
- mov r2, r9
- muls r2, r0
- adds r0, r2, 0
- adds r0, r1
- adds r0, 0x20
- ldrb r3, [r0]
- cmp r3, 0x21
- bne _0803CF7C
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x7
- ands r0, r1
- cmp r0, 0
- bne _0803CF8C
-_0803CF7C:
- cmp r3, 0x22
- bne _0803CF98
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- beq _0803CF98
-_0803CF8C:
- movs r3, 0x2
- b _0803CF9A
- .pool
-_0803CF98:
- movs r3, 0x1
-_0803CF9A:
- movs r0, 0x58
- mov r1, r10
- muls r1, r0
- adds r0, r1, 0
- ldr r2, =gBattleMons
- adds r0, r2
- adds r0, 0x20
- ldrb r2, [r0]
- cmp r2, 0x21
- bne _0803CFBA
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x7
- ands r0, r1
- cmp r0, 0
- bne _0803CFCA
-_0803CFBA:
- cmp r2, 0x22
- bne _0803CFDA
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- beq _0803CFDA
-_0803CFCA:
- movs r7, 0x2
- b _0803CFDC
- .pool
-_0803CFD8:
- movs r3, 0x1
-_0803CFDA:
- movs r7, 0x1
-_0803CFDC:
- ldr r1, =gBattleMons
- movs r0, 0x58
- mov r2, r9
- muls r2, r0
- adds r0, r2, 0
- adds r4, r0, r1
- ldrh r0, [r4, 0x6]
- muls r3, r0
- ldr r2, =gStatStageRatios
- movs r1, 0x1B
- ldrsb r1, [r4, r1]
- lsls r1, 1
- adds r0, r1, r2
- ldrb r0, [r0]
- muls r0, r3
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- bl __divsi3
- mov r8, r0
- ldrh r0, [r4, 0x2E]
- cmp r0, 0xAF
- bne _0803D02C
- ldr r1, =gEnigmaBerries
- mov r3, r9
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r6, [r0, 0x7]
- ldrb r5, [r0, 0x1A]
- b _0803D040
- .pool
-_0803D02C:
- ldrh r0, [r4, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r6, r0, 24
- ldrh r0, [r4, 0x2E]
- bl ItemId_GetHoldEffectParam
- lsls r0, 24
- lsrs r5, r0, 24
-_0803D040:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x023f0102
- ands r0, r1
- cmp r0, 0
- bne _0803D074
- ldr r0, =0x00000869
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _0803D074
- mov r0, r9
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803D074
- movs r0, 0x6E
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- movs r1, 0x64
- bl __udivsi3
- mov r8, r0
-_0803D074:
- cmp r6, 0x18
- bne _0803D07E
- mov r2, r8
- lsrs r2, 1
- mov r8, r2
-_0803D07E:
- ldr r1, =gBattleMons
- movs r0, 0x58
- mov r3, r9
- muls r3, r0
- adds r0, r3, 0
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0803D09C
- mov r0, r8
- lsrs r0, 2
- mov r8, r0
-_0803D09C:
- cmp r6, 0x1A
- bne _0803D0B8
- ldr r0, =gUnknown_02024330
- ldrh r4, [r0]
- lsls r0, r5, 16
- subs r0, r5
- movs r1, 0x64
- bl __divsi3
- cmp r4, r0
- bge _0803D0B8
- movs r1, 0x1
- negs r1, r1
- mov r8, r1
-_0803D0B8:
- ldr r1, =gBattleMons
- movs r0, 0x58
- mov r2, r10
- muls r2, r0
- adds r0, r2, 0
- adds r4, r0, r1
- ldrh r0, [r4, 0x6]
- adds r3, r0, 0
- muls r3, r7
- ldr r2, =gStatStageRatios
- movs r1, 0x1B
- ldrsb r1, [r4, r1]
- lsls r1, 1
- adds r0, r1, r2
- ldrb r0, [r0]
- muls r0, r3
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- bl __divsi3
- adds r7, r0, 0
- ldrh r0, [r4, 0x2E]
- cmp r0, 0xAF
- bne _0803D118
- ldr r1, =gEnigmaBerries
- mov r3, r10
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r6, [r0, 0x7]
- ldrb r5, [r0, 0x1A]
- b _0803D12C
- .pool
-_0803D118:
- ldrh r0, [r4, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r6, r0, 24
- ldrh r0, [r4, 0x2E]
- bl ItemId_GetHoldEffectParam
- lsls r0, 24
- lsrs r5, r0, 24
-_0803D12C:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x023f0102
- ands r0, r1
- cmp r0, 0
- bne _0803D15C
- ldr r0, =0x00000869
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _0803D15C
- mov r0, r10
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803D15C
- movs r0, 0x6E
- muls r0, r7
- movs r1, 0x64
- bl __udivsi3
- adds r7, r0, 0
-_0803D15C:
- cmp r6, 0x18
- bne _0803D162
- lsrs r7, 1
-_0803D162:
- ldr r2, =gBattleMons
- movs r0, 0x58
- mov r1, r10
- muls r1, r0
- adds r0, r1, 0
- adds r1, r2, 0
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0803D17E
- lsrs r7, 2
-_0803D17E:
- cmp r6, 0x1A
- bne _0803D198
- ldr r0, =gUnknown_02024330
- ldrh r4, [r0]
- lsls r0, r5, 16
- subs r0, r5
- movs r1, 0x64
- bl __divsi3
- cmp r4, r0
- bge _0803D198
- movs r7, 0x1
- negs r7, r7
-_0803D198:
- ldr r2, [sp, 0x4]
- cmp r2, 0
- beq _0803D1B8
- movs r3, 0
- b _0803D254
- .pool
-_0803D1B8:
- ldr r0, =gUnknown_0202421C
- mov r3, r9
- adds r1, r3, r0
- ldrb r1, [r1]
- adds r2, r0, 0
- cmp r1, 0
- bne _0803D208
- ldr r0, =gProtectStructs
- lsls r1, r3, 4
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 29
- cmp r0, 0
- bge _0803D1E0
- movs r3, 0xA5
- b _0803D20A
- .pool
-_0803D1E0:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- add r0, r9
- adds r0, 0x80
- ldrb r0, [r0]
- lsls r0, 1
- movs r1, 0x58
- mov r3, r9
- muls r3, r1
- adds r1, r3, 0
- adds r0, r1
- ldr r1, =gBattleMons
- adds r1, 0xC
- adds r0, r1
- ldrh r3, [r0]
- b _0803D20A
- .pool
-_0803D208:
- movs r3, 0
-_0803D20A:
- mov r1, r10
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803D254
- ldr r0, =gProtectStructs
- lsls r1, 4
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 29
- cmp r0, 0
- bge _0803D22C
- movs r2, 0xA5
- b _0803D256
- .pool
-_0803D22C:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- add r0, r10
- adds r0, 0x80
- ldrb r0, [r0]
- lsls r0, 1
- movs r1, 0x58
- mov r2, r10
- muls r2, r1
- adds r1, r2, 0
- adds r0, r1
- ldr r1, =gBattleMons
- adds r1, 0xC
- adds r0, r1
- ldrh r2, [r0]
- b _0803D256
- .pool
-_0803D254:
- movs r2, 0
-_0803D256:
- ldr r4, =gBattleMoves
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- adds r0, r4
- movs r1, 0x7
- ldrsb r1, [r0, r1]
- lsls r3, r2, 1
- cmp r1, 0
- bne _0803D27A
- adds r0, r3, r2
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x7]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- beq _0803D2B8
-_0803D27A:
- adds r0, r3, r2
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x7]
- lsls r0, 24
- asrs r0, 24
- cmp r1, r0
- bne _0803D2AE
- cmp r8, r7
- bne _0803D2A4
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0803D2A4
- movs r3, 0x2
- b _0803D2D4
- .pool
-_0803D2A4:
- cmp r8, r7
- bcs _0803D2D6
- movs r0, 0x1
- str r0, [sp, 0x8]
- b _0803D2D6
-_0803D2AE:
- cmp r1, r0
- bge _0803D2D6
- movs r1, 0x1
- str r1, [sp, 0x8]
- b _0803D2D6
-_0803D2B8:
- cmp r8, r7
- bne _0803D2CE
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0803D2CE
- movs r2, 0x2
- str r2, [sp, 0x8]
- b _0803D2D6
-_0803D2CE:
- cmp r8, r7
- bcs _0803D2D6
- movs r3, 0x1
-_0803D2D4:
- str r3, [sp, 0x8]
-_0803D2D6:
- ldr r0, [sp, 0x8]
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end b_first_side
-
- thumb_func_start sub_803D2E8
-sub_803D2E8: @ 803D2E8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r3, 0
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0803D354
- ldr r0, =gActiveBank
- strb r3, [r0]
- ldr r4, =gNoOfAllBanks
- mov r8, r0
- ldrb r0, [r4]
- cmp r3, r0
- bcc _0803D310
- b _0803D54A
-_0803D310:
- ldr r7, =gUnknown_0202407A
- ldr r6, =gUnknown_0202421C
- mov r2, r8
- ldr r5, =gTurnOrder
-_0803D318:
- adds r1, r3, r7
- ldrb r0, [r2]
- adds r0, r6
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r3, r5
- ldrb r0, [r2]
- strb r0, [r1]
- adds r3, 0x1
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r4]
- cmp r0, r1
- bcc _0803D318
- b _0803D54A
- .pool
-_0803D354:
- movs r2, 0x2
- ands r1, r2
- cmp r1, 0
- beq _0803D3A4
- ldr r0, =gActiveBank
- strb r3, [r0]
- ldr r1, =gNoOfAllBanks
- mov r8, r0
- adds r2, r1, 0
- ldrb r2, [r2]
- cmp r3, r2
- bcs _0803D3C0
- ldr r0, =gUnknown_0202421C
- ldrb r1, [r0]
- adds r4, r0, 0
- cmp r1, 0x3
- beq _0803D3BE
-_0803D376:
- mov r7, r8
- ldrb r0, [r7]
- adds r0, 0x1
- strb r0, [r7]
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gNoOfAllBanks
- ldrb r1, [r1]
- cmp r0, r1
- bcs _0803D3C0
- ldrb r0, [r7]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _0803D376
- b _0803D3BE
- .pool
-_0803D3A4:
- ldr r1, =gUnknown_0202421C
- ldrb r0, [r1]
- ldr r4, =gActiveBank
- mov r8, r4
- cmp r0, 0x3
- bne _0803D3B4
- strb r3, [r4]
- movs r3, 0x5
-_0803D3B4:
- ldrb r0, [r1, 0x2]
- cmp r0, 0x3
- bne _0803D3C0
- mov r7, r8
- strb r2, [r7]
-_0803D3BE:
- movs r3, 0x5
-_0803D3C0:
- cmp r3, 0x5
- bne _0803D448
- ldr r6, =gUnknown_0202407A
- ldr r1, =gUnknown_0202421C
- mov r2, r8
- ldrb r0, [r2]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r6]
- ldr r2, =gTurnOrder
- mov r3, r8
- ldrb r0, [r3]
- strb r0, [r2]
- movs r3, 0x1
- movs r5, 0
- adds r4, r1, 0
- ldr r7, =gBattleMainFunc
- mov r10, r7
- ldr r0, =bc_80154A0
- mov r12, r0
- ldr r1, =gBattleStruct
- mov r9, r1
- ldr r7, =gNoOfAllBanks
- ldrb r7, [r7]
- cmp r5, r7
- bge _0803D41A
- adds r7, r6, 0
- adds r6, r4, 0
- adds r4, r2, 0
- ldr r2, =gNoOfAllBanks
-_0803D3FC:
- mov r0, r8
- ldrb r0, [r0]
- cmp r5, r0
- beq _0803D412
- adds r1, r3, r7
- adds r0, r5, r6
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r3, r4
- strb r5, [r0]
- adds r3, 0x1
-_0803D412:
- adds r5, 0x1
- ldrb r1, [r2]
- cmp r5, r1
- blt _0803D3FC
-_0803D41A:
- mov r2, r12
- mov r3, r10
- str r2, [r3]
- mov r4, r9
- ldr r0, [r4]
- b _0803D554
- .pool
-_0803D448:
- movs r0, 0
- mov r7, r8
- strb r0, [r7]
- ldr r1, =gNoOfAllBanks
- ldrb r0, [r1]
- cmp r0, 0
- beq _0803D48E
- ldr r6, =gUnknown_0202421C
- mov r2, r8
- ldr r5, =gUnknown_0202407A
- ldr r4, =gTurnOrder
-_0803D45E:
- ldrb r0, [r2]
- adds r0, r6
- ldrb r1, [r0]
- subs r0, r1, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _0803D47C
- adds r0, r3, r5
- strb r1, [r0]
- adds r1, r3, r4
- mov r7, r8
- ldrb r0, [r7]
- strb r0, [r1]
- adds r3, 0x1
-_0803D47C:
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gNoOfAllBanks
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803D45E
-_0803D48E:
- movs r0, 0
- mov r2, r8
- strb r0, [r2]
- ldr r4, =gNoOfAllBanks
- ldrb r0, [r4]
- cmp r0, 0
- beq _0803D4D2
- ldr r6, =gUnknown_0202421C
- ldr r5, =gUnknown_0202407A
- ldr r4, =gTurnOrder
-_0803D4A2:
- ldrb r0, [r2]
- adds r0, r6
- ldrb r1, [r0]
- subs r0, r1, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _0803D4C0
- adds r0, r3, r5
- strb r1, [r0]
- adds r1, r3, r4
- mov r7, r8
- ldrb r0, [r7]
- strb r0, [r1]
- adds r3, 0x1
-_0803D4C0:
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gNoOfAllBanks
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803D4A2
-_0803D4D2:
- movs r5, 0
- b _0803D540
- .pool
-_0803D4E8:
- adds r4, r5, 0x1
- adds r7, r4, 0
- ldrb r1, [r1]
- cmp r7, r1
- bge _0803D53E
- ldr r6, =gUnknown_0202407A
- lsls r2, r5, 24
- mov r8, r2
-_0803D4F8:
- ldr r0, =gTurnOrder
- adds r1, r5, r0
- ldrb r3, [r1]
- adds r0, r4, r0
- ldrb r1, [r0]
- adds r0, r5, r6
- ldrb r2, [r0]
- cmp r2, 0x1
- beq _0803D534
- adds r0, r4, r6
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0803D534
- cmp r2, 0x2
- beq _0803D534
- cmp r0, 0x2
- beq _0803D534
- adds r0, r3, 0
- movs r2, 0
- bl b_first_side
- lsls r0, 24
- cmp r0, 0
- beq _0803D534
- lsls r1, r4, 24
- lsrs r1, 24
- mov r3, r8
- lsrs r0, r3, 24
- bl sub_803CEDC
-_0803D534:
- adds r4, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- blt _0803D4F8
-_0803D53E:
- adds r5, r7, 0
-_0803D540:
- ldr r1, =gNoOfAllBanks
- ldrb r0, [r1]
- subs r0, 0x1
- cmp r5, r0
- blt _0803D4E8
-_0803D54A:
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_80154A0
- str r0, [r1]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
-_0803D554:
- adds r0, 0x48
- movs r1, 0
- strb r1, [r0]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803D2E8
-
- thumb_func_start sub_803D580
-sub_803D580: @ 803D580
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r1, =gActiveBank
- movs r0, 0
- strb r0, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r2, [r0]
- adds r5, r1, 0
- cmp r2, 0
- beq _0803D678
- ldr r7, =gProtectStructs
- adds r6, r5, 0
- ldr r0, =gBattleMons + 0x50
- mov r12, r0
- ldr r1, =gDisableStructs
- mov r8, r1
- mov r10, r8
-_0803D5AE:
- mov r2, r9
- cmp r2, 0
- beq _0803D5EC
- ldrb r1, [r6]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldrb r1, [r6]
- lsls r1, 4
- adds r1, r7
- ldrb r2, [r1]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- b _0803D648
- .pool
-_0803D5EC:
- ldrb r0, [r6]
- lsls r0, 4
- adds r2, r0, r7
- movs r1, 0
- mov r4, r10
- movs r3, 0
-_0803D5F8:
- adds r0, r2, r1
- strb r3, [r0]
- adds r1, 0x1
- cmp r1, 0xF
- bls _0803D5F8
- ldrb r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r0, r4
- ldrb r0, [r1, 0x16]
- cmp r0, 0
- beq _0803D616
- subs r0, 0x1
- strb r0, [r1, 0x16]
-_0803D616:
- ldrb r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r0, r4
- ldrb r0, [r1, 0x19]
- cmp r0, 0
- beq _0803D648
- subs r0, 0x1
- strb r0, [r1, 0x19]
- ldrb r2, [r5]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x19]
- cmp r0, 0
- bne _0803D648
- movs r0, 0x58
- muls r2, r0
- add r2, r12
- ldr r0, [r2]
- ldr r1, =0xffbfffff
- ands r0, r1
- str r0, [r2]
-_0803D648:
- ldrb r2, [r5]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- add r0, r8
- ldrb r0, [r0, 0xA]
- cmp r0, 0
- bne _0803D666
- movs r0, 0x58
- muls r2, r0
- add r2, r12
- ldr r0, [r2]
- ldr r1, =0xfeffffff
- ands r0, r1
- str r0, [r2]
-_0803D666:
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gNoOfAllBanks
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803D5AE
-_0803D678:
- movs r0, 0
- ldr r2, =gSideTimers
- strb r0, [r2, 0x8]
- strb r0, [r2, 0x14]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803D580
-
- thumb_func_start sub_803D6A0
-sub_803D6A0: @ 803D6A0
- push {r4-r6,lr}
- ldr r2, =gActiveBank
- movs r0, 0
- strb r0, [r2]
- ldr r0, =gNoOfAllBanks
- ldrb r1, [r0]
- adds r6, r0, 0
- cmp r1, 0
- beq _0803D6DE
- adds r3, r2, 0
- movs r4, 0
- ldr r5, =gSpecialStatuses
-_0803D6B8:
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, r0, r5
- movs r1, 0
-_0803D6C4:
- adds r0, r2, r1
- strb r4, [r0]
- adds r1, 0x1
- cmp r1, 0x13
- bls _0803D6C4
- ldrb r0, [r3]
- adds r0, 0x1
- strb r0, [r3]
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r6]
- cmp r0, r1
- bcc _0803D6B8
-_0803D6DE:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803D6A0
-
- thumb_func_start bc_80154A0
-bc_80154A0: @ 803D6F0
- push {r4-r7,lr}
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- bne _0803D7AE
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r0, 0x48
- ldr r1, =gNoOfAllBanks
- ldrb r0, [r0]
- mov r12, r2
- adds r6, r1, 0
- ldrb r1, [r6]
- cmp r0, r1
- bcs _0803D7AE
- ldr r5, =gActiveBank
- ldr r4, =gBankAttacker
- movs r7, 0x84
- lsls r7, 1
-_0803D71C:
- ldr r1, [r2]
- adds r1, 0x48
- ldrb r0, [r1]
- strb r0, [r4]
- strb r0, [r5]
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r1, =gChosenMovesByBanks
- ldrb r3, [r5]
- lsls r0, r3, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- bne _0803D7A0
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r3
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- bne _0803D7A0
- ldr r2, =gDisableStructs
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x18]
- lsls r0, 31
- cmp r0, 0
- bne _0803D7A0
- ldr r0, =gProtectStructs
- lsls r1, r3, 4
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 29
- cmp r0, 0
- blt _0803D7A0
- ldr r0, =gUnknown_082DB1FF
- bl b_call_bc_move_exec
- b _0803D7E8
- .pool
-_0803D7A0:
- mov r2, r12
- ldr r0, [r2]
- adds r0, 0x48
- ldrb r0, [r0]
- ldrb r1, [r6]
- cmp r0, r1
- bcc _0803D71C
-_0803D7AE:
- bl b_clear_atk_up_if_hit_flag_unless_enraged
- ldr r1, =gUnknown_02024082
- movs r0, 0
- strb r0, [r1]
- ldr r1, =gFightStateTracker
- ldr r0, =gUnknown_0202407A
- movs r3, 0
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r0, =gDynamicBasePower
- movs r2, 0
- strh r3, [r0]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- strb r2, [r0, 0x13]
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_bs_exec
- str r0, [r1]
- ldr r0, =gBattleCommunication
- strb r2, [r0, 0x3]
- strb r2, [r0, 0x4]
- ldr r0, =gBattleScripting
- strb r2, [r0, 0x16]
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- adds r0, 0x20
- strb r2, [r0]
-_0803D7E8:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_80154A0
-
- thumb_func_start bc_bs_exec
-bc_bs_exec: @ 803D818
- push {r4-r6,lr}
- ldr r6, =gBattleOutcome
- ldrb r0, [r6]
- ldr r2, =gFightStateTracker
- cmp r0, 0
- beq _0803D828
- movs r0, 0xC
- strb r0, [r2]
-_0803D828:
- ldr r5, =gBattleStruct
- ldr r0, [r5]
- adds r0, 0x4B
- ldr r4, =gUnknown_02024082
- ldrb r1, [r4]
- strb r1, [r0]
- ldr r1, =gUnknown_0831BC0C
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, =gNoOfAllBanks
- ldrb r1, [r4]
- ldrb r0, [r0]
- cmp r1, r0
- bcc _0803D894
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xffefffff
- ands r0, r1
- str r0, [r2]
- ldr r3, =gBattleMainFunc
- ldr r2, =gUnknown_0831BC44
- ldrb r1, [r6]
- movs r0, 0x7F
- ands r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- str r0, [r3]
- b _0803D8AC
- .pool
-_0803D894:
- ldr r0, [r5]
- adds r0, 0x4B
- ldrb r0, [r0]
- cmp r0, r1
- beq _0803D8AC
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffffdff
- ands r0, r1
- ldr r1, =0xfff7ffff
- ands r0, r1
- str r0, [r2]
-_0803D8AC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_bs_exec
-
- thumb_func_start sub_803D8C0
-sub_803D8C0: @ 803D8C0
- push {r4,lr}
- ldr r1, =gFightStateTracker
- movs r0, 0
- strb r0, [r1]
- ldr r1, =gBattleTypeFlags
- ldr r2, [r1]
- ldr r0, =0x02000002
- ands r0, r2
- cmp r0, 0
- beq _0803D920
- ldr r1, =gScriptResult
- ldr r4, =gBattleOutcome
- ldrb r0, [r4]
- strh r0, [r1]
- ldr r1, =gBattleTextBuff1
- ldrb r0, [r4]
- strb r0, [r1]
- movs r0, 0
- bl GetBankByPlayerAI
- ldr r1, =gBankAttacker
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAA35
- str r0, [r1]
- ldrb r1, [r4]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r4]
- b _0803DAA4
- .pool
-_0803D920:
- movs r0, 0x8
- ands r0, r2
- cmp r0, 0
- beq _0803D95C
- ldr r0, =0x043f0900
- ands r2, r0
- cmp r2, 0
- beq _0803D95C
- bl sub_805EA60
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAA87
- str r0, [r1]
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- ldr r0, =0x000003fe
- cmp r1, r0
- bne _0803D946
- b _0803DA8A
-_0803D946:
- b _0803DA94
- .pool
-_0803D95C:
- ldr r0, [r1]
- movs r1, 0xA
- ands r0, r1
- cmp r0, 0x8
- beq _0803D968
- b _0803DA9E
-_0803D968:
- bl sub_805EA60
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DA92D
- str r0, [r1]
- ldr r2, =gTrainers
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x1]
- subs r0, 0x3
- cmp r0, 0x32
- bls _0803D98A
- b _0803DA94
-_0803D98A:
- lsls r0, 2
- ldr r1, =_0803D9A8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0803D9A8:
- .4byte _0803DA80
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA80
- .4byte _0803DA94
- .4byte _0803DA80
- .4byte _0803DA94
- .4byte _0803DA80
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA74
- .4byte _0803DA8A
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA74
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA80
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA94
- .4byte _0803DA80
-_0803DA74:
- ldr r0, =0x00000163
- bl PlayBGM
- b _0803DAA4
- .pool
-_0803DA80:
- movs r0, 0xD4
- lsls r0, 1
- bl PlayBGM
- b _0803DAA4
-_0803DA8A:
- movs r0, 0xB1
- lsls r0, 1
- bl PlayBGM
- b _0803DAA4
-_0803DA94:
- movs r0, 0xCE
- lsls r0, 1
- bl PlayBGM
- b _0803DAA4
-_0803DA9E:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DA96A
- str r0, [r1]
-_0803DAA4:
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803DCD8
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803D8C0
-
- thumb_func_start sub_803DAC0
-sub_803DAC0: @ 803DAC0
- push {r4,lr}
- ldr r1, =gFightStateTracker
- movs r0, 0
- strb r0, [r1]
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x02000002
- ands r0, r1
- cmp r0, 0
- beq _0803DB7C
- ldr r0, =0x003f0100
- ands r1, r0
- cmp r1, 0
- beq _0803DB44
- ldr r3, =gBattleOutcome
- ldrb r2, [r3]
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _0803DB2C
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB9C8
- str r0, [r1]
- movs r0, 0x7F
- ands r0, r2
- strb r0, [r3]
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- ldr r0, =0x00000ca9
- adds r1, r0
- ldrb r0, [r1]
- movs r2, 0x8
- orrs r0, r2
- strb r0, [r1]
- b _0803DB82
- .pool
-_0803DB2C:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAA0B
- str r0, [r1]
- movs r0, 0x7F
- ands r0, r2
- strb r0, [r3]
- b _0803DB82
- .pool
-_0803DB44:
- ldr r1, =gBattleTextBuff1
- ldr r4, =gBattleOutcome
- ldrb r0, [r4]
- strb r0, [r1]
- movs r0, 0
- bl GetBankByPlayerAI
- ldr r1, =gBankAttacker
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAA35
- str r0, [r1]
- ldrb r1, [r4]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r4]
- b _0803DB82
- .pool
-_0803DB7C:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DA96D
- str r0, [r1]
-_0803DB82:
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803DCD8
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803DAC0
-
- thumb_func_start sub_803DBA0
-sub_803DBA0: @ 803DBA0
- push {lr}
- ldr r1, =gFightStateTracker
- movs r0, 0
- strb r0, [r1]
- ldr r1, =gBattleTypeFlags
- ldr r2, [r1]
- ldr r0, =0x003f0100
- ands r0, r2
- cmp r0, 0
- beq _0803DBFC
- movs r0, 0x8
- ands r2, r0
- cmp r2, 0
- beq _0803DBFC
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB9C1
- str r0, [r1]
- ldr r1, =gBattleOutcome
- movs r0, 0x9
- strb r0, [r1]
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- ldr r0, =0x00000ca9
- adds r1, r0
- ldrb r0, [r1]
- movs r2, 0x8
- orrs r0, r2
- strb r0, [r1]
- b _0803DC6A
- .pool
-_0803DBFC:
- ldr r0, [r1]
- movs r1, 0x80
- lsls r1, 19
- ands r0, r1
- cmp r0, 0
- beq _0803DC24
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB9C1
- str r0, [r1]
- ldr r1, =gBattleOutcome
- movs r0, 0x9
- strb r0, [r1]
- b _0803DC6A
- .pool
-_0803DC24:
- ldr r1, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x1]
- lsls r0, 27
- lsrs r0, 30
- cmp r0, 0x1
- beq _0803DC54
- cmp r0, 0x2
- beq _0803DC64
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAAF0
- b _0803DC68
- .pool
-_0803DC54:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAADB
- b _0803DC68
- .pool
-_0803DC64:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAAE9
-_0803DC68:
- str r0, [r1]
-_0803DC6A:
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803DCD8
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803DBA0
-
- thumb_func_start bc_80158BC
-bc_80158BC: @ 803DC84
- ldr r1, =gFightStateTracker
- movs r0, 0
- strb r0, [r1]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x7
- strb r0, [r1, 0x1]
- ldr r2, =gBankAttacker
- ldrb r0, [r2]
- strb r0, [r1, 0x2]
- ldr r3, =gBattlePartyID
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAAF7
- str r0, [r1]
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803DCD8
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end bc_80158BC
-
- thumb_func_start sub_803DCD8
-sub_803DCD8: @ 803DCD8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gFightStateTracker
- ldrb r0, [r0]
- subs r0, 0xB
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _0803DCEE
- b _0803DE10
-_0803DCEE:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x023f0b92
- ands r1, r0
- cmp r1, 0
- bne _0803DDB6
- ldr r2, =gActiveBank
- strb r1, [r2]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r1, r0
- bcs _0803DDB2
- adds r5, r2, 0
- ldr r0, =gBattlePartyID
- mov r8, r0
- movs r7, 0x64
- ldr r6, =gPlayerParty
-_0803DD10:
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803DDA0
- ldr r4, =gBattleResults
- ldrh r0, [r4, 0x6]
- cmp r0, 0
- bne _0803DD74
- ldrb r0, [r5]
- lsls r0, 1
- add r0, r8
- ldrh r0, [r0]
- muls r0, r7
- adds r0, r6
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r4, 0x6]
- ldrb r0, [r5]
- lsls r0, 1
- add r0, r8
- ldrh r0, [r0]
- muls r0, r7
- adds r0, r6
- movs r1, 0x2
- adds r2, r4, 0
- adds r2, 0x8
- bl GetMonData
- b _0803DDA0
- .pool
-_0803DD74:
- ldrb r0, [r5]
- lsls r0, 1
- add r0, r8
- ldrh r0, [r0]
- muls r0, r7
- adds r0, r6
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r4, 0x26]
- ldrb r0, [r5]
- lsls r0, 1
- add r0, r8
- ldrh r0, [r0]
- muls r0, r7
- adds r0, r6
- movs r1, 0x2
- adds r2, r4, 0
- adds r2, 0x14
- bl GetMonData
-_0803DDA0:
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803DD10
-_0803DDB2:
- bl sub_80EC728
-_0803DDB6:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x023f0b9a
- ands r0, r1
- cmp r0, 0
- bne _0803DDD2
- ldr r0, =gBattleResults
- ldrb r1, [r0, 0x5]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0803DDD2
- bl sub_80EE184
-_0803DDD2:
- bl sub_8186444
- movs r0, 0x3
- bl BeginFastPaletteFade
- movs r0, 0x5
- bl FadeOutMapMusic
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_803DE40
- str r0, [r1]
- ldr r1, =gUnknown_030061E8
- ldr r0, =sub_8038420
- str r0, [r1]
- b _0803DE2A
- .pool
-_0803DE10:
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803DE2A
- ldr r1, =gBattleScriptingCommandsTable
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
-_0803DE2A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803DCD8
-
- thumb_func_start sub_803DE40
-sub_803DE40: @ 803DE40
- push {lr}
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0803DE86
- bl ResetSpriteData
- ldr r0, =gUnknown_03005D54
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803DE62
- ldr r0, =gBattleOutcome
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0803DE80
-_0803DE62:
- ldr r1, =gBattleMainFunc
- ldr r0, =c4_overworld
- str r0, [r1]
- b _0803DEA2
- .pool
-_0803DE80:
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_evolution_cutscene
- str r0, [r1]
-_0803DE86:
- bl FreeAllWindowBuffers
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0803DEA2
- bl sub_805F094
- bl sub_8057028
- bl dp11_free
-_0803DEA2:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803DE40
-
- thumb_func_start bc_evolution_cutscene
-bc_evolution_cutscene: @ 803DEB4
- push {r4-r6,lr}
- ldr r0, =gUnknown_03005D54
- ldrb r1, [r0]
- adds r3, r0, 0
- cmp r1, 0
- beq _0803DF2E
-_0803DEC0:
- movs r6, 0
-_0803DEC2:
- ldrb r2, [r3]
- ldr r0, =gBitTable
- lsls r1, r6, 2
- adds r1, r0
- ldr r1, [r1]
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _0803DF20
- bics r2, r1
- strb r2, [r3]
- movs r0, 0x64
- adds r1, r6, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0
- bl GetEvolutionTargetSpecies
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- beq _0803DF20
- bl FreeAllWindowBuffers
- ldr r0, =gBattleMainFunc
- ldr r1, =sub_803DF48
- str r1, [r0]
- lsls r3, r6, 24
- lsrs r3, 24
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x1
- bl evolution_cutscene
- b _0803DF34
- .pool
-_0803DF20:
- adds r6, 0x1
- ldr r3, =gUnknown_03005D54
- cmp r6, 0x5
- ble _0803DEC2
- ldrb r0, [r3]
- cmp r0, 0
- bne _0803DEC0
-_0803DF2E:
- ldr r1, =gBattleMainFunc
- ldr r0, =c4_overworld
- str r0, [r1]
-_0803DF34:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_evolution_cutscene
-
- thumb_func_start sub_803DF48
-sub_803DF48: @ 803DF48
- push {lr}
- ldr r0, =gMain
- ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
- cmp r1, r0
- bne _0803DF5A
- ldr r1, =gBattleMainFunc
- ldr r0, =bc_evolution_cutscene
- str r0, [r1]
-_0803DF5A:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803DF48
-
- thumb_func_start c4_overworld
-c4_overworld: @ 803DF70
- push {r4-r6,lr}
- ldr r6, =gBattleTypeFlags
- ldr r0, [r6]
- movs r5, 0x2
- ands r0, r5
- cmp r0, 0
- bne _0803DF8C
- ldr r4, =gPlayerParty
- adds r0, r4, 0
- bl RandomlyGivePartyPokerus
- adds r0, r4, 0
- bl PartySpreadPokerus
-_0803DF8C:
- ldr r4, [r6]
- adds r0, r4, 0
- ands r0, r5
- cmp r0, 0
- beq _0803DF9E
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803DFEC
-_0803DF9E:
- ldr r1, =gScriptResult
- ldr r5, =gBattleOutcome
- ldrb r0, [r5]
- strh r0, [r1]
- ldr r3, =gMain
- ldr r0, =0x00000439
- adds r2, r3, r0
- ldrb r1, [r2]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldr r0, =gUnknown_03005D00
- ldr r0, [r0]
- str r0, [r3]
- movs r0, 0x80
- lsls r0, 3
- ands r4, r0
- cmp r4, 0
- beq _0803DFDE
- ldr r0, =gEnemyParty
- bl UpdateRoamerHPStatus
- ldrb r1, [r5]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0803DFDA
- cmp r1, 0x7
- bne _0803DFDE
-_0803DFDA:
- bl SetRoamerInactive
-_0803DFDE:
- movs r0, 0x5A
- bl m4aSongNumStop
- ldr r0, =gMain
- ldr r0, [r0, 0x8]
- bl SetMainCallback2
-_0803DFEC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c4_overworld
-
- thumb_func_start bc_move_exec_returning
-bc_move_exec_returning: @ 803E018
- push {lr}
- ldr r0, =gFightStateTracker
- ldrb r0, [r0]
- subs r0, 0xB
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _0803E060
- ldr r3, =gBattleResources
- ldr r0, [r3]
- ldr r0, [r0, 0xC]
- adds r1, r0, 0
- adds r1, 0x20
- ldrb r0, [r1]
- cmp r0, 0
- beq _0803E03C
- subs r0, 0x1
- strb r0, [r1]
-_0803E03C:
- ldr r2, =gBattleMainFunc
- ldr r0, [r3]
- ldr r1, [r0, 0xC]
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- lsls r0, 2
- adds r1, r0
- ldr r0, [r1]
- str r0, [r2]
- b _0803E07A
- .pool
-_0803E060:
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803E07A
- ldr r1, =gBattleScriptingCommandsTable
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
-_0803E07A:
- pop {r0}
- bx r0
- .pool
- thumb_func_end bc_move_exec_returning
-
- thumb_func_start sub_803E08C
-sub_803E08C: @ 803E08C
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0803E0A8
- ldr r1, =gBattleScriptingCommandsTable
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
-_0803E0A8:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803E08C
-
- thumb_func_start sub_803E0B8
-sub_803E0B8: @ 803E0B8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r0, 0x4
- str r0, [sp]
- ldr r6, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r0, =gUnknown_02024082
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r6]
- ldr r1, =gBattleStruct
- ldr r3, [r1]
- adds r0, r3, 0
- adds r0, 0x91
- ldrb r2, [r0]
- ldr r1, =gBitTable
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ands r2, r0
- cmp r2, 0
- beq _0803E110
- ldr r1, =gFightStateTracker
- movs r0, 0xC
- b _0803E83C
- .pool
-_0803E110:
- ldr r1, =gCritMultiplier
- movs r0, 0x1
- strb r0, [r1]
- ldr r1, =gBattleScripting
- movs r0, 0x1
- strb r0, [r1, 0xE]
- ldr r5, =0x000001a3
- adds r0, r3, r5
- strb r2, [r0]
- ldr r0, =gBattleMoveFlags
- strb r2, [r0]
- ldr r0, =gUnknown_02024212
- strb r2, [r0]
- ldr r0, =gBattleCommunication
- strb r2, [r0, 0x6]
- ldr r2, =gCurrMovePos
- ldr r0, =gUnknown_020241E9
- mov r9, r0
- ldrb r0, [r6]
- ldr r3, =gBattleStruct
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0x80
- ldrb r0, [r0]
- mov r5, r9
- strb r0, [r5]
- strb r0, [r2]
- ldr r1, =gProtectStructs
- ldrb r4, [r6]
- lsls r0, r4, 4
- adds r3, r0, r1
- ldrb r1, [r3]
- lsls r0, r1, 29
- mov r8, r2
- cmp r0, 0
- bge _0803E1BC
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
- ldr r2, =gCurrentMove
- ldr r1, =gUnknown_020241EC
- movs r0, 0xA5
- strh r0, [r1]
- strh r0, [r2]
- ldr r2, =gHitMarker
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 4
- orrs r0, r1
- str r0, [r2]
- movs r0, 0xA5
- movs r1, 0
- bl GetMoveTarget
- ldrb r1, [r6]
- ldr r3, =gBattleStruct
- ldr r2, [r3]
- b _0803E316
- .pool
-_0803E1BC:
- ldr r5, =gBattleMons
- mov r10, r5
- movs r0, 0x58
- adds r5, r4, 0
- muls r5, r0
- mov r0, r10
- adds r0, 0x50
- adds r0, r5, r0
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 5
- ands r0, r1
- cmp r0, 0
- bne _0803E1E2
- movs r7, 0x80
- lsls r7, 15
- ands r7, r1
- cmp r7, 0
- beq _0803E204
-_0803E1E2:
- ldr r3, =gCurrentMove
- ldr r2, =gUnknown_020241EC
- ldr r1, =gUnknown_02024268
- lsls r0, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r2]
- strh r0, [r3]
- b _0803E33C
- .pool
-_0803E204:
- ldr r1, =gDisableStructs
- mov r12, r1
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- add r0, r12
- ldrh r3, [r0, 0x6]
- adds r1, r3, 0
- cmp r1, 0
- beq _0803E2DC
- ldrb r2, [r0, 0xC]
- lsls r0, r2, 1
- adds r0, r5
- mov r4, r10
- adds r4, 0xC
- adds r0, r4
- ldrh r0, [r0]
- cmp r1, r0
- bne _0803E268
- ldr r2, =gCurrentMove
- ldr r0, =gUnknown_020241EC
- strh r3, [r0]
- strh r3, [r2]
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- ldrb r0, [r0, 0xC]
- mov r3, r9
- strb r0, [r3]
- mov r5, r8
- strb r0, [r5]
- ldrh r0, [r2]
- movs r1, 0
- bl GetMoveTarget
- ldrb r1, [r6]
- ldr r3, =gBattleStruct
- ldr r2, [r3]
- b _0803E316
- .pool
-_0803E268:
- cmp r1, 0
- beq _0803E2DC
- cmp r1, r0
- beq _0803E2DC
- mov r5, r9
- strb r2, [r5]
- mov r0, r8
- strb r2, [r0]
- ldr r3, =gCurrentMove
- ldr r2, =gUnknown_020241EC
- ldrb r0, [r0]
- lsls r0, 1
- ldrb r1, [r6]
- movs r5, 0x58
- muls r1, r5
- adds r0, r1
- adds r0, r4
- ldrh r0, [r0]
- strh r0, [r2]
- strh r0, [r3]
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- movs r2, 0
- strh r7, [r0, 0x6]
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- strb r2, [r0, 0xC]
- ldrb r0, [r6]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- add r1, r12
- ldrb r2, [r1, 0xE]
- movs r0, 0x10
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0xE]
- ldrh r0, [r3]
- movs r1, 0
- bl GetMoveTarget
- ldrb r1, [r6]
- ldr r3, =gBattleStruct
- ldr r2, [r3]
- b _0803E316
- .pool
-_0803E2DC:
- ldr r3, =gBattleMons
- mov r5, r8
- ldrb r0, [r5]
- lsls r0, 1
- ldr r4, =gBankAttacker
- ldrb r2, [r4]
- movs r1, 0x58
- muls r1, r2
- adds r0, r1
- adds r3, 0xC
- adds r0, r3
- ldr r1, =gChosenMovesByBanks
- lsls r2, 1
- adds r2, r1
- ldrh r3, [r0]
- ldrh r2, [r2]
- cmp r3, r2
- beq _0803E334
- ldr r1, =gCurrentMove
- ldr r0, =gUnknown_020241EC
- strh r3, [r0]
- strh r3, [r1]
- ldrh r0, [r1]
- movs r1, 0
- bl GetMoveTarget
- ldrb r1, [r4]
- ldr r2, =gBattleStruct
- ldr r2, [r2]
-_0803E316:
- adds r1, r2
- strb r0, [r1, 0xC]
- b _0803E33C
- .pool
-_0803E334:
- ldr r1, =gCurrentMove
- ldr r0, =gUnknown_020241EC
- strh r3, [r0]
- strh r3, [r1]
-_0803E33C:
- ldr r2, =gBattleMons
- ldr r1, =gBankAttacker
- ldrb r3, [r1]
- movs r0, 0x58
- muls r0, r3
- adds r0, r2
- ldrh r0, [r0, 0x28]
- mov r8, r1
- cmp r0, 0
- beq _0803E384
- adds r0, r3, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803E37C
- ldr r0, =gBattleResults
- ldr r1, =gCurrentMove
- ldrh r1, [r1]
- strh r1, [r0, 0x22]
- b _0803E384
- .pool
-_0803E37C:
- ldr r0, =gBattleResults
- ldr r1, =gCurrentMove
- ldrh r1, [r1]
- strh r1, [r0, 0x24]
-_0803E384:
- mov r1, r8
- ldrb r0, [r1]
- bl GetBankSide
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gSideTimers
- lsls r0, r6, 1
- adds r0, r6
- lsls r0, 2
- adds r5, r0, r1
- ldrb r0, [r5, 0x8]
- cmp r0, 0
- beq _0803E400
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x6]
- cmp r0, 0
- bne _0803E400
- mov r3, r8
- ldrb r0, [r3]
- bl GetBankSide
- adds r4, r0, 0
- ldrb r0, [r5, 0x9]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _0803E400
- ldr r1, =gBattleMons
- ldrb r2, [r5, 0x9]
- movs r0, 0x58
- muls r0, r2
- adds r0, r1
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _0803E400
- ldr r0, =gBankTarget
- strb r2, [r0]
- b _0803E76A
- .pool
-_0803E400:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- ldr r5, =gBankAttacker
- mov r8, r5
- cmp r0, 0
- bne _0803E412
- b _0803E6E0
-_0803E412:
- ldr r1, =gSideTimers
- lsls r0, r6, 1
- adds r0, r6
- lsls r0, 2
- adds r0, r1
- ldrb r5, [r0, 0x8]
- cmp r5, 0
- beq _0803E424
- b _0803E630
-_0803E424:
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r4, r0, r2
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- bne _0803E440
- ldrb r0, [r4, 0x6]
- cmp r0, 0x10
- bne _0803E440
- b _0803E630
-_0803E440:
- ldr r3, =gBattleMons
- ldr r2, =gBankAttacker
- ldrb r6, [r2]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, r6, r0
- ldrb r1, [r0, 0xC]
- movs r0, 0x58
- muls r0, r1
- adds r0, r3
- adds r0, 0x20
- ldrb r0, [r0]
- mov r8, r2
- cmp r0, 0x1F
- bne _0803E460
- b _0803E630
-_0803E460:
- ldrb r0, [r4, 0x2]
- cmp r0, 0xD
- beq _0803E468
- b _0803E630
-_0803E468:
- adds r0, r6, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gActiveBank
- strb r5, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- bcs _0803E4E0
- adds r4, r1, 0
-_0803E480:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r6, r0
- beq _0803E4CE
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r1, r0
- ldrb r0, [r1, 0xC]
- ldrb r1, [r4]
- cmp r0, r1
- beq _0803E4CE
- ldr r1, =gBattleMons
- ldrb r2, [r4]
- movs r0, 0x58
- muls r0, r2
- adds r0, r1
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1F
- bne _0803E4CE
- adds r0, r2, 0
- bl sub_8048728
- lsls r0, 24
- lsrs r0, 24
- ldr r3, [sp]
- cmp r0, r3
- bcs _0803E4CE
- ldrb r0, [r4]
- bl sub_8048728
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
-_0803E4CE:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803E480
-_0803E4E0:
- ldr r5, [sp]
- cmp r5, 0x4
- beq _0803E4E8
- b _0803E5E2
-_0803E4E8:
- ldr r2, =gBattleMoves
- ldr r0, =gUnknown_020241EC
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x6]
- ands r5, r0
- cmp r5, 0
- beq _0803E568
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803E548
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0803E544
- movs r0, 0x1
- b _0803E55A
- .pool
-_0803E544:
- movs r0, 0x3
- b _0803E55A
-_0803E548:
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0803E558
- movs r0, 0
- b _0803E55A
-_0803E558:
- movs r0, 0x2
-_0803E55A:
- bl GetBankByPlayerAI
- ldr r1, =gBankTarget
- strb r0, [r1]
- b _0803E578
- .pool
-_0803E568:
- ldr r2, =gBankTarget
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- ldrb r0, [r0, 0xC]
- strb r0, [r2]
-_0803E578:
- ldr r7, =gAbsentBankFlags
- ldrb r0, [r7]
- ldr r1, =gBitTable
- mov r8, r1
- ldr r5, =gBankTarget
- ldrb r1, [r5]
- lsls r1, 2
- add r1, r8
- ldr r1, [r1]
- ands r0, r1
- cmp r0, 0
- bne _0803E592
- b _0803E76A
-_0803E592:
- ldr r6, =gBankAttacker
- ldrb r0, [r6]
- bl GetBankSide
- adds r4, r0, 0
- ldrb r0, [r5]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _0803E5C4
- ldrb r0, [r5]
- b _0803E758
- .pool
-_0803E5C4:
- ldrb r0, [r6]
- bl GetBankIdentity
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- strb r0, [r5]
- ldrb r1, [r7]
- ldrb r2, [r5]
- lsls r0, r2, 2
- add r0, r8
- b _0803E74E
-_0803E5E2:
- ldr r4, =gActiveBank
- ldr r0, =gTurnOrder
- ldr r3, [sp]
- adds r0, r3, r0
- ldrb r0, [r0]
- strb r0, [r4]
- ldrb r0, [r4]
- ldr r2, =gBattleMons
- movs r1, 0x58
- muls r1, r0
- adds r1, r2
- adds r1, 0x20
- ldrb r1, [r1]
- bl RecordAbilityBattle
- ldr r2, =gSpecialStatuses
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0]
- ldr r1, =gBankTarget
- ldrb r0, [r4]
- strb r0, [r1]
- b _0803E76A
- .pool
-_0803E630:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r4, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0803E6E0
- ldr r2, =gBattleMoves
- ldr r0, =gUnknown_020241EC
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x6]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0803E6E0
- mov r5, r8
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803E684
- bl Random
- adds r1, r4, 0
- ands r1, r0
- cmp r1, 0
- beq _0803E680
- movs r0, 0x1
- b _0803E696
- .pool
-_0803E680:
- movs r0, 0x3
- b _0803E696
-_0803E684:
- bl Random
- adds r1, r4, 0
- ands r1, r0
- cmp r1, 0
- beq _0803E694
- movs r0, 0
- b _0803E696
-_0803E694:
- movs r0, 0x2
-_0803E696:
- bl GetBankByPlayerAI
- ldr r1, =gBankTarget
- strb r0, [r1]
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _0803E76A
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- adds r4, r0, 0
- ldrb r0, [r5]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _0803E76A
- ldrb r0, [r5]
- b _0803E758
- .pool
-_0803E6E0:
- ldr r5, =gBankTarget
- mov r2, r8
- ldrb r0, [r2]
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- ldrb r0, [r0, 0xC]
- strb r0, [r5]
- ldr r6, =gAbsentBankFlags
- ldrb r1, [r6]
- ldr r7, =gBitTable
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r7
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _0803E76A
- ldrb r0, [r2]
- bl GetBankSide
- adds r4, r0, 0
- ldrb r0, [r5]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _0803E730
- ldrb r0, [r5]
- b _0803E758
- .pool
-_0803E730:
- mov r1, r8
- ldrb r0, [r1]
- bl GetBankIdentity
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- strb r0, [r5]
- ldrb r1, [r6]
- ldrb r2, [r5]
- lsls r0, r2, 2
- adds r0, r7
-_0803E74E:
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _0803E76A
- adds r0, r2, 0
-_0803E758:
- bl GetBankIdentity
- movs r1, 0x2
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- strb r0, [r5]
-_0803E76A:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0x80
- lsls r2, 10
- ands r1, r2
- adds r5, r0, 0
- cmp r1, 0
- beq _0803E808
- ldr r0, =gProtectStructs
- ldr r4, =gBankAttacker
- ldrb r2, [r4]
- lsls r1, r2, 4
- adds r1, r0
- ldrb r0, [r1, 0x2]
- lsls r0, 27
- cmp r0, 0
- bge _0803E808
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r2
- adds r0, r1
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- bne _0803E7B4
- ldr r1, =gFightStateTracker
- movs r0, 0xC
- b _0803E83C
- .pool
-_0803E7B4:
- ldr r3, =gUnknown_02024230
- lsls r0, r2, 2
- adds r0, r3
- ldr r0, [r0]
- cmp r0, 0
- beq _0803E7EC
- ldr r1, =gBattleCommunication
- movs r2, 0
- movs r0, 0x4
- strb r0, [r1, 0x5]
- ldr r1, =gBattlescriptCurrInstr
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- str r0, [r1]
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r3
- str r2, [r0]
- b _0803E824
- .pool
-_0803E7EC:
- ldr r1, =gBattleCommunication
- movs r0, 0x4
- strb r0, [r1, 0x5]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =BattleScript_MoveUsedLoafingAround
- str r0, [r1]
- b _0803E824
- .pool
-_0803E808:
- ldr r4, =gBattlescriptCurrInstr
- ldr r3, =gUnknown_082D86A8
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- str r0, [r4]
-_0803E824:
- ldr r0, [r5]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _0803E838
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl sub_81A56E8
-_0803E838:
- ldr r1, =gFightStateTracker
- movs r0, 0xA
-_0803E83C:
- strb r0, [r1]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803E0B8
-
- thumb_func_start bs2_8016374
-bs2_8016374: @ 803E868
- push {r4,lr}
- ldr r3, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r0, =gUnknown_02024082
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r3]
- ldr r0, =gUnknown_02022E14
- movs r2, 0
- strh r2, [r0]
- ldr r0, =gUnknown_02022E16
- strh r2, [r0]
- ldr r1, =gUnknown_020244AC
- ldrb r0, [r3]
- adds r0, r1
- strb r2, [r0]
- ldr r1, =gUnknown_020244B0
- ldrb r0, [r3]
- adds r0, r1
- strb r2, [r0]
- ldr r2, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r2]
- movs r0, 0x7
- strb r0, [r2, 0x1]
- ldrb r4, [r3]
- strb r4, [r2, 0x2]
- ldrb r0, [r3]
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- adds r0, 0x58
- ldrb r0, [r0]
- strb r0, [r2, 0x3]
- movs r0, 0xFF
- strb r0, [r2, 0x4]
- ldr r0, =gBattleScripting
- strb r4, [r0, 0x17]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAB15
- str r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xA
- strb r0, [r1]
- ldr r1, =gBattleResults
- ldrb r0, [r1, 0x2]
- cmp r0, 0xFE
- bhi _0803E8CE
- adds r0, 0x1
- strb r0, [r1, 0x2]
-_0803E8CE:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bs2_8016374
-
- thumb_func_start sub_803E90C
-sub_803E90C: @ 803E90C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r4, =gBankAttacker
- ldr r2, =gBankTarget
- ldr r1, =gTurnOrder
- ldr r0, =gUnknown_02024082
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- strb r0, [r4]
- ldr r0, =gUnknown_02022E14
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E16
- strh r1, [r0]
- ldrb r0, [r4]
- bl sub_8045868
- ldr r5, =gLastUsedItem
- ldr r2, =gBattleBufferB
- ldrb r1, [r4]
- lsls r1, 9
- adds r0, r2, 0x1
- adds r0, r1, r0
- ldrb r3, [r0]
- adds r2, 0x2
- adds r1, r2
- ldrb r0, [r1]
- lsls r0, 8
- orrs r3, r0
- strh r3, [r5]
- cmp r3, 0xC
- bhi _0803E998
- ldr r2, =gBattlescriptCurrInstr
- ldr r1, =gUnknown_082DBD08
- ldrh r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
- ldr r0, =gFightStateTracker
- mov r10, r0
- b _0803EBF6
- .pool
-_0803E998:
- adds r0, r3, 0
- subs r0, 0x50
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _0803E9C0
- ldr r0, =gBattlescriptCurrInstr
- ldr r1, =gUnknown_082DBD54
- ldr r1, [r1]
- str r1, [r0]
- ldr r1, =gFightStateTracker
- mov r10, r1
- b _0803EBF6
- .pool
-_0803E9C0:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803E9E8
- ldr r0, =gBattlescriptCurrInstr
- ldr r1, =gUnknown_082DBD3C
- ldr r1, [r1]
- str r1, [r0]
- ldr r2, =gFightStateTracker
- mov r10, r2
- b _0803EBF6
- .pool
-_0803E9E8:
- ldr r3, =gBattleScripting
- ldrb r0, [r4]
- strb r0, [r3, 0x17]
- lsls r0, 24
- lsrs r0, 25
- ldr r2, =gBattleStruct
- ldr r1, [r2]
- adds r0, r1
- adds r0, 0xC4
- ldrb r0, [r0]
- subs r0, 0x1
- mov r8, r4
- ldr r1, =gBattlescriptCurrInstr
- mov r9, r1
- ldr r6, =gUnknown_082DBD3C
- mov r12, r3
- adds r7, r2, 0
- ldr r2, =gFightStateTracker
- mov r10, r2
- cmp r0, 0x4
- bls _0803EA14
- b _0803EBDE
-_0803EA14:
- lsls r0, 2
- ldr r1, =_0803EA38
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0803EA38:
- .4byte _0803EBDE
- .4byte _0803EBDE
- .4byte _0803EA4C
- .4byte _0803EAE0
- .4byte _0803EBB0
-_0803EA4C:
- ldr r5, =gBattleCommunication
- movs r0, 0
- strb r0, [r5, 0x5]
- ldr r2, =gBankAttacker
- ldrb r0, [r2]
- lsrs r0, 1
- ldr r1, [r7]
- adds r0, r1
- adds r0, 0xC6
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- mov r8, r2
- cmp r0, 0
- beq _0803EA98
- movs r0, 0x3E
- ands r0, r1
- ldr r1, =gBattlescriptCurrInstr
- mov r9, r1
- ldr r6, =gUnknown_082DBD3C
- ldr r2, =gFightStateTracker
- mov r10, r2
- cmp r0, 0
- bne _0803EA7E
- b _0803EBDE
-_0803EA7E:
- movs r0, 0x5
- strb r0, [r5, 0x5]
- b _0803EBDE
- .pool
-_0803EA98:
- ldr r0, =gBattlescriptCurrInstr
- mov r9, r0
- ldr r6, =gUnknown_082DBD3C
- ldr r1, =gFightStateTracker
- mov r10, r1
- mov r4, r8
- adds r3, r7, 0
- adds r2, r5, 0
-_0803EAA8:
- ldrb r1, [r4]
- lsrs r1, 1
- ldr r0, [r3]
- adds r1, r0
- adds r1, 0xC6
- ldrb r0, [r1]
- lsrs r0, 1
- strb r0, [r1]
- ldrb r0, [r2, 0x5]
- adds r0, 0x1
- strb r0, [r2, 0x5]
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0xC6
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0803EAA8
- b _0803EBDE
- .pool
-_0803EAE0:
- ldr r3, =gBattleCommunication
- movs r0, 0x4
- strb r0, [r3, 0x5]
- ldr r2, =gBankAttacker
- ldrb r0, [r2]
- lsrs r0, 1
- ldr r1, [r7]
- adds r0, r1
- adds r6, r0, 0
- adds r6, 0xC6
- ldrb r1, [r6]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- mov r8, r2
- cmp r5, 0
- beq _0803EB28
- movs r0, 0x5
- strb r0, [r3, 0x5]
- ldr r2, =gBattlescriptCurrInstr
- mov r9, r2
- ldr r6, =gUnknown_082DBD3C
- ldr r0, =gFightStateTracker
- mov r10, r0
- b _0803EBDE
- .pool
-_0803EB28:
- ldr r3, =gBattleTextBuff1
- movs r4, 0xFD
- strb r4, [r3]
- movs r0, 0x5
- strb r0, [r3, 0x1]
- movs r2, 0x1
- strb r2, [r3, 0x2]
- movs r0, 0xFF
- strb r0, [r3, 0x3]
- ldr r1, =gBattleTextBuff2
- strb r4, [r1]
- strb r5, [r1, 0x1]
- movs r0, 0xD2
- strb r0, [r1, 0x2]
- strb r5, [r1, 0x3]
- subs r0, 0xD3
- strb r0, [r1, 0x4]
- ldrb r0, [r6]
- ands r2, r0
- ldr r1, =gBattlescriptCurrInstr
- mov r9, r1
- ldr r6, =gUnknown_082DBD3C
- ldr r0, =gFightStateTracker
- mov r10, r0
- cmp r2, 0
- bne _0803EB8C
- mov r5, r8
- adds r4, r7, 0
- adds r2, r3, 0
-_0803EB62:
- ldrb r1, [r5]
- lsrs r1, 1
- ldr r0, [r4]
- adds r1, r0
- adds r1, 0xC6
- ldrb r0, [r1]
- lsrs r0, 1
- strb r0, [r1]
- ldrb r0, [r2, 0x2]
- adds r0, 0x1
- strb r0, [r2, 0x2]
- ldrb r0, [r5]
- lsrs r0, 1
- ldr r1, [r4]
- adds r0, r1
- adds r0, 0xC6
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0803EB62
-_0803EB8C:
- ldrb r0, [r3, 0x2]
- adds r0, 0xE
- movs r1, 0
- mov r2, r12
- strb r0, [r2, 0x10]
- strb r1, [r2, 0x11]
- b _0803EBDE
- .pool
-_0803EBB0:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0803EBCC
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- b _0803EBD0
- .pool
-_0803EBCC:
- ldr r0, =gBattleCommunication
- strb r1, [r0, 0x5]
-_0803EBD0:
- ldr r0, =gBankAttacker
- mov r8, r0
- ldr r1, =gBattlescriptCurrInstr
- mov r9, r1
- ldr r6, =gUnknown_082DBD3C
- ldr r2, =gFightStateTracker
- mov r10, r2
-_0803EBDE:
- mov r1, r8
- ldrb r0, [r1]
- lsrs r0, 1
- ldr r1, [r7]
- adds r0, r1
- adds r0, 0xC4
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- mov r2, r9
- str r0, [r2]
-_0803EBF6:
- movs r0, 0xA
- mov r1, r10
- strb r0, [r1]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803E90C
-
- thumb_func_start sub_803EC20
-sub_803EC20: @ 803EC20
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r7, 0
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r5
- adds r1, r0, r1
- ldrh r0, [r1, 0x2E]
- cmp r0, 0xAF
- bne _0803EC54
- ldr r1, =gEnigmaBerries
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x7]
- b _0803EC5E
- .pool
-_0803EC54:
- ldrh r0, [r1, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r1, r0, 24
-_0803EC5E:
- ldr r0, =gStringBank
- strb r5, [r0]
- cmp r1, 0x25
- bne _0803EC9C
- ldr r2, =gLastUsedItem
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r5
- adds r0, r1
- ldrh r0, [r0, 0x2E]
- strh r0, [r2]
- ldr r0, =gProtectStructs
- lsls r2, r5, 4
- adds r2, r0
- ldrb r1, [r2, 0x1]
- movs r0, 0x19
- negs r0, r0
- ands r0, r1
- movs r1, 0x8
- orrs r0, r1
- strb r0, [r2, 0x1]
- b _0803ED70
- .pool
-_0803EC9C:
- ldr r0, =gBattleMons
- mov r10, r0
- movs r2, 0x58
- mov r9, r2
- mov r0, r9
- muls r0, r5
- add r0, r10
- mov r8, r0
- adds r0, 0x20
- ldrb r6, [r0]
- cmp r6, 0x32
- bne _0803ED5C
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- beq _0803ED38
- ldr r4, =gBattleStruct
- ldr r1, [r4]
- adds r1, 0x6C
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- bl sub_81A9E28
- lsls r0, 24
- lsrs r1, r0, 24
- mov r2, r8
- ldrh r0, [r2, 0x6]
- muls r0, r1
- movs r2, 0x1
- adds r1, r5, 0
- eors r1, r2
- mov r2, r9
- muls r2, r1
- adds r1, r2, 0
- add r1, r10
- ldrh r1, [r1, 0x6]
- bl __divsi3
- ldr r1, [r4]
- adds r1, 0x6C
- ldrb r2, [r1]
- lsls r1, r2, 4
- subs r1, r2
- lsls r1, 1
- adds r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- bl Random
- movs r1, 0xFF
- ands r1, r0
- cmp r4, r1
- bhi _0803ED0C
- b _0803EE12
-_0803ED0C:
- ldr r0, =gLastUsedAbility
- strb r6, [r0]
- ldr r0, =gProtectStructs
- lsls r2, r5, 4
- adds r2, r0
- ldrb r1, [r2, 0x1]
- movs r0, 0x19
- negs r0, r0
- ands r0, r1
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0x1]
- b _0803ED70
- .pool
-_0803ED38:
- ldr r0, =gLastUsedAbility
- strb r6, [r0]
- ldr r0, =gProtectStructs
- lsls r2, r5, 4
- adds r2, r0
- ldrb r1, [r2, 0x1]
- movs r0, 0x19
- negs r0, r0
- ands r0, r1
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0x1]
- b _0803ED70
- .pool
-_0803ED5C:
- ldr r1, =gBattleTypeFlags
- ldr r2, [r1]
- ldr r0, =0x043f0100
- ands r0, r2
- cmp r0, 0
- beq _0803ED80
- movs r0, 0x8
- ands r2, r0
- cmp r2, 0
- beq _0803ED80
-_0803ED70:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- b _0803EE12
- .pool
-_0803ED80:
- ldr r0, [r1]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0803EE06
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- beq _0803EDBC
- bl sub_81A9E28
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r4, =gBattleMons
- movs r3, 0x58
- adds r0, r5, 0
- muls r0, r3
- adds r0, r4
- ldrh r0, [r0, 0x6]
- muls r0, r1
- movs r2, 0x1
- adds r1, r5, 0
- eors r1, r2
- muls r1, r3
- adds r1, r4
- b _0803EDDA
- .pool
-_0803EDBC:
- ldr r3, =gBattleMons
- movs r2, 0x58
- adds r0, r5, 0
- muls r0, r2
- adds r4, r0, r3
- movs r1, 0x1
- adds r0, r5, 0
- eors r0, r1
- muls r0, r2
- adds r1, r0, r3
- ldrh r0, [r4, 0x6]
- ldrh r2, [r1, 0x6]
- cmp r0, r2
- bcs _0803EE00
- lsls r0, 7
-_0803EDDA:
- ldrh r1, [r1, 0x6]
- bl __divsi3
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r1, 0x6C
- ldrb r2, [r1]
- lsls r1, r2, 4
- subs r1, r2
- lsls r1, 1
- adds r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- bl Random
- movs r1, 0xFF
- ands r1, r0
- cmp r4, r1
- bls _0803EE06
-_0803EE00:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
-_0803EE06:
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r1, 0x6C
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0803EE12:
- cmp r7, 0
- beq _0803EE24
- ldr r1, =gUnknown_02024082
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r1, =gBattleOutcome
- movs r0, 0x4
- strb r0, [r1]
-_0803EE24:
- adds r0, r7, 0
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_803EC20
-
- thumb_func_start sub_803EE48
-sub_803EE48: @ 803EE48
- push {r4-r6,lr}
- ldr r4, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r5, =gUnknown_02024082
- ldrb r0, [r5]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r4]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x02000002
- ands r0, r1
- cmp r0, 0
- beq _0803EF0C
- ldr r0, =gNoOfAllBanks
- ldrb r1, [r0]
- strb r1, [r5]
- ldr r2, =gActiveBank
- movs r0, 0
- strb r0, [r2]
- lsls r1, 24
- cmp r1, 0
- beq _0803EEE0
- adds r4, r2, 0
- ldr r6, =gUnknown_0202421C
- ldr r5, =gBattleOutcome
-_0803EE7C:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803EEBC
- ldrb r0, [r4]
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _0803EECE
- ldrb r0, [r5]
- movs r1, 0x2
- b _0803EECA
- .pool
-_0803EEBC:
- ldrb r0, [r4]
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _0803EECE
- ldrb r0, [r5]
- movs r1, 0x1
-_0803EECA:
- orrs r0, r1
- strb r0, [r5]
-_0803EECE:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0803EE7C
-_0803EEE0:
- ldr r2, =gBattleOutcome
- ldrb r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- ldr r0, =0x00000ca9
- adds r1, r0
- ldrb r0, [r1]
- movs r2, 0x8
- orrs r0, r2
- b _0803EF96
- .pool
-_0803EF0C:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0803EF4C
- ldrb r0, [r4]
- bl sub_803EC20
- lsls r0, 24
- cmp r0, 0
- bne _0803EF98
- ldrb r0, [r4]
- bl sub_8045868
- ldr r1, =gBattleCommunication
- movs r0, 0x3
- strb r0, [r1, 0x5]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAB02
- str r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xA
- b _0803EF96
- .pool
-_0803EF4C:
- ldr r1, =gBattleMons
- ldrb r2, [r4]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x0400e000
- ands r0, r1
- cmp r0, 0
- beq _0803EF8C
- ldr r1, =gBattleCommunication
- movs r0, 0x4
- strb r0, [r1, 0x5]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAB02
- str r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xA
- b _0803EF96
- .pool
-_0803EF8C:
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- strb r0, [r5]
- ldr r1, =gBattleOutcome
- movs r0, 0x6
-_0803EF96:
- strb r0, [r1]
-_0803EF98:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803EE48
-
- thumb_func_start sub_803EFA8
-sub_803EFA8: @ 803EFA8
- ldr r2, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r0, =gUnknown_02024082
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r0, =gUnknown_02022E14
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E16
- strh r1, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBD58
- ldr r0, [r0]
- str r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xA
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_803EFA8
-
- thumb_func_start bs5_8016AC0
-bs5_8016AC0: @ 803EFF0
- ldr r2, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r0, =gUnknown_02024082
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r0, =gUnknown_02022E14
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E16
- strh r1, [r0]
- ldr r1, =gNumSafariBalls
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- ldr r1, =gLastUsedItem
- movs r0, 0x5
- strh r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBD08
- ldr r0, [r0, 0x14]
- str r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xA
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end bs5_8016AC0
-
- thumb_func_start sub_803F050
-sub_803F050: @ 803F050
- push {r4-r6,lr}
- ldr r3, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r0, =gUnknown_02024082
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r3]
- ldr r0, =gUnknown_02022E14
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E16
- strh r1, [r0]
- ldr r6, =gBattleCommunication
- ldr r2, =gBattleBufferB
- ldrb r0, [r3]
- lsls r0, 9
- adds r1, r2, 0x1
- adds r0, r1
- ldrb r0, [r0]
- subs r0, 0x1
- strb r0, [r6, 0x5]
- ldr r1, =gLastUsedItem
- ldrb r0, [r3]
- lsls r0, 9
- adds r2, 0x2
- adds r0, r2
- ldrb r0, [r0]
- strh r0, [r1]
- ldr r1, =gBattleResults
- ldrb r0, [r1, 0x1F]
- cmp r0, 0xFE
- bhi _0803F096
- adds r0, 0x1
- strb r0, [r1, 0x1F]
-_0803F096:
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- adds r1, r0, 0
- adds r1, 0x7A
- ldrb r0, [r1]
- cmp r0, 0x2
- bhi _0803F0A8
- adds r0, 0x1
- strb r0, [r1]
-_0803F0A8:
- ldr r0, [r2]
- adds r3, r0, 0
- adds r3, 0x7B
- ldrb r5, [r3]
- adds r4, r5, 0
- cmp r4, 0x1
- bls _0803F100
- ldr r2, =gUnknown_0831BCE0
- adds r0, 0x7A
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- ldrb r6, [r6, 0x5]
- adds r0, r6
- adds r0, r2
- ldrb r0, [r0]
- cmp r4, r0
- bcs _0803F0FC
- movs r0, 0x1
- b _0803F0FE
- .pool
-_0803F0FC:
- subs r0, r5, r0
-_0803F0FE:
- strb r0, [r3]
-_0803F100:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBD58
- ldr r0, [r0, 0x8]
- str r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xA
- strb r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F050
-
- thumb_func_start sub_803F120
-sub_803F120: @ 803F120
- push {r4,lr}
- ldr r2, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r0, =gUnknown_02024082
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r0, =gUnknown_02022E14
- movs r4, 0
- strh r4, [r0]
- ldr r0, =gUnknown_02022E16
- strh r4, [r0]
- ldr r3, =gBattleStruct
- ldr r0, [r3]
- adds r2, r0, 0
- adds r2, 0x7C
- ldr r1, =gUnknown_0831BCEF
- adds r0, 0x79
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- ldrb r1, [r2]
- adds r0, r1
- strb r0, [r2]
- ldr r0, [r3]
- adds r1, r0, 0
- adds r1, 0x7C
- ldrb r0, [r1]
- cmp r0, 0x14
- bls _0803F162
- movs r0, 0x14
- strb r0, [r1]
-_0803F162:
- ldr r0, [r3]
- adds r2, r0, 0
- adds r2, 0x7B
- ldr r1, =gUnknown_0831BCF3
- adds r0, 0x79
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- ldrb r1, [r2]
- adds r0, r1
- strb r0, [r2]
- ldr r0, [r3]
- adds r1, r0, 0
- adds r1, 0x7B
- ldrb r0, [r1]
- cmp r0, 0x14
- bls _0803F188
- movs r0, 0x14
- strb r0, [r1]
-_0803F188:
- ldr r0, [r3]
- adds r1, r0, 0
- adds r1, 0x79
- ldrb r0, [r1]
- cmp r0, 0x2
- bhi _0803F1C4
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, =gBattleCommunication
- strb r4, [r0, 0x5]
- b _0803F1CA
- .pool
-_0803F1C4:
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
-_0803F1CA:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBD58
- ldr r0, [r0, 0x4]
- str r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xA
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F120
-
- thumb_func_start bs8_exit_by_flight
-bs8_exit_by_flight: @ 803F1F0
- push {r4,lr}
- ldr r2, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r4, =gUnknown_02024082
- ldrb r0, [r4]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- movs r0, 0x11
- bl PlaySE
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- strb r0, [r4]
- ldr r1, =gBattleOutcome
- movs r0, 0x4
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bs8_exit_by_flight
-
- thumb_func_start bs9_8016C9C
-bs9_8016C9C: @ 803F22C
- ldr r3, =gBankAttacker
- ldr r1, =gTurnOrder
- ldr r0, =gUnknown_02024082
- ldrb r0, [r0]
- adds r0, r1
- ldrb r2, [r0]
- strb r2, [r3]
- ldr r0, =gUnknown_02022E14
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E16
- strh r1, [r0]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x7
- strb r0, [r1, 0x1]
- strb r2, [r1, 0x2]
- ldr r2, =gBattlePartyID
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBD58
- ldr r0, [r0, 0xC]
- str r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xA
- strb r0, [r1]
- ldr r1, =gUnknown_0202407A
- movs r0, 0xC
- strb r0, [r1, 0x1]
- bx lr
- .pool
- thumb_func_end bs9_8016C9C
-
- thumb_func_start bsB_exit_by_move
-bsB_exit_by_move: @ 803F2A4
- push {lr}
- bl sub_8041728
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _0803F2C0
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x4D
- strb r1, [r0]
- ldr r1, =gFightStateTracker
- movs r0, 0xC
- strb r0, [r1]
-_0803F2C0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end bsB_exit_by_move
-
- thumb_func_start bsD_proceed
-bsD_proceed: @ 803F2CC
- ldr r1, =gUnknown_02024082
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r3, =gFightStateTracker
- ldr r2, =gUnknown_0202407A
- ldrb r0, [r1]
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r3]
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xf1e892af
- ands r0, r1
- str r0, [r2]
- bx lr
- .pool
- thumb_func_end bsD_proceed
-
- thumb_func_start bsC_8016D70
-bsC_8016D70: @ 803F300
- push {r4-r6,lr}
- ldr r1, =gTurnOrder
- ldr r2, =gUnknown_02024082
- ldrb r0, [r2]
- adds r0, r1
- ldrb r0, [r0]
- ldr r6, =gBattleStruct
- ldr r1, [r6]
- adds r0, r1
- adds r0, 0x5C
- movs r1, 0x6
- strb r1, [r0]
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- ldr r3, =gFightStateTracker
- ldr r1, =gUnknown_0202407A
- ldrb r0, [r2]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r3]
- bl sub_803D6A0
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xf1e892af
- ands r0, r1
- str r0, [r2]
- ldr r0, =gCurrentMove
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gBattleMoveDamage
- movs r4, 0
- str r4, [r0]
- ldr r0, =gBattleMoveFlags
- strb r1, [r0]
- ldr r5, =gBattleScripting
- strb r1, [r5, 0x18]
- strb r1, [r5, 0x19]
- ldr r2, =gUnknown_02024250
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- strh r4, [r0]
- ldr r2, =gUnknown_02024258
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- strh r4, [r0]
- ldr r0, [r6]
- strb r1, [r0, 0x13]
- ldr r0, =gDynamicBasePower
- strh r4, [r0]
- strb r1, [r5, 0x14]
- ldr r0, =gBattleCommunication
- strb r1, [r0, 0x3]
- strb r1, [r0, 0x4]
- strb r1, [r5, 0x16]
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- adds r0, 0x20
- strb r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end bsC_8016D70
-
- thumb_func_start get_battle_side_of_something
-get_battle_side_of_something: @ 803F3CC
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0
- cmp r1, 0xE
- bhi _0803F47A
- lsls r0, r1, 2
- ldr r1, =_0803F3E8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0803F3E8:
- .4byte _0803F424
- .4byte _0803F430
- .4byte _0803F43C
- .4byte _0803F458
- .4byte _0803F464
- .4byte _0803F458
- .4byte _0803F464
- .4byte _0803F448
- .4byte _0803F464
- .4byte _0803F464
- .4byte _0803F44C
- .4byte _0803F464
- .4byte _0803F468
- .4byte _0803F46C
- .4byte _0803F470
-_0803F424:
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- b _0803F47A
- .pool
-_0803F430:
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- b _0803F47A
- .pool
-_0803F43C:
- ldr r0, =gEffectBank
- ldrb r0, [r0]
- b _0803F47A
- .pool
-_0803F448:
- movs r0, 0
- b _0803F47A
-_0803F44C:
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x17]
- b _0803F47A
- .pool
-_0803F458:
- ldr r0, =gBank1
- ldrb r0, [r0]
- b _0803F47A
- .pool
-_0803F464:
- movs r0, 0
- b _0803F472
-_0803F468:
- movs r0, 0x1
- b _0803F472
-_0803F46C:
- movs r0, 0x2
- b _0803F472
-_0803F470:
- movs r0, 0x3
-_0803F472:
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
-_0803F47A:
- pop {r1}
- bx r1
- thumb_func_end get_battle_side_of_something
-
- thumb_func_start sub_803F480
-sub_803F480: @ 803F480
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, =gBattleMons
- movs r4, 0x58
- muls r0, r4
- adds r0, r1
- adds r0, 0x20
- ldrb r0, [r0]
- mov r12, r1
- cmp r0, 0x2E
- bne _0803F532
- movs r3, 0
- adds r0, r5, 0
- muls r0, r4
- adds r1, 0xC
- adds r1, r0, r1
- b _0803F4BC
- .pool
-_0803F4B4:
- adds r1, 0x2
- adds r3, 0x1
- cmp r3, 0x3
- bgt _0803F4C2
-_0803F4BC:
- ldrh r0, [r1]
- cmp r0, r2
- bne _0803F4B4
-_0803F4C2:
- cmp r3, 0x4
- beq _0803F532
- movs r7, 0x58
- adds r2, r5, 0
- muls r2, r7
- adds r0, r3, r2
- mov r6, r12
- adds r6, 0x24
- adds r1, r0, r6
- ldrb r0, [r1]
- cmp r0, 0
- beq _0803F4DE
- subs r0, 0x1
- strb r0, [r1]
-_0803F4DE:
- mov r0, r12
- adds r0, 0x50
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _0803F532
- ldr r1, =gDisableStructs
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x18]
- lsrs r1, 4
- ldr r2, =gBitTable
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0803F532
- ldr r4, =gActiveBank
- strb r5, [r4]
- adds r1, r3, 0
- adds r1, 0x9
- lsls r1, 24
- lsrs r1, 24
- ldrb r0, [r4]
- muls r0, r7
- adds r0, r6
- adds r0, r3
- str r0, [sp]
- movs r0, 0
- movs r2, 0
- movs r3, 0x1
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803F532:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F480
-
- thumb_func_start sub_803F548
-sub_803F548: @ 803F548
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- movs r0, 0x4
- mov r8, r0
- adds r0, r5, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r4, 0
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- bge _0803F5F0
- ldr r1, =gBattleMons
- movs r0, 0x58
- adds r7, r5, 0
- muls r7, r0
- adds r1, 0xC
- mov r10, r1
-_0803F57E:
- lsls r0, r4, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- adds r6, r4, 0x1
- cmp r9, r0
- beq _0803F5E6
- ldr r0, =gBattleMons
- movs r3, 0x58
- adds r1, r4, 0
- muls r1, r3
- adds r1, r0
- adds r1, 0x20
- ldrb r1, [r1]
- adds r4, r0, 0
- cmp r1, 0x2E
- bne _0803F5E6
- movs r2, 0
- adds r0, r5, 0
- muls r0, r3
- adds r1, r4, 0
- adds r1, 0xC
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x8F
- lsls r1, 1
- cmp r0, r1
- beq _0803F5CE
- adds r3, r1, 0
- mov r0, r10
- adds r1, r7, r0
-_0803F5C0:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, 0x3
- bgt _0803F5CE
- ldrh r0, [r1]
- cmp r0, r3
- bne _0803F5C0
-_0803F5CE:
- cmp r2, 0x4
- beq _0803F5E6
- mov r8, r2
- adds r1, r2, r7
- adds r0, r4, 0
- adds r0, 0x24
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- beq _0803F5E6
- subs r0, 0x1
- strb r0, [r1]
-_0803F5E6:
- adds r4, r6, 0
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- blt _0803F57E
-_0803F5F0:
- mov r1, r8
- cmp r1, 0x4
- beq _0803F658
- ldr r6, =gBattleMons
- movs r3, 0x58
- adds r0, r5, 0
- muls r0, r3
- adds r1, r6, 0
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _0803F658
- ldr r1, =gDisableStructs
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x18]
- lsrs r1, 4
- ldr r2, =gBitTable
- mov r4, r8
- lsls r0, r4, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0803F658
- ldr r4, =gActiveBank
- strb r5, [r4]
- mov r1, r8
- adds r1, 0x9
- lsls r1, 24
- lsrs r1, 24
- ldrb r0, [r4]
- muls r0, r3
- adds r2, r6, 0
- adds r2, 0x24
- adds r0, r2
- add r0, r8
- str r0, [sp]
- movs r0, 0
- movs r2, 0
- movs r3, 0x1
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803F658:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F548
-
- thumb_func_start sub_803F67C
-sub_803F67C: @ 803F67C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r3, r0, 24
- movs r6, 0x4
- movs r1, 0
- ldr r0, =gNoOfAllBanks
- mov r8, r0
- ldrb r0, [r0]
- cmp r1, r0
- bge _0803F6FE
- ldr r7, =gBattleMons
- movs r2, 0x58
- mov r12, r2
- mov r5, r12
- muls r5, r3
- adds r0, r7, 0
- adds r0, 0xC
- adds r2, r5, r0
- mov r10, r2
- mov r9, r5
-_0803F6AE:
- mov r0, r12
- muls r0, r1
- adds r0, r7
- adds r0, 0x20
- ldrb r0, [r0]
- adds r4, r1, 0x1
- cmp r0, 0x2E
- bne _0803F6F4
- cmp r1, r3
- beq _0803F6F4
- movs r2, 0
- mov r1, r10
- ldrh r0, [r1]
- cmp r0, 0xC3
- beq _0803F6DE
- ldr r1, =gBattleMons + 0xC
- add r1, r9
-_0803F6D0:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, 0x3
- bgt _0803F6DE
- ldrh r0, [r1]
- cmp r0, 0xC3
- bne _0803F6D0
-_0803F6DE:
- cmp r2, 0x4
- beq _0803F6F4
- adds r6, r2, 0
- adds r0, r6, r5
- ldr r2, =gBattleMons + 0x24
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0
- beq _0803F6F4
- subs r0, 0x1
- strb r0, [r1]
-_0803F6F4:
- adds r1, r4, 0
- mov r0, r8
- ldrb r0, [r0]
- cmp r1, r0
- blt _0803F6AE
-_0803F6FE:
- cmp r6, 0x4
- beq _0803F762
- ldr r7, =gBattleMons
- movs r5, 0x58
- adds r0, r3, 0
- muls r0, r5
- adds r1, r7, 0
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _0803F762
- ldr r1, =gDisableStructs
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x18]
- lsrs r1, 4
- ldr r2, =gBitTable
- lsls r0, r6, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0803F762
- ldr r4, =gActiveBank
- strb r3, [r4]
- adds r1, r6, 0
- adds r1, 0x9
- lsls r1, 24
- lsrs r1, 24
- ldrb r0, [r4]
- muls r0, r5
- adds r2, r7, 0
- adds r2, 0x24
- adds r0, r2
- adds r0, r6
- str r0, [sp]
- movs r0, 0
- movs r2, 0
- movs r3, 0x1
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0803F762:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F67C
-
- thumb_func_start sub_803F790
-sub_803F790: @ 803F790
- push {r4,r5,lr}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0803F7D0
- movs r2, 0
- ldr r4, =gNoOfAllBanks
- ldrb r0, [r4]
- cmp r2, r0
- bge _0803F7EE
- ldr r3, =gBattleExecBuffer
- ldr r5, =gBitTable
-_0803F7AC:
- ldm r5!, {r1}
- lsls r1, 28
- ldr r0, [r3]
- orrs r0, r1
- str r0, [r3]
- adds r2, 0x1
- ldrb r0, [r4]
- cmp r2, r0
- blt _0803F7AC
- b _0803F7EE
- .pool
-_0803F7D0:
- movs r2, 0
- ldr r4, =gNoOfAllBanks
- ldrb r0, [r4]
- cmp r2, r0
- bge _0803F7EE
- ldr r3, =gBattleExecBuffer
- ldr r5, =gBitTable
-_0803F7DE:
- ldr r0, [r3]
- ldm r5!, {r1}
- orrs r0, r1
- str r0, [r3]
- adds r2, 0x1
- ldrb r0, [r4]
- cmp r2, r0
- blt _0803F7DE
-_0803F7EE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F790
-
- thumb_func_start MarkBufferBankForExecution
-MarkBufferBankForExecution: @ 803F800
- push {lr}
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0803F834
- ldr r2, =gBattleExecBuffer
- ldr r1, =gBitTable
- lsls r0, r3, 2
- adds r0, r1
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r2]
- orrs r0, r1
- str r0, [r2]
- b _0803F844
- .pool
-_0803F834:
- ldr r2, =gBattleExecBuffer
- ldr r1, =gBitTable
- lsls r0, r3, 2
- adds r0, r1
- ldr r1, [r2]
- ldr r0, [r0]
- orrs r1, r0
- str r1, [r2]
-_0803F844:
- pop {r0}
- bx r0
- .pool
- thumb_func_end MarkBufferBankForExecution
-
- thumb_func_start sub_803F850
-sub_803F850: @ 803F850
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- movs r4, 0
- ldr r5, =gBattleExecBuffer
- ldr r1, =gBitTable
- lsls r0, r7, 2
- adds r6, r0, r1
- b _0803F87A
- .pool
-_0803F86C:
- lsls r0, r4, 2
- ldr r1, [r6]
- lsls r1, r0
- ldr r0, [r5]
- orrs r0, r1
- str r0, [r5]
- adds r4, 0x1
-_0803F87A:
- bl sub_8009FCC
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- blt _0803F86C
- ldr r2, =gBattleExecBuffer
- movs r1, 0x80
- lsls r1, 21
- lsls r1, r7
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F850
-
- thumb_func_start CancelMultiTurnMoves
-CancelMultiTurnMoves: @ 803F8A0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gBattleMons
- movs r2, 0x58
- adds r3, r0, 0
- muls r3, r2
- adds r1, 0x50
- adds r3, r1
- ldr r1, [r3]
- ldr r2, =0xffffefff
- ands r1, r2
- ldr r2, =0xfffff3ff
- ands r1, r2
- movs r2, 0x71
- negs r2, r2
- ands r1, r2
- ldr r2, =0xfffffcff
- ands r1, r2
- str r1, [r3]
- ldr r1, =gStatuses3
- lsls r2, r0, 2
- adds r2, r1
- ldr r1, [r2]
- ldr r3, =0xfffbff3f
- ands r1, r3
- str r1, [r2]
- ldr r2, =gDisableStructs
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x11]
- movs r0, 0x10
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x11]
- movs r0, 0
- strb r0, [r1, 0x10]
- bx lr
- .pool
- thumb_func_end CancelMultiTurnMoves
-
- thumb_func_start sub_803F90C
-sub_803F90C: @ 803F90C
- push {lr}
- lsls r0, 24
- ldr r1, =gProtectStructs
- lsrs r0, 20
- adds r1, r0, r1
- ldrb r0, [r1]
- lsrs r0, 7
- cmp r0, 0
- bne _0803F952
- ldrb r2, [r1, 0x1]
- lsls r0, r2, 30
- cmp r0, 0
- blt _0803F952
- lsls r0, r2, 26
- cmp r0, 0
- blt _0803F952
- lsls r0, r2, 25
- cmp r0, 0
- blt _0803F952
- lsrs r0, r2, 7
- cmp r0, 0
- bne _0803F952
- ldrb r1, [r1, 0x2]
- lsls r0, r1, 31
- cmp r0, 0
- bne _0803F952
- lsls r0, r1, 30
- cmp r0, 0
- blt _0803F952
- lsls r0, r1, 29
- cmp r0, 0
- blt _0803F952
- lsls r0, r2, 31
- cmp r0, 0
- beq _0803F95C
-_0803F952:
- movs r0, 0x1
- b _0803F95E
- .pool
-_0803F95C:
- movs r0, 0
-_0803F95E:
- pop {r1}
- bx r1
- thumb_func_end sub_803F90C
-
- thumb_func_start b_std_message
-b_std_message: @ 803F964
- push {r4,lr}
- adds r2, r0, 0
- lsls r2, 16
- lsrs r2, 16
- ldr r4, =gActiveBank
- strb r1, [r4]
- movs r0, 0
- adds r1, r2, 0
- bl dp01_build_cmdbuf_x10_TODO
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end b_std_message
-
- thumb_func_start sub_803F988
-sub_803F988: @ 803F988
- push {r4-r6,lr}
- movs r3, 0
- ldr r0, =gUnknown_020243FE
- strb r3, [r0]
- strb r3, [r0, 0x1]
- movs r1, 0
- ldr r0, =gNoOfAllBanks
- ldrb r2, [r0]
- adds r6, r0, 0
- cmp r1, r2
- bge _0803F9B6
- ldr r5, =gBitTable
- adds r4, r2, 0
- ldr r2, =gBattlePartyID
-_0803F9A4:
- ldrh r0, [r2]
- lsls r0, 2
- adds r0, r5
- ldr r0, [r0]
- orrs r3, r0
- adds r2, 0x4
- adds r1, 0x2
- cmp r1, r4
- blt _0803F9A4
-_0803F9B6:
- movs r1, 0x1
- adds r2, r6, 0
- ldrb r0, [r2]
- cmp r1, r0
- bge _0803F9D6
- ldr r5, =gUnknown_020243FE
- movs r4, 0x2
-_0803F9C4:
- adds r0, r1, 0
- ands r0, r4
- asrs r0, 1
- adds r0, r5
- strb r3, [r0]
- adds r1, 0x2
- ldrb r0, [r2]
- cmp r1, r0
- blt _0803F9C4
-_0803F9D6:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F988
-
- thumb_func_start sub_803F9EC
-sub_803F9EC: @ 803F9EC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- adds r0, r5, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0803FA50
- movs r0, 0x2
- ands r0, r5
- lsls r0, 24
- lsrs r0, 25
- mov r12, r0
- ldr r1, =gUnknown_020243FE
- adds r0, r1
- strb r4, [r0]
- adds r5, r4, 0
- ldr r0, =gNoOfAllBanks
- ldrb r2, [r0]
- mov r8, r1
- cmp r4, r2
- bge _0803FA4A
- ldr r0, =gAbsentBankFlags
- ldrb r7, [r0]
- ldr r1, =gBitTable
- adds r6, r2, 0
- ldr r3, =gBattlePartyID
- adds r2, r1, 0
-_0803FA2E:
- ldr r0, [r2]
- ands r0, r7
- cmp r0, 0
- bne _0803FA40
- ldrh r0, [r3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- orrs r4, r0
-_0803FA40:
- adds r3, 0x4
- adds r2, 0x8
- adds r5, 0x2
- cmp r5, r6
- blt _0803FA2E
-_0803FA4A:
- mov r0, r12
- add r0, r8
- strb r4, [r0]
-_0803FA50:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803F9EC
-
- thumb_func_start sub_803FA70
-sub_803FA70: @ 803FA70
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0803FA8C
- adds r0, r4, 0
- bl sub_803F9EC
- b _0803FAC2
-_0803FA8C:
- movs r3, 0x1
- ldr r5, =gNoOfAllBanks
- ldrb r0, [r5]
- cmp r3, r0
- bge _0803FAC2
- ldr r0, =gUnknown_020243FE
- mov r12, r0
- movs r7, 0x2
- ldr r6, =gBitTable
- ldr r1, =gBattlePartyID
- lsls r0, r4, 1
- adds r4, r0, r1
-_0803FAA4:
- adds r2, r3, 0
- ands r2, r7
- asrs r2, 1
- add r2, r12
- ldrh r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- adds r3, 0x1
- ldrb r0, [r5]
- cmp r3, r0
- blt _0803FAA4
-_0803FAC2:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803FA70
-
- .align 2, 0 @ Don't pad with nop.
- \ No newline at end of file
diff --git a/asm/battle_4.s b/asm/battle_4.s
deleted file mode 100644
index 241aa8677..000000000
--- a/asm/battle_4.s
+++ /dev/null
@@ -1,31160 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
- thumb_func_start atk00_attackcanceler
-atk00_attackcanceler: @ 8045FFC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- ldr r0, =gBattleOutcome
- ldrb r0, [r0]
- cmp r0, 0
- beq _08046020
- ldr r1, =gFightStateTracker
- movs r0, 0xC
- strb r0, [r1]
- b _08046398
- .pool
-_08046020:
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- bne _08046064
- ldr r2, =gHitMarker
- ldr r1, [r2]
- movs r0, 0x80
- lsls r0, 2
- ands r0, r1
- cmp r0, 0
- bne _08046064
- movs r0, 0x80
- lsls r0, 12
- orrs r1, r0
- str r1, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082D8A4E
- b _08046396
- .pool
-_08046064:
- bl AtkCanceller_UnableToUseMove
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _08046072
- b _08046398
-_08046072:
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- str r2, [sp]
- movs r0, 0x2
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _0804608A
- b _08046398
-_0804608A:
- ldr r4, =gBattleMons
- ldr r0, =gCurrMovePos
- ldrb r1, [r0]
- ldr r3, =gBankAttacker
- ldrb r2, [r3]
- movs r0, 0x58
- muls r2, r0
- adds r1, r2
- adds r0, r4, 0
- adds r0, 0x24
- adds r1, r0
- ldrb r0, [r1]
- ldr r5, =gHitMarker
- cmp r0, 0
- bne _08046108
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- cmp r0, 0xA5
- beq _08046108
- ldr r0, [r5]
- ldr r1, =0x00800200
- ands r0, r1
- cmp r0, 0
- bne _08046108
- adds r0, r4, 0
- adds r0, 0x50
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 5
- ands r0, r1
- cmp r0, 0
- bne _08046108
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB07A
- str r0, [r1]
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- b _08046398
- .pool
-_08046108:
- ldr r0, [r5]
- ldr r1, =0xff7fffff
- ands r0, r1
- str r0, [r5]
- movs r6, 0x80
- lsls r6, 18
- ands r0, r6
- cmp r0, 0
- bne _08046160
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- adds r1, r4, 0
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 5
- ands r0, r1
- cmp r0, 0
- bne _08046160
- bl IsPokeDisobedient
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _08046160
- cmp r2, 0x2
- bne _08046150
- ldr r0, [r5]
- orrs r0, r6
- str r0, [r5]
- b _08046398
- .pool
-_08046150:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- b _08046398
- .pool
-_08046160:
- ldr r2, =gHitMarker
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 18
- orrs r0, r1
- str r0, [r2]
- ldr r2, =gProtectStructs
- ldr r1, =gBankTarget
- ldrb r3, [r1]
- lsls r0, r3, 4
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 27
- mov r8, r1
- mov r9, r2
- cmp r0, 0
- bge _080461E8
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x8]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080461E8
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- ldr r2, =0x00000115
- adds r1, r3, 0
- bl sub_803F480
- mov r0, r8
- ldrb r1, [r0]
- lsls r1, 4
- add r1, r9
- ldrb r2, [r1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB194
- b _08046396
- .pool
-_080461E8:
- movs r2, 0
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r2, r0
- bge _0804622A
- ldr r6, =gProtectStructs
- ldr r1, =gBattleMoves
- mov r12, r1
- adds r5, r0, 0
- ldr r7, =gTurnOrder
-_080461FC:
- adds r4, r2, r7
- ldrb r3, [r4]
- lsls r0, r3, 4
- adds r0, r6
- ldrb r0, [r0]
- lsls r0, 26
- cmp r0, 0
- bge _08046224
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- add r0, r12
- ldrb r1, [r0, 0x8]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08046224
- b _08046350
-_08046224:
- adds r2, 0x1
- cmp r2, r5
- blt _080461FC
-_0804622A:
- ldr r0, =gSpecialStatuses
- mov r1, r8
- ldrb r2, [r1]
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r3, [r1]
- lsls r0, r3, 30
- cmp r0, 0
- bge _08046288
- movs r0, 0x3
- negs r0, r0
- ands r0, r3
- strb r0, [r1]
- ldr r4, =gLastUsedAbility
- movs r0, 0x1F
- strb r0, [r4]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB53E
- str r0, [r1]
- mov r1, r8
- ldrb r0, [r1]
- ldrb r1, [r4]
- bl RecordAbilityBattle
- b _08046398
- .pool
-_08046288:
- lsls r0, r2, 4
- add r0, r9
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- bne _08046296
- b _08046390
-_08046296:
- ldr r1, =gBattleMoves
- ldr r2, =gCurrentMove
- ldrh r3, [r2]
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x8]
- movs r0, 0x2
- ands r0, r1
- adds r4, r2, 0
- cmp r0, 0
- beq _08046390
- cmp r3, 0xAE
- bne _080462D4
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x7
- beq _080462D4
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x7
- bne _08046390
-_080462D4:
- ldrh r0, [r4]
- bl sub_8052F48
- lsls r0, 24
- cmp r0, 0
- beq _080462FA
- ldr r1, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 5
- ands r0, r1
- cmp r0, 0
- beq _08046390
-_080462FA:
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl CancelMultiTurnMoves
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gUnknown_02024250
- ldr r3, =gBankTarget
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r1
- movs r2, 0
- strh r2, [r0]
- ldr r1, =gUnknown_02024258
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r1
- strh r2, [r0]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x6]
- b _08046390
- .pool
-_08046350:
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- ldr r2, =0x00000121
- adds r1, r3, 0
- bl sub_803F480
- ldrb r1, [r4]
- lsls r1, 4
- adds r1, r6
- ldrb r2, [r1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldr r1, =gBattleScripting
- ldrb r0, [r4]
- strb r0, [r1, 0x17]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB1AC
- b _08046396
- .pool
-_08046390:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
-_08046396:
- str r0, [r1]
-_08046398:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk00_attackcanceler
-
- thumb_func_start mcmd_jump_if_move_not_executed
-mcmd_jump_if_move_not_executed: @ 80463AC
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r6, r1, 16
- ldr r1, =gBattlescriptCurrInstr
- ldr r5, [r1]
- adds r4, r5, r0
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- beq _0804640C
- ldr r1, =gUnknown_02024250
- ldr r3, =gBankTarget
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r1
- movs r2, 0
- strh r2, [r0]
- ldr r1, =gUnknown_02024258
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r1
- strh r2, [r0]
- ldrb r4, [r5, 0x1]
- ldrb r0, [r5, 0x2]
- lsls r0, 8
- orrs r4, r0
- ldrb r0, [r5, 0x3]
- lsls r0, 16
- orrs r4, r0
- ldrb r0, [r5, 0x4]
- lsls r0, 24
- orrs r4, r0
- b _08046426
- .pool
-_0804640C:
- bl b_feature_update_destiny_bond
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- str r6, [sp]
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _0804642A
-_08046426:
- ldr r0, =gBattlescriptCurrInstr
- str r4, [r0]
-_0804642A:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end mcmd_jump_if_move_not_executed
-
- thumb_func_start atk40_jump_if_move_affected_by_protect
-atk40_jump_if_move_affected_by_protect: @ 804643C
- push {lr}
- ldr r1, =gProtectStructs
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _0804649C
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x8]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0804649C
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0x5
- movs r1, 0
- bl mcmd_jump_if_move_not_executed
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x6]
- b _080464A4
- .pool
-_0804649C:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_080464A4:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk40_jump_if_move_affected_by_protect
-
- thumb_func_start sub_80464AC
-sub_80464AC: @ 80464AC
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- movs r4, 0
- ldr r1, =gProtectStructs
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _080464F8
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x8]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080464F8
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0x7
- adds r1, r3, 0
- bl mcmd_jump_if_move_not_executed
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x6]
- movs r4, 0x1
-_080464F8:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80464AC
-
- thumb_func_start sub_8046518
-sub_8046518: @ 8046518
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r2, =gStatuses3
- ldr r3, =gBankTarget
- ldrb r4, [r3]
- lsls r0, r4, 2
- adds r0, r2
- ldr r1, [r0]
- movs r0, 0x18
- ands r1, r0
- adds r6, r2, 0
- cmp r1, 0
- beq _0804654A
- ldr r1, =gDisableStructs
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- adds r0, r1
- ldr r1, =gBankAttacker
- ldrb r0, [r0, 0x15]
- ldrb r1, [r1]
- cmp r0, r1
- beq _08046634
-_0804654A:
- ldr r0, =gHitMarker
- ldr r1, [r0]
- movs r2, 0x80
- lsls r2, 9
- ands r1, r2
- adds r2, r0, 0
- cmp r1, 0
- bne _08046590
- ldrb r0, [r3]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08046590
-_0804656A:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- b _08046634
- .pool
-_08046590:
- ldr r0, [r2]
- ldr r1, =0xfffeffff
- ands r0, r1
- str r0, [r2]
- movs r1, 0x80
- lsls r1, 10
- ands r0, r1
- cmp r0, 0
- bne _080465B2
- ldrb r0, [r3]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804656A
-_080465B2:
- ldr r0, [r2]
- ldr r1, =0xfffdffff
- ands r0, r1
- str r0, [r2]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- bne _080465D2
- ldrb r0, [r3]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- ands r0, r1
- cmp r0, 0
- bne _0804656A
-_080465D2:
- ldr r0, [r2]
- ldr r1, =0xfffbffff
- ands r0, r1
- str r0, [r2]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r5, 1
- cmp r0, 0
- bne _08046622
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _08046622
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x7
- ands r0, r1
- cmp r0, 0
- beq _08046622
- ldr r0, =gBattleMoves
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x98
- beq _08046634
-_08046622:
- ldr r1, =gBattleMoves
- adds r0, r4, r5
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x11
- beq _08046634
- cmp r0, 0x4E
- bne _08046654
-_08046634:
- movs r0, 0x7
- adds r1, r5, 0
- bl mcmd_jump_if_move_not_executed
- movs r0, 0x1
- b _08046656
- .pool
-_08046654:
- movs r0, 0
-_08046656:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8046518
-
- thumb_func_start atk01_accuracycheck
-atk01_accuracycheck: @ 8046660
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- ldr r0, =gBattlescriptCurrInstr
- ldr r5, [r0]
- ldrb r6, [r5, 0x5]
- ldrb r1, [r5, 0x6]
- lsls r1, 8
- orrs r6, r1
- adds r1, r6, 0x2
- lsls r1, 16
- lsrs r1, 16
- adds r7, r0, 0
- cmp r1, 0x1
- bhi _0804671C
- ldr r2, =gStatuses3
- ldr r3, =gBankTarget
- ldrb r4, [r3]
- lsls r0, r4, 2
- adds r0, r2
- ldr r1, [r0]
- movs r0, 0x18
- ands r1, r0
- cmp r1, 0
- beq _080466D0
- ldr r0, =0x0000ffff
- cmp r6, r0
- bne _080466D0
- ldr r1, =gDisableStructs
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- adds r0, r1
- ldr r1, =gBankAttacker
- ldrb r0, [r0, 0x15]
- ldrb r1, [r1]
- cmp r0, r1
- bne _080466D0
- adds r0, r5, 0x7
- str r0, [r7]
- b _080469D2
- .pool
-_080466D0:
- ldrb r0, [r3]
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- beq _08046700
- ldr r2, [r7]
- 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, [r7]
- b _080469D2
- .pool
-_08046700:
- movs r0, 0
- bl sub_80464AC
- lsls r0, 24
- cmp r0, 0
- beq _0804670E
- b _080469D2
-_0804670E:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x7
- str r0, [r1]
- b _080469D2
- .pool
-_0804671C:
- cmp r6, 0
- bne _08046724
- ldr r0, =gCurrentMove
- ldrh r6, [r0]
-_08046724:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0
- beq _08046744
- movs r1, 0x3F
- mov r10, r1
- mov r2, r10
- ands r2, r0
- mov r10, r2
- b _08046752
- .pool
-_08046744:
- ldr r1, =gBattleMoves
- lsls r0, r6, 1
- adds r0, r6
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x2]
- mov r10, r0
-_08046752:
- adds r0, r6, 0
- bl sub_80464AC
- lsls r0, 24
- cmp r0, 0
- beq _08046760
- b _080469D2
-_08046760:
- adds r0, r6, 0
- bl sub_8046518
- lsls r0, 24
- cmp r0, 0
- beq _0804676E
- b _080469D2
-_0804676E:
- ldr r3, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- movs r2, 0x58
- adds r4, r0, 0
- muls r4, r2
- adds r0, r3, 0
- adds r0, 0x50
- adds r0, r4, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 22
- ands r0, r1
- cmp r0, 0
- beq _080467A8
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- muls r0, r2
- adds r0, r3
- ldrb r5, [r0, 0x1E]
- b _080467BE
- .pool
-_080467A8:
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- muls r0, r2
- adds r0, r3
- ldrb r0, [r0, 0x1E]
- adds r0, 0x6
- adds r1, r4, r3
- ldrb r1, [r1, 0x1F]
- subs r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
-_080467BE:
- lsls r0, r5, 24
- cmp r0, 0
- bge _080467C6
- movs r5, 0
-_080467C6:
- lsls r0, r5, 24
- asrs r0, 24
- cmp r0, 0xC
- ble _080467D0
- movs r5, 0xC
-_080467D0:
- ldr r1, =gBattleMoves
- lsls r4, r6, 1
- adds r0, r4, r6
- lsls r0, 2
- adds r7, r0, r1
- ldrb r3, [r7, 0x3]
- mov r8, r3
- movs r0, 0
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- str r4, [sp, 0x4]
- cmp r0, 0
- bne _08046822
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _08046822
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- beq _08046822
- ldrb r0, [r7]
- cmp r0, 0x98
- bne _08046822
- movs r0, 0x32
- mov r8, r0
-_08046822:
- ldr r1, =gAccuracyStageRatios
- lsls r0, r5, 24
- asrs r0, 22
- adds r0, r1
- ldrb r1, [r0]
- mov r4, r8
- muls r4, r1
- ldrb r1, [r0, 0x1]
- adds r0, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r7, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- movs r5, 0x58
- muls r0, r5
- adds r0, r7
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0xE
- bne _08046860
- lsls r0, r4, 6
- adds r0, r4
- lsls r0, 1
- movs r1, 0x64
- bl __divsi3
- lsls r0, 16
- lsrs r4, r0, 16
-_08046860:
- movs r0, 0
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _080468B8
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _080468B8
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- muls r0, r5
- adds r0, r7
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x8
- bne _080468B8
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x18
- ands r0, r1
- cmp r0, 0
- beq _080468B8
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 4
- movs r1, 0x64
- bl __divsi3
- lsls r0, 16
- lsrs r4, r0, 16
-_080468B8:
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r0, [r0]
- mov r9, r2
- cmp r0, 0x37
- bne _080468E4
- mov r1, r10
- cmp r1, 0x8
- bhi _080468E4
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 4
- movs r1, 0x64
- bl __divsi3
- lsls r0, 16
- lsrs r4, r0, 16
-_080468E4:
- ldr r2, =gBankTarget
- mov r8, r2
- ldrb r2, [r2]
- movs r7, 0x58
- adds r0, r2, 0
- muls r0, r7
- mov r3, r9
- adds r1, r0, r3
- ldrh r0, [r1, 0x2E]
- cmp r0, 0xAF
- bne _08046928
- ldr r1, =gEnigmaBerries
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r5, [r0, 0x7]
- ldrb r2, [r0, 0x1A]
- b _08046944
- .pool
-_08046928:
- ldrh r0, [r1, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r5, r0, 24
- mov r1, r8
- ldrb r0, [r1]
- muls r0, r7
- add r0, r9
- ldrh r0, [r0, 0x2E]
- bl ItemId_GetHoldEffectParam
- lsls r0, 24
- lsrs r2, r0, 24
-_08046944:
- ldr r0, =gStringBank
- ldr r1, =gBankTarget
- ldrb r1, [r1]
- strb r1, [r0]
- cmp r5, 0x16
- bne _08046960
- movs r0, 0x64
- subs r0, r2
- muls r0, r4
- movs r1, 0x64
- bl __divsi3
- lsls r0, 16
- lsrs r4, r0, 16
-_08046960:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- adds r0, 0x1
- cmp r0, r4
- ble _080469CA
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080469C0
- ldr r1, =gBattleMoves
- ldr r2, [sp, 0x4]
- adds r0, r2, r6
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x6]
- cmp r0, 0x8
- beq _080469A2
- cmp r0, 0x20
- bne _080469C0
-_080469A2:
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- b _080469C4
- .pool
-_080469C0:
- ldr r1, =gBattleCommunication
- movs r0, 0
-_080469C4:
- strb r0, [r1, 0x6]
- bl b_wonderguard_and_levitate
-_080469CA:
- movs r0, 0x7
- adds r1, r6, 0
- bl mcmd_jump_if_move_not_executed
-_080469D2:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk01_accuracycheck
-
- thumb_func_start atk02_attackstring
-atk02_attackstring: @ 80469E8
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r5, [r0]
- cmp r5, 0
- bne _08046A20
- ldr r4, =gHitMarker
- ldr r0, [r4]
- movs r1, 0xC0
- lsls r1, 3
- ands r0, r1
- cmp r0, 0
- bne _08046A14
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x4
- bl b_std_message
- ldr r0, [r4]
- movs r1, 0x80
- lsls r1, 3
- orrs r0, r1
- str r0, [r4]
-_08046A14:
- ldr r0, =gBattlescriptCurrInstr
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- ldr r0, =gBattleCommunication
- strb r5, [r0, 0x7]
-_08046A20:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk02_attackstring
-
- thumb_func_start atk03_ppreduce
-atk03_ppreduce: @ 8046A3C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r6, 0x1
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _08046A54
- b _08046BEE
-_08046A54:
- ldr r1, =gSpecialStatuses
- ldr r2, =gBankAttacker
- ldrb r3, [r2]
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 26
- lsrs r4, r0, 31
- mov r9, r2
- cmp r4, 0
- bne _08046AF6
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x6]
- cmp r0, 0x20
- beq _08046AA6
- cmp r0, 0x20
- bgt _08046AA0
- cmp r0, 0x8
- beq _08046ABC
- b _08046AD6
- .pool
-_08046AA0:
- cmp r0, 0x40
- beq _08046ABC
- b _08046AD6
-_08046AA6:
- str r4, [sp]
- movs r0, 0x12
- adds r1, r3, 0
- movs r2, 0x2E
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- adds r6, r0, 0x1
- b _08046AF6
-_08046ABC:
- mov r0, r9
- ldrb r1, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x10
- movs r2, 0x2E
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- adds r6, r0
- b _08046AF6
-_08046AD6:
- ldr r1, =gBankTarget
- mov r2, r9
- ldrb r0, [r2]
- ldrb r7, [r1]
- cmp r0, r7
- beq _08046AF6
- ldr r2, =gBattleMons
- ldrb r1, [r1]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x2E
- bne _08046AF6
- adds r6, 0x1
-_08046AF6:
- ldr r0, =gHitMarker
- ldr r4, [r0]
- movs r0, 0xA0
- lsls r0, 4
- ands r4, r0
- cmp r4, 0
- bne _08046BDC
- ldr r2, =gBattleMons
- ldr r3, =gCurrMovePos
- ldr r1, =gBankAttacker
- ldrb r5, [r1]
- movs r0, 0x58
- mov r8, r0
- mov r0, r8
- muls r0, r5
- ldrb r7, [r3]
- adds r0, r7
- movs r7, 0x24
- adds r7, r2
- mov r12, r7
- add r0, r12
- ldrb r0, [r0]
- mov r9, r1
- mov r10, r2
- adds r7, r3, 0
- cmp r0, 0
- beq _08046BDC
- ldr r0, =gProtectStructs
- lsls r1, r5, 4
- adds r1, r0
- ldrb r0, [r1, 0x2]
- movs r2, 0x8
- orrs r0, r2
- strb r0, [r1, 0x2]
- mov r1, r9
- ldrb r0, [r1]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- ldrb r1, [r7]
- adds r0, r1
- mov r1, r12
- adds r2, r0, r1
- ldrb r0, [r2]
- cmp r0, r6
- ble _08046B70
- subs r0, r6
- strb r0, [r2]
- b _08046B72
- .pool
-_08046B70:
- strb r4, [r2]
-_08046B72:
- mov r2, r9
- ldrb r3, [r2]
- movs r4, 0x58
- adds r0, r3, 0
- muls r0, r4
- mov r1, r10
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _08046BDC
- ldr r1, =gDisableStructs
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x18]
- lsrs r1, 4
- ldr r2, =gBitTable
- ldrb r0, [r7]
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08046BDC
- ldr r0, =gActiveBank
- strb r3, [r0]
- ldrb r1, [r7]
- adds r1, 0x9
- lsls r1, 24
- lsrs r1, 24
- mov r2, r9
- ldrb r0, [r2]
- muls r0, r4
- mov r2, r10
- adds r2, 0x24
- adds r0, r2
- ldrb r7, [r7]
- adds r0, r7
- str r0, [sp]
- movs r0, 0
- movs r2, 0
- movs r3, 0x1
- bl EmitSetAttributes
- mov r7, r9
- ldrb r0, [r7]
- bl MarkBufferBankForExecution
-_08046BDC:
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffff7ff
- ands r0, r1
- str r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_08046BEE:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk03_ppreduce
-
- thumb_func_start atk04_critcalc
-atk04_critcalc: @ 8046C18
- push {r4-r7,lr}
- ldr r1, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r0, r1
- ldrh r0, [r0, 0x2E]
- cmp r0, 0xAF
- bne _08046C48
- ldr r1, =gEnigmaBerries
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r6, [r0, 0x7]
- b _08046C50
- .pool
-_08046C48:
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r6, r0, 24
-_08046C50:
- ldr r1, =gStringBank
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- strb r0, [r1]
- ldr r4, =gBattleMons
- ldrb r1, [r3]
- movs r0, 0x58
- adds r7, r1, 0
- muls r7, r0
- adds r0, r4, 0
- adds r0, 0x50
- adds r0, r7, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 13
- ands r0, r1
- negs r0, r0
- asrs r5, r0, 31
- movs r0, 0x2
- ands r5, r0
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- mov r12, r3
- cmp r1, 0x2B
- bne _08046C90
- adds r5, 0x1
-_08046C90:
- adds r0, r5, 0
- cmp r1, 0x4B
- bne _08046C98
- adds r0, 0x1
-_08046C98:
- cmp r1, 0xC8
- bne _08046C9E
- adds r0, 0x1
-_08046C9E:
- adds r2, r0, 0
- cmp r1, 0xD1
- bne _08046CA6
- adds r2, 0x1
-_08046CA6:
- movs r1, 0
- cmp r6, 0x3F
- bne _08046CB6
- adds r0, r7, r4
- ldrh r0, [r0]
- cmp r0, 0x71
- bne _08046CB6
- movs r1, 0x1
-_08046CB6:
- lsls r5, r1, 1
- movs r3, 0
- cmp r6, 0x42
- bne _08046CD0
- mov r0, r12
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r4
- ldrh r0, [r0]
- cmp r0, 0x53
- bne _08046CD0
- movs r3, 0x1
-_08046CD0:
- lsls r1, r3, 1
- cmp r6, 0x29
- bne _08046CF0
- adds r0, r5, 0x1
- adds r0, r2, r0
- b _08046CF2
- .pool
-_08046CF0:
- adds r0, r2, r5
-_08046CF2:
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- adds r5, r0, 0
- cmp r5, 0x4
- bls _08046D00
- movs r5, 0x4
-_08046D00:
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r4
- adds r0, 0x20
- ldrb r4, [r0]
- cmp r4, 0x4
- beq _08046D70
- cmp r4, 0x4B
- beq _08046D70
- ldr r1, =gStatuses3
- mov r2, r12
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- bne _08046D70
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x84
- lsls r1, 2
- ands r0, r1
- cmp r0, 0
- bne _08046D70
- bl Random
- ldr r2, =gCriticalHitChance
- lsls r1, r5, 1
- adds r1, r2
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r1]
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _08046D70
- ldr r1, =gCritMultiplier
- movs r0, 0x2
- b _08046D74
- .pool
-_08046D70:
- ldr r1, =gCritMultiplier
- movs r0, 0x1
-_08046D74:
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk04_critcalc
-
- thumb_func_start atk05_damagecalc1
-atk05_damagecalc1: @ 8046D8C
- push {r4-r7,lr}
- sub sp, 0x10
- ldr r4, =gSideAffecting
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- bl GetBankIdentity
- movs r1, 0x1
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r3, [r1]
- ldr r6, =gBankAttacker
- ldrb r0, [r6]
- movs r4, 0x58
- muls r0, r4
- ldr r2, =gBattleMons
- adds r0, r2
- ldrb r1, [r5]
- muls r1, r4
- adds r1, r2
- ldr r7, =gCurrentMove
- ldrh r2, [r7]
- ldr r4, =gDynamicBasePower
- ldrh r4, [r4]
- str r4, [sp]
- ldr r4, =gBattleStruct
- ldr r4, [r4]
- ldrb r4, [r4, 0x13]
- str r4, [sp, 0x4]
- ldrb r4, [r6]
- str r4, [sp, 0x8]
- ldrb r4, [r5]
- str r4, [sp, 0xC]
- bl CalculateBaseDamage
- ldr r4, =gBattleMoveDamage
- ldr r1, =gCritMultiplier
- ldrb r1, [r1]
- muls r1, r0
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0xE]
- adds r3, r1, 0
- muls r3, r0
- str r3, [r4]
- ldr r1, =gStatuses3
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 2
- ands r0, r1
- cmp r0, 0
- beq _08046E10
- ldr r2, =gBattleMoves
- ldrh r1, [r7]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x2]
- cmp r0, 0xD
- bne _08046E10
- lsls r0, r3, 1
- str r0, [r4]
-_08046E10:
- ldr r1, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 28
- cmp r0, 0
- bge _08046E32
- ldr r4, =gBattleMoveDamage
- ldr r1, [r4]
- lsls r0, r1, 4
- subs r0, r1
- movs r1, 0xA
- bl __divsi3
- str r0, [r4]
-_08046E32:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- add sp, 0x10
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk05_damagecalc1
-
- thumb_func_start AI_CalcDmg
-AI_CalcDmg: @ 8046E7C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- adds r5, r1, 0
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r5, 24
- lsrs r5, 24
- ldr r4, =gSideAffecting
- adds r0, r5, 0
- bl GetBankIdentity
- movs r1, 0x1
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r3, [r1]
- movs r1, 0x58
- adds r0, r7, 0
- muls r0, r1
- ldr r2, =gBattleMons
- adds r0, r2
- muls r1, r5
- adds r1, r2
- ldr r2, =gCurrentMove
- mov r8, r2
- ldrh r2, [r2]
- ldr r6, =gDynamicBasePower
- ldrh r4, [r6]
- str r4, [sp]
- ldr r4, =gBattleStruct
- ldr r4, [r4]
- ldrb r4, [r4, 0x13]
- str r4, [sp, 0x4]
- str r7, [sp, 0x8]
- str r5, [sp, 0xC]
- bl CalculateBaseDamage
- ldr r4, =gBattleMoveDamage
- movs r1, 0
- strh r1, [r6]
- ldr r1, =gCritMultiplier
- ldrb r1, [r1]
- muls r1, r0
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0xE]
- adds r3, r1, 0
- muls r3, r0
- str r3, [r4]
- ldr r1, =gStatuses3
- lsls r0, r7, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 2
- ands r0, r1
- cmp r0, 0
- beq _08046F0A
- ldr r2, =gBattleMoves
- mov r0, r8
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x2]
- cmp r0, 0xD
- bne _08046F0A
- lsls r0, r3, 1
- str r0, [r4]
-_08046F0A:
- ldr r0, =gProtectStructs
- lsls r1, r7, 4
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 28
- cmp r0, 0
- bge _08046F28
- ldr r4, =gBattleMoveDamage
- ldr r1, [r4]
- lsls r0, r1, 4
- subs r0, r1
- movs r1, 0xA
- bl __divsi3
- str r0, [r4]
-_08046F28:
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end AI_CalcDmg
-
- thumb_func_start battle_attack_damage_modulate_by_effectivity
-battle_attack_damage_modulate_by_effectivity: @ 8046F60
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r5, =gBattleMoveDamage
- ldr r0, [r5]
- muls r0, r4
- movs r1, 0xA
- bl __divsi3
- str r0, [r5]
- cmp r0, 0
- bne _08046F80
- cmp r4, 0
- beq _08046F80
- movs r0, 0x1
- str r0, [r5]
-_08046F80:
- cmp r4, 0x5
- beq _08046FB0
- cmp r4, 0x5
- bgt _08046F94
- cmp r4, 0
- beq _08046F9A
- b _08047032
- .pool
-_08046F94:
- cmp r4, 0x14
- beq _08046FF0
- b _08047032
-_08046F9A:
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x8
- orrs r0, r1
- movs r1, 0xFB
- ands r0, r1
- movs r1, 0xFD
- ands r0, r1
- b _08047030
- .pool
-_08046FB0:
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _08047032
- ldr r2, =gBattleMoveFlags
- ldrb r1, [r2]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _08047032
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08046FEC
- movs r0, 0xFD
- ands r0, r1
- b _08047030
- .pool
-_08046FEC:
- movs r0, 0x4
- b _0804702E
-_08046FF0:
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _08047032
- ldr r2, =gBattleMoveFlags
- ldrb r1, [r2]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _08047032
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0804702C
- movs r0, 0xFB
- ands r0, r1
- b _08047030
- .pool
-_0804702C:
- movs r0, 0x2
-_0804702E:
- orrs r0, r1
-_08047030:
- strb r0, [r2]
-_08047032:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end battle_attack_damage_modulate_by_effectivity
-
- thumb_func_start atk06_typecalc
-atk06_typecalc: @ 8047038
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- movs r3, 0
- ldr r1, =gCurrentMove
- ldrh r0, [r1]
- cmp r0, 0xA5
- bne _0804704C
- b _08047260
-_0804704C:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0
- beq _08047068
- movs r1, 0x3F
- mov r8, r1
- ands r1, r0
- mov r8, r1
- b _08047078
- .pool
-_08047068:
- ldr r2, =gBattleMoves
- ldrh r1, [r1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x2]
- mov r8, r0
-_08047078:
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- adds r5, r2, 0
- cmp r0, r8
- beq _0804709A
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, r8
- bne _080470B0
-_0804709A:
- ldr r4, =gBattleMoveDamage
- ldr r1, [r4]
- lsls r0, r1, 4
- subs r0, r1
- str r0, [r4]
- movs r1, 0xA
- str r3, [sp, 0x4]
- bl __divsi3
- str r0, [r4]
- ldr r3, [sp, 0x4]
-_080470B0:
- ldr r2, =gBankTarget
- ldrb r1, [r2]
- movs r0, 0x58
- muls r0, r1
- adds r0, r5
- adds r0, 0x20
- ldrb r0, [r0]
- adds r4, r2, 0
- cmp r0, 0x1A
- bne _08047128
- mov r1, r8
- cmp r1, 0x4
- bne _08047128
- ldr r3, =gLastUsedAbility
- strb r0, [r3]
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x9
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gUnknown_02024250
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- movs r2, 0
- strh r2, [r0]
- ldr r1, =gUnknown_02024258
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- strh r2, [r0]
- ldr r0, =gBattleCommunication
- mov r1, r8
- strb r1, [r0, 0x6]
- ldrb r0, [r4]
- ldrb r1, [r3]
- bl RecordAbilityBattle
- b _080471C4
- .pool
-_08047128:
- ldr r1, =gUnknown_0831ACE8
- adds r0, r3, r1
- ldrb r0, [r0]
- adds r2, r1, 0
- b _080471A4
- .pool
-_08047138:
- adds r3, 0x3
- b _080471A0
-_0804713C:
- ldr r5, =gUnknown_0831ACE8
- adds r0, r3, r5
- ldrb r0, [r0]
- cmp r0, r8
- bne _08047198
- adds r1, r3, 0x1
- adds r1, r5
- ldr r2, =gBattleMons
- ldr r7, =gBankTarget
- ldrb r0, [r7]
- movs r6, 0x58
- muls r0, r6
- adds r0, r2
- adds r0, 0x21
- ldrb r4, [r1]
- ldrb r0, [r0]
- cmp r4, r0
- bne _08047172
- adds r0, r3, 0x2
- adds r0, r5
- ldrb r0, [r0]
- str r2, [sp]
- str r3, [sp, 0x4]
- bl battle_attack_damage_modulate_by_effectivity
- ldr r3, [sp, 0x4]
- ldr r2, [sp]
-_08047172:
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r2
- adds r1, r0, 0
- adds r1, 0x22
- ldrb r1, [r1]
- cmp r4, r1
- bne _08047198
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, r4
- beq _08047198
- adds r0, r3, 0x2
- adds r0, r5
- ldrb r0, [r0]
- str r3, [sp, 0x4]
- bl battle_attack_damage_modulate_by_effectivity
- ldr r3, [sp, 0x4]
-_08047198:
- adds r3, 0x3
- ldr r5, =gBattleMons
- ldr r4, =gBankTarget
- ldr r2, =gUnknown_0831ACE8
-_080471A0:
- adds r0, r3, r2
- ldrb r0, [r0]
-_080471A4:
- cmp r0, 0xFF
- beq _080471C4
- cmp r0, 0xFE
- bne _0804713C
- ldrb r1, [r4]
- movs r0, 0x58
- muls r0, r1
- adds r1, r5, 0
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 22
- ands r0, r1
- cmp r0, 0
- beq _08047138
-_080471C4:
- ldr r2, =gBattleMons
- ldr r5, =gBankTarget
- ldrb r1, [r5]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r6, [r0]
- cmp r6, 0x19
- bne _08047242
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- ldr r7, =gCurrentMove
- ldrh r1, [r7]
- bl move_weather_interaction
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _08047242
- ldr r1, =gBattleMoveFlags
- mov r8, r1
- ldrb r4, [r1]
- ands r0, r4
- cmp r0, 0
- beq _08047200
- movs r0, 0x6
- ands r0, r4
- cmp r0, 0x6
- bne _08047242
-_08047200:
- ldr r2, =gBattleMoves
- ldrh r1, [r7]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _08047242
- ldr r3, =gLastUsedAbility
- strb r6, [r3]
- movs r0, 0x1
- orrs r0, r4
- mov r1, r8
- strb r0, [r1]
- ldr r1, =gUnknown_02024250
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- movs r2, 0
- strh r2, [r0]
- ldr r1, =gUnknown_02024258
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- strh r2, [r0]
- ldr r1, =gBattleCommunication
- movs r0, 0x3
- strb r0, [r1, 0x6]
- ldrb r0, [r5]
- ldrb r1, [r3]
- bl RecordAbilityBattle
-_08047242:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08047260
- ldr r2, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 4
- adds r1, r2
- ldrb r0, [r1, 0x1]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1, 0x1]
-_08047260:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk06_typecalc
-
- thumb_func_start b_wonderguard_and_levitate
-b_wonderguard_and_levitate: @ 80472A8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r6, 0
- movs r5, 0
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- mov r9, r0
- cmp r1, 0xA5
- bne _080472C0
- b _08047508
-_080472C0:
- ldr r2, =gBattleMoves
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- ldrb r0, [r1, 0x1]
- cmp r0, 0
- bne _080472D2
- b _08047508
-_080472D2:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0
- beq _080472F4
- movs r1, 0x3F
- mov r12, r1
- mov r2, r12
- ands r2, r0
- mov r12, r2
- b _080472F8
- .pool
-_080472F4:
- ldrb r1, [r1, 0x2]
- mov r12, r1
-_080472F8:
- ldr r2, =gBattleMons
- ldr r3, =gBankTarget
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r1, [r0]
- adds r7, r2, 0
- mov r8, r3
- cmp r1, 0x1A
- bne _0804733C
- mov r0, r12
- cmp r0, 0x4
- bne _0804733C
- ldr r0, =gLastUsedAbility
- strb r1, [r0]
- ldr r0, =gBattleCommunication
- mov r1, r12
- strb r1, [r0, 0x6]
- ldrb r0, [r3]
- movs r1, 0x1A
- bl RecordAbilityBattle
- b _08047508
- .pool
-_0804733C:
- ldr r1, =gUnknown_0831ACE8
- adds r0, r5, r1
- ldrb r0, [r0]
- adds r4, r1, 0
- b _0804748E
- .pool
-_0804734C:
- adds r0, r5, r4
- ldrb r0, [r0]
- cmp r0, r12
- beq _08047356
- b _08047488
-_08047356:
- adds r2, r5, 0x1
- adds r3, r2, r4
- mov r0, r8
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7
- adds r0, 0x21
- ldrb r1, [r3]
- adds r3, r2, 0
- ldrb r0, [r0]
- cmp r1, r0
- bne _08047396
- adds r0, r5, 0x2
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _08047396
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x8
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- lsls r2, 4
- adds r2, r1
- ldrb r0, [r2, 0x1]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0x1]
-_08047396:
- adds r2, r3, r4
- mov r0, r8
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7
- adds r1, r0, 0
- adds r1, 0x22
- ldrb r2, [r2]
- ldrb r1, [r1]
- cmp r2, r1
- bne _080473DC
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, r2
- beq _080473DC
- adds r0, r5, 0x2
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _080473DC
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x8
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- lsls r2, 4
- adds r2, r1
- ldrb r0, [r2, 0x1]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0x1]
-_080473DC:
- adds r2, r3, r4
- mov r0, r8
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7
- adds r0, 0x21
- ldrb r1, [r2]
- ldrb r0, [r0]
- cmp r1, r0
- bne _08047400
- adds r0, r5, 0x2
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x14
- bne _08047400
- movs r0, 0x1
- orrs r6, r0
-_08047400:
- adds r2, r3, r4
- mov r0, r8
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7
- adds r1, r0, 0
- adds r1, 0x22
- ldrb r2, [r2]
- ldrb r1, [r1]
- cmp r2, r1
- bne _0804742E
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, r2
- beq _0804742E
- adds r0, r5, 0x2
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x14
- bne _0804742E
- movs r0, 0x1
- orrs r6, r0
-_0804742E:
- adds r2, r3, r4
- mov r0, r8
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7
- adds r0, 0x21
- ldrb r1, [r2]
- ldrb r0, [r0]
- cmp r1, r0
- bne _08047456
- adds r0, r5, 0x2
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x5
- bne _08047456
- movs r0, 0x2
- orrs r6, r0
- lsls r0, r6, 24
- lsrs r6, r0, 24
-_08047456:
- adds r2, r3, r4
- mov r0, r8
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7
- adds r1, r0, 0
- adds r1, 0x22
- ldrb r2, [r2]
- ldrb r1, [r1]
- cmp r2, r1
- bne _08047488
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, r2
- beq _08047488
- adds r0, r5, 0x2
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x5
- bne _08047488
- movs r0, 0x2
- orrs r6, r0
- lsls r0, r6, 24
- lsrs r6, r0, 24
-_08047488:
- adds r5, 0x3
- adds r0, r5, r4
- ldrb r0, [r0]
-_0804748E:
- cmp r0, 0xFF
- beq _080474B2
- cmp r0, 0xFE
- beq _08047498
- b _0804734C
-_08047498:
- mov r2, r8
- ldrb r1, [r2]
- movs r0, 0x58
- muls r0, r1
- adds r1, r7, 0
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 22
- ands r0, r1
- cmp r0, 0
- beq _08047488
-_080474B2:
- mov r0, r8
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7
- adds r0, 0x20
- ldrb r4, [r0]
- cmp r4, 0x19
- bne _08047508
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- mov r2, r9
- ldrh r1, [r2]
- bl move_weather_interaction
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _08047508
- movs r0, 0x3
- ands r6, r0
- cmp r6, 0x1
- beq _08047508
- ldr r2, =gBattleMoves
- mov r0, r9
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _08047508
- ldr r0, =gLastUsedAbility
- strb r4, [r0]
- ldr r1, =gBattleCommunication
- movs r0, 0x3
- strb r0, [r1, 0x6]
- mov r1, r8
- ldrb r0, [r1]
- movs r1, 0x19
- bl RecordAbilityBattle
-_08047508:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end b_wonderguard_and_levitate
-
- thumb_func_start b_attack_effectivity_adapt
-b_attack_effectivity_adapt: @ 804752C
- push {r4-r7,lr}
- adds r6, r2, 0
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 16
- lsrs r5, r1, 16
- ldr r7, =gBattleMoveDamage
- ldr r0, [r7]
- muls r0, r4
- movs r1, 0xA
- bl __divsi3
- str r0, [r7]
- cmp r0, 0
- bne _08047552
- cmp r4, 0
- beq _08047552
- movs r0, 0x1
- str r0, [r7]
-_08047552:
- cmp r4, 0x5
- beq _0804757A
- cmp r4, 0x5
- bgt _08047564
- cmp r4, 0
- beq _0804756A
- b _080475DE
- .pool
-_08047564:
- cmp r4, 0x14
- beq _080475AC
- b _080475DE
-_0804756A:
- ldrb r0, [r6]
- movs r1, 0x8
- orrs r0, r1
- movs r1, 0xFB
- ands r0, r1
- movs r1, 0xFD
- ands r0, r1
- b _080475DC
-_0804757A:
- ldr r0, =gBattleMoves
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- cmp r0, 0
- beq _080475DE
- ldrb r1, [r6]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _080475DE
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080475A8
- movs r0, 0xFD
- ands r0, r1
- b _080475DC
- .pool
-_080475A8:
- movs r0, 0x4
- b _080475DA
-_080475AC:
- ldr r0, =gBattleMoves
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- cmp r0, 0
- beq _080475DE
- ldrb r1, [r6]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _080475DE
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080475D8
- movs r0, 0xFB
- ands r0, r1
- b _080475DC
- .pool
-_080475D8:
- movs r0, 0x2
-_080475DA:
- orrs r0, r1
-_080475DC:
- strb r0, [r6]
-_080475DE:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end b_attack_effectivity_adapt
-
- thumb_func_start TypeCalc
-TypeCalc: @ 80475E4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp, 0x4]
- lsls r2, 24
- lsrs r2, 24
- mov r9, r2
- movs r0, 0
- mov r8, r0
- mov r0, sp
- mov r1, r8
- strb r1, [r0]
- mov r2, r10
- cmp r2, 0xA5
- bne _08047616
- movs r0, 0
- b _0804779E
-_08047616:
- ldr r1, =gBattleMoves
- mov r3, r10
- lsls r2, r3, 1
- adds r0, r2, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x2]
- str r0, [sp, 0x8]
- ldr r1, =gBattleMons
- movs r0, 0x58
- ldr r3, [sp, 0x4]
- muls r0, r3
- adds r3, r0, r1
- adds r0, r3, 0
- adds r0, 0x21
- ldrb r0, [r0]
- str r2, [sp, 0xC]
- adds r5, r1, 0
- ldr r1, [sp, 0x8]
- cmp r0, r1
- beq _0804764A
- adds r0, r3, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, r1
- bne _0804765C
-_0804764A:
- ldr r4, =gBattleMoveDamage
- ldr r1, [r4]
- lsls r0, r1, 4
- subs r0, r1
- str r0, [r4]
- movs r1, 0xA
- bl __divsi3
- str r0, [r4]
-_0804765C:
- movs r0, 0x58
- mov r2, r9
- muls r2, r0
- adds r0, r2, 0
- adds r0, r5
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1A
- bne _08047690
- ldr r3, [sp, 0x8]
- cmp r3, 0x4
- bne _08047690
- movs r1, 0x9
- mov r0, sp
- ldrb r0, [r0]
- orrs r0, r1
- mov r1, sp
- strb r0, [r1]
- b _08047740
- .pool
-_08047690:
- ldr r1, =gUnknown_0831ACE8
- mov r2, r8
- adds r0, r2, r1
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0xFF
- beq _08047740
- cmp r0, 0xFE
- bne _080476B6
- movs r0, 0x58
- mov r3, r9
- muls r3, r0
- adds r0, r3, 0
- b _0804772E
- .pool
-_080476B0:
- movs r0, 0x3
- add r8, r0
- b _08047718
-_080476B6:
- ldr r7, =gUnknown_0831ACE8
- mov r1, r8
- adds r0, r1, r7
- ldrb r0, [r0]
- ldr r2, [sp, 0x8]
- cmp r0, r2
- bne _08047710
- adds r1, 0x1
- adds r1, r7
- ldr r2, =gBattleMons
- movs r0, 0x58
- mov r3, r9
- muls r3, r0
- adds r0, r3, 0
- adds r5, r0, r2
- adds r6, r5, 0
- adds r6, 0x21
- ldrb r4, [r1]
- ldrb r0, [r6]
- cmp r4, r0
- bne _080476F0
- mov r0, r8
- adds r0, 0x2
- adds r0, r7
- ldrb r0, [r0]
- mov r1, r10
- mov r2, sp
- bl b_attack_effectivity_adapt
-_080476F0:
- adds r0, r5, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r4, r0
- bne _08047710
- ldrb r0, [r6]
- cmp r0, r4
- beq _08047710
- mov r0, r8
- adds r0, 0x2
- adds r0, r7
- ldrb r0, [r0]
- mov r1, r10
- mov r2, sp
- bl b_attack_effectivity_adapt
-_08047710:
- movs r1, 0x3
- add r8, r1
- ldr r5, =gBattleMons
- ldr r2, =gUnknown_0831ACE8
-_08047718:
- mov r3, r8
- adds r0, r3, r2
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _08047740
- cmp r0, 0xFE
- bne _080476B6
- movs r0, 0x58
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
-_0804772E:
- adds r1, r5, 0
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 22
- ands r0, r1
- cmp r0, 0
- beq _080476B0
-_08047740:
- movs r0, 0x58
- mov r2, r9
- muls r2, r0
- adds r0, r2, 0
- adds r0, r5
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x19
- bne _0804779A
- mov r0, sp
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0804779A
- ldr r0, [sp, 0x4]
- mov r1, r10
- bl move_weather_interaction
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bne _0804779A
- mov r0, sp
- ldrb r3, [r0]
- adds r0, r1, 0
- ands r0, r3
- cmp r0, 0
- beq _08047782
- movs r0, 0x6
- ands r0, r3
- cmp r0, 0x6
- bne _0804779A
-_08047782:
- ldr r0, =gBattleMoves
- ldr r1, [sp, 0xC]
- add r1, r10
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- cmp r0, 0
- beq _0804779A
- mov r0, sp
- movs r1, 0x1
- orrs r1, r3
- strb r1, [r0]
-_0804779A:
- mov r0, sp
- ldrb r0, [r0]
-_0804779E:
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end TypeCalc
-
- thumb_func_start ai_rate_move
-ai_rate_move: @ 80477BC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x4]
- movs r7, 0
- mov r0, sp
- strb r7, [r0]
- ldr r2, =gBaseStats
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x6]
- mov r9, r1
- ldrb r0, [r0, 0x7]
- mov r8, r0
- cmp r6, 0xA5
- bne _080477FC
- movs r0, 0
- b _080478A0
- .pool
-_080477FC:
- ldr r2, =gBattleMoves
- lsls r1, r6, 1
- adds r0, r1, r6
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x2]
- mov r10, r0
- str r1, [sp, 0x8]
- ldr r3, [sp, 0x4]
- cmp r3, 0x1A
- bne _08047824
- cmp r0, 0x4
- bne _08047824
- movs r1, 0x9
- mov r0, sp
- strb r1, [r0]
- b _0804786A
- .pool
-_08047824:
- ldr r0, =gUnknown_0831ACE8
- adds r1, r7, r0
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _0804786A
- adds r4, r1, 0
-_08047830:
- ldrb r0, [r4]
- cmp r0, 0xFE
- beq _0804785C
- cmp r0, r10
- bne _0804785C
- ldrb r5, [r4, 0x1]
- cmp r5, r9
- bne _0804784A
- ldrb r0, [r4, 0x2]
- adds r1, r6, 0
- mov r2, sp
- bl b_attack_effectivity_adapt
-_0804784A:
- cmp r5, r8
- bne _0804785C
- cmp r9, r8
- beq _0804785C
- ldrb r0, [r4, 0x2]
- adds r1, r6, 0
- mov r2, sp
- bl b_attack_effectivity_adapt
-_0804785C:
- adds r4, 0x3
- adds r7, 0x3
- ldr r1, =gUnknown_0831ACE8
- adds r0, r7, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08047830
-_0804786A:
- ldr r3, [sp, 0x4]
- cmp r3, 0x19
- bne _0804789C
- mov r0, sp
- ldrb r2, [r0]
- movs r0, 0x2
- ands r0, r2
- cmp r0, 0
- beq _08047884
- movs r0, 0x6
- ands r0, r2
- cmp r0, 0x6
- bne _0804789C
-_08047884:
- ldr r0, =gBattleMoves
- ldr r3, [sp, 0x8]
- adds r1, r3, r6
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- cmp r0, 0
- beq _0804789C
- mov r0, sp
- movs r1, 0x8
- orrs r1, r2
- strb r1, [r0]
-_0804789C:
- mov r0, sp
- ldrb r0, [r0]
-_080478A0:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end ai_rate_move
-
- thumb_func_start sub_80478B8
-sub_80478B8: @ 80478B8
- push {r4,lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF
- ands r0, r1
- movs r1, 0x64
- subs r1, r0
- lsls r1, 16
- lsrs r1, 16
- ldr r4, =gBattleMoveDamage
- ldr r0, [r4]
- cmp r0, 0
- beq _080478EA
- muls r0, r1
- str r0, [r4]
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
- cmp r0, 0
- bne _080478EA
- movs r0, 0x1
- str r0, [r4]
-_080478EA:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80478B8
-
- thumb_func_start atk07_dmg_adjustment
-atk07_dmg_adjustment: @ 80478F4
- push {r4-r7,lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF
- ands r0, r1
- movs r1, 0x64
- subs r1, r0
- lsls r1, 16
- lsrs r1, 16
- ldr r4, =gBattleMoveDamage
- ldr r0, [r4]
- cmp r0, 0
- beq _08047926
- muls r0, r1
- str r0, [r4]
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
- cmp r0, 0
- bne _08047926
- movs r0, 0x1
- str r0, [r4]
-_08047926:
- ldr r7, =gBattleMons
- ldr r6, =gBankTarget
- ldrb r2, [r6]
- movs r5, 0x58
- adds r0, r2, 0
- muls r0, r5
- adds r1, r0, r7
- ldrh r0, [r1, 0x2E]
- cmp r0, 0xAF
- bne _0804795C
- ldr r1, =gEnigmaBerries
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r4, [r0, 0x7]
- ldrb r6, [r0, 0x1A]
- b _08047976
- .pool
-_0804795C:
- ldrh r0, [r1, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r7
- ldrh r0, [r0, 0x2E]
- bl ItemId_GetHoldEffectParam
- lsls r0, 24
- lsrs r6, r0, 24
-_08047976:
- ldr r1, =gStringBank
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- strb r0, [r1]
- cmp r4, 0x27
- bne _080479B4
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r6
- bcs _080479B4
- ldrb r0, [r5]
- movs r1, 0x27
- bl RecordItemEffectBattle
- ldr r2, =gSpecialStatuses
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
-_080479B4:
- ldr r2, =gBattleMons
- ldr r3, =gBankTarget
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, r2, 0
- adds r1, 0x50
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r1, r0
- adds r5, r2, 0
- cmp r1, 0
- bne _08047A84
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x65
- beq _08047A06
- ldr r0, =gProtectStructs
- lsls r1, r4, 4
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 30
- cmp r0, 0
- blt _08047A06
- ldr r0, =gSpecialStatuses
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- lsrs r0, 7
- cmp r0, 0
- beq _08047A84
-_08047A06:
- ldrb r0, [r3]
- movs r4, 0x58
- muls r0, r4
- adds r0, r5
- ldrh r1, [r0, 0x28]
- ldr r2, =gBattleMoveDamage
- ldr r0, [r2]
- cmp r1, r0
- bgt _08047A84
- subs r0, r1, 0x1
- str r0, [r2]
- ldr r1, =gProtectStructs
- ldrb r3, [r3]
- lsls r0, r3, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 30
- cmp r0, 0
- bge _08047A5C
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- b _08047A84
- .pool
-_08047A5C:
- ldr r0, =gSpecialStatuses
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- lsrs r0, 7
- cmp r0, 0
- beq _08047A84
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gLastUsedItem
- adds r0, r3, 0
- muls r0, r4
- adds r0, r5
- ldrh r0, [r0, 0x2E]
- strh r0, [r1]
-_08047A84:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk07_dmg_adjustment
-
- thumb_func_start atk08_dmg_adjustment2
-atk08_dmg_adjustment2: @ 8047AA4
- push {r4-r7,lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF
- ands r0, r1
- movs r1, 0x64
- subs r1, r0
- lsls r1, 16
- lsrs r1, 16
- ldr r4, =gBattleMoveDamage
- ldr r0, [r4]
- cmp r0, 0
- beq _08047AD6
- muls r0, r1
- str r0, [r4]
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
- cmp r0, 0
- bne _08047AD6
- movs r0, 0x1
- str r0, [r4]
-_08047AD6:
- ldr r7, =gBattleMons
- ldr r6, =gBankTarget
- ldrb r2, [r6]
- movs r5, 0x58
- adds r0, r2, 0
- muls r0, r5
- adds r1, r0, r7
- ldrh r0, [r1, 0x2E]
- cmp r0, 0xAF
- bne _08047B0C
- ldr r1, =gEnigmaBerries
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r4, [r0, 0x7]
- ldrb r6, [r0, 0x1A]
- b _08047B26
- .pool
-_08047B0C:
- ldrh r0, [r1, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r7
- ldrh r0, [r0, 0x2E]
- bl ItemId_GetHoldEffectParam
- lsls r0, 24
- lsrs r6, r0, 24
-_08047B26:
- ldr r1, =gStringBank
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- strb r0, [r1]
- cmp r4, 0x27
- bne _08047B64
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r6
- bcs _08047B64
- ldrb r0, [r5]
- movs r1, 0x27
- bl RecordItemEffectBattle
- ldr r2, =gSpecialStatuses
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
-_08047B64:
- ldr r4, =gBattleMons
- ldr r6, =gBankTarget
- ldrb r2, [r6]
- movs r7, 0x58
- adds r3, r2, 0
- muls r3, r7
- adds r0, r4, 0
- adds r0, 0x50
- adds r0, r3, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- bne _08047C10
- ldr r5, =gProtectStructs
- lsls r0, r2, 4
- adds r0, r5
- ldrb r0, [r0]
- lsls r0, 30
- cmp r0, 0
- blt _08047BA2
- ldr r0, =gSpecialStatuses
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- lsrs r0, 7
- cmp r0, 0
- beq _08047C10
-_08047BA2:
- adds r0, r3, r4
- ldrh r1, [r0, 0x28]
- ldr r2, =gBattleMoveDamage
- ldr r0, [r2]
- cmp r1, r0
- bgt _08047C10
- subs r0, r1, 0x1
- str r0, [r2]
- ldrb r3, [r6]
- lsls r0, r3, 4
- adds r0, r5
- ldrb r0, [r0]
- lsls r0, 30
- cmp r0, 0
- bge _08047BE8
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- b _08047C10
- .pool
-_08047BE8:
- ldr r0, =gSpecialStatuses
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- lsrs r0, 7
- cmp r0, 0
- beq _08047C10
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gLastUsedItem
- adds r0, r3, 0
- muls r0, r7
- adds r0, r4
- ldrh r0, [r0, 0x2E]
- strh r0, [r1]
-_08047C10:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk08_dmg_adjustment2
-
- thumb_func_start atk09_attackanimation
-atk09_attackanimation: @ 8047C30
- push {r4-r7,lr}
- sub sp, 0x10
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _08047C3E
- b _08047DB6
-_08047C3E:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- ldr r5, =gCurrentMove
- cmp r0, 0
- beq _08047C8C
- ldrh r0, [r5]
- cmp r0, 0x90
- beq _08047C8C
- cmp r0, 0xA4
- beq _08047C8C
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DABB9
- str r0, [r4]
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x18]
- adds r0, 0x1
- strb r0, [r1, 0x18]
- ldrb r0, [r1, 0x19]
- adds r0, 0x1
- strb r0, [r1, 0x19]
- b _08047DB6
- .pool
-_08047C8C:
- ldr r2, =gBattleMoves
- ldrh r1, [r5]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x6]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- bne _08047CB2
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _08047CB2
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08047CBA
-_08047CB2:
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x19]
- cmp r0, 0
- bne _08047D88
-_08047CBA:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _08047DA8
- ldr r1, =gActiveBank
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- strb r0, [r1]
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- adds r4, r1, 0
- muls r4, r0
- adds r0, r2, 0
- adds r0, 0x50
- adds r0, r4, r0
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r1, r0
- adds r7, r3, 0
- mov r12, r2
- cmp r1, 0
- beq _08047D18
- ldr r0, =gUnknown_02024212
- ldrb r6, [r0]
- b _08047D42
- .pool
-_08047D18:
- ldr r3, =gUnknown_02024212
- ldrb r0, [r3]
- cmp r0, 0x1
- bls _08047D40
- mov r1, r12
- adds r0, r4, r1
- ldrh r2, [r0, 0x28]
- ldr r0, =gBattleMoveDamage
- ldr r1, [r0]
- movs r6, 0x1
- adds r4, r0, 0
- cmp r2, r1
- ble _08047D44
- ldrb r6, [r3]
- b _08047D44
- .pool
-_08047D40:
- ldrb r6, [r3]
-_08047D42:
- ldr r4, =gBattleMoveDamage
-_08047D44:
- ldrh r1, [r5]
- ldr r5, =gBattleScripting
- ldrb r2, [r5, 0x18]
- ldr r0, =gBattleMovePower
- ldrh r3, [r0]
- ldr r0, [r4]
- str r0, [sp]
- ldrb r4, [r7]
- movs r0, 0x58
- muls r0, r4
- add r0, r12
- adds r0, 0x2B
- ldrb r0, [r0]
- str r0, [sp, 0x4]
- ldrb r4, [r7]
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- ldr r4, =gDisableStructs
- adds r0, r4
- str r0, [sp, 0x8]
- str r6, [sp, 0xC]
- movs r0, 0
- bl dp01_build_cmdbuf_x0F_aa_b_cc_dddd_e_mlc_weather_00_x1Cbytes
- ldrb r0, [r5, 0x18]
- adds r0, 0x1
- strb r0, [r5, 0x18]
- ldrb r0, [r5, 0x19]
- adds r0, 0x1
- strb r0, [r5, 0x19]
- ldrb r0, [r7]
- bl MarkBufferBankForExecution
-_08047D88:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- b _08047DB6
- .pool
-_08047DA8:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DABB9
- str r0, [r4]
-_08047DB6:
- add sp, 0x10
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk09_attackanimation
-
- thumb_func_start atk0A_waitanimation
-atk0A_waitanimation: @ 8047DC8
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _08047DDA
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_08047DDA:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk0A_waitanimation
-
- thumb_func_start atk0B_healthbarupdate
-atk0B_healthbarupdate: @ 8047DE8
- push {r4,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _08047EAA
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _08047EA2
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r2, =gActiveBank
- strb r0, [r2]
- ldr r1, =gBattleMons
- ldrb r2, [r2]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- beq _08047E68
- ldr r0, =gDisableStructs
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- cmp r0, 0
- beq _08047E68
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 1
- ands r0, r1
- cmp r0, 0
- bne _08047E68
- movs r0, 0x80
- adds r1, r2, 0
- bl b_std_message
- b _08047EA2
- .pool
-_08047E68:
- ldr r0, =gBattleMoveDamage
- ldr r0, [r0]
- ldr r1, =0x00002710
- cmp r0, r1
- bgt _08047E76
- lsls r0, 16
- lsrs r1, r0, 16
-_08047E76:
- movs r0, 0
- bl dp01_build_cmdbuf_x18_0_aa_health_bar_update
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08047EA2
- ldr r0, =gBattleMoveDamage
- ldr r0, [r0]
- cmp r0, 0
- ble _08047EA2
- ldr r0, =gBattleResults
- ldrb r1, [r0, 0x5]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0, 0x5]
-_08047EA2:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_08047EAA:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk0B_healthbarupdate
-
- thumb_func_start atk0C_datahpupdate
-atk0C_datahpupdate: @ 8047EC4
- push {r4-r7,lr}
- sub sp, 0x4
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _08047ED2
- b _080482A2
-_08047ED2:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r1, [r0, 0x13]
- cmp r1, 0
- beq _08047EF4
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _08047EF4
- movs r6, 0x3F
- ands r6, r1
- b _08047F04
- .pool
-_08047EF4:
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r6, [r0, 0x2]
-_08047F04:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- beq _08047F12
- b _08048274
-_08047F12:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r7, =gActiveBank
- strb r0, [r7]
- ldr r1, =gBattleMons
- ldrb r2, [r7]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- beq _08048028
- ldr r0, =gDisableStructs
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r4, r1, r0
- ldrb r1, [r4, 0xA]
- mov r12, r0
- cmp r1, 0
- beq _08048028
- ldr r0, =gHitMarker
- ldr r3, [r0]
- movs r0, 0x80
- lsls r0, 1
- ands r3, r0
- cmp r3, 0
- bne _08048028
- adds r5, r1, 0
- ldr r6, =gBattleMoveDamage
- ldr r4, [r6]
- cmp r5, r4
- blt _08047FBC
- ldr r0, =gSpecialStatuses
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 2
- adds r0, 0x4
- adds r1, r0
- ldr r0, [r1]
- cmp r0, 0
- bne _08047F76
- str r4, [r1]
-_08047F76:
- ldrb r0, [r7]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- add r1, r12
- ldr r2, [r6]
- ldrb r0, [r1, 0xA]
- subs r0, r2
- strb r0, [r1, 0xA]
- ldr r1, =gUnknown_020241F4
- ldr r0, [r6]
- str r0, [r1]
- b _08047FEC
- .pool
-_08047FBC:
- ldr r0, =gSpecialStatuses
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 2
- adds r0, 0x4
- adds r1, r0
- ldr r0, [r1]
- cmp r0, 0
- bne _08047FD0
- str r5, [r1]
-_08047FD0:
- ldr r2, =gUnknown_020241F4
- ldrb r1, [r7]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- ldrb r0, [r0, 0xA]
- str r0, [r2]
- ldrb r1, [r7]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- strb r3, [r0, 0xA]
-_08047FEC:
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- ldrb r0, [r0, 0xA]
- cmp r0, 0
- beq _08048000
- b _0804829A
-_08048000:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- bl b_movescr_stack_push_cursor
- ldr r0, =gUnknown_082DB6FB
- str r0, [r4]
- b _080482A2
- .pool
-_08048028:
- ldr r0, =gHitMarker
- ldr r2, [r0]
- ldr r1, =0xfffffeff
- ands r2, r1
- str r2, [r0]
- ldr r1, =gBattleMoveDamage
- ldr r5, [r1]
- mov r12, r0
- adds r7, r1, 0
- cmp r5, 0
- bge _0804807C
- ldr r4, =gBattleMons
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- movs r3, 0x58
- adds r1, r0, 0
- muls r1, r3
- adds r1, r4
- ldrh r0, [r1, 0x28]
- subs r0, r5
- strh r0, [r1, 0x28]
- ldrb r0, [r2]
- muls r0, r3
- adds r1, r0, r4
- ldrh r3, [r1, 0x2C]
- ldrh r0, [r1, 0x28]
- adds r5, r2, 0
- cmp r0, r3
- bhi _08048064
- b _0804823A
-_08048064:
- strh r3, [r1, 0x28]
- b _0804823A
- .pool
-_0804807C:
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- beq _08048098
- movs r0, 0x21
- negs r0, r0
- ands r2, r0
- mov r0, r12
- str r2, [r0]
- ldr r5, =gActiveBank
- b _080480E0
- .pool
-_08048098:
- ldr r0, =gTakenDmg
- ldr r2, =gActiveBank
- ldrb r1, [r2]
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- adds r0, r5
- str r0, [r1]
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- adds r5, r2, 0
- cmp r0, 0
- bne _080480D4
- ldr r1, =gTakenDmgBanks
- ldrb r0, [r5]
- adds r0, r1
- ldr r1, =gBankAttacker
- b _080480DC
- .pool
-_080480D4:
- ldr r1, =gTakenDmgBanks
- ldrb r0, [r5]
- adds r0, r1
- ldr r1, =gBankTarget
-_080480DC:
- ldrb r1, [r1]
- strb r1, [r0]
-_080480E0:
- ldr r4, =gBattleMons
- ldrb r0, [r5]
- movs r3, 0x58
- muls r0, r3
- adds r2, r0, r4
- ldrh r0, [r2, 0x28]
- ldr r1, [r7]
- cmp r0, r1
- ble _08048110
- subs r0, r1
- strh r0, [r2, 0x28]
- ldr r0, =gUnknown_020241F4
- str r1, [r0]
- adds r7, r0, 0
- b _08048120
- .pool
-_08048110:
- ldr r2, =gUnknown_020241F4
- str r0, [r2]
- ldrb r0, [r5]
- muls r0, r3
- adds r0, r4
- movs r1, 0
- strh r1, [r0, 0x28]
- adds r7, r2, 0
-_08048120:
- ldr r2, =gSpecialStatuses
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r1, r2, 0x4
- adds r3, r0, r1
- ldr r0, [r3]
- adds r4, r2, 0
- cmp r0, 0
- bne _08048148
- mov r1, r12
- ldr r0, [r1]
- movs r1, 0x80
- lsls r1, 13
- ands r0, r1
- cmp r0, 0
- bne _08048148
- ldr r0, [r7]
- str r0, [r3]
-_08048148:
- cmp r6, 0x8
- bhi _080481D0
- mov r1, r12
- ldr r0, [r1]
- movs r1, 0x80
- lsls r1, 13
- ands r0, r1
- cmp r0, 0
- bne _080481CC
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- cmp r0, 0xDC
- beq _080481CC
- ldr r3, =gProtectStructs
- ldrb r0, [r5]
- lsls r0, 4
- adds r1, r3, 0x4
- adds r0, r1
- ldr r2, [r7]
- str r2, [r0]
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x8
- adds r0, r1
- str r2, [r0]
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _080481AC
- ldrb r0, [r5]
- lsls r0, 4
- adds r0, r3
- ldr r2, =gBankAttacker
- b _080481B4
- .pool
-_080481AC:
- ldrb r0, [r5]
- lsls r0, 4
- adds r0, r3
- ldr r2, =gBankTarget
-_080481B4:
- ldrb r1, [r2]
- strb r1, [r0, 0xC]
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r2]
- strb r1, [r0, 0x10]
- b _0804823A
- .pool
-_080481CC:
- cmp r6, 0x8
- bls _0804823A
-_080481D0:
- mov r1, r12
- ldr r0, [r1]
- movs r1, 0x80
- lsls r1, 13
- ands r0, r1
- cmp r0, 0
- bne _0804823A
- ldr r3, =gProtectStructs
- ldrb r0, [r5]
- lsls r0, 4
- adds r1, r3, 0
- adds r1, 0x8
- adds r0, r1
- ldr r2, [r7]
- str r2, [r0]
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0xC
- adds r0, r1
- str r2, [r0]
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _08048220
- ldrb r0, [r5]
- lsls r0, 4
- adds r0, r3
- ldr r2, =gBankAttacker
- b _08048228
- .pool
-_08048220:
- ldrb r0, [r5]
- lsls r0, 4
- adds r0, r3
- ldr r2, =gBankTarget
-_08048228:
- ldrb r1, [r2]
- strb r1, [r0, 0xD]
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r2]
- strb r1, [r0, 0x11]
-_0804823A:
- mov r1, r12
- ldr r0, [r1]
- ldr r1, =0xffefffff
- ands r0, r1
- mov r1, r12
- str r0, [r1]
- ldrb r1, [r5]
- movs r0, 0x58
- muls r0, r1
- ldr r1, =gBattleMons + 0x28
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x2A
- movs r2, 0
- movs r3, 0x2
- bl EmitSetAttributes
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- b _0804829A
- .pool
-_08048274:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r1, =gActiveBank
- strb r0, [r1]
- ldr r2, =gSpecialStatuses
- ldrb r1, [r1]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, 0x4
- adds r1, r0, r2
- ldr r0, [r1]
- cmp r0, 0
- bne _0804829A
- ldr r0, =0x0000ffff
- str r0, [r1]
-_0804829A:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_080482A2:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk0C_datahpupdate
-
- thumb_func_start atk0D_critmessage
-atk0D_critmessage: @ 80482BC
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _080482F2
- ldr r0, =gCritMultiplier
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _080482EA
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _080482EA
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0xD9
- bl b_std_message
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x7]
-_080482EA:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_080482F2:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk0D_critmessage
-
- thumb_func_start atk0E_effectiveness_sound
-atk0E_effectiveness_sound: @ 8048310
- push {r4,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _080483D0
- ldr r4, =gActiveBank
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- strb r0, [r4]
- ldr r1, =gBattleMoveFlags
- ldrb r2, [r1]
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- bne _080483C8
- movs r0, 0xFE
- ands r0, r2
- cmp r0, 0x10
- beq _08048382
- cmp r0, 0x10
- bgt _0804835E
- cmp r0, 0x4
- beq _08048372
- cmp r0, 0x4
- bgt _08048358
- cmp r0, 0x2
- beq _0804836C
- b _08048382
- .pool
-_08048358:
- cmp r0, 0x8
- beq _080483C8
- b _08048382
-_0804835E:
- cmp r0, 0x40
- beq _08048382
- cmp r0, 0x40
- bgt _08048382
- cmp r0, 0x20
- beq _080483C8
- b _08048382
-_0804836C:
- movs r0, 0
- movs r1, 0xE
- b _08048376
-_08048372:
- movs r0, 0
- movs r1, 0xC
-_08048376:
- bl dp01_build_cmdbuf_x2B_aa_0
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _080483C8
-_08048382:
- ldrb r1, [r1]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08048392
- movs r0, 0
- movs r1, 0xE
- b _0804839E
-_08048392:
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080483B0
- movs r0, 0
- movs r1, 0xC
-_0804839E:
- bl dp01_build_cmdbuf_x2B_aa_0
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- b _080483C8
- .pool
-_080483B0:
- movs r0, 0x28
- ands r0, r1
- cmp r0, 0
- bne _080483C8
- movs r0, 0
- movs r1, 0xD
- bl dp01_build_cmdbuf_x2B_aa_0
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
-_080483C8:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_080483D0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk0E_effectiveness_sound
-
- thumb_func_start atk0F_resultmessage
-atk0F_resultmessage: @ 80483E0
- push {r4-r7,lr}
- movs r3, 0
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _080483EE
- b _08048580
-_080483EE:
- ldr r1, =gBattleMoveFlags
- ldrb r2, [r1]
- movs r4, 0x1
- adds r0, r4, 0
- ands r0, r2
- adds r6, r1, 0
- ldr r7, =gBattleCommunication
- cmp r0, 0
- beq _0804842C
- movs r0, 0x8
- ands r0, r2
- cmp r0, 0
- beq _0804840E
- ldrb r0, [r7, 0x6]
- cmp r0, 0x2
- bls _0804842C
-_0804840E:
- ldr r1, =gUnknown_085CC834
- ldrb r0, [r7, 0x6]
- lsls r0, 1
- adds r0, r1
- ldrh r3, [r0]
- strb r4, [r7, 0x7]
- b _0804856A
- .pool
-_0804842C:
- movs r0, 0x1
- strb r0, [r7, 0x7]
- ldrb r5, [r6]
- movs r0, 0xFE
- ands r0, r5
- cmp r0, 0x10
- beq _08048470
- cmp r0, 0x10
- bgt _08048452
- cmp r0, 0x4
- beq _0804846C
- cmp r0, 0x4
- bgt _0804844C
- cmp r0, 0x2
- beq _08048468
- b _080484B8
-_0804844C:
- cmp r0, 0x8
- beq _080484C4
- b _080484B8
-_08048452:
- cmp r0, 0x40
- beq _08048474
- cmp r0, 0x40
- bgt _08048462
- cmp r0, 0x20
- bne _08048460
- b _08048564
-_08048460:
- b _080484B8
-_08048462:
- cmp r0, 0x80
- beq _08048478
- b _080484B8
-_08048468:
- movs r3, 0xDE
- b _0804856E
-_0804846C:
- movs r3, 0xDD
- b _0804856E
-_08048470:
- movs r3, 0xDA
- b _0804856E
-_08048474:
- movs r3, 0x99
- b _0804856E
-_08048478:
- ldr r4, =gLastUsedItem
- ldr r2, =gBattleMons
- ldr r3, =gBankTarget
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x2E]
- strh r0, [r4]
- ldr r1, =gStringBank
- ldrb r0, [r3]
- strb r0, [r1]
- movs r0, 0x3F
- ands r0, r5
- strb r0, [r6]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB816
- b _0804857E
- .pool
-_080484B8:
- adds r2, r6, 0
- ldrb r5, [r2]
- movs r0, 0x8
- ands r0, r5
- cmp r0, 0
- beq _080484C8
-_080484C4:
- movs r3, 0x1B
- b _0804856E
-_080484C8:
- movs r0, 0x10
- ands r0, r5
- cmp r0, 0
- beq _080484F0
- movs r0, 0xEF
- ands r0, r5
- movs r1, 0xFD
- ands r0, r1
- movs r1, 0xFB
- ands r0, r1
- strb r0, [r2]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB1CE
- b _0804857E
- .pool
-_080484F0:
- movs r0, 0x40
- ands r0, r5
- cmp r0, 0
- beq _08048510
- movs r0, 0x3F
- ands r0, r5
- strb r0, [r2]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB1C7
- b _0804857E
- .pool
-_08048510:
- movs r0, 0x80
- ands r0, r5
- cmp r0, 0
- beq _08048558
- ldr r4, =gLastUsedItem
- ldr r2, =gBattleMons
- ldr r3, =gBankTarget
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x2E]
- strh r0, [r4]
- ldr r1, =gStringBank
- ldrb r0, [r3]
- strb r0, [r1]
- movs r0, 0x3F
- ands r0, r5
- strb r0, [r6]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB816
- b _0804857E
- .pool
-_08048558:
- movs r0, 0x20
- ands r0, r5
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08048568
-_08048564:
- movs r3, 0xE5
- b _0804856E
-_08048568:
- strb r0, [r7, 0x7]
-_0804856A:
- cmp r3, 0
- beq _08048578
-_0804856E:
- adds r0, r3, 0
- ldr r1, =gBankAttacker
- ldrb r1, [r1]
- bl b_std_message
-_08048578:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
-_0804857E:
- str r0, [r1]
-_08048580:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk0F_resultmessage
-
- thumb_func_start atk10_printstring
-atk10_printstring: @ 8048590
- push {r4,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _080485BA
- ldr r4, =gBattlescriptCurrInstr
- ldr r1, [r4]
- ldrb r0, [r1, 0x1]
- ldrb r1, [r1, 0x2]
- lsls r1, 8
- orrs r0, r1
- ldr r1, =gBankAttacker
- ldrb r1, [r1]
- bl b_std_message
- ldr r0, [r4]
- adds r0, 0x3
- str r0, [r4]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x7]
-_080485BA:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk10_printstring
-
- thumb_func_start atk11_printstring_playeronly
-atk11_printstring_playeronly: @ 80485D0
- push {r4,r5,lr}
- ldr r5, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r5]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0
- bl dp01_build_cmdbuf_x11_TODO
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- ldr r0, [r4]
- adds r0, 0x3
- str r0, [r4]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x7]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk11_printstring_playeronly
-
- thumb_func_start atk12_waitmessage
-atk12_waitmessage: @ 8048614
- push {r4-r6,lr}
- ldr r0, =gBattleExecBuffer
- ldr r4, [r0]
- cmp r4, 0
- bne _08048662
- ldr r6, =gBattleCommunication
- ldrb r0, [r6, 0x7]
- cmp r0, 0
- bne _0804863C
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x3
- str r0, [r1]
- b _08048662
- .pool
-_0804863C:
- ldr r5, =gBattlescriptCurrInstr
- ldr r2, [r5]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldr r3, =gUnknown_0202432C
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r1
- bcc _08048662
- movs r1, 0
- strh r4, [r3]
- adds r0, r2, 0x3
- str r0, [r5]
- strb r1, [r6, 0x7]
-_08048662:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk12_waitmessage
-
- thumb_func_start atk13_printfromtable
-atk13_printfromtable: @ 8048670
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _080486AE
- ldr r4, =gBattlescriptCurrInstr
- 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
- ldr r5, =gBattleCommunication
- ldrb r0, [r5, 0x5]
- lsls r0, 1
- adds r1, r0
- ldrh r0, [r1]
- ldr r1, =gBankAttacker
- ldrb r1, [r1]
- bl b_std_message
- ldr r0, [r4]
- adds r0, 0x5
- str r0, [r4]
- movs r0, 0x1
- strb r0, [r5, 0x7]
-_080486AE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk13_printfromtable
-
- thumb_func_start atk14_printfromtable_playeronly
-atk14_printfromtable_playeronly: @ 80486C4
- push {r4-r6,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804870E
- ldr r5, =gBattlescriptCurrInstr
- ldr r2, [r5]
- 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
- ldr r6, =gBattleCommunication
- ldrb r0, [r6, 0x5]
- lsls r0, 1
- adds r1, r0
- ldr r4, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r4]
- ldrh r1, [r1]
- movs r0, 0
- bl dp01_build_cmdbuf_x11_TODO
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x5
- str r0, [r5]
- movs r0, 0x1
- strb r0, [r6, 0x7]
-_0804870E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk14_printfromtable_playeronly
-
- thumb_func_start sub_8048728
-sub_8048728: @ 8048728
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r0, =gNoOfAllBanks
- ldrb r3, [r0]
- cmp r1, r3
- bge _0804874E
- ldr r4, =gTurnOrder
- ldrb r0, [r4]
- cmp r0, r2
- beq _0804874E
-_08048740:
- adds r1, 0x1
- cmp r1, r3
- bge _0804874E
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, r2
- bne _08048740
-_0804874E:
- lsls r0, r1, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8048728
-
- thumb_func_start SetMoveEffect
-SetMoveEffect: @ 8048760
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- movs r0, 0
- mov r10, r0
- movs r7, 0
- movs r1, 0x1
- str r1, [sp, 0x4]
- ldr r1, =gBattleCommunication
- ldrb r3, [r1, 0x3]
- movs r0, 0x40
- ands r0, r3
- cmp r0, 0
- beq _080487B8
- ldr r2, =gEffectBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r2]
- movs r0, 0xBF
- ands r0, r3
- adds r3, r1, 0
- strb r0, [r3, 0x3]
- movs r7, 0x40
- ldr r1, =gBattleScripting
- ldr r0, =gBankTarget
- b _080487C4
- .pool
-_080487B8:
- ldr r2, =gEffectBank
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r1, =gBattleScripting
- ldr r0, =gBankAttacker
-_080487C4:
- ldrb r0, [r0]
- strb r0, [r1, 0x17]
- mov r9, r2
- ldr r2, =gBattleMons
- mov r4, r9
- ldrb r1, [r4]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x13
- bne _08048828
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 6
- ands r0, r1
- cmp r0, 0
- bne _08048828
- cmp r5, 0
- bne _08048828
- ldr r1, =gBattleCommunication
- ldrb r0, [r1, 0x3]
- cmp r0, 0x9
- bhi _08048828
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r2, =gBattleCommunication
- strb r5, [r2, 0x3]
- bl _080499B8
- .pool
-_08048828:
- mov r3, r9
- ldrb r0, [r3]
- bl GetBankIdentity
- ldr r2, =gSideAffecting
- movs r1, 0x1
- ands r1, r0
- lsls r1, 1
- adds r1, r2
- ldrh r1, [r1]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08048880
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 6
- ands r0, r1
- cmp r0, 0
- bne _08048880
- cmp r5, 0
- bne _08048880
- ldr r0, =gBattleCommunication
- ldrb r1, [r0, 0x3]
- cmp r1, 0x7
- bhi _08048880
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r4, =gBattleCommunication
- strb r5, [r4, 0x3]
- bl _080499B8
- .pool
-_08048880:
- ldr r3, =gBattleMons
- ldr r2, =gEffectBank
- ldrb r1, [r2]
- movs r0, 0x58
- muls r0, r1
- adds r0, r3
- ldrh r4, [r0, 0x28]
- mov r9, r2
- mov r8, r3
- cmp r4, 0
- bne _080488C4
- ldr r1, =gBattleCommunication
- ldrb r0, [r1, 0x3]
- cmp r0, 0xB
- beq _080488C4
- cmp r0, 0x1F
- beq _080488C4
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r2, =gBattleCommunication
- strb r4, [r2, 0x3]
- bl _080499B8
- .pool
-_080488C4:
- mov r3, r9
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- mov r1, r8
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- beq _080488FC
- cmp r7, 0x40
- beq _080488FC
- ldr r0, =gBattlescriptCurrInstr
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- movs r0, 0
- ldr r4, =gBattleCommunication
- strb r0, [r4, 0x3]
- bl _080499B8
- .pool
-_080488FC:
- ldr r1, =gBattleCommunication
- ldrb r0, [r1, 0x3]
- cmp r0, 0x6
- bls _08048906
- b _08048F40
-_08048906:
- ldr r1, =gStatusFlagsForMoveEffects
- ldr r2, =gBattleCommunication
- ldrb r0, [r2, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0x10
- bne _08048918
- b _08048AFC
-_08048918:
- cmp r0, 0x10
- bhi _08048930
- cmp r0, 0x7
- beq _0804894A
- cmp r0, 0x8
- beq _08048A00
- b _08048DF4
- .pool
-_08048930:
- cmp r0, 0x40
- bne _08048936
- b _08048C84
-_08048936:
- cmp r0, 0x40
- bhi _08048942
- cmp r0, 0x20
- bne _08048940
- b _08048BEA
-_08048940:
- b _08048DF4
-_08048942:
- cmp r0, 0x80
- bne _08048948
- b _08048D02
-_08048948:
- b _08048DF4
-_0804894A:
- mov r3, r9
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- add r0, r8
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x2B
- beq _080489AC
- ldr r0, =gActiveBank
- movs r1, 0
- strb r1, [r0]
- ldr r1, =gNoOfAllBanks
- ldrb r3, [r1]
- adds r7, r0, 0
- mov r12, r1
- cmp r3, 0
- beq _080489B8
- mov r4, r8
- ldr r0, [r4, 0x50]
- movs r1, 0x70
- ands r0, r1
- cmp r0, 0
- bne _080489B8
- adds r1, r7, 0
- mov r6, r8
- adds r6, 0x50
- movs r5, 0x58
- movs r4, 0x70
-_08048984:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r3
- bcs _080489B8
- ldrb r0, [r7]
- muls r0, r5
- adds r0, r6
- ldr r0, [r0]
- ands r0, r4
- cmp r0, 0
- beq _08048984
- b _080489B8
- .pool
-_080489AC:
- ldr r0, =gActiveBank
- ldr r2, =gNoOfAllBanks
- ldrb r1, [r2]
- strb r1, [r0]
- adds r7, r0, 0
- mov r12, r2
-_080489B8:
- mov r0, r9
- ldrb r2, [r0]
- movs r0, 0x58
- adds r1, r2, 0
- muls r1, r0
- mov r0, r8
- adds r0, 0x4C
- adds r0, r1, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _080489D0
- b _08048DF4
-_080489D0:
- ldrb r0, [r7]
- mov r3, r12
- ldrb r3, [r3]
- cmp r0, r3
- beq _080489DC
- b _08048DF4
-_080489DC:
- mov r4, r8
- adds r0, r1, r4
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x48
- bne _080489EA
- b _08048DF4
-_080489EA:
- cmp r0, 0xF
- bne _080489F0
- b _08048DF4
-_080489F0:
- adds r0, r2, 0
- bl CancelMultiTurnMoves
- b _08048DE4
- .pool
-_08048A00:
- mov r2, r9
- ldrb r1, [r2]
- movs r0, 0x58
- muls r0, r1
- add r0, r8
- adds r0, 0x20
- ldrb r1, [r0]
- cmp r1, 0x11
- bne _08048A70
- cmp r5, 0x1
- beq _08048A1A
- cmp r6, 0x80
- bne _08048A70
-_08048A1A:
- ldr r0, =gLastUsedAbility
- strb r1, [r0]
- mov r3, r9
- ldrb r0, [r3]
- movs r1, 0x11
- bl RecordAbilityBattle
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB5E9
- str r0, [r4]
- ldr r2, =gHitMarker
- ldr r1, [r2]
- movs r0, 0x80
- lsls r0, 6
- ands r0, r1
- cmp r0, 0
- bne _08048A46
- b _08048D20
-_08048A46:
- movs r0, 0x1
- ldr r4, =gBattleCommunication
- strb r0, [r4, 0x5]
-_08048A4C:
- ldr r0, =0xffffdfff
- ands r1, r0
- str r1, [r2]
- bl _080499B2
- .pool
-_08048A70:
- mov r2, r9
- ldrb r0, [r2]
- movs r1, 0x58
- muls r0, r1
- add r0, r8
- adds r1, r0, 0
- adds r1, 0x21
- ldrb r1, [r1]
- cmp r1, 0x3
- beq _08048A94
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _08048A94
- cmp r1, 0x8
- beq _08048A94
- cmp r0, 0x8
- bne _08048AAE
-_08048A94:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 6
- ands r0, r1
- cmp r0, 0
- beq _08048AAE
- cmp r5, 0x1
- bne _08048AA8
- b _08048D66
-_08048AA8:
- cmp r6, 0x80
- bne _08048AAE
- b _08048D66
-_08048AAE:
- mov r3, r9
- ldrb r1, [r3]
- movs r0, 0x58
- muls r1, r0
- mov r4, r8
- adds r3, r1, r4
- adds r0, r3, 0
- adds r0, 0x21
- ldrb r4, [r0]
- cmp r4, 0x3
- bne _08048AC6
- b _08048DF4
-_08048AC6:
- adds r0, 0x1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _08048AD0
- b _08048DF4
-_08048AD0:
- cmp r4, 0x8
- bne _08048AD6
- b _08048DF4
-_08048AD6:
- cmp r0, 0x8
- bne _08048ADC
- b _08048DF4
-_08048ADC:
- mov r0, r8
- adds r0, 0x4C
- adds r0, r1, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _08048AEA
- b _08048DF4
-_08048AEA:
- adds r0, r3, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x11
- bne _08048AF6
- b _08048DF4
-_08048AF6:
- b _08048DE4
- .pool
-_08048AFC:
- mov r2, r9
- ldrb r1, [r2]
- movs r0, 0x58
- muls r0, r1
- add r0, r8
- adds r0, 0x20
- ldrb r1, [r0]
- cmp r1, 0x29
- bne _08048B54
- cmp r5, 0x1
- beq _08048B16
- cmp r6, 0x80
- bne _08048B54
-_08048B16:
- ldr r0, =gLastUsedAbility
- strb r1, [r0]
- mov r3, r9
- ldrb r0, [r3]
- movs r1, 0x29
- bl RecordAbilityBattle
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB5D1
- str r0, [r4]
- ldr r2, =gHitMarker
- ldr r1, [r2]
- movs r0, 0x80
- lsls r0, 6
- ands r0, r1
- cmp r0, 0
- beq _08048B42
- b _08048A46
-_08048B42:
- b _08048D20
- .pool
-_08048B54:
- mov r2, r9
- ldrb r1, [r2]
- movs r0, 0x58
- muls r0, r1
- mov r3, r8
- adds r1, r0, r3
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0xA
- beq _08048B74
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0xA
- bne _08048BA4
-_08048B74:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 6
- ands r0, r1
- cmp r0, 0
- beq _08048BA4
- cmp r5, 0x1
- beq _08048B8A
- cmp r6, 0x80
- bne _08048BA4
-_08048B8A:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB5D1
- b _08048D72
- .pool
-_08048BA4:
- mov r4, r9
- ldrb r0, [r4]
- movs r1, 0x58
- adds r2, r0, 0
- muls r2, r1
- mov r0, r8
- adds r1, r2, r0
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0xA
- bne _08048BBE
- b _08048DF4
-_08048BBE:
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0xA
- bne _08048BCA
- b _08048DF4
-_08048BCA:
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x29
- bne _08048BD6
- b _08048DF4
-_08048BD6:
- mov r0, r8
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _08048BE4
- b _08048DF4
-_08048BE4:
- movs r1, 0x1
- mov r10, r1
- b _08048DF4
-_08048BEA:
- movs r0, 0
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _08048C26
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _08048C26
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- beq _08048C26
- movs r2, 0
- str r2, [sp, 0x4]
-_08048C26:
- ldr r4, =gBattleMons
- ldr r0, =gEffectBank
- ldrb r3, [r0]
- movs r0, 0x58
- adds r2, r3, 0
- muls r2, r0
- adds r1, r2, r4
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0xF
- bne _08048C40
- b _08048DF4
-_08048C40:
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0xF
- bne _08048C4C
- b _08048DF4
-_08048C4C:
- adds r0, r4, 0
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _08048C5A
- b _08048DF4
-_08048C5A:
- ldr r4, [sp, 0x4]
- cmp r4, 0
- bne _08048C62
- b _08048DF4
-_08048C62:
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x28
- bne _08048C6E
- b _08048DF4
-_08048C6E:
- adds r0, r3, 0
- bl CancelMultiTurnMoves
- b _08048DE4
- .pool
-_08048C84:
- mov r2, r9
- ldrb r1, [r2]
- movs r0, 0x58
- muls r1, r0
- mov r3, r8
- adds r0, r1, r3
- adds r0, 0x20
- ldrb r2, [r0]
- cmp r2, 0x7
- bne _08048CF4
- cmp r5, 0x1
- beq _08048CA2
- cmp r6, 0x80
- beq _08048CA2
- b _08048DF4
-_08048CA2:
- ldr r0, =gLastUsedAbility
- strb r2, [r0]
- mov r4, r9
- ldrb r0, [r4]
- movs r1, 0x7
- bl RecordAbilityBattle
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB5DD
- str r0, [r4]
- ldr r2, =gHitMarker
- ldr r1, [r2]
- movs r0, 0x80
- lsls r0, 6
- ands r0, r1
- cmp r0, 0
- beq _08048CE8
- movs r0, 0x1
- ldr r3, =gBattleCommunication
- strb r0, [r3, 0x5]
- b _08048A4C
- .pool
-_08048CE8:
- ldr r4, =gBattleCommunication
- strb r0, [r4, 0x5]
- bl _080499B2
- .pool
-_08048CF4:
- mov r0, r8
- adds r0, 0x4C
- adds r0, r1, r0
- ldr r0, [r0]
- cmp r0, 0
- bne _08048DF4
- b _08048DE4
-_08048D02:
- mov r2, r9
- ldrb r1, [r2]
- movs r0, 0x58
- muls r0, r1
- add r0, r8
- adds r0, 0x20
- ldrb r1, [r0]
- cmp r1, 0x11
- bne _08048D2C
- cmp r5, 0x1
- bne _08048D1A
- b _08048A1A
-_08048D1A:
- cmp r6, 0x80
- bne _08048D2C
- b _08048A1A
-_08048D20:
- ldr r1, =gBattleCommunication
- strb r0, [r1, 0x5]
- bl _080499B2
- .pool
-_08048D2C:
- mov r2, r9
- ldrb r0, [r2]
- movs r1, 0x58
- muls r0, r1
- add r0, r8
- adds r1, r0, 0
- adds r1, 0x21
- ldrb r1, [r1]
- cmp r1, 0x3
- beq _08048D50
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _08048D50
- cmp r1, 0x8
- beq _08048D50
- cmp r0, 0x8
- bne _08048D94
-_08048D50:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 6
- ands r0, r1
- cmp r0, 0
- beq _08048D94
- cmp r5, 0x1
- beq _08048D66
- cmp r6, 0x80
- bne _08048D94
-_08048D66:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB5E9
-_08048D72:
- str r0, [r4]
- ldr r1, =gBattleCommunication
- movs r2, 0
- movs r0, 0x2
- strb r0, [r1, 0x5]
- strb r2, [r1, 0x3]
- bl _080499B8
- .pool
-_08048D94:
- mov r3, r9
- ldrb r0, [r3]
- movs r6, 0x58
- muls r0, r6
- mov r2, r8
- adds r2, 0x4C
- adds r5, r0, r2
- ldr r4, [r5]
- cmp r4, 0
- bne _08048DF4
- mov r3, r8
- adds r1, r0, r3
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r3, [r0]
- cmp r3, 0x3
- beq _08048DEA
- adds r0, 0x1
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _08048DEA
- cmp r3, 0x8
- beq _08048DEA
- cmp r0, 0x8
- beq _08048DEA
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x11
- beq _08048DF4
- mov r4, r9
- ldrb r0, [r4]
- adds r1, r0, 0
- muls r1, r6
- adds r1, r2
- ldr r0, [r1]
- movs r2, 0x9
- negs r2, r2
- ands r0, r2
- str r0, [r1]
-_08048DE4:
- movs r0, 0x1
- mov r10, r0
- b _08048DF4
-_08048DEA:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0]
-_08048DF4:
- mov r1, r10
- cmp r1, 0x1
- beq _08048DFC
- b _08048F1C
-_08048DFC:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r1, =gStatusFlagsForMoveEffects
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r3, [r0]
- cmp r3, 0x7
- bne _08048E50
- bl Random
- ldr r2, =gBattleMons
- ldr r1, =gEffectBank
- ldrb r3, [r1]
- movs r1, 0x58
- muls r3, r1
- adds r2, 0x4C
- adds r3, r2
- movs r1, 0x3
- ands r1, r0
- adds r1, 0x2
- ldr r0, [r3]
- orrs r0, r1
- str r0, [r3]
- b _08048E64
- .pool
-_08048E50:
- ldr r2, =gBattleMons
- ldr r0, =gEffectBank
- ldrb r1, [r0]
- movs r0, 0x58
- muls r1, r0
- adds r2, 0x4C
- adds r1, r2
- ldr r0, [r1]
- orrs r0, r3
- str r0, [r1]
-_08048E64:
- ldr r2, =gBattlescriptCurrInstr
- ldr r1, =gMoveEffectBS_Ptrs
- ldr r5, =gBattleCommunication
- ldrb r0, [r5, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
- ldr r4, =gActiveBank
- ldr r1, =gEffectBank
- ldrb r0, [r1]
- strb r0, [r4]
- ldrb r1, [r1]
- movs r0, 0x58
- muls r0, r1
- ldr r1, =gBattleMons + 0x4C
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x28
- movs r2, 0
- movs r3, 0x4
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r2, =gHitMarker
- ldr r1, [r2]
- movs r0, 0x80
- lsls r0, 6
- ands r0, r1
- cmp r0, 0
- beq _08048ED8
- movs r0, 0x1
- strb r0, [r5, 0x5]
- ldr r0, =0xffffdfff
- ands r1, r0
- str r1, [r2]
- b _08048EDA
- .pool
-_08048ED8:
- strb r0, [r5, 0x5]
-_08048EDA:
- ldr r0, =gBattleCommunication
- ldrb r2, [r0, 0x3]
- cmp r2, 0x2
- beq _08048EF2
- cmp r2, 0x6
- beq _08048EF2
- cmp r2, 0x5
- beq _08048EF2
- cmp r2, 0x3
- beq _08048EF2
- bl _080499B8
-_08048EF2:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB2
- ldr r2, =gBattleCommunication
- ldrb r1, [r2, 0x3]
- strb r1, [r0]
- ldr r2, =gHitMarker
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 7
- orrs r0, r1
- str r0, [r2]
- bl _080499B8
- .pool
-_08048F1C:
- mov r3, r10
- cmp r3, 0
- beq _08048F26
- bl _080499B8
-_08048F26:
- ldr r0, =gBattleCommunication
- strb r3, [r0, 0x3]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bl _080499B8
- .pool
-_08048F40:
- mov r4, r9
- ldrb r1, [r4]
- movs r0, 0x58
- muls r1, r0
- mov r0, r8
- adds r0, 0x50
- adds r1, r0
- ldr r2, =gStatusFlagsForMoveEffects
- ldr r0, =gBattleCommunication
- ldrb r3, [r0, 0x3]
- lsls r0, r3, 2
- adds r0, r2
- ldr r1, [r1]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08048F66
- bl _08049994
-_08048F66:
- subs r0, r3, 0x7
- cmp r0, 0x34
- bls _08048F70
- bl _080499B2
-_08048F70:
- lsls r0, 2
- ldr r1, =_08048F88
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08048F88:
- .4byte _0804905C
- .4byte _080490D0
- .4byte _08049244
- .4byte _0804915C
- .4byte _080491D8
- .4byte _0804927C
- .4byte _080492C4
- .4byte _08049390
- .4byte _080493D4
- .4byte _080493D4
- .4byte _080493D4
- .4byte _080493D4
- .4byte _080493D4
- .4byte _080493D4
- .4byte _080493D4
- .4byte _0804941C
- .4byte _0804941C
- .4byte _0804941C
- .4byte _0804941C
- .4byte _0804941C
- .4byte _0804941C
- .4byte _0804941C
- .4byte _080494FC
- .4byte _08049544
- .4byte _08049564
- .4byte _08049720
- .4byte _0804975C
- .4byte _08049778
- .4byte _08049790
- .4byte _080497A8
- .4byte _08049808
- .4byte _08049820
- .4byte _08049468
- .4byte _08049468
- .4byte _08049468
- .4byte _08049468
- .4byte _08049468
- .4byte _08049468
- .4byte _08049468
- .4byte _080494B0
- .4byte _080494B0
- .4byte _080494B0
- .4byte _080494B0
- .4byte _080494B0
- .4byte _080494B0
- .4byte _080494B0
- .4byte _08049864
- .4byte _080498C0
- .4byte _080499B2
- .4byte _080499B2
- .4byte _080499B2
- .4byte _080499B2
- .4byte _080499A4
-_0804905C:
- mov r1, r9
- ldrb r0, [r1]
- movs r5, 0x58
- adds r1, r0, 0
- muls r1, r5
- mov r2, r8
- adds r0, r1, r2
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x14
- bne _08049076
- bl _08049994
-_08049076:
- mov r4, r8
- adds r4, 0x50
- adds r0, r1, r4
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- beq _0804908A
- bl _08049994
-_0804908A:
- bl Random
- mov r3, r9
- ldrb r1, [r3]
- adds r2, r1, 0
- muls r2, r5
- adds r2, r4
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r1, 16
- adds r1, 0x2
- ldr r0, [r2]
- orrs r0, r1
- str r0, [r2]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r1, =gMoveEffectBS_Ptrs
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _080499B0
- .pool
-_080490D0:
- mov r4, r9
- ldrb r2, [r4]
- movs r4, 0x58
- adds r0, r2, 0
- muls r0, r4
- add r0, r8
- adds r0, 0x20
- ldrb r1, [r0]
- cmp r1, 0x27
- bne _08049114
- cmp r5, 0x1
- beq _080490F0
- cmp r6, 0x80
- beq _080490F0
- bl _08049994
-_080490F0:
- ldr r0, =gLastUsedAbility
- strb r1, [r0]
- mov r1, r9
- ldrb r0, [r1]
- movs r1, 0x27
- bl RecordAbilityBattle
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB603
- str r0, [r1]
- bl _080499B2
- .pool
-_08049114:
- adds r0, r2, 0
- bl sub_8048728
- ldr r1, =gUnknown_02024082
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bhi _0804912A
- bl _08049994
-_0804912A:
- mov r2, r9
- ldrb r0, [r2]
- adds r2, r0, 0
- muls r2, r4
- mov r0, r8
- adds r0, 0x50
- adds r2, r0
- ldr r1, =gStatusFlagsForMoveEffects
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r2]
- ldr r0, [r0]
- orrs r1, r0
- str r1, [r2]
- bl _08049994
- .pool
-_0804915C:
- mov r3, r9
- ldrb r0, [r3]
- movs r5, 0x58
- muls r0, r5
- mov r4, r8
- adds r4, 0x50
- adds r2, r0, r4
- ldr r1, [r2]
- movs r0, 0x70
- ands r0, r1
- cmp r0, 0
- beq _08049178
- bl _08049994
-_08049178:
- movs r0, 0x80
- lsls r0, 5
- orrs r1, r0
- str r1, [r2]
- ldr r1, =gUnknown_02024268
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r1
- ldr r1, =gCurrentMove
- ldrh r1, [r1]
- strh r1, [r0]
- bl Random
- mov r2, r9
- ldrb r1, [r2]
- adds r2, r1, 0
- muls r2, r5
- adds r2, r4
- movs r1, 0x3
- ands r1, r0
- adds r1, 0x2
- lsls r1, 4
- ldr r0, [r2]
- orrs r0, r1
- str r0, [r2]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r1, =gMoveEffectBS_Ptrs
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _080499B0
- .pool
-_080491D8:
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- bl GetBankIdentity
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- bne _08049210
- ldr r4, =gUnknown_0202432E
- ldrh r3, [r4]
- ldr r2, =gBattleMons
- ldrb r1, [r5]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x2A
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- adds r0, r3, r0
- strh r0, [r4]
- lsls r0, 16
- lsrs r0, 16
- cmp r3, r0
- bls _08049210
- ldr r3, =0x0000ffff
- adds r0, r3, 0
- strh r0, [r4]
-_08049210:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r1, =gMoveEffectBS_Ptrs
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- b _080499B0
- .pool
-_08049244:
- mov r4, r9
- ldrb r1, [r4]
- movs r0, 0x58
- muls r0, r1
- mov r1, r8
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0
- beq _0804925A
- b _08049994
-_0804925A:
- bl Random
- ldr r4, =gBattleCommunication
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- adds r0, 0x3
- strb r0, [r4, 0x3]
- movs r0, 0
- movs r1, 0
- bl SetMoveEffect
- b _080499B2
- .pool
-_0804927C:
- mov r0, r9
- ldrb r1, [r0]
- movs r0, 0x58
- adds r2, r1, 0
- muls r2, r0
- mov r0, r8
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 5
- orrs r0, r1
- str r0, [r2]
- ldr r1, =gUnknown_02024268
- mov r2, r9
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r1
- ldr r1, =gCurrentMove
- ldrh r1, [r1]
- strh r1, [r0]
- ldr r0, =gProtectStructs
- ldrb r1, [r2]
- lsls r1, 4
- adds r1, r0
- ldrb r0, [r1, 0x1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1, 0x1]
- b _08049994
- .pool
-_080492C4:
- mov r3, r9
- ldrb r0, [r3]
- movs r6, 0x58
- muls r0, r6
- mov r4, r8
- adds r4, 0x50
- adds r0, r4
- ldr r5, [r0]
- movs r0, 0xE0
- lsls r0, 8
- ands r5, r0
- cmp r5, 0
- beq _080492E0
- b _08049994
-_080492E0:
- bl Random
- mov r2, r9
- ldrb r1, [r2]
- adds r2, r1, 0
- muls r2, r6
- adds r2, r4
- movs r1, 0x3
- ands r1, r0
- adds r1, 0x3
- lsls r1, 13
- ldr r0, [r2]
- orrs r0, r1
- str r0, [r2]
- mov r3, r9
- ldrb r1, [r3]
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- lsls r1, 1
- adds r1, r0
- ldr r6, =gCurrentMove
- ldrh r0, [r6]
- strb r0, [r1, 0x4]
- ldrb r1, [r3]
- ldr r0, [r2]
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r6]
- lsrs r0, 8
- strb r0, [r1, 0x5]
- ldrb r1, [r3]
- ldr r0, [r2]
- adds r1, r0
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r1, 0x14]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r1, =gMoveEffectBS_Ptrs
- ldr r2, =gBattleCommunication
- ldrb r0, [r2, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- str r0, [r4]
- strb r5, [r2, 0x5]
- ldr r3, =gUnknown_085CC982
- ldrh r0, [r3]
- ldrh r4, [r6]
- cmp r0, r4
- bne _0804934E
- b _080499B2
-_0804934E:
- adds r1, r2, 0
- adds r2, r6, 0
-_08049352:
- ldrb r0, [r1, 0x5]
- adds r0, 0x1
- strb r0, [r1, 0x5]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _08049362
- b _080499B2
-_08049362:
- ldrb r0, [r1, 0x5]
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- ldrh r4, [r2]
- cmp r0, r4
- bne _08049352
- b _080499B2
- .pool
-_08049390:
- ldr r1, =gBattleMoveDamage
- ldr r0, =gUnknown_020241F4
- ldr r0, [r0]
- cmp r0, 0
- bge _0804939C
- adds r0, 0x3
-_0804939C:
- asrs r0, 2
- str r0, [r1]
- cmp r0, 0
- bne _080493A8
- movs r0, 0x1
- str r0, [r1]
-_080493A8:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r1, =gMoveEffectBS_Ptrs
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- b _080499B0
- .pool
-_080493D4:
- ldr r4, =gBattleCommunication
- ldrb r1, [r4, 0x3]
- adds r1, 0xF2
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x10
- adds r2, r7, 0
- movs r3, 0
- bl sub_8050A1C
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0
- beq _080493F2
- b _08049994
-_080493F2:
- ldr r2, =gBattleScripting
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r2, 0x10]
- strb r3, [r2, 0x11]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082D8CD4
- b _080499B0
- .pool
-_0804941C:
- movs r0, 0x70
- negs r0, r0
- ldr r4, =gBattleCommunication
- ldrb r1, [r4, 0x3]
- adds r1, 0xEB
- lsls r1, 24
- lsrs r1, 24
- adds r2, r7, 0
- movs r3, 0
- bl sub_8050A1C
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0
- beq _0804943C
- b _08049994
-_0804943C:
- ldr r2, =gBattleScripting
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r2, 0x10]
- strb r3, [r2, 0x11]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082D8D65
- b _080499B0
- .pool
-_08049468:
- ldr r4, =gBattleCommunication
- ldrb r1, [r4, 0x3]
- adds r1, 0xDA
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x20
- adds r2, r7, 0
- movs r3, 0
- bl sub_8050A1C
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0
- beq _08049486
- b _08049994
-_08049486:
- ldr r2, =gBattleScripting
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r2, 0x10]
- strb r3, [r2, 0x11]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082D8CD4
- b _080499B0
- .pool
-_080494B0:
- movs r0, 0x60
- negs r0, r0
- ldr r4, =gBattleCommunication
- ldrb r1, [r4, 0x3]
- adds r1, 0xD3
- lsls r1, 24
- lsrs r1, 24
- adds r2, r7, 0
- movs r3, 0
- bl sub_8050A1C
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0
- beq _080494D0
- b _08049994
-_080494D0:
- ldr r2, =gBattleScripting
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r2, 0x10]
- strb r3, [r2, 0x11]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082D8D65
- b _080499B0
- .pool
-_080494FC:
- mov r0, r9
- ldrb r1, [r0]
- movs r0, 0x58
- adds r2, r1, 0
- muls r2, r0
- mov r0, r8
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 15
- orrs r0, r1
- str r0, [r2]
- ldr r2, =gDisableStructs
- mov r3, r9
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x2
- strb r1, [r0, 0x19]
- ldr r1, =gUnknown_02024268
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r1
- ldr r1, =gCurrentMove
- ldrh r1, [r1]
- strh r1, [r0]
- b _08049994
- .pool
-_08049544:
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- adds r2, r1, 0
- muls r2, r0
- mov r0, r8
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 16
-_0804955A:
- orrs r0, r1
- str r0, [r2]
- b _08049994
- .pool
-_08049564:
- ldr r5, =gBattleTypeFlags
- ldr r0, [r5]
- movs r1, 0x80
- lsls r1, 19
- ands r0, r1
- cmp r0, 0
- beq _08049574
- b _08049994
-_08049574:
- ldr r6, =gBankAttacker
- ldrb r0, [r6]
- bl GetBankSide
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r6]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080495A8
- ldr r0, [r5]
- ldr r1, =0x0a3f0902
- ands r0, r1
- cmp r0, 0
- bne _080495D4
- b _08049994
- .pool
-_080495A8:
- ldr r0, [r5]
- ldr r1, =0x0a3f0902
- ands r0, r1
- cmp r0, 0
- bne _080495D4
- ldr r0, =gWishFutureKnock
- adds r0, 0x29
- adds r0, r4, r0
- ldrb r1, [r0]
- ldr r3, =gBitTable
- ldr r2, =gBattlePartyID
- ldrb r0, [r6]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _080495D4
- b _08049994
-_080495D4:
- ldr r2, =gBattleMons
- ldr r1, =gBankTarget
- ldrb r0, [r1]
- movs r5, 0x58
- muls r0, r5
- adds r4, r0, r2
- ldrh r0, [r4, 0x2E]
- adds r7, r1, 0
- mov r8, r2
- cmp r0, 0
- beq _0804963C
- adds r0, r4, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x3C
- bne _0804963C
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB682
- str r0, [r1]
- ldr r1, =gLastUsedAbility
- ldrb r0, [r7]
- muls r0, r5
- add r0, r8
- adds r0, 0x20
- ldrb r0, [r0]
- strb r0, [r1]
- ldrb r0, [r7]
- ldrb r1, [r1]
- bl RecordAbilityBattle
- b _080499B2
- .pool
-_0804963C:
- ldr r4, =gBankAttacker
- mov r10, r4
- ldrb r2, [r4]
- movs r0, 0x58
- mov r9, r0
- mov r0, r9
- muls r0, r2
- add r0, r8
- ldrh r4, [r0, 0x2E]
- cmp r4, 0
- beq _08049654
- b _08049994
-_08049654:
- ldrb r0, [r7]
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
- add r0, r8
- ldrh r3, [r0, 0x2E]
- adds r1, r3, 0
- cmp r1, 0xAF
- bne _08049668
- b _08049994
-_08049668:
- adds r0, r3, 0
- subs r0, 0x79
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xB
- bhi _08049676
- b _08049994
-_08049676:
- cmp r1, 0
- bne _0804967C
- b _08049994
-_0804967C:
- ldr r5, =gBattleStruct
- lsls r0, r2, 1
- adds r0, 0xD0
- ldr r1, [r5]
- adds r1, r0
- ldr r2, =gLastUsedItem
- strh r3, [r1]
- strh r3, [r2]
- ldrb r0, [r7]
- mov r3, r9
- muls r3, r0
- adds r0, r3, 0
- add r0, r8
- movs r6, 0
- strh r4, [r0, 0x2E]
- ldr r4, =gActiveBank
- mov r1, r10
- ldrb r0, [r1]
- strb r0, [r4]
- str r2, [sp]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl EmitSetAttributes
- mov r2, r10
- ldrb r0, [r2]
- bl MarkBufferBankForExecution
- ldrb r0, [r7]
- strb r0, [r4]
- ldrb r0, [r7]
- mov r3, r9
- muls r3, r0
- adds r0, r3, 0
- mov r1, r8
- adds r1, 0x2E
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl EmitSetAttributes
- ldrb r0, [r7]
- bl MarkBufferBankForExecution
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB422
- str r0, [r4]
- ldrb r0, [r7]
- ldr r1, [r5]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC8
- strb r6, [r0]
- ldrb r0, [r7]
- ldr r1, [r5]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC9
- strb r6, [r0]
- b _080499B2
- .pool
-_08049720:
- ldr r3, =gBankTarget
- ldrb r1, [r3]
- movs r0, 0x58
- adds r2, r1, 0
- muls r2, r0
- mov r0, r8
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 19
- orrs r0, r1
- str r0, [r2]
- ldr r2, =gDisableStructs
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, =gBankAttacker
- ldrb r1, [r1]
- strb r1, [r0, 0x14]
- b _08049994
- .pool
-_0804975C:
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- adds r2, r1, 0
- muls r2, r0
- mov r0, r8
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 20
- b _0804955A
- .pool
-_08049778:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DAF27
- b _080499B0
- .pool
-_08049790:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DAFC3
- b _080499B0
- .pool
-_080497A8:
- ldr r6, =gBankTarget
- ldrb r0, [r6]
- movs r2, 0x58
- muls r0, r2
- mov r1, r8
- adds r1, 0x4C
- adds r5, r0, r1
- ldr r4, [r5]
- movs r0, 0x40
- ands r0, r4
- cmp r0, 0
- bne _080497C2
- b _08049994
-_080497C2:
- movs r0, 0x41
- negs r0, r0
- ands r4, r0
- str r4, [r5]
- ldr r4, =gActiveBank
- ldrb r0, [r6]
- strb r0, [r4]
- ldrb r0, [r4]
- muls r0, r2
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x28
- movs r2, 0
- movs r3, 0x4
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB361
- b _080499B0
- .pool
-_08049808:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB117
- b _080499B0
- .pool
-_08049820:
- ldr r4, =gBattleMoveDamage
- ldr r0, =gUnknown_020241F4
- ldr r0, [r0]
- movs r1, 0x3
- bl __divsi3
- str r0, [r4]
- cmp r0, 0
- bne _08049836
- movs r0, 0x1
- str r0, [r4]
-_08049836:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r1, =gMoveEffectBS_Ptrs
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- b _080499B0
- .pool
-_08049864:
- mov r4, r9
- ldrb r0, [r4]
- movs r5, 0x58
- muls r0, r5
- mov r4, r8
- adds r4, 0x50
- adds r2, r0, r4
- ldr r1, [r2]
- movs r0, 0xC0
- lsls r0, 4
- ands r0, r1
- cmp r0, 0
- beq _08049880
- b _08049994
-_08049880:
- movs r0, 0x80
- lsls r0, 5
- orrs r1, r0
- str r1, [r2]
- ldr r1, =gUnknown_02024268
- mov r2, r9
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r1
- ldr r1, =gCurrentMove
- ldrh r1, [r1]
- strh r1, [r0]
- bl Random
- mov r3, r9
- ldrb r1, [r3]
- adds r2, r1, 0
- muls r2, r5
- adds r2, r4
- movs r1, 0x1
- ands r1, r0
- adds r1, 0x2
- lsls r1, 10
- ldr r0, [r2]
- orrs r0, r1
- str r0, [r2]
- b _080499B2
- .pool
-_080498C0:
- mov r4, r9
- ldrb r3, [r4]
- movs r5, 0x58
- adds r0, r3, 0
- muls r0, r5
- mov r2, r8
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r2, [r0]
- cmp r2, 0x3C
- bne _08049900
- ldrh r0, [r1, 0x2E]
- cmp r0, 0
- beq _08049994
- ldr r0, =gLastUsedAbility
- strb r2, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB63F
- str r0, [r1]
- ldrb r0, [r4]
- movs r1, 0x3C
- bl RecordAbilityBattle
- b _080499B2
- .pool
-_08049900:
- ldrh r0, [r1, 0x2E]
- cmp r0, 0
- beq _08049994
- adds r0, r3, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gLastUsedItem
- mov r3, r9
- ldrb r0, [r3]
- muls r0, r5
- add r0, r8
- ldrh r0, [r0, 0x2E]
- strh r0, [r1]
- ldrb r0, [r3]
- muls r0, r5
- add r0, r8
- movs r5, 0
- movs r1, 0
- strh r1, [r0, 0x2E]
- ldr r2, =gWishFutureKnock
- adds r2, 0x29
- adds r2, r4, r2
- ldr r3, =gBitTable
- ldr r1, =gBattlePartyID
- mov r4, r9
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB168
- str r0, [r4]
- mov r1, r9
- ldrb r0, [r1]
- ldr r2, =gBattleStruct
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC8
- strb r5, [r0]
- mov r3, r9
- ldrb r0, [r3]
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC9
- strb r5, [r0]
- b _080499B2
- .pool
-_08049994:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- b _080499B2
- .pool
-_080499A4:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB1D5
-_080499B0:
- str r0, [r4]
-_080499B2:
- ldr r1, =gBattleCommunication
- movs r0, 0
- strb r0, [r1, 0x3]
-_080499B8:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetMoveEffect
-
- thumb_func_start atk15_seteffectwithchancetarget
-atk15_seteffectwithchancetarget: @ 80499D4
- push {r4,lr}
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x20
- bne _08049A10
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x5]
- lsls r4, r0, 1
- b _08049A20
- .pool
-_08049A10:
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r4, [r0, 0x5]
-_08049A20:
- ldr r3, =gBattleCommunication
- ldrb r2, [r3, 0x3]
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _08049A50
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _08049A50
- movs r0, 0x7F
- ands r0, r2
- strb r0, [r3, 0x3]
- b _08049A7E
- .pool
-_08049A50:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r4
- bcs _08049A9A
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x3]
- cmp r0, 0
- beq _08049A9A
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _08049A9A
- cmp r4, 0x63
- bls _08049A90
-_08049A7E:
- movs r0, 0
- movs r1, 0x80
- bl SetMoveEffect
- b _08049AA2
- .pool
-_08049A90:
- movs r0, 0
- movs r1, 0
- bl SetMoveEffect
- b _08049AA2
-_08049A9A:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_08049AA2:
- ldr r0, =gBattleCommunication
- movs r1, 0
- strb r1, [r0, 0x3]
- ldr r0, =gBattleScripting
- strb r1, [r0, 0x16]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk15_seteffectwithchancetarget
-
- thumb_func_start atk16_seteffectprimary
-atk16_seteffectprimary: @ 8049AC0
- push {lr}
- movs r0, 0x1
- movs r1, 0
- bl SetMoveEffect
- pop {r0}
- bx r0
- thumb_func_end atk16_seteffectprimary
-
- thumb_func_start atk17_seteffectsecondary
-atk17_seteffectsecondary: @ 8049AD0
- push {lr}
- movs r0, 0
- movs r1, 0
- bl SetMoveEffect
- pop {r0}
- bx r0
- thumb_func_end atk17_seteffectsecondary
-
- thumb_func_start atk18_status_effect_clear
-atk18_status_effect_clear: @ 8049AE0
- push {lr}
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r2, =gActiveBank
- strb r0, [r2]
- ldr r3, =gBattleCommunication
- ldrb r0, [r3, 0x3]
- cmp r0, 0x6
- bhi _08049B14
- ldr r1, =gBattleMons
- ldrb r2, [r2]
- movs r0, 0x58
- muls r2, r0
- adds r1, 0x4C
- b _08049B1E
- .pool
-_08049B14:
- ldr r1, =gBattleMons
- ldrb r2, [r2]
- movs r0, 0x58
- muls r2, r0
- adds r1, 0x50
-_08049B1E:
- adds r2, r1
- ldr r1, =gStatusFlagsForMoveEffects
- ldrb r0, [r3, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
- ldr r0, =gBattleCommunication
- movs r2, 0
- strb r2, [r0, 0x3]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- ldr r0, =gBattleScripting
- strb r2, [r0, 0x16]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk18_status_effect_clear
-
- thumb_func_start atk19_faint_pokemon
-atk19_faint_pokemon: @ 8049B5C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- ldr r0, =gBattlescriptCurrInstr
- ldr r2, [r0]
- ldrb r1, [r2, 0x2]
- adds r6, r0, 0
- cmp r1, 0
- beq _08049BE0
- ldrb r0, [r2, 0x1]
- bl get_battle_side_of_something
- ldr r5, =gActiveBank
- strb r0, [r5]
- ldr r2, =gHitMarker
- ldr r1, =gBitTable
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r2]
- ands r0, r1
- cmp r0, 0
- bne _08049B94
- b _08049E2C
-_08049B94:
- ldr r1, [r6]
- ldrb r4, [r1, 0x3]
- ldrb r0, [r1, 0x4]
- lsls r0, 8
- orrs r4, r0
- ldrb r0, [r1, 0x5]
- lsls r0, 16
- orrs r4, r0
- ldrb r0, [r1, 0x6]
- lsls r0, 24
- orrs r4, r0
- bl b_movescr_stack_pop_cursor
- str r4, [r6]
- ldrb r0, [r5]
- bl GetBankSide
- ldr r1, =gSideAffecting
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r2, [r0]
- ldr r1, =0x0000fdff
- ands r1, r2
- strh r1, [r0]
- b _08049E32
- .pool
-_08049BE0:
- ldrb r0, [r2, 0x1]
- cmp r0, 0x1
- bne _08049C08
- ldr r1, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- mov r9, r0
- ldr r4, =gUnknown_082DA7AA
- b _08049C18
- .pool
-_08049C08:
- ldr r1, =gActiveBank
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- mov r9, r0
- ldr r4, =gUnknown_082DA7B7
-_08049C18:
- mov r8, r1
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- mov r7, r8
- ldrb r3, [r7]
- lsls r0, r3, 2
- adds r0, r2
- ldr r2, [r0]
- ands r1, r2
- cmp r1, 0
- beq _08049C32
- b _08049E2C
-_08049C32:
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r3
- adds r0, r1
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _08049C42
- b _08049E2C
-_08049C42:
- ldr r5, =gHitMarker
- lsls r1, r2, 28
- ldr r0, [r5]
- orrs r0, r1
- str r0, [r5]
- ldr r0, [r6]
- adds r0, 0x7
- bl b_movescr_stack_push
- str r4, [r6]
- ldrb r0, [r7]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08049CA4
- ldr r0, [r5]
- movs r1, 0x80
- lsls r1, 15
- orrs r0, r1
- str r0, [r5]
- ldr r1, =gBattleResults
- ldrb r0, [r1]
- cmp r0, 0xFE
- bhi _08049C78
- adds r0, 0x1
- strb r0, [r1]
-_08049C78:
- ldrb r0, [r7]
- bl sub_80570F4
- b _08049CCE
- .pool
-_08049CA4:
- ldr r4, =gBattleResults
- ldrb r0, [r4, 0x1]
- cmp r0, 0xFE
- bhi _08049CB0
- adds r0, 0x1
- strb r0, [r4, 0x1]
-_08049CB0:
- ldr r1, =gBattlePartyID
- mov r2, r8
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r4, 0x20]
-_08049CCE:
- ldr r2, =gHitMarker
- ldr r1, [r2]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08049D0C
- ldr r6, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- movs r5, 0x58
- muls r0, r5
- adds r0, r6
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _08049D0C
- movs r0, 0x41
- negs r0, r0
- ands r1, r0
- str r1, [r2]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- bl b_movescr_stack_push
- ldr r1, =gBattleMoveDamage
- mov r0, r9
- muls r0, r5
- adds r0, r6
- ldrh r0, [r0, 0x28]
- str r0, [r1]
- ldr r0, =gUnknown_082DAE3E
- str r0, [r4]
-_08049D0C:
- ldr r1, =gStatuses3
- ldr r6, =gBankTarget
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 7
- ands r0, r1
- cmp r0, 0
- bne _08049D24
- b _08049E32
-_08049D24:
- ldr r0, =gHitMarker
- ldr r5, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r5, r0
- cmp r5, 0
- beq _08049D34
- b _08049E32
-_08049D34:
- ldr r3, =gBankAttacker
- mov r8, r3
- ldrb r0, [r3]
- bl GetBankSide
- adds r4, r0, 0
- ldrb r0, [r6]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _08049E32
- ldr r0, =gBattleMons
- mov r9, r0
- mov r2, r8
- ldrb r1, [r2]
- movs r7, 0x58
- adds r2, r1, 0
- muls r2, r7
- adds r0, r2, r0
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _08049E32
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- cmp r0, 0xA5
- beq _08049E32
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, r1, r0
- adds r0, 0x80
- ldrb r4, [r0]
- adds r0, r4, r2
- mov r6, r9
- adds r6, 0x24
- adds r0, r6
- strb r5, [r0]
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB18D
- str r0, [r5]
- ldr r5, =gActiveBank
- mov r3, r8
- ldrb r0, [r3]
- strb r0, [r5]
- adds r1, r4, 0
- adds r1, 0x9
- lsls r1, 24
- lsrs r1, 24
- ldrb r0, [r5]
- muls r0, r7
- adds r0, r6
- adds r0, r4
- str r0, [sp]
- movs r0, 0
- movs r2, 0
- movs r3, 0x1
- bl EmitSetAttributes
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x2
- strb r0, [r1, 0x1]
- lsls r4, 1
- mov r2, r8
- ldrb r0, [r2]
- muls r0, r7
- adds r0, r4, r0
- mov r2, r9
- adds r2, 0xC
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1, 0x2]
- mov r3, r8
- ldrb r0, [r3]
- muls r0, r7
- adds r4, r0
- adds r4, r2
- ldrh r0, [r4]
- lsrs r0, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- b _08049E32
- .pool
-_08049E2C:
- ldr r0, [r6]
- adds r0, 0x7
- str r0, [r6]
-_08049E32:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end atk19_faint_pokemon
-
- thumb_func_start atk1A_faint_animation
-atk1A_faint_animation: @ 8049E40
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _08049E6A
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- bl dp01_build_cmdbuf_x0A_A_A_A
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
-_08049E6A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk1A_faint_animation
-
- thumb_func_start atk1B_faint_effects_clear
-atk1B_faint_effects_clear: @ 8049E7C
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r0, =gBattleExecBuffer
- ldr r5, [r0]
- cmp r5, 0
- bne _08049EE8
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _08049EB4
- ldr r2, =gBattleMons
- ldrb r1, [r4]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- bne _08049EDC
-_08049EB4:
- ldr r1, =gBattleMons
- ldrb r0, [r4]
- movs r2, 0x58
- muls r0, r2
- adds r1, 0x4C
- adds r0, r1
- str r5, [r0]
- ldrb r0, [r4]
- muls r0, r2
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x28
- movs r2, 0
- movs r3, 0x4
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_08049EDC:
- bl sub_803A75C
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_08049EE8:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk1B_faint_effects_clear
-
- thumb_func_start atk1C_jumpifstatus
-atk1C_jumpifstatus: @ 8049F04
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- lsls r0, 24
- lsrs r0, 24
- ldr r2, [r5]
- ldrb r4, [r2, 0x2]
- ldrb r1, [r2, 0x3]
- lsls r1, 8
- adds r4, r1
- ldrb r1, [r2, 0x4]
- lsls r1, 16
- adds r4, r1
- ldrb r1, [r2, 0x5]
- lsls r1, 24
- adds r4, r1
- ldrb r3, [r2, 0x6]
- ldrb r1, [r2, 0x7]
- lsls r1, 8
- adds r3, r1
- ldrb r1, [r2, 0x8]
- lsls r1, 16
- adds r3, r1
- ldrb r1, [r2, 0x9]
- lsls r1, 24
- adds r3, r1
- ldr r2, =gBattleMons
- movs r1, 0x58
- muls r1, r0
- adds r0, r2, 0
- adds r0, 0x4C
- adds r0, r1, r0
- ldr r0, [r0]
- ands r0, r4
- cmp r0, 0
- beq _08049F68
- adds r0, r1, r2
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _08049F68
- str r3, [r5]
- b _08049F70
- .pool
-_08049F68:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0xA
- str r0, [r1]
-_08049F70:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk1C_jumpifstatus
-
- thumb_func_start atk1D_jumpifstatus2
-atk1D_jumpifstatus2: @ 8049F7C
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- lsls r0, 24
- lsrs r0, 24
- ldr r2, [r5]
- ldrb r4, [r2, 0x2]
- ldrb r1, [r2, 0x3]
- lsls r1, 8
- adds r4, r1
- ldrb r1, [r2, 0x4]
- lsls r1, 16
- adds r4, r1
- ldrb r1, [r2, 0x5]
- lsls r1, 24
- adds r4, r1
- ldrb r3, [r2, 0x6]
- ldrb r1, [r2, 0x7]
- lsls r1, 8
- adds r3, r1
- ldrb r1, [r2, 0x8]
- lsls r1, 16
- adds r3, r1
- ldrb r1, [r2, 0x9]
- lsls r1, 24
- adds r3, r1
- ldr r2, =gBattleMons
- movs r1, 0x58
- muls r1, r0
- adds r0, r2, 0
- adds r0, 0x50
- adds r0, r1, r0
- ldr r0, [r0]
- ands r0, r4
- cmp r0, 0
- beq _08049FE0
- adds r0, r1, r2
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _08049FE0
- str r3, [r5]
- b _08049FE8
- .pool
-_08049FE0:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0xA
- str r0, [r1]
-_08049FE8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk1D_jumpifstatus2
-
- thumb_func_start atk1E_jumpifability
-atk1E_jumpifability: @ 8049FF4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- ldr r6, =gBattlescriptCurrInstr
- ldr r2, [r6]
- ldrb r5, [r2, 0x2]
- mov r8, r5
- ldrb r1, [r2, 0x3]
- ldrb r0, [r2, 0x4]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 24
- adds r7, r1, r0
- ldrb r0, [r2, 0x1]
- cmp r0, 0x8
- bne _0804A054
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0xD
- adds r2, r5, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0804A0C8
- ldr r1, =gLastUsedAbility
- strb r5, [r1]
- str r7, [r6]
- subs r4, 0x1
- lsls r0, r4, 24
- lsrs r0, 24
- ldrb r1, [r1]
- b _0804A0B0
- .pool
-_0804A054:
- cmp r0, 0x9
- bne _0804A08C
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0xC
- adds r2, r5, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0804A0C8
- ldr r1, =gLastUsedAbility
- strb r5, [r1]
- str r7, [r6]
- subs r4, 0x1
- lsls r0, r4, 24
- lsrs r0, 24
- ldrb r1, [r1]
- b _0804A0B0
- .pool
-_0804A08C:
- ldrb r0, [r2, 0x1]
- bl get_battle_side_of_something
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r4
- adds r0, r1
- adds r0, 0x20
- ldrb r1, [r0]
- cmp r1, r8
- bne _0804A0C8
- ldr r0, =gLastUsedAbility
- strb r1, [r0]
- str r7, [r6]
- ldrb r1, [r0]
- adds r0, r4, 0
-_0804A0B0:
- bl RecordAbilityBattle
- ldr r0, =gBattleScripting
- strb r4, [r0, 0x15]
- b _0804A0CE
- .pool
-_0804A0C8:
- ldr r0, [r6]
- adds r0, 0x7
- str r0, [r6]
-_0804A0CE:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end atk1E_jumpifability
-
- thumb_func_start atk1F_jumpifsideaffecting
-atk1F_jumpifsideaffecting: @ 804A0DC
- push {r4-r6,lr}
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r4, [r0, 0x1]
- cmp r4, 0x1
- bne _0804A0FC
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankIdentity
- b _0804A106
- .pool
-_0804A0FC:
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- bl GetBankIdentity
- movs r4, 0x1
-_0804A106:
- ands r4, r0
- ldr r6, =gBattlescriptCurrInstr
- ldr r3, [r6]
- ldrb r2, [r3, 0x2]
- ldrb r0, [r3, 0x3]
- lsls r0, 8
- orrs r2, r0
- ldrb r1, [r3, 0x4]
- ldrb r0, [r3, 0x5]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r3, 0x6]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r3, 0x7]
- lsls r0, 24
- adds r5, r1, r0
- ldr r1, =gSideAffecting
- lsls r0, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- ands r2, r0
- cmp r2, 0
- beq _0804A148
- str r5, [r6]
- b _0804A14E
- .pool
-_0804A148:
- adds r0, r3, 0
- adds r0, 0x8
- str r0, [r6]
-_0804A14E:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk1F_jumpifsideaffecting
-
- thumb_func_start atk20_jumpifstat
-atk20_jumpifstat: @ 804A154
- push {r4,r5,lr}
- movs r5, 0
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gBattleMons
- ldr r3, [r4]
- movs r1, 0x58
- muls r0, r1
- ldrb r1, [r3, 0x3]
- adds r0, r1
- adds r2, 0x18
- adds r0, r2
- ldrb r2, [r0]
- ldrb r0, [r3, 0x2]
- cmp r0, 0x5
- bhi _0804A212
- lsls r0, 2
- ldr r1, =_0804A194
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804A194:
- .4byte _0804A1AC
- .4byte _0804A1BC
- .4byte _0804A1CC
- .4byte _0804A1DC
- .4byte _0804A1EC
- .4byte _0804A200
-_0804A1AC:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- cmp r2, r0
- bne _0804A212
- b _0804A20C
- .pool
-_0804A1BC:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- cmp r2, r0
- beq _0804A212
- b _0804A20C
- .pool
-_0804A1CC:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- cmp r2, r0
- bls _0804A212
- b _0804A20C
- .pool
-_0804A1DC:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- cmp r2, r0
- bcs _0804A212
- b _0804A20C
- .pool
-_0804A1EC:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- ands r2, r0
- cmp r2, 0
- beq _0804A212
- b _0804A20C
- .pool
-_0804A200:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- ands r2, r0
- cmp r2, 0
- bne _0804A212
-_0804A20C:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_0804A212:
- cmp r5, 0
- beq _0804A238
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x5]
- ldrb r0, [r2, 0x6]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x8]
- lsls r0, 24
- adds r1, r0
- str r1, [r3]
- b _0804A240
- .pool
-_0804A238:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x9
- str r0, [r1]
-_0804A240:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk20_jumpifstat
-
- thumb_func_start atk21_jumpifstatus3
-atk21_jumpifstatus3: @ 804A24C
- push {r4-r6,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r5, =gActiveBank
- strb r0, [r5]
- ldr r2, [r4]
- ldrb r1, [r2, 0x2]
- ldrb r0, [r2, 0x3]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 24
- adds r6, r1, r0
- ldrb r1, [r2, 0x7]
- ldrb r0, [r2, 0x8]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x9]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0xA]
- lsls r0, 24
- adds r3, r1, r0
- ldrb r0, [r2, 0x6]
- cmp r0, 0
- beq _0804A2AC
- ldr r0, =gStatuses3
- ldrb r1, [r5]
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- ands r0, r6
- cmp r0, 0
- bne _0804A2C4
- b _0804A2BC
- .pool
-_0804A2AC:
- ldr r0, =gStatuses3
- ldrb r1, [r5]
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- ands r0, r6
- cmp r0, 0
- beq _0804A2C4
-_0804A2BC:
- str r3, [r4]
- b _0804A2CA
- .pool
-_0804A2C4:
- adds r0, r2, 0
- adds r0, 0xB
- str r0, [r4]
-_0804A2CA:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk21_jumpifstatus3
-
- thumb_func_start atk22_jumpiftype
-atk22_jumpiftype: @ 804A2D0
- push {r4-r6,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- lsls r0, 24
- lsrs r0, 24
- ldr r3, [r4]
- ldrb r5, [r3, 0x2]
- ldrb r2, [r3, 0x3]
- ldrb r1, [r3, 0x4]
- lsls r1, 8
- adds r2, r1
- ldrb r1, [r3, 0x5]
- lsls r1, 16
- adds r2, r1
- ldrb r1, [r3, 0x6]
- lsls r1, 24
- adds r6, r2, r1
- ldr r2, =gBattleMons
- movs r1, 0x58
- muls r0, r1
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, r5
- beq _0804A314
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, r5
- bne _0804A320
-_0804A314:
- str r6, [r4]
- b _0804A324
- .pool
-_0804A320:
- adds r0, r3, 0x7
- str r0, [r4]
-_0804A324:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk22_jumpiftype
-
- thumb_func_start atk23_getexp
-atk23_getexp: @ 804A32C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r6, 0
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x50
- mov r9, r0
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r1, =gBank1
- strb r0, [r1]
- ldr r2, =gUnknown_020243FE
- movs r1, 0x2
- ands r1, r0
- lsls r1, 24
- lsrs r1, 25
- adds r1, r2
- ldrb r1, [r1]
- mov r8, r1
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x1C]
- cmp r0, 0x6
- bls _0804A368
- bl _0804ACB2
-_0804A368:
- lsls r0, 2
- ldr r1, =_0804A38C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804A38C:
- .4byte _0804A3A8
- .4byte _0804A414
- .4byte _0804A52E
- .4byte _0804A850
- .4byte _0804A954
- .4byte _0804AC40
- .4byte _0804AC88
-_0804A3A8:
- ldr r4, =gBank1
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0804A3BC
- bl _0804AC7C
-_0804A3BC:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x063f0982
- ands r0, r1
- cmp r0, 0
- beq _0804A3CC
- bl _0804AC7C
-_0804A3CC:
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x1C]
- adds r0, 0x1
- strb r0, [r1, 0x1C]
- ldr r0, =gBattleStruct
- ldr r2, [r0]
- adds r2, 0xDF
- ldr r3, =gBitTable
- ldr r1, =gBattlePartyID
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- bl _0804ACB2
- .pool
-_0804A414:
- movs r5, 0
- movs r7, 0
-_0804A418:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0804A486
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0804A486
- ldr r0, =gBitTable
- lsls r1, r7, 2
- adds r1, r0
- ldr r0, [r1]
- mov r1, r8
- ands r0, r1
- cmp r0, 0
- beq _0804A44C
- adds r5, 0x1
-_0804A44C:
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xAF
- bne _0804A478
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r2, =0x00003226
- adds r0, r2
- ldrb r4, [r0]
- b _0804A480
- .pool
-_0804A478:
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r4, r0, 24
-_0804A480:
- cmp r4, 0x19
- bne _0804A486
- adds r6, 0x1
-_0804A486:
- adds r7, 0x1
- cmp r7, 0x5
- ble _0804A418
- ldr r3, =gBaseStats
- ldr r2, =gBattleMons
- ldr r0, =gBank1
- ldrb r1, [r0]
- movs r0, 0x58
- muls r1, r0
- adds r1, r2
- ldrh r2, [r1]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r3
- ldrb r2, [r0, 0x9]
- adds r1, 0x2A
- ldrb r0, [r1]
- muls r0, r2
- movs r1, 0x7
- bl __divsi3
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r6, 0
- beq _0804A4FC
- lsrs r4, r0, 17
- adds r0, r4, 0
- adds r1, r5, 0
- bl __divsi3
- mov r1, r9
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- bne _0804A4D2
- movs r0, 0x1
- strh r0, [r1]
-_0804A4D2:
- ldr r5, =gUnknown_02024402
- adds r0, r4, 0
- adds r1, r6, 0
- bl __divsi3
- strh r0, [r5]
- lsls r0, 16
- cmp r0, 0
- bne _0804A516
- movs r0, 0x1
- strh r0, [r5]
- b _0804A516
- .pool
-_0804A4FC:
- adds r0, r1, 0
- adds r1, r5, 0
- bl __divsi3
- mov r2, r9
- strh r0, [r2]
- lsls r0, 16
- cmp r0, 0
- bne _0804A512
- movs r0, 0x1
- strh r0, [r2]
-_0804A512:
- ldr r0, =gUnknown_02024402
- strh r6, [r0]
-_0804A516:
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x1C]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1, 0x1C]
- ldr r1, =gBattleStruct
- ldr r0, [r1]
- strb r2, [r0, 0x10]
- ldr r0, [r1]
- adds r0, 0x53
- mov r4, r8
- strb r4, [r0]
-_0804A52E:
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _0804A538
- b _0804ACB2
-_0804A538:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xAF
- bne _0804A57C
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003226
- adds r0, r1
- ldrb r4, [r0]
- b _0804A584
- .pool
-_0804A57C:
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r4, r0, 24
-_0804A584:
- ldr r5, =gBattleStruct
- cmp r4, 0x19
- beq _0804A5AC
- ldr r0, [r5]
- adds r1, r0, 0
- adds r1, 0x53
- ldrb r0, [r1]
- movs r2, 0x1
- ands r2, r0
- cmp r2, 0
- bne _0804A5AC
- lsrs r0, 1
- strb r0, [r1]
- ldr r1, =gBattleScripting
- b _0804A5D0
- .pool
-_0804A5AC:
- ldr r0, [r5]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x64
- bne _0804A5E8
- ldr r1, [r5]
- adds r1, 0x53
- ldrb r0, [r1]
- lsrs r0, 1
- strb r0, [r1]
- ldr r1, =gBattleScripting
- movs r2, 0
-_0804A5D0:
- movs r0, 0x5
- strb r0, [r1, 0x1C]
- ldr r0, =gBattleMoveDamage
- str r2, [r0]
- b _0804ACB2
- .pool
-_0804A5E8:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- bne _0804A616
- ldr r0, =gBattleMons
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _0804A616
- ldr r0, [r5]
- ldrb r0, [r0, 0x12]
- cmp r0, 0
- bne _0804A616
- bl sub_805EA60
- ldr r0, =0x00000161
- bl PlayBGM
- ldr r1, [r5]
- ldrb r0, [r1, 0x12]
- adds r0, 0x1
- strb r0, [r1, 0x12]
-_0804A616:
- ldr r5, =gBattleStruct
- ldr r0, [r5]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _0804A630
- b _0804A824
-_0804A630:
- ldr r0, [r5]
- adds r0, 0x53
- ldrb r0, [r0]
- movs r3, 0x1
- ands r3, r0
- cmp r3, 0
- beq _0804A664
- ldr r1, =gBattleMoveDamage
- mov r2, r9
- ldrh r0, [r2]
- str r0, [r1]
- mov r9, r1
- b _0804A66A
- .pool
-_0804A664:
- ldr r0, =gBattleMoveDamage
- str r3, [r0]
- mov r9, r0
-_0804A66A:
- cmp r4, 0x19
- bne _0804A67A
- ldr r0, =gUnknown_02024402
- ldrh r1, [r0]
- mov r2, r9
- ldr r0, [r2]
- adds r0, r1
- str r0, [r2]
-_0804A67A:
- cmp r4, 0x28
- bne _0804A68E
- mov r4, r9
- ldr r1, [r4]
- movs r0, 0x96
- muls r0, r1
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
-_0804A68E:
- ldr r5, =gBattleTypeFlags
- ldr r0, [r5]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0804A6AA
- ldr r4, =gBattleMoveDamage
- ldr r1, [r4]
- movs r0, 0x96
- muls r0, r1
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
-_0804A6AA:
- ldr r4, =gBattleStruct
- ldr r0, [r4]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- bl IsTradedMon
- lsls r0, 24
- cmp r0, 0
- beq _0804A714
- ldr r0, [r5]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _0804A6F8
- ldr r0, [r4]
- ldrb r0, [r0, 0x10]
- cmp r0, 0x2
- bls _0804A6F8
- ldr r7, =0x00000149
- ldr r0, =gBattleMoveDamage
- mov r9, r0
- b _0804A71A
- .pool
-_0804A6F8:
- ldr r4, =gBattleMoveDamage
- ldr r1, [r4]
- movs r0, 0x96
- muls r0, r1
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
- movs r7, 0xA5
- lsls r7, 1
- mov r9, r4
- b _0804A71A
- .pool
-_0804A714:
- ldr r7, =0x00000149
- ldr r1, =gBattleMoveDamage
- mov r9, r1
-_0804A71A:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0804A786
- ldr r0, =gBattlePartyID
- ldr r1, =gBattleStruct
- ldr r4, [r1]
- ldrh r0, [r0, 0x4]
- adds r5, r1, 0
- ldr r3, =gBitTable
- ldr r2, =gAbsentBankFlags
- ldrb r1, [r4, 0x10]
- cmp r0, r1
- bne _0804A76C
- ldrb r1, [r2]
- ldr r0, [r3, 0x8]
- ands r1, r0
- cmp r1, 0
- bne _0804A76C
- adds r1, r4, 0
- adds r1, 0x8F
- movs r0, 0x2
- strb r0, [r1]
- b _0804A78E
- .pool
-_0804A76C:
- ldrb r2, [r2]
- ldr r0, [r3]
- ands r2, r0
- cmp r2, 0
- bne _0804A77E
- ldr r0, [r5]
- adds r0, 0x8F
- strb r2, [r0]
- b _0804A78E
-_0804A77E:
- ldr r0, [r5]
- adds r0, 0x8F
- movs r1, 0x2
- b _0804A78C
-_0804A786:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x8F
-_0804A78C:
- strb r1, [r0]
-_0804A78E:
- ldr r1, =gBattleTextBuff1
- movs r2, 0
- mov r12, r2
- movs r3, 0xFD
- strb r3, [r1]
- movs r5, 0x4
- strb r5, [r1, 0x1]
- ldr r6, =gBattleStruct
- ldr r2, [r6]
- movs r4, 0x8F
- adds r4, r2
- mov r8, r4
- ldrb r0, [r4]
- strb r0, [r1, 0x2]
- ldrb r0, [r2, 0x10]
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattleTextBuff2
- strb r3, [r1]
- mov r0, r12
- strb r0, [r1, 0x1]
- strb r7, [r1, 0x2]
- movs r4, 0xFF
- lsls r4, 8
- ands r7, r4
- asrs r0, r7, 8
- strb r0, [r1, 0x3]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r1, 0x4]
- ldr r1, =gBattleTextBuff3
- strb r3, [r1]
- movs r0, 0x1
- strb r0, [r1, 0x1]
- strb r5, [r1, 0x2]
- movs r0, 0x5
- strb r0, [r1, 0x3]
- mov r0, r9
- ldr r2, [r0]
- strb r2, [r1, 0x4]
- adds r0, r2, 0
- ands r0, r4
- asrs r0, 8
- strb r0, [r1, 0x5]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r2
- asrs r0, 16
- strb r0, [r1, 0x6]
- lsrs r2, 24
- strb r2, [r1, 0x7]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r1, 0x8]
- mov r2, r8
- ldrb r1, [r2]
- movs r0, 0xD
- bl b_std_message
- ldr r0, [r6]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- ldr r3, =gBattleMons
- ldr r1, =gBank1
- ldrb r2, [r1]
- movs r1, 0x58
- muls r1, r2
- adds r1, r3
- ldrh r1, [r1]
- bl MonGainEVs
-_0804A824:
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r1, 0x53
- ldrb r0, [r1]
- lsrs r0, 1
- strb r0, [r1]
- b _0804A92A
- .pool
-_0804A850:
- ldr r0, =gBattleExecBuffer
- ldr r2, [r0]
- cmp r2, 0
- beq _0804A85A
- b _0804ACB2
-_0804A85A:
- ldr r1, =gBattleBufferB
- ldr r7, =gBattleStruct
- ldr r0, [r7]
- adds r0, 0x8F
- ldrb r0, [r0]
- lsls r0, 9
- adds r0, r1
- strb r2, [r0]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gPlayerParty
- adds r0, r5
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0804A92A
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r6
- adds r0, r5
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x64
- beq _0804A92A
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r6
- adds r0, r5
- movs r1, 0x3A
- bl GetMonData
- ldr r4, =gBattleResources
- ldr r1, [r4]
- ldr r1, [r1, 0x10]
- strh r0, [r1]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r6
- adds r0, r5
- movs r1, 0x3B
- bl GetMonData
- ldr r1, [r4]
- ldr r1, [r1, 0x10]
- strh r0, [r1, 0x2]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r6
- adds r0, r5
- movs r1, 0x3C
- bl GetMonData
- ldr r1, [r4]
- ldr r1, [r1, 0x10]
- strh r0, [r1, 0x4]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r6
- adds r0, r5
- movs r1, 0x3D
- bl GetMonData
- ldr r1, [r4]
- ldr r1, [r1, 0x10]
- strh r0, [r1, 0x6]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r6
- adds r0, r5
- movs r1, 0x3E
- bl GetMonData
- ldr r1, [r4]
- ldr r1, [r1, 0x10]
- strh r0, [r1, 0x8]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r6
- adds r0, r5
- movs r1, 0x3F
- bl GetMonData
- ldr r1, [r4]
- ldr r1, [r1, 0x10]
- strh r0, [r1, 0xA]
- ldr r4, =gActiveBank
- ldr r1, [r7]
- adds r0, r1, 0
- adds r0, 0x8F
- ldrb r0, [r0]
- strb r0, [r4]
- ldrb r1, [r1, 0x10]
- ldr r0, =gBattleMoveDamage
- ldrh r2, [r0]
- movs r0, 0
- bl dp01_build_cmdbuf_x19_a_bb
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0804A92A:
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x1C]
- adds r0, 0x1
- strb r0, [r1, 0x1C]
- b _0804ACB2
- .pool
-_0804A954:
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _0804A95E
- b _0804ACB2
-_0804A95E:
- ldr r1, =gActiveBank
- ldr r0, =gBattleStruct
- ldr r4, [r0]
- adds r0, r4, 0
- adds r0, 0x8F
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r3, =gBattleBufferB
- ldrb r2, [r1]
- lsls r1, r2, 9
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0x21
- beq _0804A97C
- b _0804AC28
-_0804A97C:
- adds r0, r3, 0x1
- adds r0, r1, r0
- ldrb r0, [r0]
- cmp r0, 0xB
- beq _0804A988
- b _0804AC28
-_0804A988:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0804A9B2
- ldr r0, =gBattlePartyID
- lsls r1, r2, 1
- adds r1, r0
- ldrh r0, [r1]
- ldrb r4, [r4, 0x10]
- cmp r0, r4
- bne _0804A9B2
- adds r1, r0, 0
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- adds r1, r2, 0
- bl sub_805E990
-_0804A9B2:
- ldr r1, =gBattleTextBuff1
- movs r3, 0xFD
- strb r3, [r1]
- movs r0, 0x4
- strb r0, [r1, 0x1]
- ldr r6, =gActiveBank
- ldrb r0, [r6]
- strb r0, [r1, 0x2]
- ldr r4, =gBattleStruct
- mov r9, r4
- ldr r2, [r4]
- ldrb r0, [r2, 0x10]
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r4, =gBattleTextBuff2
- strb r3, [r4]
- movs r0, 0x1
- strb r0, [r4, 0x1]
- strb r0, [r4, 0x2]
- movs r0, 0x3
- strb r0, [r4, 0x3]
- ldrb r0, [r2, 0x10]
- movs r1, 0x64
- mov r8, r1
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- ldr r7, =gPlayerParty
- adds r0, r7
- movs r1, 0x38
- bl GetMonData
- strb r0, [r4, 0x4]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r4, 0x5]
- bl b_movescr_stack_push_cursor
- ldr r2, =gUnknown_03005D54
- ldr r1, =gBitTable
- mov r4, r9
- ldr r5, [r4]
- ldrb r0, [r5, 0x10]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DABBD
- str r0, [r1]
- ldr r4, =gBattleMoveDamage
- ldr r2, =gBattleBufferB
- ldrb r1, [r6]
- lsls r1, 9
- adds r0, r2, 0x2
- adds r0, r1, r0
- ldrb r3, [r0]
- adds r2, 0x3
- adds r1, r2
- ldrb r0, [r1]
- lsls r0, 8
- orrs r3, r0
- str r3, [r4]
- ldrb r0, [r5, 0x10]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r7
- movs r1, 0
- bl AdjustFriendship
- ldr r1, =gBattlePartyID
- mov r2, r9
- ldr r0, [r2]
- ldrb r2, [r0, 0x10]
- ldrh r0, [r1]
- cmp r0, r2
- bne _0804AB1E
- ldr r4, =gBattleMons
- ldrh r0, [r4, 0x28]
- cmp r0, 0
- beq _0804AB1E
- mov r0, r8
- muls r0, r2
- adds r0, r7
- movs r1, 0x38
- bl GetMonData
- adds r1, r4, 0
- adds r1, 0x2A
- strb r0, [r1]
- mov r1, r9
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0x39
- bl GetMonData
- strh r0, [r4, 0x28]
- mov r1, r9
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0x3A
- bl GetMonData
- strh r0, [r4, 0x2C]
- mov r1, r9
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0x3B
- bl GetMonData
- strh r0, [r4, 0x2]
- mov r1, r9
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0x3C
- bl GetMonData
- strh r0, [r4, 0x4]
- mov r1, r9
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0x3D
- bl GetMonData
- strh r0, [r4, 0x6]
- mov r1, r9
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0x3D
- bl GetMonData
- strh r0, [r4, 0x6]
- mov r1, r9
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0x3E
- bl GetMonData
- strh r0, [r4, 0x8]
- mov r1, r9
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r0, r7
- movs r1, 0x3F
- bl GetMonData
- strh r0, [r4, 0xA]
-_0804AB1E:
- ldr r0, =gBattlePartyID
- ldr r7, =gBattleStruct
- ldr r1, [r7]
- ldrb r2, [r1, 0x10]
- ldrh r0, [r0, 0x4]
- cmp r0, r2
- beq _0804AB2E
- b _0804AC2E
-_0804AB2E:
- ldr r6, =gBattleMons
- movs r4, 0xD8
- adds r4, r6
- mov r8, r4
- ldrh r0, [r4]
- cmp r0, 0
- beq _0804AC2E
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0804AC2E
- movs r5, 0x64
- adds r0, r2, 0
- muls r0, r5
- ldr r4, =gPlayerParty
- adds r0, r4
- movs r1, 0x38
- bl GetMonData
- adds r1, r6, 0
- adds r1, 0xDA
- strb r0, [r1]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- movs r1, 0x39
- bl GetMonData
- mov r1, r8
- strh r0, [r1]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- movs r1, 0x3A
- bl GetMonData
- adds r1, r6, 0
- adds r1, 0xDC
- strh r0, [r1]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- movs r1, 0x3B
- bl GetMonData
- adds r1, r6, 0
- adds r1, 0xB2
- strh r0, [r1]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- movs r1, 0x3C
- bl GetMonData
- adds r1, r6, 0
- adds r1, 0xB4
- strh r0, [r1]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- movs r1, 0x3D
- bl GetMonData
- movs r2, 0xB6
- adds r2, r6
- mov r8, r2
- strh r0, [r2]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- movs r1, 0x3D
- bl GetMonData
- mov r1, r8
- strh r0, [r1]
- ldr r0, [r7]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- movs r1, 0x3E
- bl GetMonData
- adds r1, r6, 0
- adds r1, 0xB8
- strh r0, [r1]
- b _0804AC2E
- .pool
-_0804AC28:
- ldr r1, =gBattleMoveDamage
- movs r0, 0
- str r0, [r1]
-_0804AC2E:
- ldr r1, =gBattleScripting
- movs r0, 0x5
- strb r0, [r1, 0x1C]
- b _0804ACB2
- .pool
-_0804AC40:
- ldr r0, =gBattleMoveDamage
- ldr r0, [r0]
- cmp r0, 0
- beq _0804AC58
- ldr r1, =gBattleScripting
- movs r0, 0x3
- strb r0, [r1, 0x1C]
- b _0804ACB2
- .pool
-_0804AC58:
- ldr r2, =gBattleStruct
- ldr r1, [r2]
- ldrb r0, [r1, 0x10]
- adds r0, 0x1
- strb r0, [r1, 0x10]
- ldr r0, [r2]
- ldrb r0, [r0, 0x10]
- cmp r0, 0x5
- bhi _0804AC7C
- ldr r1, =gBattleScripting
- movs r0, 0x2
- strb r0, [r1, 0x1C]
- b _0804ACB2
- .pool
-_0804AC7C:
- ldr r1, =gBattleScripting
- movs r0, 0x6
- strb r0, [r1, 0x1C]
- b _0804ACB2
- .pool
-_0804AC88:
- ldr r0, =gBattleExecBuffer
- ldr r5, [r0]
- cmp r5, 0
- bne _0804ACB2
- ldr r4, =gBattleMons
- ldr r2, =gBank1
- ldrb r0, [r2]
- movs r1, 0x58
- muls r0, r1
- adds r0, r4
- movs r3, 0
- strh r5, [r0, 0x2E]
- ldrb r0, [r2]
- muls r0, r1
- adds r0, r4
- adds r0, 0x20
- strb r3, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_0804ACB2:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk23_getexp
-
- thumb_func_start atk24
-atk24: @ 804ACD0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r6, 0
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _0804ACE2
- b _0804AF22
-_0804ACE2:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _0804AD48
- ldr r0, =gPartnerTrainerId
- ldrh r1, [r0]
- ldr r0, =0x00000c03
- cmp r1, r0
- bne _0804AD48
- movs r5, 0
-_0804ACFC:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0804AD2C
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0804AD2C
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- adds r0, r6, r0
- lsls r0, 16
- lsrs r6, r0, 16
-_0804AD2C:
- adds r5, 0x1
- cmp r5, 0x2
- ble _0804ACFC
- b _0804ADA8
- .pool
-_0804AD48:
- movs r5, 0
-_0804AD4A:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0804ADA2
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0804ADA2
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _0804AD94
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- movs r1, 0xA8
- lsls r1, 2
- adds r0, r1
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r5, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0804ADA2
-_0804AD94:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- adds r0, r6, r0
- lsls r0, 16
- lsrs r6, r0, 16
-_0804ADA2:
- adds r5, 0x1
- cmp r5, 0x5
- ble _0804AD4A
-_0804ADA8:
- cmp r6, 0
- bne _0804ADB6
- ldr r0, =gBattleOutcome
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0]
-_0804ADB6:
- movs r6, 0
- movs r5, 0
-_0804ADBA:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gEnemyParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0804AE10
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0804AE10
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _0804AE02
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldr r1, =0x000002a1
- adds r0, r1
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r5, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0804AE10
-_0804AE02:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- adds r0, r6, r0
- lsls r0, 16
- lsrs r6, r0, 16
-_0804AE10:
- adds r5, 0x1
- cmp r5, 0x5
- ble _0804ADBA
- ldr r2, =gBattleOutcome
- cmp r6, 0
- bne _0804AE24
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
-_0804AE24:
- ldrb r0, [r2]
- cmp r0, 0
- bne _0804AF1A
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r2, =0x02000002
- ands r1, r2
- mov r8, r0
- cmp r1, 0
- beq _0804AF1A
- movs r3, 0
- movs r5, 0
- ldr r0, =gNoOfAllBanks
- ldrb r1, [r0]
- mov r12, r0
- ldr r7, =gBattlescriptCurrInstr
- cmp r3, r1
- bge _0804AE70
- ldr r0, =gHitMarker
- movs r6, 0x80
- lsls r6, 21
- ldr r4, [r0]
- adds r2, r1, 0
- ldr r1, =gSpecialStatuses
-_0804AE54:
- adds r0, r6, 0
- lsls r0, r5
- ands r0, r4
- cmp r0, 0
- beq _0804AE68
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804AE68
- adds r3, 0x1
-_0804AE68:
- adds r1, 0x28
- adds r5, 0x2
- cmp r5, r2
- blt _0804AE54
-_0804AE70:
- movs r2, 0
- movs r5, 0x1
- mov r4, r12
- ldrb r1, [r4]
- cmp r5, r1
- bge _0804AEAA
- ldr r0, =gHitMarker
- movs r4, 0x80
- lsls r4, 21
- mov r12, r4
- ldr r6, [r0]
- ldr r0, =gSpecialStatuses
- adds r4, r1, 0
- adds r1, r0, 0
- adds r1, 0x14
-_0804AE8E:
- mov r0, r12
- lsls r0, r5
- ands r0, r6
- cmp r0, 0
- beq _0804AEA2
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804AEA2
- adds r2, 0x1
-_0804AEA2:
- adds r1, 0x28
- adds r5, 0x2
- cmp r5, r4
- blt _0804AE8E
-_0804AEAA:
- mov r1, r8
- ldr r0, [r1]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804AEF0
- adds r0, r2, r3
- cmp r0, 0x1
- bgt _0804AEF8
- b _0804AF12
- .pool
-_0804AEF0:
- cmp r2, 0
- beq _0804AF12
- cmp r3, 0
- beq _0804AF12
-_0804AEF8:
- ldr r2, [r7]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r1, r0
- str r1, [r7]
- b _0804AF22
-_0804AF12:
- ldr r0, [r7]
- adds r0, 0x5
- str r0, [r7]
- b _0804AF22
-_0804AF1A:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0804AF22:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk24
-
- thumb_func_start sub_804AF30
-sub_804AF30: @ 804AF30
- ldr r1, =gBattleMoveFlags
- movs r0, 0
- strb r0, [r1]
- ldr r0, =gBattleScripting
- movs r2, 0
- movs r1, 0x1
- strb r1, [r0, 0xE]
- ldr r0, =gCritMultiplier
- strb r1, [r0]
- ldr r0, =gBattleCommunication
- strb r2, [r0, 0x3]
- strb r2, [r0, 0x6]
- ldr r2, =gHitMarker
- ldr r0, [r2]
- subs r1, 0x42
- ands r0, r1
- ldr r1, =0xffffbfff
- ands r0, r1
- str r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_804AF30
-
- thumb_func_start atk25_move_values_cleanup
-atk25_move_values_cleanup: @ 804AF70
- push {lr}
- bl sub_804AF30
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk25_move_values_cleanup
-
- thumb_func_start atk26_set_multihit
-atk26_set_multihit: @ 804AF88
- ldr r3, =gUnknown_02024212
- ldr r2, =gBattlescriptCurrInstr
- ldr r0, [r2]
- ldrb r1, [r0, 0x1]
- strb r1, [r3]
- adds r0, 0x2
- str r0, [r2]
- bx lr
- .pool
- thumb_func_end atk26_set_multihit
-
- thumb_func_start atk27_decrement_multihit
-atk27_decrement_multihit: @ 804AFA0
- push {lr}
- ldr r1, =gUnknown_02024212
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- cmp r0, 0
- bne _0804AFC4
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _0804AFDE
- .pool
-_0804AFC4:
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r1, r0
- str r1, [r3]
-_0804AFDE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk27_decrement_multihit
-
- thumb_func_start atk28_goto
-atk28_goto: @ 804AFE8
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r1, r0
- str r1, [r3]
- bx lr
- .pool
- thumb_func_end atk28_goto
-
- thumb_func_start atk29_jumpifbyte
-atk29_jumpifbyte: @ 804B008
- push {r4-r6,lr}
- ldr r3, =gBattlescriptCurrInstr
- ldr r1, [r3]
- ldrb r6, [r1, 0x1]
- ldrb r2, [r1, 0x2]
- ldrb r0, [r1, 0x3]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x5]
- lsls r0, 24
- adds r5, r2, r0
- ldrb r4, [r1, 0x6]
- ldrb r2, [r1, 0x7]
- ldrb r0, [r1, 0x8]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x9]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0xA]
- lsls r0, 24
- adds r2, r0
- adds r1, 0xB
- str r1, [r3]
- cmp r6, 0x5
- bhi _0804B0A0
- lsls r0, r6, 2
- ldr r1, =_0804B054
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804B054:
- .4byte _0804B06C
- .4byte _0804B074
- .4byte _0804B07C
- .4byte _0804B084
- .4byte _0804B08C
- .4byte _0804B096
-_0804B06C:
- ldrb r0, [r5]
- cmp r0, r4
- bne _0804B0A0
- b _0804B09E
-_0804B074:
- ldrb r0, [r5]
- cmp r0, r4
- beq _0804B0A0
- b _0804B09E
-_0804B07C:
- ldrb r0, [r5]
- cmp r0, r4
- bls _0804B0A0
- b _0804B09E
-_0804B084:
- ldrb r0, [r5]
- cmp r0, r4
- bcs _0804B0A0
- b _0804B09E
-_0804B08C:
- ldrb r0, [r5]
- ands r4, r0
- cmp r4, 0
- beq _0804B0A0
- b _0804B09E
-_0804B096:
- ldrb r0, [r5]
- ands r4, r0
- cmp r4, 0
- bne _0804B0A0
-_0804B09E:
- str r2, [r3]
-_0804B0A0:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk29_jumpifbyte
-
- thumb_func_start atk2A_jumpifhalfword
-atk2A_jumpifhalfword: @ 804B0A8
- push {r4-r6,lr}
- ldr r3, =gBattlescriptCurrInstr
- ldr r1, [r3]
- ldrb r6, [r1, 0x1]
- ldrb r2, [r1, 0x2]
- ldrb r0, [r1, 0x3]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x5]
- lsls r0, 24
- adds r5, r2, r0
- ldrb r4, [r1, 0x6]
- ldrb r0, [r1, 0x7]
- lsls r0, 8
- orrs r4, r0
- ldrb r2, [r1, 0x8]
- ldrb r0, [r1, 0x9]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0xA]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0xB]
- lsls r0, 24
- adds r2, r0
- adds r1, 0xC
- str r1, [r3]
- cmp r6, 0x5
- bhi _0804B148
- lsls r0, r6, 2
- ldr r1, =_0804B0FC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804B0FC:
- .4byte _0804B114
- .4byte _0804B11C
- .4byte _0804B124
- .4byte _0804B12C
- .4byte _0804B134
- .4byte _0804B13E
-_0804B114:
- ldrh r0, [r5]
- cmp r0, r4
- bne _0804B148
- b _0804B146
-_0804B11C:
- ldrh r0, [r5]
- cmp r0, r4
- beq _0804B148
- b _0804B146
-_0804B124:
- ldrh r0, [r5]
- cmp r0, r4
- bls _0804B148
- b _0804B146
-_0804B12C:
- ldrh r0, [r5]
- cmp r0, r4
- bcs _0804B148
- b _0804B146
-_0804B134:
- ldrh r0, [r5]
- ands r4, r0
- cmp r4, 0
- beq _0804B148
- b _0804B146
-_0804B13E:
- ldrh r0, [r5]
- ands r4, r0
- cmp r4, 0
- bne _0804B148
-_0804B146:
- str r2, [r3]
-_0804B148:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk2A_jumpifhalfword
-
- thumb_func_start atk2B_jumpifword
-atk2B_jumpifword: @ 804B150
- push {r4-r6,lr}
- ldr r3, =gBattlescriptCurrInstr
- ldr r1, [r3]
- ldrb r6, [r1, 0x1]
- ldrb r2, [r1, 0x2]
- ldrb r0, [r1, 0x3]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x5]
- lsls r0, 24
- adds r5, r2, r0
- ldrb r4, [r1, 0x6]
- ldrb r0, [r1, 0x7]
- lsls r0, 8
- orrs r4, r0
- ldrb r0, [r1, 0x8]
- lsls r0, 16
- orrs r4, r0
- ldrb r0, [r1, 0x9]
- lsls r0, 24
- orrs r4, r0
- ldrb r2, [r1, 0xA]
- ldrb r0, [r1, 0xB]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0xC]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0xD]
- lsls r0, 24
- adds r2, r0
- adds r1, 0xE
- str r1, [r3]
- cmp r6, 0x5
- bhi _0804B1FC
- lsls r0, r6, 2
- ldr r1, =_0804B1B0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804B1B0:
- .4byte _0804B1C8
- .4byte _0804B1D0
- .4byte _0804B1D8
- .4byte _0804B1E0
- .4byte _0804B1E8
- .4byte _0804B1F2
-_0804B1C8:
- ldr r0, [r5]
- cmp r0, r4
- bne _0804B1FC
- b _0804B1FA
-_0804B1D0:
- ldr r0, [r5]
- cmp r0, r4
- beq _0804B1FC
- b _0804B1FA
-_0804B1D8:
- ldr r0, [r5]
- cmp r0, r4
- bls _0804B1FC
- b _0804B1FA
-_0804B1E0:
- ldr r0, [r5]
- cmp r0, r4
- bcs _0804B1FC
- b _0804B1FA
-_0804B1E8:
- ldr r0, [r5]
- ands r0, r4
- cmp r0, 0
- beq _0804B1FC
- b _0804B1FA
-_0804B1F2:
- ldr r0, [r5]
- ands r0, r4
- cmp r0, 0
- bne _0804B1FC
-_0804B1FA:
- str r2, [r3]
-_0804B1FC:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk2B_jumpifword
-
- thumb_func_start atk2C_jumpifarrayequal
-atk2C_jumpifarrayequal: @ 804B204
- push {r4-r7,lr}
- ldr r2, =gBattlescriptCurrInstr
- ldr r3, [r2]
- ldrb r1, [r3, 0x1]
- ldrb r0, [r3, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r3, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r3, 0x4]
- lsls r0, 24
- adds r5, r1, r0
- ldrb r1, [r3, 0x5]
- ldrb r0, [r3, 0x6]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r3, 0x7]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r3, 0x8]
- lsls r0, 24
- adds r4, r1, r0
- ldrb r6, [r3, 0x9]
- ldrb r1, [r3, 0xA]
- ldrb r0, [r3, 0xB]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r3, 0xC]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r3, 0xD]
- lsls r0, 24
- adds r1, r0
- mov r12, r1
- movs r1, 0
- cmp r1, r6
- bcs _0804B27C
- ldrb r0, [r5]
- ldrb r7, [r4]
- cmp r0, r7
- beq _0804B260
- adds r0, r3, 0
- b _0804B278
- .pool
-_0804B260:
- adds r5, 0x1
- adds r4, 0x1
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, r6
- bcs _0804B27C
- ldrb r0, [r5]
- ldrb r3, [r4]
- cmp r0, r3
- beq _0804B260
- ldr r0, [r2]
-_0804B278:
- adds r0, 0xE
- str r0, [r2]
-_0804B27C:
- cmp r1, r6
- bne _0804B284
- mov r7, r12
- str r7, [r2]
-_0804B284:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end atk2C_jumpifarrayequal
-
- thumb_func_start atk2D_jumpifarraynotequal
-atk2D_jumpifarraynotequal: @ 804B28C
- push {r4-r7,lr}
- movs r7, 0
- ldr r3, =gBattlescriptCurrInstr
- ldr r1, [r3]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r1, 0x2]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 24
- adds r5, r2, r0
- ldrb r2, [r1, 0x5]
- ldrb r0, [r1, 0x6]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x7]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x8]
- lsls r0, 24
- adds r4, r2, r0
- ldrb r6, [r1, 0x9]
- ldrb r2, [r1, 0xA]
- ldrb r0, [r1, 0xB]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0xC]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0xD]
- lsls r0, 24
- adds r2, r0
- mov r12, r2
- movs r1, 0
- cmp r7, r6
- bcs _0804B2F6
-_0804B2DA:
- ldrb r0, [r5]
- ldrb r2, [r4]
- cmp r0, r2
- bne _0804B2E8
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
-_0804B2E8:
- adds r5, 0x1
- adds r4, 0x1
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, r6
- bcc _0804B2DA
-_0804B2F6:
- cmp r7, r6
- beq _0804B304
- mov r0, r12
- b _0804B308
- .pool
-_0804B304:
- ldr r0, [r3]
- adds r0, 0xE
-_0804B308:
- str r0, [r3]
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end atk2D_jumpifarraynotequal
-
- thumb_func_start atk2E_setbyte
-atk2E_setbyte: @ 804B310
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r1, r0
- ldrb r0, [r2, 0x5]
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x6
- str r0, [r3]
- bx lr
- .pool
- thumb_func_end atk2E_setbyte
-
- thumb_func_start atk2F_addbyte
-atk2F_addbyte: @ 804B338
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r1, r0
- ldrb r0, [r2, 0x5]
- ldrb r2, [r1]
- adds r0, r2
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x6
- str r0, [r3]
- bx lr
- .pool
- thumb_func_end atk2F_addbyte
-
- thumb_func_start atk30_subbyte
-atk30_subbyte: @ 804B364
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r1, r0
- ldrb r0, [r1]
- ldrb r2, [r2, 0x5]
- subs r0, r2
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x6
- str r0, [r3]
- bx lr
- .pool
- thumb_func_end atk30_subbyte
-
- thumb_func_start atk31_copyarray
-atk31_copyarray: @ 804B390
- push {r4-r6,lr}
- ldr r3, =gBattlescriptCurrInstr
- ldr r1, [r3]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r1, 0x2]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 24
- adds r6, r2, r0
- ldrb r2, [r1, 0x5]
- ldrb r0, [r1, 0x6]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x7]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x8]
- lsls r0, 24
- adds r5, r2, r0
- ldrb r4, [r1, 0x9]
- movs r2, 0
- cmp r2, r4
- bge _0804B3D4
-_0804B3C6:
- adds r0, r6, r2
- adds r1, r5, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, r4
- blt _0804B3C6
-_0804B3D4:
- ldr r0, [r3]
- adds r0, 0xA
- str r0, [r3]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk31_copyarray
-
- thumb_func_start atk32_copyarray_withindex
-atk32_copyarray_withindex: @ 804B3E4
- push {r4-r7,lr}
- ldr r3, =gBattlescriptCurrInstr
- ldr r1, [r3]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r1, 0x2]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 24
- adds r7, r2, r0
- ldrb r2, [r1, 0x5]
- ldrb r0, [r1, 0x6]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0x7]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0x8]
- lsls r0, 24
- adds r6, r2, r0
- ldrb r2, [r1, 0x9]
- ldrb r0, [r1, 0xA]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r1, 0xB]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r1, 0xC]
- lsls r0, 24
- adds r5, r2, r0
- ldrb r4, [r1, 0xD]
- movs r2, 0
- cmp r2, r4
- bge _0804B440
-_0804B42E:
- adds r0, r7, r2
- ldrb r1, [r5]
- adds r1, r2, r1
- adds r1, r6, r1
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, r4
- blt _0804B42E
-_0804B440:
- ldr r0, [r3]
- adds r0, 0xE
- str r0, [r3]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk32_copyarray_withindex
-
- thumb_func_start atk33_orbyte
-atk33_orbyte: @ 804B450
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r1, r0
- ldrb r0, [r1]
- ldrb r2, [r2, 0x5]
- orrs r0, r2
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x6
- str r0, [r3]
- bx lr
- .pool
- thumb_func_end atk33_orbyte
-
- thumb_func_start atk34_orhalfword
-atk34_orhalfword: @ 804B47C
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r3, [r4]
- ldrb r2, [r3, 0x1]
- ldrb r0, [r3, 0x2]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r3, 0x3]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r3, 0x4]
- lsls r0, 24
- adds r2, r0
- ldrb r1, [r3, 0x5]
- ldrb r0, [r3, 0x6]
- lsls r0, 8
- orrs r1, r0
- ldrh r0, [r2]
- orrs r1, r0
- strh r1, [r2]
- ldr r0, [r4]
- adds r0, 0x7
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk34_orhalfword
-
- thumb_func_start atk35_orword
-atk35_orword: @ 804B4B4
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r2, [r4]
- ldrb r3, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r3, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r3, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r3, r0
- ldrb r1, [r2, 0x5]
- ldrb r0, [r2, 0x6]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x8]
- lsls r0, 24
- adds r1, r0
- ldr r0, [r3]
- orrs r0, r1
- str r0, [r3]
- ldr r0, [r4]
- adds r0, 0x9
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk35_orword
-
- thumb_func_start atk36_bicbyte
-atk36_bicbyte: @ 804B4F8
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r1, r0
- ldrb r2, [r2, 0x5]
- ldrb r0, [r1]
- bics r0, r2
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x6
- str r0, [r3]
- bx lr
- .pool
- thumb_func_end atk36_bicbyte
-
- thumb_func_start atk37_bichalfword
-atk37_bichalfword: @ 804B524
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r3, [r4]
- ldrb r1, [r3, 0x1]
- ldrb r0, [r3, 0x2]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r3, 0x3]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r3, 0x4]
- lsls r0, 24
- adds r1, r0
- ldrb r2, [r3, 0x5]
- ldrb r0, [r3, 0x6]
- lsls r0, 8
- orrs r2, r0
- ldrh r0, [r1]
- bics r0, r2
- strh r0, [r1]
- ldr r0, [r4]
- adds r0, 0x7
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk37_bichalfword
-
- thumb_func_start atk38_bicword
-atk38_bicword: @ 804B55C
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r2, [r4]
- ldrb r3, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- adds r3, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- adds r3, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- adds r3, r0
- ldrb r1, [r2, 0x5]
- ldrb r0, [r2, 0x6]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x8]
- lsls r0, 24
- adds r1, r0
- ldr r0, [r3]
- bics r0, r1
- str r0, [r3]
- ldr r0, [r4]
- adds r0, 0x9
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk38_bicword
-
- thumb_func_start atk39_pause
-atk39_pause: @ 804B5A0
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r4, [r0]
- cmp r4, 0
- bne _0804B5CC
- ldr r5, =gBattlescriptCurrInstr
- ldr r2, [r5]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldr r3, =gUnknown_0202432C
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r1
- bcc _0804B5CC
- strh r4, [r3]
- adds r0, r2, 0x3
- str r0, [r5]
-_0804B5CC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk39_pause
-
- thumb_func_start atk3A_waitstate
-atk3A_waitstate: @ 804B5E0
- push {lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804B5F2
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_0804B5F2:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk3A_waitstate
-
- thumb_func_start atk3B_healthbar_update
-atk3B_healthbar_update: @ 804B600
- push {lr}
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _0804B620
- ldr r0, =gActiveBank
- ldr r1, =gBankTarget
- b _0804B624
- .pool
-_0804B620:
- ldr r0, =gActiveBank
- ldr r1, =gBankAttacker
-_0804B624:
- ldrb r1, [r1]
- strb r1, [r0]
- ldr r0, =gBattleMoveDamage
- ldrh r1, [r0]
- movs r0, 0
- bl dp01_build_cmdbuf_x18_0_aa_health_bar_update
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk3B_healthbar_update
-
- thumb_func_start atk3C_return
-atk3C_return: @ 804B658
- push {lr}
- bl b_movescr_stack_pop_cursor
- pop {r0}
- bx r0
- thumb_func_end atk3C_return
-
- thumb_func_start atk3D_end
-atk3D_end: @ 804B664
- push {lr}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _0804B67C
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl sub_81A5718
-_0804B67C:
- ldr r0, =gBattleMoveFlags
- movs r1, 0
- strb r1, [r0]
- ldr r0, =gActiveBank
- strb r1, [r0]
- ldr r1, =gFightStateTracker
- movs r0, 0xB
- strb r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk3D_end
-
- thumb_func_start atk3E_end2
-atk3E_end2: @ 804B6A4
- ldr r1, =gActiveBank
- movs r0, 0
- strb r0, [r1]
- ldr r1, =gFightStateTracker
- movs r0, 0xB
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end atk3E_end2
-
- thumb_func_start atk3F_end3
-atk3F_end3: @ 804B6BC
- push {lr}
- bl b_movescr_stack_pop_cursor
- ldr r3, =gBattleResources
- ldr r0, [r3]
- ldr r0, [r0, 0xC]
- adds r1, r0, 0
- adds r1, 0x20
- ldrb r0, [r1]
- cmp r0, 0
- beq _0804B6D6
- subs r0, 0x1
- strb r0, [r1]
-_0804B6D6:
- ldr r2, =gBattleMainFunc
- ldr r0, [r3]
- ldr r1, [r0, 0xC]
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- lsls r0, 2
- adds r1, r0
- ldr r0, [r1]
- str r0, [r2]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk3F_end3
-
- thumb_func_start atk41_call
-atk41_call: @ 804B6F8
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x5
- bl b_movescr_stack_push
- 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
- .pool
- thumb_func_end atk41_call
-
- thumb_func_start atk42_jumpiftype2
-atk42_jumpiftype2: @ 804B728
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- lsls r0, 24
- lsrs r0, 24
- ldr r3, [r4]
- ldr r2, =gBattleMons
- movs r1, 0x58
- muls r0, r1
- adds r0, r2
- adds r1, r0, 0
- adds r1, 0x21
- ldrb r2, [r3, 0x2]
- ldrb r1, [r1]
- cmp r2, r1
- beq _0804B756
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r2, r0
- bne _0804B778
-_0804B756:
- ldrb r1, [r3, 0x3]
- ldrb r0, [r3, 0x4]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r3, 0x5]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r3, 0x6]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- b _0804B77C
- .pool
-_0804B778:
- adds r0, r3, 0x7
- str r0, [r4]
-_0804B77C:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end atk42_jumpiftype2
-
- thumb_func_start atk43_jumpifabilitypresent
-atk43_jumpifabilitypresent: @ 804B784
- push {r4,lr}
- sub sp, 0x4
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r2, [r0, 0x1]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _0804B7C0
- ldr r2, [r4]
- 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, [r4]
- b _0804B7C6
- .pool
-_0804B7C0:
- ldr r0, [r4]
- adds r0, 0x6
- str r0, [r4]
-_0804B7C6:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end atk43_jumpifabilitypresent
-
- thumb_func_start atk44
-atk44: @ 804B7D0
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- adds r0, 0x54
- movs r1, 0x1
- strb r1, [r0]
- bx lr
- .pool
- thumb_func_end atk44
-
- thumb_func_start atk45_playanimation
-atk45_playanimation: @ 804B7EC
- push {r4-r6,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r6, =gActiveBank
- strb r0, [r6]
- ldr r2, [r5]
- ldrb r1, [r2, 0x3]
- ldrb r0, [r2, 0x4]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 24
- adds r3, r1, r0
- ldrb r4, [r2, 0x2]
- adds r0, r4, 0
- cmp r0, 0x1
- beq _0804B822
- cmp r0, 0x11
- beq _0804B822
- cmp r0, 0x2
- bne _0804B848
-_0804B822:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r1, [r0, 0x2]
- ldrh r2, [r3]
- movs r0, 0
- bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- ldr r0, [r4]
- adds r0, 0x7
- str r0, [r4]
- b _0804B8AA
- .pool
-_0804B848:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804B868
- adds r0, r2, 0x7
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DABB9
- b _0804B8A8
- .pool
-_0804B868:
- adds r0, r4, 0
- subs r0, 0xA
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _0804B894
- ldr r1, =gStatuses3
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- beq _0804B894
- adds r0, r2, 0x7
- b _0804B8A8
- .pool
-_0804B894:
- ldrb r1, [r2, 0x2]
- ldrh r2, [r3]
- movs r0, 0
- bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
- ldrb r0, [r6]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x7
-_0804B8A8:
- str r0, [r5]
-_0804B8AA:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk45_playanimation
-
- thumb_func_start atk46_playanimation2
-atk46_playanimation2: @ 804B8B0
- push {r4-r7,lr}
- ldr r6, =gBattlescriptCurrInstr
- ldr r0, [r6]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r7, =gActiveBank
- strb r0, [r7]
- ldr r2, [r6]
- ldrb r1, [r2, 0x2]
- ldrb r0, [r2, 0x3]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 24
- adds r3, r1, r0
- ldrb r1, [r2, 0x6]
- ldrb r0, [r2, 0x7]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x8]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x9]
- lsls r0, 24
- adds r4, r1, r0
- ldrb r5, [r3]
- adds r0, r5, 0
- cmp r0, 0x1
- beq _0804B8FA
- cmp r0, 0x11
- beq _0804B8FA
- cmp r0, 0x2
- bne _0804B920
-_0804B8FA:
- ldrb r1, [r3]
- ldrh r2, [r4]
- movs r0, 0
- bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0xA
- str r0, [r1]
- b _0804B976
- .pool
-_0804B920:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804B934
- adds r0, r2, 0
- b _0804B972
- .pool
-_0804B934:
- adds r0, r5, 0
- subs r0, 0xA
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _0804B960
- ldr r1, =gStatuses3
- ldrb r0, [r7]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- beq _0804B960
- adds r0, r2, 0
- b _0804B972
- .pool
-_0804B960:
- ldrb r1, [r3]
- ldrh r2, [r4]
- movs r0, 0
- bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
- ldrb r0, [r7]
- bl MarkBufferBankForExecution
- ldr r0, [r6]
-_0804B972:
- adds r0, 0xA
- str r0, [r6]
-_0804B976:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end atk46_playanimation2
-
- thumb_func_start atk47_setgraphicalstatchangevalues
-atk47_setgraphicalstatchangevalues: @ 804B97C
- push {r4,lr}
- movs r3, 0
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x1A]
- movs r2, 0xF0
- ands r2, r0
- adds r4, r1, 0
- cmp r2, 0x20
- beq _0804B9AA
- cmp r2, 0x20
- bgt _0804B99C
- cmp r2, 0x10
- beq _0804B9A6
- b _0804B9B4
- .pool
-_0804B99C:
- cmp r2, 0x90
- beq _0804B9AE
- cmp r2, 0xA0
- beq _0804B9B2
- b _0804B9B4
-_0804B9A6:
- movs r3, 0xF
- b _0804B9B4
-_0804B9AA:
- movs r3, 0x27
- b _0804B9B4
-_0804B9AE:
- movs r3, 0x16
- b _0804B9B4
-_0804B9B2:
- movs r3, 0x2E
-_0804B9B4:
- ldrb r1, [r4, 0x1A]
- movs r0, 0xF
- ands r0, r1
- adds r0, r3, r0
- subs r0, 0x1
- movs r1, 0
- strb r0, [r4, 0x10]
- strb r1, [r4, 0x11]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk47_setgraphicalstatchangevalues
-
- thumb_func_start atk48_playstatchangeanimation
-atk48_playstatchangeanimation: @ 804B9D8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r7, 0
- movs r0, 0
- mov r8, r0
- movs r3, 0
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- str r3, [sp]
- bl get_battle_side_of_something
- ldr r2, =gActiveBank
- strb r0, [r2]
- ldr r0, [r5]
- ldrb r4, [r0, 0x2]
- ldrb r1, [r0, 0x3]
- movs r0, 0x1
- ands r0, r1
- ldr r3, [sp]
- cmp r0, 0
- beq _0804BAEC
- movs r0, 0x2
- ands r0, r1
- movs r1, 0x15
- cmp r0, 0
- beq _0804BA18
- movs r1, 0x2D
-_0804BA18:
- cmp r4, 0
- beq _0804BAC0
- movs r0, 0x1
- mov r10, r0
- ldr r0, =gBattleMons + 0x18
- mov r9, r0
- lsls r5, r1, 16
-_0804BA26:
- adds r0, r4, 0
- mov r1, r10
- ands r0, r1
- cmp r0, 0
- beq _0804BAB2
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r1, [r0, 0x3]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0804BA58
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7, r0
- b _0804BAA0
- .pool
-_0804BA58:
- ldr r6, =gActiveBank
- ldrb r0, [r6]
- str r3, [sp]
- bl GetBankIdentity
- mov r1, r10
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSideTimers
- adds r0, r1
- ldrb r0, [r0, 0x4]
- ldr r3, [sp]
- cmp r0, 0
- bne _0804BAB2
- ldr r0, =gBattleMons
- ldrb r2, [r6]
- movs r1, 0x58
- muls r2, r1
- adds r0, r2, r0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1D
- beq _0804BAB2
- cmp r0, 0x49
- beq _0804BAB2
- cmp r0, 0x33
- bne _0804BA96
- cmp r7, 0x6
- beq _0804BAB2
-_0804BA96:
- cmp r0, 0x34
- bne _0804BA9E
- cmp r7, 0x1
- beq _0804BAB2
-_0804BA9E:
- adds r0, r7, r2
-_0804BAA0:
- add r0, r9
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- ble _0804BAB2
- lsrs r0, r5, 16
- mov r8, r0
- adds r3, 0x1
-_0804BAB2:
- lsrs r4, 1
- movs r1, 0x80
- lsls r1, 9
- adds r5, r1
- adds r7, 0x1
- cmp r4, 0
- bne _0804BA26
-_0804BAC0:
- ldr r0, =gBattlescriptCurrInstr
- mov r9, r0
- cmp r3, 0x1
- ble _0804BB4E
- ldr r0, [r0]
- ldrb r1, [r0, 0x3]
- movs r0, 0x2
- ands r0, r1
- movs r1, 0x39
- mov r8, r1
- cmp r0, 0
- beq _0804BB4E
- movs r0, 0x3A
- b _0804BB4C
- .pool
-_0804BAEC:
- movs r0, 0x2
- ands r0, r1
- movs r1, 0xE
- cmp r0, 0
- beq _0804BAF8
- movs r1, 0x26
-_0804BAF8:
- mov r9, r5
- cmp r4, 0
- beq _0804BB34
- ldr r6, =gBattleMons + 0x18
- adds r5, r2, 0
- lsls r2, r1, 16
-_0804BB04:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0804BB26
- ldrb r1, [r5]
- movs r0, 0x58
- muls r0, r1
- adds r0, r7, r0
- adds r0, r6
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0xB
- bgt _0804BB26
- lsrs r1, r2, 16
- mov r8, r1
- adds r3, 0x1
-_0804BB26:
- lsrs r4, 1
- movs r0, 0x80
- lsls r0, 9
- adds r2, r0
- adds r7, 0x1
- cmp r4, 0
- bne _0804BB04
-_0804BB34:
- cmp r3, 0x1
- ble _0804BB4E
- mov r1, r9
- ldr r0, [r1]
- ldrb r1, [r0, 0x3]
- movs r0, 0x2
- ands r0, r1
- movs r1, 0x37
- mov r8, r1
- cmp r0, 0
- beq _0804BB4E
- movs r0, 0x38
-_0804BB4C:
- mov r8, r0
-_0804BB4E:
- mov r1, r9
- ldr r2, [r1]
- ldrb r1, [r2, 0x3]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0804BB6C
- cmp r3, 0x1
- bgt _0804BB6C
- adds r0, r2, 0x4
- mov r1, r9
- b _0804BBBA
- .pool
-_0804BB6C:
- cmp r3, 0
- beq _0804BBB4
- ldr r4, =gBattleScripting
- ldrb r0, [r4, 0x1B]
- cmp r0, 0
- bne _0804BBB4
- movs r0, 0
- movs r1, 0x1
- mov r2, r8
- str r3, [sp]
- bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r1, [r0, 0x3]
- movs r0, 0x4
- ands r0, r1
- ldr r3, [sp]
- cmp r0, 0
- beq _0804BBA4
- cmp r3, 0x1
- ble _0804BBA4
- movs r0, 0x1
- strb r0, [r4, 0x1B]
-_0804BBA4:
- ldr r1, =gBattlescriptCurrInstr
- b _0804BBB6
- .pool
-_0804BBB4:
- mov r1, r9
-_0804BBB6:
- ldr r0, [r1]
- adds r0, 0x4
-_0804BBBA:
- str 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 atk48_playstatchangeanimation
-
- thumb_func_start atk49_moveendturn
-atk49_moveendturn: @ 804BBCC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x1C
- movs r0, 0
- mov r10, r0
- ldr r2, =gUnknown_020241EC
- ldrh r1, [r2]
- ldr r0, =0x0000ffff
- movs r3, 0
- str r3, [sp, 0x18]
- cmp r1, r0
- beq _0804BBEE
- ldrh r2, [r2]
- str r2, [sp, 0x18]
-_0804BBEE:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r4, [r0, 0x1]
- str r4, [sp, 0x10]
- ldrb r0, [r0, 0x2]
- str r0, [sp, 0x14]
- ldr r1, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, r0, r1
- ldrh r0, [r1, 0x2E]
- cmp r0, 0xAF
- bne _0804BC34
- ldr r1, =gEnigmaBerries
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x7]
- b _0804BC3E
- .pool
-_0804BC34:
- ldrh r0, [r1, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r0, 24
-_0804BC3E:
- str r0, [sp, 0x8]
- ldr r1, =gBattleStruct
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, 0xC8
- ldr r1, [r1]
- adds r0, r1, r0
- str r0, [sp, 0xC]
- ldrb r0, [r1, 0x13]
- cmp r0, 0
- beq _0804BCF0
- movs r5, 0x3F
- ands r5, r0
- str r5, [sp, 0x4]
- b _0804BD02
- .pool
-_0804BC68:
- ldr r4, =gActiveBank
- strb r2, [r4]
- movs r0, 0
- movs r1, 0x1
- bl dp01_build_cmdbuf_x33_a_33_33
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _0804C15A
- .pool
-_0804BC80:
- ldr r4, =gActiveBank
- strb r2, [r4]
- movs r0, 0
- movs r1, 0
- bl dp01_build_cmdbuf_x33_a_33_33
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldrb r1, [r6]
- lsls r1, 2
- adds r1, r5
- ldr r0, [r1]
- ldr r2, =0xfffbff3f
- ands r0, r2
- str r0, [r1]
- b _0804C15A
- .pool
-_0804BCAC:
- strb r2, [r7]
- ldr r0, [r5]
- orrs r0, r6
- str r0, [r5]
- ldr r0, =gBattleScripting
- strb r4, [r0, 0x14]
- bl sub_804AF30
- ldr r2, =gUnknown_082D86A8
- mov r0, r8
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- add r0, r9
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- bl b_movescr_stack_push
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB87D
- bl _0804C5B8
- .pool
-_0804BCF0:
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x2]
- str r0, [sp, 0x4]
-_0804BD02:
- ldr r1, =gBattleScripting
- mov r12, r1
- b _0804BD1E
- .pool
-_0804BD14:
- mov r2, r10
- cmp r2, 0
- beq _0804BD1E
- bl _0804C5A4
-_0804BD1E:
- mov r3, r12
- ldrb r0, [r3, 0x14]
- cmp r0, 0x11
- bls _0804BD2A
- bl _0804C570
-_0804BD2A:
- lsls r0, 2
- ldr r1, =_0804BD38
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804BD38:
- .4byte _0804BD80
- .4byte _0804BE5C
- .4byte _0804BF18
- .4byte _0804BF3C
- .4byte _0804BF54
- .4byte _0804BF7C
- .4byte _0804BFA0
- .4byte _0804C048
- .4byte _0804C0BE
- .4byte _0804C0F4
- .4byte _0804C194
- .4byte _0804C088
- .4byte _0804C0A8
- .4byte _0804C1D8
- .4byte _0804C21C
- .4byte _0804C3FC
- .4byte _0804C4E4
- .4byte _0804C570
-_0804BD80:
- ldr r6, =gBattleMons
- ldr r5, =gBankTarget
- ldrb r3, [r5]
- movs r7, 0x58
- adds r2, r3, 0
- muls r2, r7
- adds r0, r6, 0
- adds r0, 0x50
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 16
- ands r0, r1
- cmp r0, 0
- bne _0804BDA0
- b _0804C184
-_0804BDA0:
- adds r0, r2, r6
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- bne _0804BDAA
- b _0804C184
-_0804BDAA:
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- cmp r1, r3
- bne _0804BDB4
- b _0804C184
-_0804BDB4:
- adds r0, r1, 0
- bl GetBankSide
- adds r4, r0, 0
- ldrb r0, [r5]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _0804BDCC
- b _0804C184
-_0804BDCC:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- beq _0804BDDA
- b _0804C184
-_0804BDDA:
- ldr r2, =gSpecialStatuses
- ldrb r3, [r5]
- lsls r0, r3, 2
- adds r0, r3
- lsls r1, r0, 2
- adds r0, r2, 0
- adds r0, 0x8
- adds r0, r1, r0
- ldr r0, [r0]
- cmp r0, 0
- bne _0804BDFE
- adds r0, r2, 0
- adds r0, 0xC
- adds r0, r1, r0
- ldr r0, [r0]
- cmp r0, 0
- bne _0804BDFE
- b _0804C184
-_0804BDFE:
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _0804BE14
- b _0804C184
-_0804BE14:
- adds r0, r3, 0
- muls r0, r7
- adds r1, r0, r6
- ldrb r2, [r1, 0x19]
- movs r0, 0x19
- ldrsb r0, [r1, r0]
- cmp r0, 0xB
- ble _0804BE26
- b _0804C184
-_0804BE26:
- adds r0, r2, 0x1
- strb r0, [r1, 0x19]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAE0D
- str r0, [r1]
- b _0804C0B8
- .pool
-_0804BE5C:
- ldr r4, =gBattleMons
- ldr r6, =gBankTarget
- ldrb r2, [r6]
- movs r5, 0x58
- mov r12, r5
- mov r1, r12
- muls r1, r2
- adds r7, r4, 0
- adds r7, 0x4C
- adds r5, r1, r7
- ldr r3, [r5]
- movs r0, 0x20
- ands r0, r3
- cmp r0, 0
- bne _0804BE7C
- b _0804C184
-_0804BE7C:
- adds r0, r1, r4
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- bne _0804BE86
- b _0804C184
-_0804BE86:
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- cmp r0, r2
- bne _0804BE90
- b _0804C184
-_0804BE90:
- ldr r0, =gSpecialStatuses
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 2
- adds r0, 0xC
- adds r1, r0
- ldr r0, [r1]
- cmp r0, 0
- bne _0804BEA4
- b _0804C184
-_0804BEA4:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- beq _0804BEB2
- b _0804C184
-_0804BEB2:
- ldr r0, [sp, 0x4]
- cmp r0, 0xA
- beq _0804BEBA
- b _0804C184
-_0804BEBA:
- movs r0, 0x21
- negs r0, r0
- ands r3, r0
- str r3, [r5]
- ldr r4, =gActiveBank
- ldrb r0, [r6]
- strb r0, [r4]
- ldrb r0, [r6]
- mov r1, r12
- muls r1, r0
- adds r0, r1, 0
- adds r0, r7
- str r0, [sp]
- movs r0, 0
- movs r1, 0x28
- movs r2, 0
- movs r3, 0x4
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB282
- str r0, [r1]
- movs r2, 0x1
- mov r10, r2
- b _0804C184
- .pool
-_0804BF18:
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x7
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _0804BF32
- b _0804C184
-_0804BF32:
- movs r3, 0x1
- mov r10, r3
- b _0804C184
- .pool
-_0804BF3C:
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x4
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- b _0804C0B2
- .pool
-_0804BF54:
- movs r0, 0
- str r0, [sp]
- movs r0, 0x5
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _0804BF6C
- b _0804C184
-_0804BF6C:
- movs r5, 0x1
- mov r10, r5
- ldr r0, =gBattleScripting
- mov r12, r0
- b _0804C570
- .pool
-_0804BF7C:
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x8
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _0804BF96
- b _0804C184
-_0804BF96:
- movs r1, 0x1
- mov r10, r1
- b _0804C184
- .pool
-_0804BFA0:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 18
- ands r0, r1
- cmp r0, 0
- beq _0804BFE4
- ldr r2, [sp, 0x8]
- cmp r2, 0x1D
- bne _0804BFE4
- ldr r0, =gUnknown_020241EC
- ldrh r2, [r0]
- adds r3, r0, 0
- cmp r2, 0xA5
- beq _0804BFE4
- ldr r4, [sp, 0xC]
- ldrh r1, [r4]
- cmp r1, 0
- beq _0804BFCC
- ldr r0, =0x0000ffff
- cmp r1, r0
- bne _0804BFE4
-_0804BFCC:
- cmp r2, 0xE2
- bne _0804BFDE
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _0804BFDE
- b _0804C4B6
-_0804BFDE:
- ldrh r0, [r3]
- ldr r1, [sp, 0xC]
- strh r0, [r1]
-_0804BFE4:
- movs r4, 0
- ldr r2, =gBattleMons
- ldr r3, =gBankAttacker
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- adds r2, 0xC
- adds r0, r2
- ldrh r0, [r0]
- ldr r5, [sp, 0xC]
- ldrh r1, [r5]
- mov r9, r3
- cmp r0, r1
- beq _0804C01C
- mov r6, r9
- movs r3, 0x58
- adds r5, r1, 0
-_0804C006:
- adds r4, 0x1
- cmp r4, 0x3
- bgt _0804C01C
- lsls r0, r4, 1
- ldrb r1, [r6]
- muls r1, r3
- adds r0, r1
- adds r0, r2
- ldrh r0, [r0]
- cmp r0, r5
- bne _0804C006
-_0804C01C:
- cmp r4, 0x4
- bne _0804C026
- movs r0, 0
- ldr r1, [sp, 0xC]
- strh r0, [r1]
-_0804C026:
- mov r2, r12
- ldrb r0, [r2, 0x14]
- adds r0, 0x1
- strb r0, [r2, 0x14]
- b _0804C570
- .pool
-_0804C048:
- movs r4, 0
- ldr r0, =gNoOfAllBanks
- ldrb r3, [r0]
- cmp r4, r3
- blt _0804C054
- b _0804C202
-_0804C054:
- ldr r7, =gBattleStruct
- movs r6, 0
- movs r3, 0xD0
- adds r5, r0, 0
- ldr r2, =gBattleMons
-_0804C05E:
- ldr r0, [r7]
- adds r0, r3
- ldrh r1, [r0]
- cmp r1, 0
- beq _0804C06C
- strh r1, [r2, 0x2E]
- strh r6, [r0]
-_0804C06C:
- adds r3, 0x2
- adds r2, 0x58
- adds r4, 0x1
- ldrb r0, [r5]
- cmp r4, r0
- blt _0804C05E
- b _0804C202
- .pool
-_0804C088:
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl ItemBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _0804C184
- movs r2, 0x1
- mov r10, r2
- ldr r3, =gBattleScripting
- mov r12, r3
- b _0804C570
- .pool
-_0804C0A8:
- movs r0, 0x4
- movs r1, 0
- movs r2, 0
- bl ItemBattleEffects
-_0804C0B2:
- lsls r0, 24
- cmp r0, 0
- beq _0804C184
-_0804C0B8:
- movs r4, 0x1
- mov r10, r4
- b _0804C184
-_0804C0BE:
- ldr r1, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- bne _0804C0D4
- b _0804C4B6
-_0804C0D4:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804C0E2
- b _0804BC68
-_0804C0E2:
- b _0804C4B6
- .pool
-_0804C0F4:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _0804C120
- ldr r1, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- beq _0804C120
- adds r0, r2, 0
- bl sub_803F90C
- lsls r0, 24
- cmp r0, 0
- beq _0804C184
-_0804C120:
- ldr r4, =gActiveBank
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- strb r0, [r4]
- movs r0, 0
- movs r1, 0
- bl dp01_build_cmdbuf_x33_a_33_33
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, =gStatuses3
- ldrb r2, [r5]
- lsls r2, 2
- adds r2, r0
- ldr r0, [r2]
- ldr r1, =0xfffbff3f
- ands r0, r1
- str r0, [r2]
- ldr r2, =gSpecialStatuses
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_0804C15A:
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x14]
- adds r0, 0x1
- strb r0, [r1, 0x14]
- b _0804C5BA
- .pool
-_0804C184:
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x14]
- adds r0, 0x1
- strb r0, [r1, 0x14]
- mov r12, r1
- b _0804C570
- .pool
-_0804C194:
- ldr r0, =gSpecialStatuses
- ldr r6, =gBankTarget
- ldrb r2, [r6]
- lsls r3, r2, 2
- adds r1, r3, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 29
- cmp r0, 0
- blt _0804C202
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r2, r0
- bcs _0804C202
- ldr r5, =gStatuses3
- adds r0, r3, r5
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- bne _0804C1C2
- b _0804BC80
-_0804C1C2:
- b _0804C202
- .pool
-_0804C1D8:
- movs r4, 0
- ldr r0, =gNoOfAllBanks
- ldrb r2, [r0]
- cmp r4, r2
- bge _0804C202
- ldr r2, =gDisableStructs
- ldr r5, =0xfeffffff
- adds r3, r0, 0
- ldr r1, =gBattleMons + 0x50
-_0804C1EA:
- ldrb r0, [r2, 0xA]
- cmp r0, 0
- bne _0804C1F6
- ldr r0, [r1]
- ands r0, r5
- str r0, [r1]
-_0804C1F6:
- adds r2, 0x1C
- adds r1, 0x58
- adds r4, 0x1
- ldrb r0, [r3]
- cmp r4, r0
- blt _0804C1EA
-_0804C202:
- mov r1, r12
- ldrb r0, [r1, 0x14]
- adds r0, 0x1
- strb r0, [r1, 0x14]
- b _0804C570
- .pool
-_0804C21C:
- ldr r1, =gHitMarker
- ldr r3, [r1]
- movs r0, 0x80
- lsls r0, 5
- ands r0, r3
- ldr r2, =gBankAttacker
- mov r9, r2
- adds r5, r1, 0
- cmp r0, 0
- beq _0804C246
- ldr r0, =gActiveBank
- ldrb r2, [r2]
- strb r2, [r0]
- ldr r1, =gBankTarget
- ldrb r0, [r1]
- mov r4, r9
- strb r0, [r4]
- strb r2, [r1]
- ldr r0, =0xffffefff
- ands r3, r0
- str r3, [r5]
-_0804C246:
- ldr r0, [r5]
- movs r1, 0x80
- lsls r1, 3
- ands r0, r1
- cmp r0, 0
- beq _0804C262
- ldr r0, =gUnknown_02024240
- mov r2, r9
- ldrb r1, [r2]
- lsls r1, 1
- adds r1, r0
- ldr r0, =gUnknown_020241EC
- ldrh r0, [r0]
- strh r0, [r1]
-_0804C262:
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- mov r3, r9
- ldrb r4, [r3]
- lsls r0, r4, 2
- adds r0, r2
- ldr r3, [r0]
- ands r1, r3
- adds r6, r2, 0
- cmp r1, 0
- beq _0804C27C
- b _0804C3E8
-_0804C27C:
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r1, 0x91
- ldrb r1, [r1]
- ands r1, r3
- adds r7, r0, 0
- cmp r1, 0
- beq _0804C28E
- b _0804C3E8
-_0804C28E:
- ldr r0, =gBattleMoves
- ldr r2, [sp, 0x18]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r1, [r1]
- mov r8, r0
- cmp r1, 0x7F
- bne _0804C2A4
- b _0804C3E8
-_0804C2A4:
- ldr r0, [r5]
- movs r1, 0x80
- lsls r1, 18
- ands r0, r1
- cmp r0, 0
- beq _0804C308
- ldr r0, =gLastUsedMovesByBanks
- lsls r1, r4, 1
- adds r1, r0
- ldr r0, =gUnknown_020241EC
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r0, =gUnknown_02024260
- mov r3, r9
- ldrb r1, [r3]
- lsls r1, 1
- adds r1, r0
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- strh r0, [r1]
- b _0804C322
- .pool
-_0804C308:
- ldr r1, =gLastUsedMovesByBanks
- lsls r0, r4, 1
- adds r0, r1
- ldr r1, =0x0000ffff
- strh r1, [r0]
- ldr r1, =gUnknown_02024260
- mov r4, r9
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- movs r1, 0x1
- negs r1, r1
- strh r1, [r0]
-_0804C322:
- ldr r2, =gBankTarget
- ldrb r3, [r2]
- lsls r0, r3, 2
- adds r0, r6
- ldr r0, [r0]
- lsls r0, 28
- ldr r1, [r5]
- ands r1, r0
- cmp r1, 0
- bne _0804C340
- ldr r0, =gUnknown_02024270
- adds r0, r3, r0
- mov r3, r9
- ldrb r1, [r3]
- strb r1, [r0]
-_0804C340:
- ldr r0, [r5]
- movs r1, 0x80
- lsls r1, 18
- ands r0, r1
- cmp r0, 0
- beq _0804C3DC
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _0804C3DC
- ldr r0, =gUnknown_020241EC
- ldrh r3, [r0]
- ldr r0, =0x0000ffff
- cmp r3, r0
- bne _0804C390
- ldr r1, =gUnknown_02024250
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r1
- strh r3, [r0]
- b _0804C3E8
- .pool
-_0804C390:
- ldr r0, =gUnknown_02024250
- ldrb r1, [r2]
- lsls r1, 1
- adds r1, r0
- ldr r4, =gCurrentMove
- ldrh r0, [r4]
- strh r0, [r1]
- ldr r0, [r7]
- ldrb r3, [r0, 0x13]
- cmp r3, 0
- beq _0804C3C0
- ldr r0, =gUnknown_02024258
- ldrb r1, [r2]
- lsls r1, 1
- adds r1, r0
- movs r0, 0x3F
- ands r0, r3
- b _0804C3E6
- .pool
-_0804C3C0:
- ldr r0, =gUnknown_02024258
- ldrb r2, [r2]
- lsls r2, 1
- adds r2, r0
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- add r0, r8
- ldrb r0, [r0, 0x2]
- strh r0, [r2]
- b _0804C3E8
- .pool
-_0804C3DC:
- ldr r0, =gUnknown_02024250
- ldrb r1, [r2]
- lsls r1, 1
- adds r1, r0
- ldr r0, =0x0000ffff
-_0804C3E6:
- strh r0, [r1]
-_0804C3E8:
- mov r4, r12
- ldrb r0, [r4, 0x14]
- adds r0, 0x1
- strb r0, [r4, 0x14]
- b _0804C570
- .pool
-_0804C3FC:
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r7, =gBitTable
- ldr r2, =gBankAttacker
- ldrb r3, [r2]
- lsls r0, r3, 2
- adds r0, r7
- ldr r4, [r0]
- ands r1, r4
- mov r9, r2
- cmp r1, 0
- bne _0804C4B6
- ldr r6, =gBattleStruct
- ldr r5, [r6]
- adds r0, r5, 0
- adds r0, 0x91
- ldrb r0, [r0]
- ands r0, r4
- cmp r0, 0
- bne _0804C4B6
- ldr r1, =gBattleMoves
- ldr r2, [sp, 0x18]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x8]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0804C4B6
- ldr r0, =gHitMarker
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 18
- ands r0, r1
- cmp r0, 0
- beq _0804C4B6
- ldr r4, =gBankTarget
- ldrb r0, [r4]
- cmp r3, r0
- beq _0804C4B6
- ldrb r2, [r4]
- lsls r0, r2, 2
- adds r0, r7
- ldr r0, [r0]
- lsls r0, 28
- ands r1, r0
- cmp r1, 0
- bne _0804C4B6
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _0804C4B6
- lsls r1, r2, 1
- adds r1, r5
- adds r1, 0x98
- ldr r3, =gUnknown_020241EC
- ldrh r0, [r3]
- strb r0, [r1]
- ldrb r1, [r4]
- ldr r0, [r6]
- lsls r1, 1
- adds r1, r0
- adds r1, 0x99
- ldrh r0, [r3]
- lsrs r0, 8
- strb r0, [r1]
- ldrb r0, [r4]
- mov r2, r9
- ldrb r1, [r2]
- ldr r2, [r6]
- lsls r0, 3
- lsls r1, 1
- adds r0, r1
- adds r0, r2
- adds r0, 0xE0
- ldrh r1, [r3]
- strb r1, [r0]
- ldrb r1, [r4]
- mov r4, r9
- ldrb r0, [r4]
- ldr r2, [r6]
- lsls r1, 3
- lsls r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0xE1
- ldrh r0, [r3]
- lsrs r0, 8
- strb r0, [r1]
-_0804C4B6:
- mov r5, r12
- ldrb r0, [r5, 0x14]
- adds r0, 0x1
- strb r0, [r5, 0x14]
- b _0804C570
- .pool
-_0804C4E4:
- ldr r5, =gHitMarker
- ldr r2, [r5]
- movs r0, 0x80
- lsls r0, 12
- ands r0, r2
- cmp r0, 0
- bne _0804C568
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0804C568
- ldr r1, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x1]
- lsls r0, 29
- cmp r0, 0
- blt _0804C568
- ldr r0, =gBattleMoves
- mov r9, r0
- ldr r1, =gCurrentMove
- mov r8, r1
- ldrh r0, [r1]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- add r1, r9
- ldrb r0, [r1, 0x6]
- cmp r0, 0x8
- bne _0804C568
- movs r6, 0x80
- lsls r6, 2
- adds r4, r6, 0
- ands r4, r2
- cmp r4, 0
- bne _0804C568
- ldr r7, =gBankTarget
- ldrb r0, [r7]
- bl GetBankIdentity
- movs r1, 0x2
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r2
- adds r0, r1
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _0804C55E
- bl _0804BCAC
-_0804C55E:
- ldr r0, [r5]
- orrs r0, r6
- str r0, [r5]
- ldr r2, =gBattleScripting
- mov r12, r2
-_0804C568:
- mov r3, r12
- ldrb r0, [r3, 0x14]
- adds r0, 0x1
- strb r0, [r3, 0x14]
-_0804C570:
- ldr r4, [sp, 0x10]
- cmp r4, 0x1
- bne _0804C582
- mov r5, r10
- cmp r5, 0
- bne _0804C582
- movs r0, 0x11
- mov r1, r12
- strb r0, [r1, 0x14]
-_0804C582:
- ldr r2, [sp, 0x10]
- cmp r2, 0x2
- bne _0804C598
- ldr r4, [sp, 0x14]
- mov r3, r12
- ldrb r3, [r3, 0x14]
- cmp r4, r3
- bne _0804C598
- movs r0, 0x11
- mov r4, r12
- strb r0, [r4, 0x14]
-_0804C598:
- mov r5, r12
- ldrb r0, [r5, 0x14]
- cmp r0, 0x11
- beq _0804C5A4
- bl _0804BD14
-_0804C5A4:
- mov r1, r12
- ldrb r0, [r1, 0x14]
- cmp r0, 0x11
- bne _0804C5BA
- mov r2, r10
- cmp r2, 0
- bne _0804C5BA
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x3
-_0804C5B8:
- str r0, [r1]
-_0804C5BA:
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk49_moveendturn
-
- thumb_func_start atk4A_typecalc2
-atk4A_typecalc2: @ 804C5F4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r4, 0
- movs r5, 0
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x2]
- mov r8, r0
- ldr r2, =gBattleMons
- ldr r3, =gBankTarget
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r0, [r0]
- mov r12, r2
- adds r7, r3, 0
- cmp r0, 0x1A
- bne _0804C688
- mov r1, r8
- cmp r1, 0x4
- bne _0804C688
- ldr r3, =gLastUsedAbility
- strb r0, [r3]
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x9
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gUnknown_02024250
- ldrb r0, [r7]
- lsls r0, 1
- adds r0, r1
- strh r4, [r0]
- ldr r0, =gBattleCommunication
- mov r2, r8
- strb r2, [r0, 0x6]
- ldrb r0, [r7]
- ldrb r1, [r3]
- bl RecordAbilityBattle
- b _0804C76A
- .pool
-_0804C678:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0]
- b _0804C76A
- .pool
-_0804C688:
- ldr r1, =gUnknown_0831ACE8
- adds r0, r5, r1
- ldrb r0, [r0]
- adds r6, r1, 0
- b _0804C74A
- .pool
-_0804C698:
- adds r0, r5, r6
- ldrb r0, [r0]
- cmp r0, r8
- bne _0804C744
- adds r2, r5, 0x1
- adds r3, r2, r6
- ldrb r1, [r7]
- movs r0, 0x58
- muls r0, r1
- add r0, r12
- adds r0, 0x21
- ldrb r1, [r3]
- adds r3, r2, 0
- ldrb r0, [r0]
- cmp r1, r0
- bne _0804C6D6
- adds r0, r5, 0x2
- adds r0, r6
- ldrb r1, [r0]
- cmp r1, 0
- beq _0804C678
- cmp r1, 0x5
- bne _0804C6CA
- movs r0, 0x4
- orrs r4, r0
-_0804C6CA:
- cmp r1, 0x14
- bne _0804C6D6
- movs r0, 0x2
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_0804C6D6:
- adds r2, r3, r6
- ldrb r1, [r7]
- movs r0, 0x58
- muls r0, r1
- add r0, r12
- adds r1, r0, 0
- adds r1, 0x22
- ldrb r2, [r2]
- ldrb r1, [r1]
- cmp r2, r1
- bne _0804C744
- adds r0, 0x21
- ldrb r1, [r0]
- cmp r1, r2
- beq _0804C6FE
- adds r0, r5, 0x2
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804C678
-_0804C6FE:
- cmp r1, r2
- beq _0804C714
- adds r0, r5, 0x2
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0x5
- bne _0804C714
- movs r0, 0x4
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_0804C714:
- adds r2, r3, r6
- ldrb r1, [r7]
- movs r0, 0x58
- muls r0, r1
- add r0, r12
- adds r1, r0, 0
- adds r1, 0x22
- ldrb r2, [r2]
- ldrb r1, [r1]
- cmp r2, r1
- bne _0804C744
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, r2
- beq _0804C744
- adds r0, r5, 0x2
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0x14
- bne _0804C744
- movs r0, 0x2
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_0804C744:
- adds r5, 0x3
- adds r0, r5, r6
- ldrb r0, [r0]
-_0804C74A:
- cmp r0, 0xFF
- beq _0804C76A
- cmp r0, 0xFE
- bne _0804C698
- ldrb r1, [r7]
- movs r0, 0x58
- muls r0, r1
- mov r1, r12
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 22
- ands r0, r1
- cmp r0, 0
- beq _0804C744
-_0804C76A:
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- mov r8, r0
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r6, [r0]
- cmp r6, 0x19
- bne _0804C7E6
- movs r5, 0x29
- ands r5, r4
- cmp r5, 0
- bne _0804C7E6
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- ldr r7, =gCurrentMove
- ldrh r1, [r7]
- bl move_weather_interaction
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bne _0804C7E6
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _0804C7AC
- movs r0, 0x6
- ands r4, r0
- cmp r4, 0x6
- bne _0804C7E6
-_0804C7AC:
- ldr r2, =gBattleMoves
- ldrh r1, [r7]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _0804C7E6
- ldr r3, =gLastUsedAbility
- strb r6, [r3]
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gUnknown_02024250
- mov r2, r8
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r1
- strh r5, [r0]
- ldr r1, =gBattleCommunication
- movs r0, 0x3
- strb r0, [r1, 0x6]
- ldrb r0, [r2]
- ldrb r1, [r3]
- bl RecordAbilityBattle
-_0804C7E6:
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0804C804
- ldr r2, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 4
- adds r1, r2
- ldrb r0, [r1, 0x1]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1, 0x1]
-_0804C804:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk4A_typecalc2
-
- thumb_func_start atk4B_return_atk_to_ball
-atk4B_return_atk_to_ball: @ 804C844
- push {r4,lr}
- ldr r4, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r4]
- ldr r2, =gHitMarker
- ldr r1, =gBitTable
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r2]
- ands r0, r1
- cmp r0, 0
- bne _0804C872
- movs r0, 0
- movs r1, 0
- bl dp01_build_cmdbuf_x06_a
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0804C872:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk4B_return_atk_to_ball
-
- thumb_func_start atk4C_copy_poke_data
-atk4C_copy_poke_data: @ 804C894
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804C8E4
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r3, =gBattlePartyID
- ldrb r0, [r4]
- lsls r2, r0, 1
- adds r2, r3
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- strh r0, [r2]
- ldr r1, =gBitTable
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldrb r2, [r0]
- movs r0, 0
- movs r1, 0
- bl dp01_build_cmdbuf_x00_a_b_0
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
-_0804C8E4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk4C_copy_poke_data
-
- thumb_func_start atk4D_switch_data_update
-atk4D_switch_data_update: @ 804C904
- push {r4-r7,lr}
- sub sp, 0x58
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _0804C912
- b _0804CAA4
-_0804C912:
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r6, =gBattleMons
- ldrb r0, [r4]
- movs r5, 0x58
- adds r1, r0, 0
- muls r1, r5
- adds r1, r6
- mov r0, sp
- movs r2, 0x58
- bl memcpy
- ldrb r0, [r4]
- muls r0, r5
- adds r3, r0, r6
- movs r2, 0
- ldr r5, =gBattleBufferB
-_0804C93E:
- adds r0, r3, r2
- ldrb r1, [r4]
- lsls r1, 9
- adds r1, 0x4
- adds r1, r2, r1
- adds r1, r5
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x57
- bls _0804C93E
- ldr r4, =gBattleMons
- ldr r6, =gActiveBank
- ldrb r0, [r6]
- movs r7, 0x58
- adds r2, r0, 0
- muls r2, r7
- adds r2, r4
- ldr r3, =gBaseStats
- ldrh r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x6]
- adds r2, 0x21
- strb r0, [r2]
- ldrb r0, [r6]
- adds r1, r0, 0
- muls r1, r7
- adds r1, r4
- ldrh r2, [r1]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x7]
- adds r1, 0x22
- strb r0, [r1]
- ldrb r0, [r6]
- adds r1, r0, 0
- muls r1, r7
- adds r1, r4
- ldrh r0, [r1]
- ldrb r1, [r1, 0x17]
- lsrs r1, 7
- bl GetAbilityBySpecies
- ldrb r1, [r6]
- muls r1, r7
- adds r1, r4
- adds r1, 0x20
- strb r0, [r1]
- ldrb r0, [r6]
- bl GetBankSide
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gWishFutureKnock
- adds r0, 0x29
- adds r0, r2, r0
- ldrb r1, [r0]
- ldr r3, =gBitTable
- ldr r2, =gBattlePartyID
- ldrb r5, [r6]
- lsls r0, r5, 1
- adds r0, r2
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- ands r1, r0
- mov r12, r4
- cmp r1, 0
- beq _0804C9DE
- adds r0, r5, 0
- muls r0, r7
- add r0, r12
- movs r1, 0
- strh r1, [r0, 0x2E]
-_0804C9DE:
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x7F
- bne _0804CA26
- movs r2, 0
- adds r4, r6, 0
- movs r6, 0x58
- mov r5, r12
- adds r5, 0x18
- add r3, sp, 0x18
-_0804C9FE:
- ldrb r0, [r4]
- adds r1, r0, 0
- muls r1, r6
- adds r1, r2, r1
- adds r1, r5
- adds r0, r3, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r2, 0x1
- cmp r2, 0x7
- ble _0804C9FE
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- mov r1, r12
- adds r1, 0x50
- adds r0, r1
- ldr r1, [sp, 0x50]
- str r1, [r0]
-_0804CA26:
- bl sub_803A284
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 10
- ands r0, r1
- cmp r0, 0
- beq _0804CA78
- ldr r4, =gBattleMons
- ldr r0, =gActiveBank
- ldrb r3, [r0]
- movs r0, 0x58
- adds r2, r3, 0
- muls r2, r0
- adds r1, r2, r4
- ldrh r0, [r1, 0x2C]
- lsrs r0, 1
- ldrh r1, [r1, 0x28]
- cmp r0, r1
- bcc _0804CA78
- cmp r1, 0
- beq _0804CA78
- adds r0, r4, 0
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- bne _0804CA78
- ldr r0, =gBattleStruct
- ldr r2, [r0]
- adds r2, 0x92
- ldr r1, =gBitTable
- lsls r0, r3, 2
- adds r0, r1
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
-_0804CA78:
- ldr r0, =gBattleScripting
- ldr r3, =gActiveBank
- ldrb r2, [r3]
- strb r2, [r0, 0x17]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x7
- strb r0, [r1, 0x1]
- strb r2, [r1, 0x2]
- ldr r2, =gBattlePartyID
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_0804CAA4:
- add sp, 0x58
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk4D_switch_data_update
-
- thumb_func_start atk4E_switchin_anim
-atk4E_switchin_anim: @ 804CAE8
- push {r4-r6,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804CB86
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r6, =gActiveBank
- strb r0, [r6]
- ldrb r0, [r6]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0804CB3E
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x063f0902
- ands r0, r1
- cmp r0, 0
- bne _0804CB3E
- ldr r4, =gBattleMons
- ldrb r0, [r6]
- movs r5, 0x58
- muls r0, r5
- adds r0, r4
- ldrh r0, [r0]
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r6]
- muls r1, r5
- adds r4, 0x48
- adds r1, r4
- ldr r2, [r1]
- movs r1, 0x2
- bl HandleSetPokedexFlag
-_0804CB3E:
- ldr r2, =gAbsentBankFlags
- ldr r1, =gBitTable
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- ldrb r0, [r2]
- bics r0, r1
- strb r0, [r2]
- ldr r1, =gBattlePartyID
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrb r1, [r0]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r2, [r0, 0x2]
- movs r0, 0
- bl dp01_build_cmdbuf_x05_a_b_c
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- ldr r0, [r4]
- adds r0, 0x3
- str r0, [r4]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _0804CB86
- bl sub_81A56B4
-_0804CB86:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk4E_switchin_anim
-
- thumb_func_start atk4F_jump_if_cannot_switch
-atk4F_jump_if_cannot_switch: @ 804CBB0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r1, [r0, 0x1]
- movs r0, 0x7F
- ands r0, r1
- bl get_battle_side_of_something
- ldr r3, =gActiveBank
- strb r0, [r3]
- ldr r2, [r4]
- ldrb r1, [r2, 0x1]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804CC28
- ldr r1, =gBattleMons
- ldrb r3, [r3]
- movs r0, 0x58
- muls r0, r3
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x0400e000
- ands r0, r1
- cmp r0, 0
- bne _0804CBFC
- ldr r1, =gStatuses3
- lsls r0, r3, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 3
- ands r0, r1
- cmp r0, 0
- beq _0804CC28
-_0804CBFC:
- 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, [r4]
- b _0804CF00
- .pool
-_0804CC28:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 15
- ands r0, r1
- cmp r0, 0
- beq _0804CCC0
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty
- mov r8, r1
- cmp r0, 0x1
- bne _0804CC4E
- ldr r0, =gEnemyParty
- mov r8, r0
-_0804CC4E:
- movs r4, 0
- ldrb r1, [r5]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0804CC5C
- movs r4, 0x3
-_0804CC5C:
- adds r6, r4, 0x3
- cmp r4, r6
- bge _0804CCA4
- ldr r7, =gBattlePartyID
-_0804CC64:
- movs r0, 0x64
- muls r0, r4
- mov r1, r8
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0804CC9E
- adds r0, r5, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0804CC9E
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0804CC9E
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r7
- ldrh r0, [r0]
- cmp r0, r4
- bne _0804CCA4
-_0804CC9E:
- adds r4, 0x1
- cmp r4, r6
- blt _0804CC64
-_0804CCA4:
- cmp r4, r6
- bne _0804CCAA
- b _0804CED0
-_0804CCAA:
- b _0804CEF8
- .pool
-_0804CCC0:
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804CD8C
- movs r0, 0x80
- lsls r0, 16
- ands r1, r0
- cmp r1, 0
- beq _0804CD00
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0804CCEC
- ldr r0, =gPlayerParty
- b _0804CD16
- .pool
-_0804CCEC:
- ldr r1, =gEnemyParty
- mov r8, r1
- ldrb r0, [r5]
- movs r4, 0x3
- cmp r0, 0x1
- bne _0804CD32
- movs r4, 0
- b _0804CD32
- .pool
-_0804CD00:
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gPlayerParty
- mov r8, r1
- cmp r0, 0x1
- bne _0804CD18
- ldr r0, =gEnemyParty
-_0804CD16:
- mov r8, r0
-_0804CD18:
- movs r4, 0
- ldrb r0, [r5]
- bl sub_806D864
- lsls r0, 24
- lsrs r0, 24
- bl sub_806D82C
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bne _0804CD32
- movs r4, 0x3
-_0804CD32:
- adds r6, r4, 0x3
- cmp r4, r6
- bge _0804CCA4
- ldr r7, =gBattlePartyID
-_0804CD3A:
- movs r0, 0x64
- muls r0, r4
- mov r1, r8
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0804CD74
- adds r0, r5, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0804CD74
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0804CD74
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r7
- ldrh r0, [r0]
- cmp r0, r4
- bne _0804CCA4
-_0804CD74:
- adds r4, 0x1
- cmp r4, r6
- blt _0804CD3A
- b _0804CCA4
- .pool
-_0804CD8C:
- movs r0, 0x80
- lsls r0, 8
- ands r1, r0
- cmp r1, 0
- beq _0804CE10
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0804CE10
- ldr r0, =gEnemyParty
- mov r8, r0
- movs r4, 0
- ldrb r0, [r5]
- cmp r0, 0x3
- bne _0804CDB4
- movs r4, 0x3
-_0804CDB4:
- adds r6, r4, 0x3
- cmp r4, r6
- blt _0804CDBC
- b _0804CCA4
-_0804CDBC:
- ldr r7, =gBattlePartyID
-_0804CDBE:
- movs r0, 0x64
- muls r0, r4
- mov r1, r8
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0804CDFA
- adds r0, r5, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0804CDFA
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0804CDFA
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r7
- ldrh r0, [r0]
- cmp r0, r4
- beq _0804CDFA
- b _0804CCA4
-_0804CDFA:
- adds r4, 0x1
- cmp r4, r6
- blt _0804CDBE
- b _0804CCA4
- .pool
-_0804CE10:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- bne _0804CE54
- movs r0, 0x1
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ands r0, r4
- cmp r0, 0
- beq _0804CE48
- movs r0, 0x3
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r6, r0, 24
- b _0804CE4A
- .pool
-_0804CE48:
- adds r6, r7, 0
-_0804CE4A:
- ldr r0, =gEnemyParty
- mov r8, r0
- b _0804CE82
- .pool
-_0804CE54:
- movs r0, 0
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0804CE7C
- movs r0, 0x2
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r6, r0, 24
- b _0804CE7E
- .pool
-_0804CE7C:
- adds r6, r7, 0
-_0804CE7E:
- ldr r1, =gPlayerParty
- mov r8, r1
-_0804CE82:
- movs r4, 0
-_0804CE84:
- movs r0, 0x64
- muls r0, r4
- mov r1, r8
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0804CEC6
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0804CEC6
- adds r0, r5, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0804CEC6
- ldr r1, =gBattlePartyID
- lsls r0, r7, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r4, r0
- beq _0804CEC6
- lsls r0, r6, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r4, r0
- bne _0804CECC
-_0804CEC6:
- adds r4, 0x1
- cmp r4, 0x5
- ble _0804CE84
-_0804CECC:
- cmp r4, 0x6
- bne _0804CEF8
-_0804CED0:
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- 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 _0804CF00
- .pool
-_0804CEF8:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x6
- str r0, [r1]
-_0804CF00:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk4F_jump_if_cannot_switch
-
- thumb_func_start sub_804CF10
-sub_804CF10: @ 804CF10
- push {r4,r5,lr}
- sub sp, 0x4
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- ldr r4, =gBattleStruct
- ldr r1, [r4]
- adds r1, r0, r1
- adds r1, 0x58
- ldr r3, =gBattlePartyID
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- strb r0, [r1]
- ldrb r0, [r5]
- ldr r1, [r4]
- adds r0, r1
- adds r0, 0x5C
- movs r1, 0x6
- strb r1, [r0]
- ldr r1, [r4]
- adds r1, 0x93
- ldr r3, =gBitTable
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r3
- ldr r3, [r0]
- ldrb r0, [r1]
- bics r0, r3
- strb r0, [r1]
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, 0x60
- ldr r0, [r4]
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x1
- movs r3, 0
- bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_804CF10
-
- thumb_func_start atk50_openpartyscreen
-atk50_openpartyscreen: @ 804CF88
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- movs r7, 0
- movs r0, 0
- mov r9, r0
- ldr r6, =gBattlescriptCurrInstr
- ldr r2, [r6]
- 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
- mov r8, r1
- ldrb r1, [r2, 0x1]
- adds r0, r1, 0
- mov r12, r6
- cmp r0, 0x5
- beq _0804CFBE
- b _0804D464
-_0804CFBE:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x41
- ands r1, r0
- cmp r1, 0x1
- beq _0804D0B0
- ldr r1, =gActiveBank
- strb r7, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r7, r0
- bcc _0804CFD8
- b _0804D450
-_0804CFD8:
- ldr r7, =gHitMarker
- ldr r6, =gBitTable
- adds r4, r1, 0
- ldr r2, =gAbsentBankFlags
- mov r8, r2
-_0804CFE2:
- ldrb r2, [r4]
- lsls r0, r2, 2
- adds r0, r6
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r7]
- ands r0, r1
- cmp r0, 0
- beq _0804D088
- adds r0, r2, 0
- movs r1, 0x6
- movs r2, 0x6
- bl sub_80423F4
- lsls r0, 24
- cmp r0, 0
- beq _0804D054
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- mov r2, r8
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r7]
- bics r0, r1
- str r0, [r7]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _0804D098
- .pool
-_0804D054:
- ldr r5, =gSpecialStatuses
- ldrb r0, [r4]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804D098
- movs r0, 0x6
- bl sub_804CF10
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- b _0804D098
- .pool
-_0804D088:
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0804D098:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0804CFE2
- b _0804D450
- .pool
-_0804D0B0:
- ands r0, r1
- cmp r0, 0
- bne _0804D0B8
- b _0804D450
-_0804D0B8:
- ldr r0, =gHitMarker
- mov r8, r0
- ldr r0, [r0]
- lsrs r5, r0, 28
- ldr r6, =gBitTable
- ldr r0, [r6]
- ands r0, r5
- cmp r0, 0
- beq _0804D170
- ldr r4, =gActiveBank
- strb r7, [r4]
- movs r0, 0
- movs r1, 0x6
- movs r2, 0x6
- bl sub_80423F4
- lsls r0, 24
- cmp r0, 0
- beq _0804D120
- ldr r2, =gAbsentBankFlags
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r1, [r0]
- lsls r1, 28
- mov r2, r8
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
- movs r0, 0
- bl dp01_build_cmdbuf_x2A_2A_2A_2A
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _0804D170
- .pool
-_0804D120:
- ldr r6, =gSpecialStatuses
- ldrb r0, [r4]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804D15C
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x5E
- ldrb r0, [r0]
- bl sub_804CF10
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- b _0804D170
- .pool
-_0804D15C:
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- movs r0, 0x1
- mov r9, r0
-_0804D170:
- ldr r6, =gBitTable
- ldr r0, [r6, 0x8]
- ands r0, r5
- cmp r0, 0
- beq _0804D22E
- ldr r0, [r6]
- ands r0, r5
- cmp r0, 0
- bne _0804D22E
- ldr r4, =gActiveBank
- movs r0, 0x2
- strb r0, [r4]
- movs r0, 0x2
- movs r1, 0x6
- movs r2, 0x6
- bl sub_80423F4
- lsls r0, 24
- cmp r0, 0
- beq _0804D1D8
- ldr r2, =gAbsentBankFlags
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r2, =gHitMarker
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
- movs r0, 0
- bl dp01_build_cmdbuf_x2A_2A_2A_2A
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _0804D22E
- .pool
-_0804D1D8:
- ldr r6, =gSpecialStatuses
- ldrb r0, [r4]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804D214
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x5C
- ldrb r0, [r0]
- bl sub_804CF10
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- b _0804D22E
- .pool
-_0804D214:
- movs r0, 0x1
- mov r1, r9
- ands r0, r1
- cmp r0, 0
- bne _0804D22E
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0804D22E:
- ldr r6, =gBitTable
- ldr r0, [r6, 0x4]
- ands r0, r5
- cmp r0, 0
- beq _0804D2E4
- ldr r4, =gActiveBank
- movs r0, 0x1
- strb r0, [r4]
- movs r0, 0x1
- movs r1, 0x6
- movs r2, 0x6
- bl sub_80423F4
- lsls r0, 24
- cmp r0, 0
- beq _0804D290
- ldr r2, =gAbsentBankFlags
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r2, =gHitMarker
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
- movs r0, 0
- bl dp01_build_cmdbuf_x2A_2A_2A_2A
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _0804D2E4
- .pool
-_0804D290:
- ldr r6, =gSpecialStatuses
- ldrb r0, [r4]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804D2CC
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x5F
- ldrb r0, [r0]
- bl sub_804CF10
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- b _0804D2E4
- .pool
-_0804D2CC:
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- movs r0, 0x2
- mov r2, r9
- orrs r2, r0
- mov r9, r2
-_0804D2E4:
- ldr r6, =gBitTable
- ldr r0, [r6, 0xC]
- ands r0, r5
- cmp r0, 0
- beq _0804D3A2
- ldr r0, [r6, 0x4]
- ands r0, r5
- cmp r0, 0
- bne _0804D3A2
- ldr r4, =gActiveBank
- movs r0, 0x3
- strb r0, [r4]
- movs r0, 0x3
- movs r1, 0x6
- movs r2, 0x6
- bl sub_80423F4
- lsls r0, 24
- cmp r0, 0
- beq _0804D34C
- ldr r2, =gAbsentBankFlags
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r2, =gHitMarker
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
- movs r0, 0
- bl dp01_build_cmdbuf_x2A_2A_2A_2A
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _0804D3A2
- .pool
-_0804D34C:
- ldr r6, =gSpecialStatuses
- ldrb r0, [r4]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804D388
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x5D
- ldrb r0, [r0]
- bl sub_804CF10
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- b _0804D3A2
- .pool
-_0804D388:
- movs r0, 0x2
- mov r1, r9
- ands r1, r0
- cmp r1, 0
- bne _0804D3A2
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0804D3A2:
- ldr r1, =gSpecialStatuses
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804D3FA
- adds r0, r1, 0
- adds r0, 0x28
- ldrb r0, [r0]
- lsls r0, 25
- cmp r0, 0
- blt _0804D3FA
- cmp r5, 0
- beq _0804D3FA
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r0, =gBitTable
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _0804D3E4
- ldr r1, =gActiveBank
- movs r0, 0x2
- strb r0, [r1]
- b _0804D3E8
- .pool
-_0804D3E4:
- ldr r0, =gActiveBank
- strb r1, [r0]
-_0804D3E8:
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
-_0804D3FA:
- ldr r1, =gSpecialStatuses
- ldrb r0, [r1, 0x14]
- lsls r0, 25
- cmp r0, 0
- blt _0804D450
- adds r0, r1, 0
- adds r0, 0x3C
- ldrb r0, [r0]
- lsls r0, 25
- cmp r0, 0
- blt _0804D450
- cmp r5, 0
- beq _0804D450
- ldr r0, =gAbsentBankFlags
- ldrb r0, [r0]
- ldr r1, =gBitTable
- ldr r1, [r1, 0x4]
- ands r0, r1
- cmp r0, 0
- beq _0804D438
- ldr r1, =gActiveBank
- movs r0, 0x3
- b _0804D43C
- .pool
-_0804D438:
- ldr r1, =gActiveBank
- movs r0, 0x1
-_0804D43C:
- strb r0, [r1]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
-_0804D450:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x6
- str r0, [r1]
- b _0804D804
- .pool
-_0804D464:
- cmp r0, 0x6
- beq _0804D46A
- b _0804D658
-_0804D46A:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804D478
- b _0804D5F4
-_0804D478:
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- bne _0804D482
- b _0804D5F4
-_0804D482:
- ldr r7, =gHitMarker
- ldr r0, [r7]
- lsrs r5, r0, 28
- ldr r4, =gBitTable
- ldr r0, [r4, 0x8]
- ands r0, r5
- cmp r0, 0
- beq _0804D52A
- ldr r0, [r4]
- ands r0, r5
- cmp r0, 0
- beq _0804D52A
- ldr r6, =gActiveBank
- movs r0, 0x2
- strb r0, [r6]
- ldr r0, =gBattleBufferB
- ldrb r1, [r0, 0x1]
- movs r0, 0x2
- movs r2, 0x6
- bl sub_80423F4
- lsls r0, 24
- cmp r0, 0
- beq _0804D4F8
- ldr r2, =gAbsentBankFlags
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r4
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r7]
- bics r0, r1
- str r0, [r7]
- movs r0, 0
- bl dp01_build_cmdbuf_x2A_2A_2A_2A
- ldrb r0, [r6]
- bl MarkBufferBankForExecution
- b _0804D52A
- .pool
-_0804D4F8:
- ldr r4, =gSpecialStatuses
- ldrb r0, [r6]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804D52A
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x5C
- ldrb r0, [r0]
- bl sub_804CF10
- ldrb r1, [r6]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
-_0804D52A:
- ldr r4, =gBitTable
- ldr r0, [r4, 0xC]
- ands r0, r5
- cmp r0, 0
- beq _0804D5DA
- ldr r0, [r4, 0x4]
- ands r5, r0
- cmp r5, 0
- beq _0804D5DA
- ldr r5, =gActiveBank
- movs r0, 0x3
- strb r0, [r5]
- ldr r0, =gBattleBufferB
- ldr r2, =0x00000201
- adds r0, r2
- ldrb r1, [r0]
- movs r0, 0x3
- movs r2, 0x6
- bl sub_80423F4
- lsls r0, 24
- cmp r0, 0
- beq _0804D5A8
- ldr r2, =gAbsentBankFlags
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r2, =gHitMarker
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r4
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
- movs r0, 0
- bl dp01_build_cmdbuf_x2A_2A_2A_2A
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- b _0804D5DA
- .pool
-_0804D5A8:
- ldr r4, =gSpecialStatuses
- ldrb r0, [r5]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r0, [r1]
- lsls r0, 25
- cmp r0, 0
- blt _0804D5DA
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x5D
- ldrb r0, [r0]
- bl sub_804CF10
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
-_0804D5DA:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x6
- str r0, [r1]
- mov r12, r1
- b _0804D5F8
- .pool
-_0804D5F4:
- adds r0, r2, 0x6
- str r0, [r6]
-_0804D5F8:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- lsrs r5, r0, 28
- ldr r1, =gBank1
- movs r0, 0
- strb r0, [r1]
- ldr r4, =gBitTable
- ldr r2, [r4]
- ands r2, r5
- ldr r6, =gNoOfAllBanks
- cmp r2, 0
- bne _0804D634
- adds r7, r6, 0
- ldrb r0, [r6]
- cmp r2, r0
- bcs _0804D634
- adds r3, r1, 0
-_0804D61A:
- ldrb r0, [r3]
- adds r0, 0x1
- strb r0, [r3]
- ldrb r2, [r3]
- lsls r0, r2, 2
- adds r0, r4
- ldr r0, [r0]
- ands r0, r5
- cmp r0, 0
- bne _0804D634
- ldrb r0, [r7]
- cmp r2, r0
- bcc _0804D61A
-_0804D634:
- ldrb r0, [r1]
- ldrb r6, [r6]
- cmp r0, r6
- beq _0804D63E
- b _0804D804
-_0804D63E:
- mov r1, r8
- mov r2, r12
- str r1, [r2]
- b _0804D804
- .pool
-_0804D658:
- movs r0, 0x80
- ands r0, r1
- movs r5, 0x1
- cmp r0, 0
- beq _0804D664
- movs r5, 0
-_0804D664:
- movs r0, 0x7F
- ands r0, r1
- bl get_battle_side_of_something
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gSpecialStatuses
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 25
- cmp r0, 0
- bge _0804D690
- ldr r0, [r6]
- adds r0, 0x6
- str r0, [r6]
- b _0804D804
- .pool
-_0804D690:
- adds r0, r7, 0
- movs r1, 0x6
- movs r2, 0x6
- bl sub_80423F4
- lsls r0, 24
- cmp r0, 0
- beq _0804D6E0
- ldr r2, =gActiveBank
- strb r7, [r2]
- ldr r3, =gAbsentBankFlags
- ldr r4, =gBitTable
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- ldrb r1, [r3]
- orrs r0, r1
- strb r0, [r3]
- ldr r3, =gHitMarker
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r4
- ldr r1, [r0]
- lsls r1, 28
- ldr r0, [r3]
- bics r0, r1
- str r0, [r3]
- mov r0, r8
- str r0, [r6]
- b _0804D804
- .pool
-_0804D6E0:
- ldr r4, =gActiveBank
- strb r7, [r4]
- ldrb r0, [r4]
- ldr r3, =gBattleStruct
- ldr r1, [r3]
- adds r1, r0, r1
- adds r1, 0x58
- ldr r2, =gBattlePartyID
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1]
- ldrb r0, [r4]
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0x5C
- movs r1, 0x6
- strb r1, [r0]
- ldr r1, [r3]
- adds r1, 0x93
- ldr r2, =gBitTable
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r2
- ldr r2, [r0]
- ldrb r0, [r1]
- bics r0, r2
- strb r0, [r1]
- ldrb r1, [r4]
- movs r0, 0x2
- eors r0, r1
- ldr r3, [r3]
- adds r0, r3
- adds r0, 0x5C
- ldrb r2, [r0]
- ldrb r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- adds r0, 0x60
- adds r3, r0
- str r3, [sp]
- movs r0, 0
- adds r1, r5, 0
- movs r3, 0
- bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r6]
- adds r0, 0x6
- str r0, [r6]
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- cmp r0, 0
- bne _0804D760
- ldr r1, =gBattleResults
- ldrb r0, [r1, 0x2]
- cmp r0, 0xFE
- bhi _0804D760
- adds r0, 0x1
- strb r0, [r1, 0x2]
-_0804D760:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804D7C4
- ldr r1, =gActiveBank
- movs r0, 0
- strb r0, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804D804
- adds r4, r1, 0
-_0804D77C:
- ldrb r0, [r4]
- cmp r0, r7
- beq _0804D792
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0804D792:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _0804D77C
- b _0804D804
- .pool
-_0804D7C4:
- adds r0, r7, 0
- bl GetBankIdentity
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- ldrb r3, [r4]
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _0804D7F4
- movs r0, 0x2
- eors r3, r0
- strb r3, [r4]
-_0804D7F4:
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- bl sub_8034464
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0804D804:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk50_openpartyscreen
-
- thumb_func_start atk51_switch_handle_order
-atk51_switch_handle_order: @ 804D820
- push {r4-r7,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _0804D82C
- b _0804DA8A
-_0804D82C:
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r5, =gActiveBank
- strb r0, [r5]
- ldr r0, [r4]
- ldrb r0, [r0, 0x2]
- cmp r0, 0x1
- beq _0804D8CC
- cmp r0, 0x1
- bgt _0804D858
- cmp r0, 0
- beq _0804D862
- b _0804DA82
- .pool
-_0804D858:
- cmp r0, 0x2
- beq _0804D8E8
- cmp r0, 0x3
- beq _0804D922
- b _0804DA82
-_0804D862:
- movs r6, 0
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r6, r0
- blt _0804D86E
- b _0804DA82
-_0804D86E:
- ldr r7, =gBattleBufferB
-_0804D870:
- ldrb r0, [r7]
- cmp r0, 0x22
- bne _0804D8AA
- ldr r5, =gBattleStruct
- ldr r0, [r5]
- adds r0, r6, r0
- adds r0, 0x5C
- ldrb r1, [r7, 0x1]
- strb r1, [r0]
- ldr r0, [r5]
- adds r0, 0x93
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r6, 2
- adds r0, r2
- ldr r4, [r0]
- ands r1, r4
- cmp r1, 0
- bne _0804D8AA
- lsls r0, r6, 24
- lsrs r0, 24
- ldrb r1, [r7, 0x1]
- bl sub_8184FBC
- ldr r1, [r5]
- adds r1, 0x93
- ldrb r0, [r1]
- orrs r4, r0
- strb r4, [r1]
-_0804D8AA:
- movs r0, 0x80
- lsls r0, 2
- adds r7, r0
- adds r6, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r6, r0
- blt _0804D870
- b _0804DA82
- .pool
-_0804D8CC:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804D8DA
- b _0804DA82
-_0804D8DA:
- ldrb r0, [r5]
- bl sub_803BDA0
- b _0804DA82
- .pool
-_0804D8E8:
- ldr r4, =gBattleStruct
- ldr r0, [r4]
- adds r0, 0x93
- ldrb r1, [r0]
- ldr r6, =gBitTable
- ldrb r2, [r5]
- lsls r0, r2, 2
- adds r0, r6
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0804D922
- ldr r0, =gBattleBufferB
- lsls r1, r2, 9
- adds r0, 0x1
- adds r1, r0
- ldrb r1, [r1]
- adds r0, r2, 0
- bl sub_8184FBC
- ldr r2, [r4]
- adds r2, 0x93
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
-_0804D922:
- ldr r1, =gBattleCommunication
- ldr r6, =gBattleBufferB
- ldr r7, =gActiveBank
- ldrb r0, [r7]
- lsls r0, 9
- adds r2, r6, 0x1
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- ldrb r0, [r7]
- ldr r1, =gBattleStruct
- mov r12, r1
- ldr r1, [r1]
- adds r1, r0, r1
- adds r1, 0x5C
- lsls r0, 9
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x42
- ands r0, r1
- cmp r0, 0x42
- bne _0804DA14
- ldrb r0, [r7]
- mov r3, r12
- ldr r2, [r3]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0x60
- ldrb r2, [r1]
- movs r0, 0xF
- ands r0, r2
- strb r0, [r1]
- ldrb r0, [r7]
- ldr r2, [r3]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0x60
- lsls r0, 9
- adds r5, r6, 0x2
- adds r0, r5
- ldrb r2, [r0]
- movs r3, 0xF0
- adds r0, r3, 0
- ands r0, r2
- ldrb r2, [r1]
- orrs r0, r2
- strb r0, [r1]
- ldrb r1, [r7]
- mov r0, r12
- ldr r2, [r0]
- lsls r0, r1, 1
- adds r0, r1
- adds r0, r2
- adds r0, 0x61
- lsls r1, 9
- adds r6, 0x3
- adds r1, r6
- ldrb r1, [r1]
- strb r1, [r0]
- ldrb r0, [r7]
- movs r4, 0x2
- eors r0, r4
- mov r1, r12
- ldr r2, [r1]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0x60
- ldrb r2, [r1]
- adds r0, r3, 0
- ands r0, r2
- strb r0, [r1]
- ldrb r0, [r7]
- eors r0, r4
- mov r1, r12
- ldr r2, [r1]
- lsls r1, r0, 1
- adds r1, r0
- adds r1, r2
- adds r1, 0x60
- ldrb r0, [r7]
- lsls r0, 9
- adds r0, r5
- ldrb r0, [r0]
- ands r3, r0
- lsrs r3, 4
- ldrb r0, [r1]
- orrs r3, r0
- strb r3, [r1]
- ldrb r0, [r7]
- eors r4, r0
- mov r2, r12
- ldr r0, [r2]
- lsls r1, r4, 1
- adds r1, r4
- adds r1, r0
- adds r1, 0x62
- ldrb r0, [r7]
- lsls r0, 9
- adds r0, r6
- ldrb r0, [r0]
- strb r0, [r1]
- b _0804DA36
- .pool
-_0804DA14:
- movs r0, 0x80
- lsls r0, 15
- ands r1, r0
- cmp r1, 0
- beq _0804DA30
- ldrb r0, [r7]
- mov r3, r12
- ldr r1, [r3]
- adds r1, r0, r1
- adds r1, 0x5C
- ldrb r1, [r1]
- bl sub_80571DC
- b _0804DA36
-_0804DA30:
- ldrb r0, [r7]
- bl sub_803BDA0
-_0804DA36:
- ldr r1, =gBattleTextBuff1
- movs r5, 0xFD
- strb r5, [r1]
- movs r0, 0x6
- strb r0, [r1, 0x1]
- ldr r4, =gBattleMons
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- movs r2, 0x58
- muls r0, r2
- adds r0, r4
- ldrh r0, [r0]
- strb r0, [r1, 0x2]
- ldrb r0, [r3]
- muls r0, r2
- adds r0, r4
- ldrh r0, [r0]
- lsrs r0, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r2, =gBattleTextBuff2
- strb r5, [r2]
- movs r0, 0x7
- strb r0, [r2, 0x1]
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- strb r0, [r2, 0x2]
- ldr r1, =gBattleBufferB
- ldrb r0, [r3]
- lsls r0, 9
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2, 0x3]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r2, 0x4]
-_0804DA82:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x3
- str r0, [r1]
-_0804DA8A:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk51_switch_handle_order
-
- thumb_func_start atk52_switch_in_effects
-atk52_switch_in_effects: @ 804DAAC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r0, =gBattlescriptCurrInstr
- mov r9, r0
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldrb r0, [r4]
- bl sub_803FA70
- ldr r1, =gHitMarker
- mov r8, r1
- ldr r1, =gBitTable
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- lsls r1, 28
- mov r2, r8
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
- ldr r2, =gSpecialStatuses
- ldrb r0, [r4]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1]
- movs r0, 0x41
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldrb r0, [r4]
- bl GetBankSide
- ldr r5, =gSideAffecting
- lsls r0, 24
- lsrs r0, 23
- adds r0, r5
- ldrh r1, [r0]
- movs r7, 0x80
- lsls r7, 2
- mov r10, r7
- mov r0, r10
- ands r0, r1
- cmp r0, 0
- beq _0804DB1C
- b _0804DC30
-_0804DB1C:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 23
- adds r0, r5
- ldrh r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _0804DB34
- b _0804DC30
-_0804DB34:
- ldr r7, =gBattleMons
- ldrb r2, [r4]
- movs r6, 0x58
- adds r0, r2, 0
- muls r0, r6
- adds r1, r0, r7
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0804DC30
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0804DC30
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1A
- beq _0804DC30
- adds r0, r2, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 23
- adds r0, r5
- ldrh r2, [r0]
- mov r1, r10
- orrs r1, r2
- strh r1, [r0]
- ldrb r0, [r4]
- adds r2, r0, 0
- muls r2, r6
- adds r0, r7, 0
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- ldr r1, =0xfdffffff
- ands r0, r1
- str r0, [r2]
- mov r1, r8
- ldr r0, [r1]
- movs r2, 0x41
- negs r2, r2
- ands r0, r2
- str r0, [r1]
- ldrb r0, [r4]
- bl GetBankSide
- ldr r2, =gSideTimers
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0xA]
- movs r1, 0x5
- subs r1, r0
- lsls r1, 25
- lsrs r1, 24
- ldr r5, =gBattleMoveDamage
- ldrb r0, [r4]
- muls r0, r6
- adds r0, r7
- ldrh r0, [r0, 0x2C]
- bl __divsi3
- str r0, [r5]
- cmp r0, 0
- bne _0804DBC8
- movs r0, 0x1
- str r0, [r5]
-_0804DBC8:
- ldr r0, =gBattleScripting
- ldrb r1, [r4]
- strb r1, [r0, 0x17]
- bl b_movescr_stack_push_cursor
- mov r7, r9
- ldr r0, [r7]
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _0804DC14
- ldr r0, =gUnknown_082DAE90
- str r0, [r7]
- b _0804DD8E
- .pool
-_0804DC14:
- cmp r0, 0x1
- bne _0804DC24
- ldr r0, =gUnknown_082DAE59
- mov r1, r9
- str r0, [r1]
- b _0804DD8E
- .pool
-_0804DC24:
- ldr r0, =gUnknown_082DAEC7
- mov r2, r9
- str r0, [r2]
- b _0804DD8E
- .pool
-_0804DC30:
- ldr r2, =gBattleMons
- ldr r1, =gActiveBank
- ldrb r3, [r1]
- movs r0, 0x58
- muls r0, r3
- adds r0, r2
- adds r0, 0x20
- ldrb r0, [r0]
- adds r5, r1, 0
- ldr r4, =gDisableStructs
- cmp r0, 0x36
- bne _0804DC5E
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r2, r0, r4
- ldrb r1, [r2, 0x18]
- lsls r0, r1, 30
- cmp r0, 0
- blt _0804DC5E
- movs r0, 0x1
- orrs r0, r1
- strb r0, [r2, 0x18]
-_0804DC5E:
- ldrb r0, [r5]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0x18]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x18]
- ldrb r1, [r5]
- movs r0, 0
- str r0, [sp]
- movs r2, 0
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _0804DC88
- b _0804DD8E
-_0804DC88:
- ldrb r1, [r5]
- movs r0, 0
- movs r2, 0
- bl ItemBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _0804DD8E
- ldrb r0, [r5]
- bl GetBankSide
- ldr r1, =gSideAffecting
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r2, [r0]
- ldr r1, =0x0000fdff
- ands r1, r2
- strh r1, [r0]
- movs r4, 0
- ldr r0, =gNoOfAllBanks
- ldrb r7, [r0]
- cmp r4, r7
- bge _0804DCD8
- ldr r6, =gTurnOrder
- adds r1, r5, 0
- ldr r5, =gUnknown_0202407A
- movs r3, 0xC
- adds r2, r0, 0
-_0804DCC2:
- adds r0, r4, r6
- ldrb r0, [r0]
- ldrb r7, [r1]
- cmp r0, r7
- bne _0804DCD0
- adds r0, r4, r5
- strb r3, [r0]
-_0804DCD0:
- adds r4, 0x1
- ldrb r0, [r2]
- cmp r4, r0
- blt _0804DCC2
-_0804DCD8:
- movs r4, 0
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- bge _0804DD0C
- ldr r6, =gBattleStruct
- ldr r5, =gBattleMons
-_0804DCE6:
- lsls r0, r4, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0xA8
- ldr r1, [r6]
- adds r1, r0
- movs r0, 0x58
- muls r0, r4
- adds r0, r5
- ldrh r0, [r0, 0x28]
- strh r0, [r1]
- adds r4, 0x1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- blt _0804DCE6
-_0804DD0C:
- ldr r0, =gBattlescriptCurrInstr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r5, r0, 0
- cmp r1, 0x5
- bne _0804DD88
- ldr r0, =gHitMarker
- ldr r0, [r0]
- lsrs r4, r0, 28
- ldr r1, =gBank1
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r2, =gBitTable
- b _0804DD6E
- .pool
-_0804DD60:
- ldr r0, =gNoOfAllBanks
- ldrb r3, [r1]
- ldrb r0, [r0]
- cmp r3, r0
- bcs _0804DD88
- adds r0, r3, 0x1
- strb r0, [r1]
-_0804DD6E:
- ldrb r0, [r1]
- lsls r0, 2
- adds r0, r2
- ldr r3, [r0]
- adds r0, r4, 0
- ands r0, r3
- cmp r0, 0
- beq _0804DD60
- ldr r0, =gAbsentBankFlags
- ldrb r0, [r0]
- ands r0, r3
- cmp r0, 0
- bne _0804DD60
-_0804DD88:
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
-_0804DD8E:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk52_switch_in_effects
-
- thumb_func_start atk53_trainer_slide
-atk53_trainer_slide: @ 804DDA8
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- bl dp01_build_cmdbuf_x08_8_8_8
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk53_trainer_slide
-
- thumb_func_start atk54_effectiveness_sound
-atk54_effectiveness_sound: @ 804DDD8
- push {r4,r5,lr}
- ldr r5, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r5]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0
- bl dp01_build_cmdbuf_x2B_aa_0
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- ldr r0, [r4]
- adds r0, 0x3
- str r0, [r4]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk54_effectiveness_sound
-
- thumb_func_start atk55_play_sound
-atk55_play_sound: @ 804DE14
- push {r4,r5,lr}
- ldr r5, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r5]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0
- movs r2, 0
- bl sub_8034300
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- ldr r0, [r4]
- adds r0, 0x3
- str r0, [r4]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk55_play_sound
-
- thumb_func_start atk56_fainting_cry
-atk56_fainting_cry: @ 804DE50
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- bl dp01_build_cmdbuf_x2D_2D_2D_2D
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk56_fainting_cry
-
- thumb_func_start atk57
-atk57: @ 804DE80
- push {r4,lr}
- movs r0, 0
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r0, =gBattleOutcome
- ldrb r1, [r0]
- movs r0, 0
- bl dp01_build_cmdbuf_x37_a
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk57
-
- thumb_func_start atk58_return_to_ball
-atk58_return_to_ball: @ 804DEB8
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- movs r1, 0x1
- bl dp01_build_cmdbuf_x06_a
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk58_return_to_ball
-
- thumb_func_start atk59_learnmove_inbattle
-atk59_learnmove_inbattle: @ 804DEEC
- push {r4-r7,lr}
- ldr r0, =gBattlescriptCurrInstr
- ldr r2, [r0]
- ldrb r6, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r6, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r6, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r6, r0
- ldrb r4, [r2, 0x5]
- ldrb r0, [r2, 0x6]
- lsls r0, 8
- orrs r4, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 16
- orrs r4, r0
- ldrb r0, [r2, 0x8]
- lsls r0, 24
- orrs r4, r0
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- ldrb r1, [r2, 0x9]
- bl MonTryLearningNewMove
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, =0x0000fffe
- cmp r5, r0
- bne _0804DF56
- adds r7, r5, 0
-_0804DF3A:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0
- bl MonTryLearningNewMove
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, r7
- beq _0804DF3A
-_0804DF56:
- cmp r5, 0
- bne _0804DF70
- ldr r0, =gBattlescriptCurrInstr
- str r4, [r0]
- b _0804E018
- .pool
-_0804DF70:
- ldr r0, =0x0000ffff
- cmp r5, r0
- bne _0804DF88
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0xA
- str r0, [r1]
- b _0804E018
- .pool
-_0804DF88:
- movs r0, 0
- bl GetBankByPlayerAI
- ldr r1, =gActiveBank
- strb r0, [r1]
- ldr r2, =gBattlePartyID
- ldrb r3, [r1]
- lsls r0, r3, 1
- adds r0, r2
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- ldrh r0, [r0]
- ldrb r1, [r1, 0x10]
- cmp r0, r1
- bne _0804DFC8
- ldr r4, =gBattleMons
- movs r0, 0x58
- adds r2, r3, 0
- muls r2, r0
- adds r0, r4, 0
- adds r0, 0x50
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _0804DFC8
- adds r0, r2, r4
- adds r1, r5, 0
- bl GiveMoveToBattleMon
-_0804DFC8:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0804E014
- movs r0, 0x2
- bl GetBankByPlayerAI
- ldr r1, =gActiveBank
- strb r0, [r1]
- ldr r2, =gBattlePartyID
- ldrb r3, [r1]
- lsls r0, r3, 1
- adds r0, r2
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- ldrh r0, [r0]
- ldrb r1, [r1, 0x10]
- cmp r0, r1
- bne _0804E014
- ldr r4, =gBattleMons
- movs r0, 0x58
- adds r2, r3, 0
- muls r2, r0
- adds r0, r4, 0
- adds r0, 0x50
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _0804E014
- adds r0, r2, r4
- adds r1, r5, 0
- bl GiveMoveToBattleMon
-_0804E014:
- ldr r0, =gBattlescriptCurrInstr
- str r6, [r0]
-_0804E018:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk59_learnmove_inbattle
-
- thumb_func_start atk5A
-atk5A: @ 804E038
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- ldr r0, =gActiveBank
- movs r1, 0
- strb r1, [r0]
- ldr r0, =gBattleScripting
- ldrb r1, [r0, 0x1F]
- adds r2, r0, 0
- cmp r1, 0x6
- bls _0804E052
- b _0804E3B8
-_0804E052:
- lsls r0, r1, 2
- ldr r1, =_0804E068
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804E068:
- .4byte _0804E084
- .4byte _0804E0BC
- .4byte _0804E162
- .4byte _0804E1B8
- .4byte _0804E1E4
- .4byte _0804E38C
- .4byte _0804E3AC
-_0804E084:
- movs r4, 0
- str r4, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- ldr r0, =gText_BattleYesNoChoice
- movs r1, 0xC
- bl battle_show_message_maybe
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x1F]
- adds r0, 0x1
- strb r0, [r1, 0x1F]
- ldr r0, =gBattleCommunication
- strb r4, [r0, 0x1]
- movs r0, 0
- bl sub_8056B74
- b _0804E3B8
- .pool
-_0804E0BC:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804E0E4
- ldr r4, =gBattleCommunication
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- beq _0804E0E4
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0
- strb r0, [r4, 0x1]
- bl sub_8056B74
-_0804E0E4:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804E10C
- ldr r4, =gBattleCommunication
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- bne _0804E10C
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0x1
- strb r0, [r4, 0x1]
- bl sub_8056B74
-_0804E10C:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r5, 0x1
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _0804E150
- movs r0, 0x5
- bl PlaySE
- ldr r0, =gBattleCommunication
- ldrb r4, [r0, 0x1]
- cmp r4, 0
- bne _0804E20A
- str r5, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- movs r0, 0x1
- negs r0, r0
- str r4, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- b _0804E192
- .pool
-_0804E150:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0804E15A
- b _0804E3B8
-_0804E15A:
- movs r0, 0x5
- bl PlaySE
- b _0804E20A
-_0804E162:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804E170
- b _0804E3B8
-_0804E170:
- bl FreeAllWindowBuffers
- ldr r0, =gPlayerParty
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- ldrb r1, [r1, 0x10]
- ldr r2, =gPlayerPartyCount
- ldrb r2, [r2]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, =sub_80A92F8
- ldr r4, =gMoveToLearn
- ldrh r4, [r4]
- str r4, [sp]
- bl sub_81BFA38
-_0804E192:
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x1F]
- adds r0, 0x1
- strb r0, [r1, 0x1F]
- b _0804E3B8
- .pool
-_0804E1B8:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804E1C6
- b _0804E3B8
-_0804E1C6:
- ldr r0, =gMain
- ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
- cmp r1, r0
- beq _0804E1D2
- b _0804E3B8
-_0804E1D2:
- ldrb r0, [r2, 0x1F]
- adds r0, 0x1
- b _0804E3B6
- .pool
-_0804E1E4:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804E1F2
- b _0804E3B8
-_0804E1F2:
- ldr r0, =gMain
- ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
- cmp r1, r0
- beq _0804E1FE
- b _0804E3B8
-_0804E1FE:
- bl sub_81C1B94
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x4
- bne _0804E224
-_0804E20A:
- ldr r1, =gBattleScripting
- movs r0, 0x5
- strb r0, [r1, 0x1F]
- b _0804E3B8
- .pool
-_0804E224:
- ldr r6, =gBattleStruct
- ldr r0, [r6]
- ldrb r0, [r0, 0x10]
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r7, =gPlayerParty
- adds r0, r7
- adds r1, r5, 0
- adds r1, 0xD
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl IsHMMove2
- cmp r0, 0
- beq _0804E274
- ldr r0, =0x0000013f
- ldr r1, =gActiveBank
- ldrb r1, [r1]
- bl b_std_message
- ldr r1, =gBattleScripting
- movs r0, 0x6
- strb r0, [r1, 0x1F]
- b _0804E3B8
- .pool
-_0804E274:
- ldr r3, =gBattlescriptCurrInstr
- 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]
- ldr r1, =gBattleTextBuff2
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x2
- strb r0, [r1, 0x1]
- strb r4, [r1, 0x2]
- lsrs r0, r4, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r0, [r6]
- ldrb r0, [r0, 0x10]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r7
- adds r1, r5, 0
- bl RemoveMonPPBonus
- ldr r0, [r6]
- ldrb r0, [r0, 0x10]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r7
- ldr r7, =gMoveToLearn
- ldrh r1, [r7]
- adds r2, r5, 0
- bl SetMonMoveSlot
- ldr r0, =gBattlePartyID
- ldr r1, [r6]
- ldrh r0, [r0]
- ldrb r1, [r1, 0x10]
- cmp r0, r1
- bne _0804E30A
- ldr r4, =gBattleMons
- ldr r0, [r4, 0x50]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _0804E30A
- ldr r0, =gDisableStructs
- ldrb r1, [r0, 0x18]
- lsrs r1, 4
- ldr r2, =gBitTable
- lsls r0, r5, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0804E30A
- adds r0, r4, 0
- adds r1, r5, 0
- bl RemoveBattleMonPPBonus
- ldrh r1, [r7]
- adds r0, r4, 0
- adds r2, r5, 0
- bl SetBattleMonMoveSlot
-_0804E30A:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0804E3B8
- ldr r2, =gBattlePartyID
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- ldrh r0, [r2, 0x4]
- ldrb r1, [r1, 0x10]
- cmp r0, r1
- bne _0804E3B8
- ldr r4, =gBattleMons
- movs r1, 0x80
- lsls r1, 1
- adds r0, r4, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _0804E3B8
- ldr r0, =gDisableStructs
- adds r0, 0x50
- ldrb r1, [r0]
- lsrs r1, 4
- ldr r2, =gBitTable
- lsls r0, r5, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0804E3B8
- adds r4, 0xB0
- adds r0, r4, 0
- adds r1, r5, 0
- bl RemoveBattleMonPPBonus
- ldr r0, =gMoveToLearn
- ldrh r1, [r0]
- adds r0, r4, 0
- adds r2, r5, 0
- bl SetBattleMonMoveSlot
- b _0804E3B8
- .pool
-_0804E38C:
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _0804E3B8
- .pool
-_0804E3AC:
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804E3B8
- movs r0, 0x2
-_0804E3B6:
- strb r0, [r2, 0x1F]
-_0804E3B8:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk5A
-
- thumb_func_start atk5B_80256E0
-atk5B_80256E0: @ 804E3C8
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r5, =gBattleScripting
- ldrb r4, [r5, 0x1F]
- cmp r4, 0
- beq _0804E3E0
- cmp r4, 0x1
- beq _0804E410
- b _0804E4FA
- .pool
-_0804E3E0:
- str r4, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- ldr r0, =gText_BattleYesNoChoice
- movs r1, 0xC
- bl battle_show_message_maybe
- ldrb r0, [r5, 0x1F]
- adds r0, 0x1
- strb r0, [r5, 0x1F]
- ldr r0, =gBattleCommunication
- strb r4, [r0, 0x1]
- movs r0, 0
- bl sub_8056B74
- b _0804E4FA
- .pool
-_0804E410:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804E438
- ldr r4, =gBattleCommunication
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- beq _0804E438
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0
- strb r0, [r4, 0x1]
- bl sub_8056B74
-_0804E438:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804E460
- ldr r4, =gBattleCommunication
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- bne _0804E460
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0x1
- strb r0, [r4, 0x1]
- bl sub_8056B74
-_0804E460:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r4, 0x1
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _0804E4C4
- movs r0, 0x5
- bl PlaySE
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- beq _0804E4A4
- ldr r3, =gBattlescriptCurrInstr
- 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 _0804E4AC
- .pool
-_0804E4A4:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0804E4AC:
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- b _0804E4FA
- .pool
-_0804E4C4:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0804E4FA
- movs r0, 0x5
- bl PlaySE
- ldr r3, =gBattlescriptCurrInstr
- 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]
- str r4, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
-_0804E4FA:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk5B_80256E0
-
- thumb_func_start atk5C_hitanimation
-atk5C_hitanimation: @ 804E508
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r2, =gActiveBank
- strb r0, [r2]
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- bne _0804E58C
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 1
- ands r0, r1
- cmp r0, 0
- beq _0804E55A
- ldr r1, =gBattleMons
- ldrb r2, [r2]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- beq _0804E55A
- ldr r0, =gDisableStructs
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- cmp r0, 0
- bne _0804E58C
-_0804E55A:
- movs r0, 0
- bl dp01_build_cmdbuf_x29_29_29_29
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- b _0804E592
- .pool
-_0804E58C:
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
-_0804E592:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end atk5C_hitanimation
-
- thumb_func_start sub_804E598
-sub_804E598: @ 804E598
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 16
- lsrs r6, r0, 16
- movs r7, 0
- movs r5, 0
- movs r0, 0x80
- lsls r0, 3
- cmp r6, r0
- bne _0804E5D8
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, 0x94
- ldrb r2, [r0]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x4A
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- muls r0, r2
- b _0804E6CA
- .pool
-_0804E5D8:
- ldr r0, =gTrainers
- lsls r2, r6, 2
- adds r1, r2, r6
- lsls r1, 3
- adds r4, r1, r0
- ldrb r3, [r4]
- mov r12, r0
- cmp r3, 0x1
- beq _0804E62E
- cmp r3, 0x1
- bgt _0804E5F8
- cmp r3, 0
- beq _0804E602
- b _0804E644
- .pool
-_0804E5F8:
- cmp r3, 0x2
- beq _0804E618
- cmp r3, 0x3
- beq _0804E62E
- b _0804E644
-_0804E602:
- mov r0, r12
- adds r0, 0x24
- adds r0, r1, r0
- ldr r1, [r0]
- adds r0, r4, 0
- adds r0, 0x20
- ldrb r0, [r0]
- lsls r0, 3
- adds r0, r1
- subs r0, 0x8
- b _0804E642
-_0804E618:
- mov r0, r12
- adds r0, 0x24
- adds r0, r1, r0
- ldr r1, [r0]
- adds r0, r4, 0
- adds r0, 0x20
- ldrb r0, [r0]
- lsls r0, 3
- adds r0, r1
- subs r0, 0x8
- b _0804E642
-_0804E62E:
- mov r0, r12
- adds r0, 0x24
- adds r0, r1, r0
- ldr r1, [r0]
- adds r0, r4, 0
- adds r0, 0x20
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r1
- subs r0, 0x10
-_0804E642:
- ldrb r5, [r0, 0x2]
-_0804E644:
- ldr r1, =gUnknown_0831AEB8
- lsls r0, r7, 2
- adds r4, r0, r1
- ldrb r3, [r4]
- ldr r0, =gBattleStruct
- mov r8, r0
- mov r9, r1
- ldr r1, =gBattleTypeFlags
- mov r10, r1
- cmp r3, 0xFF
- beq _0804E67A
- adds r0, r2, r6
- lsls r0, 3
- add r0, r12
- ldrb r1, [r0, 0x1]
- cmp r3, r1
- beq _0804E67A
- adds r2, r0, 0
- adds r0, r4, 0
-_0804E66A:
- adds r0, 0x4
- adds r7, 0x1
- ldrb r1, [r0]
- cmp r1, 0xFF
- beq _0804E67A
- ldrb r3, [r2, 0x1]
- cmp r1, r3
- bne _0804E66A
-_0804E67A:
- mov r0, r10
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 8
- ands r0, r1
- cmp r0, 0
- bne _0804E6B4
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0804E6B4
- mov r3, r8
- ldr r0, [r3]
- adds r0, 0x4A
- ldrb r0, [r0]
- lsls r0, 2
- adds r1, r5, 0
- muls r1, r0
- lsls r0, r7, 2
- add r0, r9
- ldrb r0, [r0, 0x1]
- lsls r0, 1
- b _0804E6C8
- .pool
-_0804E6B4:
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0x4A
- ldrb r0, [r0]
- lsls r0, 2
- adds r1, r5, 0
- muls r1, r0
- lsls r0, r7, 2
- add r0, r9
- ldrb r0, [r0, 0x1]
-_0804E6C8:
- muls r0, r1
-_0804E6CA:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_804E598
-
- thumb_func_start atk5D_getmoneyreward
-atk5D_getmoneyreward: @ 804E6D8
- push {r4,lr}
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r0, [r0]
- bl sub_804E598
- adds r4, r0, 0
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _0804E6FC
- ldr r0, =gTrainerBattleOpponent_B
- ldrh r0, [r0]
- bl sub_804E598
- adds r4, r0
-_0804E6FC:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- adds r1, r4, 0
- bl AddMoney
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x1
- strb r0, [r1, 0x1]
- movs r0, 0x4
- strb r0, [r1, 0x2]
- movs r0, 0x5
- strb r0, [r1, 0x3]
- strb r4, [r1, 0x4]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r4
- lsrs r0, 8
- strb r0, [r1, 0x5]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r4
- lsrs r0, 16
- strb r0, [r1, 0x6]
- lsrs r0, r4, 24
- strb r0, [r1, 0x7]
- movs r0, 0xFF
- strb r0, [r1, 0x8]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk5D_getmoneyreward
-
- thumb_func_start atk5E_8025A70
-atk5E_8025A70: @ 804E764
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r6, =gActiveBank
- strb r0, [r6]
- ldr r5, =gBattleCommunication
- ldrb r0, [r5]
- mov r8, r4
- cmp r0, 0
- beq _0804E794
- cmp r0, 0x1
- beq _0804E7AC
- b _0804E800
- .pool
-_0804E794:
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl dp01_build_cmdbuf_x00_a_b_0
- ldrb r0, [r6]
- bl MarkBufferBankForExecution
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- b _0804E800
-_0804E7AC:
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804E800
- ldrb r0, [r6]
- lsls r0, 9
- ldr r1, =gBattleBufferB + 4
- adds r0, r1
- mov r12, r0
- movs r2, 0
- adds r4, r6, 0
- movs r5, 0x58
- ldr r6, =gBattleMons + 0x24
- adds r7, r6, 0
- subs r7, 0x18
- mov r3, r12
- adds r3, 0xC
-_0804E7CE:
- lsls r1, r2, 1
- ldrb r0, [r4]
- muls r0, r5
- adds r1, r0
- adds r1, r7
- ldrh r0, [r3]
- strh r0, [r1]
- ldrb r0, [r4]
- adds r1, r0, 0
- muls r1, r5
- adds r1, r2, r1
- adds r1, r6
- mov r0, r12
- adds r0, 0x24
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r3, 0x2
- adds r2, 0x1
- cmp r2, 0x3
- ble _0804E7CE
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_0804E800:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk5E_8025A70
-
- thumb_func_start atk5F_8025B24
-atk5F_8025B24: @ 804E818
- push {lr}
- ldr r0, =gActiveBank
- ldr r2, =gBankAttacker
- ldrb r3, [r2]
- strb r3, [r0]
- ldr r1, =gBankTarget
- ldrb r0, [r1]
- strb r0, [r2]
- strb r3, [r1]
- ldr r2, =gHitMarker
- ldr r1, [r2]
- movs r3, 0x80
- lsls r3, 5
- adds r0, r1, 0
- ands r0, r3
- cmp r0, 0
- beq _0804E854
- ldr r0, =0xffffefff
- ands r1, r0
- b _0804E856
- .pool
-_0804E854:
- orrs r1, r3
-_0804E856:
- str r1, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk5F_8025B24
-
- thumb_func_start atk60_increment_gamestat
-atk60_increment_gamestat: @ 804E868
- push {lr}
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0804E882
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl IncrementGameStat
-_0804E882:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk60_increment_gamestat
-
- thumb_func_start atk61_8025BA4
-atk61_8025BA4: @ 804E898
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x30
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804E94C
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r1, =gActiveBank
- strb r0, [r1]
- ldrb r0, [r1]
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gEnemyParty
- mov r8, r1
- cmp r0, 0
- bne _0804E8CA
- ldr r0, =gPlayerParty
- mov r8, r0
-_0804E8CA:
- movs r7, 0
- add r6, sp, 0x4
- mov r5, sp
-_0804E8D0:
- movs r0, 0x64
- muls r0, r7
- mov r1, r8
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _0804E8F4
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- bne _0804E914
-_0804E8F4:
- ldr r0, =0x0000ffff
- strh r0, [r5]
- movs r0, 0
- b _0804E926
- .pool
-_0804E914:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- strh r0, [r5]
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
-_0804E926:
- str r0, [r6]
- adds r6, 0x8
- adds r5, 0x8
- adds r7, 0x1
- cmp r7, 0x5
- ble _0804E8D0
- movs r0, 0
- mov r1, sp
- movs r2, 0x1
- bl dp01_build_cmdbuf_x30_TODO
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_0804E94C:
- add sp, 0x30
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk61_8025BA4
-
- thumb_func_start atk62_08025C6C
-atk62_08025C6C: @ 804E960
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- bl dp01_build_cmdbuf_x31_31_31_31
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk62_08025C6C
-
- thumb_func_start atk63_jumptorandomattack
-atk63_jumptorandomattack: @ 804E990
- push {r4,lr}
- ldr r0, =gBattlescriptCurrInstr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r4, r0, 0
- cmp r1, 0
- beq _0804E9B4
- ldr r0, =gCurrentMove
- ldr r1, =gRandomMove
- ldrh r1, [r1]
- strh r1, [r0]
- b _0804E9C2
- .pool
-_0804E9B4:
- ldr r2, =gUnknown_020241EC
- ldr r1, =gCurrentMove
- ldr r0, =gRandomMove
- ldrh r0, [r0]
- strh r0, [r1]
- strh r0, [r2]
- adds r0, r1, 0
-_0804E9C2:
- ldr r3, =gUnknown_082D86A8
- ldr r2, =gBattleMoves
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk63_jumptorandomattack
-
- thumb_func_start atk64_statusanimation
-atk64_statusanimation: @ 804E9F4
- push {r4,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804EA5C
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r1, =gStatuses3
- ldrb r2, [r4]
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- bne _0804EA54
- ldr r0, =gDisableStructs
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- cmp r0, 0
- bne _0804EA54
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804EA54
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x4C
- adds r0, r1
- ldr r2, [r0]
- movs r0, 0
- movs r1, 0
- bl dp01_build_cmdbuf_x1B_aaaa_b
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_0804EA54:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_0804EA5C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk64_statusanimation
-
- thumb_func_start atk65_status2animation
-atk65_status2animation: @ 804EA84
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804EB04
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r5, =gActiveBank
- strb r0, [r5]
- ldr r1, [r4]
- ldrb r3, [r1, 0x2]
- ldrb r0, [r1, 0x3]
- lsls r0, 8
- orrs r3, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 16
- orrs r3, r0
- ldrb r0, [r1, 0x5]
- lsls r0, 24
- orrs r3, r0
- ldr r1, =gStatuses3
- ldrb r2, [r5]
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- bne _0804EAFC
- ldr r0, =gDisableStructs
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- cmp r0, 0
- bne _0804EAFC
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804EAFC
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r2, [r0]
- ands r2, r3
- movs r0, 0
- movs r1, 0x1
- bl dp01_build_cmdbuf_x1B_aaaa_b
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
-_0804EAFC:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x6
- str r0, [r1]
-_0804EB04:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk65_status2animation
-
- thumb_func_start atk66_chosenstatusanimation
-atk66_chosenstatusanimation: @ 804EB2C
- push {r4,r5,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _0804EB9E
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r5, =gActiveBank
- strb r0, [r5]
- ldr r4, [r4]
- ldrb r2, [r4, 0x3]
- ldrb r0, [r4, 0x4]
- lsls r0, 8
- orrs r2, r0
- ldrb r0, [r4, 0x5]
- lsls r0, 16
- orrs r2, r0
- ldrb r0, [r4, 0x6]
- lsls r0, 24
- orrs r2, r0
- ldr r1, =gStatuses3
- ldrb r3, [r5]
- lsls r0, r3, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x000400c0
- ands r0, r1
- cmp r0, 0
- bne _0804EB96
- ldr r0, =gDisableStructs
- lsls r1, r3, 3
- subs r1, r3
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- cmp r0, 0
- bne _0804EB96
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804EB96
- ldrb r1, [r4, 0x2]
- movs r0, 0
- bl dp01_build_cmdbuf_x1B_aaaa_b
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
-_0804EB96:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x7
- str r0, [r1]
-_0804EB9E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk66_chosenstatusanimation
-
- thumb_func_start atk67_8025ECC
-atk67_8025ECC: @ 804EBC0
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r5, =gBattleCommunication
- ldrb r4, [r5]
- cmp r4, 0
- beq _0804EBD8
- cmp r4, 0x1
- beq _0804EC04
- b _0804EC96
- .pool
-_0804EBD8:
- str r4, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- ldr r0, =gText_BattleYesNoChoice
- movs r1, 0xC
- bl battle_show_message_maybe
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- strb r4, [r5, 0x1]
- movs r0, 0
- bl sub_8056B74
- b _0804EC96
- .pool
-_0804EC04:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804EC2A
- ldrb r0, [r5, 0x1]
- cmp r0, 0
- beq _0804EC2A
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r5, 0x1]
- bl sub_8056BAC
- movs r0, 0
- strb r0, [r5, 0x1]
- bl sub_8056B74
-_0804EC2A:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804EC52
- ldr r4, =gBattleCommunication
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- bne _0804EC52
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0x1
- strb r0, [r4, 0x1]
- bl sub_8056B74
-_0804EC52:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0804EC70
- ldr r0, =gBattleCommunication
- movs r4, 0x1
- strb r4, [r0, 0x1]
- b _0804EC7A
- .pool
-_0804EC70:
- movs r4, 0x1
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _0804EC96
-_0804EC7A:
- movs r0, 0x5
- bl PlaySE
- str r4, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_0804EC96:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk67_8025ECC
-
- thumb_func_start atk68_80246A0
-atk68_80246A0: @ 804ECA4
- push {r4,r5,lr}
- movs r1, 0
- ldr r2, =gNoOfAllBanks
- ldr r5, =gBattlescriptCurrInstr
- ldrb r0, [r2]
- cmp r1, r0
- bge _0804ECC2
- ldr r4, =gUnknown_0202407A
- movs r3, 0xC
-_0804ECB6:
- adds r0, r1, r4
- strb r3, [r0]
- adds r1, 0x1
- ldrb r0, [r2]
- cmp r1, r0
- blt _0804ECB6
-_0804ECC2:
- ldr r0, [r5]
- adds r0, 0x1
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk68_80246A0
-
- thumb_func_start atk69_dmg_adjustment2
-atk69_dmg_adjustment2: @ 804ECDC
- push {r4-r7,lr}
- ldr r7, =gBattleMons
- ldr r6, =gBankTarget
- ldrb r2, [r6]
- movs r5, 0x58
- adds r0, r2, 0
- muls r0, r5
- adds r1, r0, r7
- ldrh r0, [r1, 0x2E]
- cmp r0, 0xAF
- bne _0804ED10
- ldr r1, =gEnigmaBerries
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r4, [r0, 0x7]
- ldrb r6, [r0, 0x1A]
- b _0804ED2A
- .pool
-_0804ED10:
- ldrh r0, [r1, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r7
- ldrh r0, [r0, 0x2E]
- bl ItemId_GetHoldEffectParam
- lsls r0, 24
- lsrs r6, r0, 24
-_0804ED2A:
- ldr r1, =gStringBank
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- strb r0, [r1]
- cmp r4, 0x27
- bne _0804ED68
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r6
- bcs _0804ED68
- ldrb r0, [r5]
- movs r1, 0x27
- bl RecordItemEffectBattle
- ldr r2, =gSpecialStatuses
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
-_0804ED68:
- ldr r2, =gBattleMons
- ldr r3, =gBankTarget
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, r2, 0
- adds r1, 0x50
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r1, r0
- adds r5, r2, 0
- cmp r1, 0
- bne _0804EE38
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x65
- beq _0804EDBA
- ldr r0, =gProtectStructs
- lsls r1, r4, 4
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 30
- cmp r0, 0
- blt _0804EDBA
- ldr r0, =gSpecialStatuses
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- lsrs r0, 7
- cmp r0, 0
- beq _0804EE38
-_0804EDBA:
- ldrb r0, [r3]
- movs r4, 0x58
- muls r0, r4
- adds r0, r5
- ldrh r1, [r0, 0x28]
- ldr r2, =gBattleMoveDamage
- ldr r0, [r2]
- cmp r1, r0
- bgt _0804EE38
- subs r0, r1, 0x1
- str r0, [r2]
- ldr r1, =gProtectStructs
- ldrb r3, [r3]
- lsls r0, r3, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 30
- cmp r0, 0
- bge _0804EE10
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- b _0804EE38
- .pool
-_0804EE10:
- ldr r0, =gSpecialStatuses
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- lsrs r0, 7
- cmp r0, 0
- beq _0804EE38
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gLastUsedItem
- adds r0, r3, 0
- muls r0, r4
- adds r0, r5
- ldrh r0, [r0, 0x2E]
- strh r0, [r1]
-_0804EE38:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk69_dmg_adjustment2
-
- thumb_func_start atk6A_removeitem
-atk6A_removeitem: @ 804EE58
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r6, =gBattlescriptCurrInstr
- ldr r0, [r6]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r5, =gActiveBank
- strb r0, [r5]
- ldr r1, =gBattleStruct
- ldrb r4, [r5]
- lsls r0, r4, 1
- adds r0, 0xB8
- ldr r1, [r1]
- adds r1, r0
- ldr r2, =gBattleMons
- movs r3, 0x58
- adds r0, r4, 0
- muls r0, r3
- adds r0, r2
- ldrh r0, [r0, 0x2E]
- strh r0, [r1]
- ldrb r0, [r5]
- muls r0, r3
- adds r0, r2
- movs r1, 0
- strh r1, [r0, 0x2E]
- ldrb r0, [r5]
- muls r0, r3
- adds r2, 0x2E
- adds r0, r2
- str r0, [sp]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl EmitSetAttributes
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- ldr r0, [r6]
- adds r0, 0x2
- str r0, [r6]
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk6A_removeitem
-
- thumb_func_start atk6B_atknameinbuff1
-atk6B_atknameinbuff1: @ 804EEC8
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x7
- strb r0, [r1, 0x1]
- ldr r2, =gBankAttacker
- ldrb r0, [r2]
- strb r0, [r1, 0x2]
- ldr r3, =gBattlePartyID
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atk6B_atknameinbuff1
-
- thumb_func_start atk6C_lvlbox_display
-atk6C_lvlbox_display: @ 804EF04
- push {r4,lr}
- sub sp, 0x4
- ldr r0, =gBattleScripting
- ldrb r1, [r0, 0x1E]
- adds r4, r0, 0
- cmp r1, 0
- bne _0804EF28
- bl sub_804F498
- cmp r0, 0
- beq _0804EF24
- movs r0, 0x3
- b _0804EF26
- .pool
-_0804EF24:
- movs r0, 0x1
-_0804EF26:
- strb r0, [r4, 0x1E]
-_0804EF28:
- ldrb r0, [r4, 0x1E]
- subs r0, 0x1
- cmp r0, 0x9
- bls _0804EF32
- b _0804F0F2
-_0804EF32:
- lsls r0, 2
- ldr r1, =_0804EF40
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804EF40:
- .4byte _0804EF68
- .4byte _0804EF94
- .4byte _0804EFAC
- .4byte _0804F000
- .4byte _0804F014
- .4byte _0804F02C
- .4byte _0804F014
- .4byte _0804F04C
- .4byte _0804F07C
- .4byte _0804F0C0
-_0804EF68:
- ldr r1, =gUnknown_02022E1E
- movs r0, 0x60
- strh r0, [r1]
- movs r0, 0x2
- movs r1, 0x7
- movs r2, 0
- bl SetBgAttribute
- movs r0, 0x2
- bl ShowBg
- bl sub_804F17C
- ldr r1, =gBattleScripting
- movs r0, 0x2
- strb r0, [r1, 0x1E]
- b _0804F0F2
- .pool
-_0804EF94:
- bl sub_804F1CC
- lsls r0, 24
- cmp r0, 0
- beq _0804EFA0
- b _0804F0F2
-_0804EFA0:
- ldr r1, =gBattleScripting
- movs r0, 0x3
- strb r0, [r1, 0x1E]
- b _0804F0F2
- .pool
-_0804EFAC:
- ldr r1, =gUnknown_02022E18
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_02022E1A
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- movs r0, 0
- movs r1, 0x7
- movs r2, 0x1
- bl SetBgAttribute
- movs r0, 0x1
- movs r1, 0x7
- movs r2, 0
- bl SetBgAttribute
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x80
- str r0, [sp]
- movs r0, 0x12
- movs r1, 0x7
- movs r2, 0x1D
- movs r3, 0x13
- bl sub_8056A3C
- ldr r1, =gBattleScripting
- movs r0, 0x4
- strb r0, [r1, 0x1E]
- b _0804F0F2
- .pool
-_0804F000:
- bl sub_804F100
- movs r0, 0xD
- bl PutWindowTilemap
- movs r0, 0xD
- movs r1, 0x3
- bl CopyWindowToVram
- b _0804F06A
-_0804F014:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _0804F0F2
- ldr r0, =gUnknown_02022E1A
- strh r1, [r0]
- b _0804F06A
- .pool
-_0804F02C:
- ldr r0, =gMain
- ldrh r0, [r0, 0x2E]
- cmp r0, 0
- beq _0804F0F2
- movs r0, 0x5
- bl PlaySE
- bl sub_804F144
- movs r0, 0xD
- movs r1, 0x2
- bl CopyWindowToVram
- b _0804F06A
- .pool
-_0804F04C:
- ldr r0, =gMain
- ldrh r0, [r0, 0x2E]
- cmp r0, 0
- beq _0804F0F2
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x81
- str r0, [sp]
- movs r0, 0x12
- movs r1, 0x7
- movs r2, 0x1D
- movs r3, 0x13
- bl sub_8056A3C
-_0804F06A:
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x1E]
- adds r0, 0x1
- strb r0, [r1, 0x1E]
- b _0804F0F2
- .pool
-_0804F07C:
- bl sub_804F344
- lsls r0, 24
- cmp r0, 0
- bne _0804F0F2
- movs r0, 0xE
- bl ClearWindowTilemap
- movs r0, 0xE
- movs r1, 0x1
- bl CopyWindowToVram
- movs r0, 0xD
- bl ClearWindowTilemap
- movs r0, 0xD
- movs r1, 0x1
- bl CopyWindowToVram
- movs r0, 0x2
- movs r1, 0x7
- movs r2, 0x2
- bl SetBgAttribute
- movs r0, 0x2
- bl ShowBg
- ldr r1, =gBattleScripting
- movs r0, 0xA
- strb r0, [r1, 0x1E]
- b _0804F0F2
- .pool
-_0804F0C0:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0804F0F2
- movs r0, 0
- movs r1, 0x7
- movs r2, 0
- bl SetBgAttribute
- movs r0, 0x1
- movs r1, 0x7
- movs r2, 0x1
- bl SetBgAttribute
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_0804F0F2:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk6C_lvlbox_display
-
- thumb_func_start sub_804F100
-sub_804F100: @ 804F100
- push {lr}
- sub sp, 0x14
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- add r1, sp, 0x8
- bl sub_81D388C
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r1, [r0, 0x10]
- movs r0, 0xD
- str r0, [sp]
- movs r0, 0xF
- str r0, [sp, 0x4]
- movs r0, 0xD
- add r2, sp, 0x8
- movs r3, 0xE
- bl sub_81D3640
- add sp, 0x14
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_804F100
-
- thumb_func_start sub_804F144
-sub_804F144: @ 804F144
- push {lr}
- sub sp, 0x10
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrb r1, [r0, 0x10]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- add r1, sp, 0x4
- bl sub_81D388C
- movs r0, 0xF
- str r0, [sp]
- movs r0, 0xD
- add r1, sp, 0x4
- movs r2, 0xE
- movs r3, 0xD
- bl sub_81D3784
- add sp, 0x10
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_804F144
-
- thumb_func_start sub_804F17C
-sub_804F17C: @ 804F17C
- push {lr}
- ldr r1, =gUnknown_02022E1E
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_02022E1C
- movs r2, 0xD0
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0831C2C8
- movs r1, 0x60
- movs r2, 0x20
- bl LoadPalette
- ldr r1, =gUnknown_0831C2E8
- movs r0, 0xE
- movs r2, 0
- movs r3, 0
- bl CopyToWindowPixelBuffer
- movs r0, 0xE
- bl PutWindowTilemap
- movs r0, 0xE
- movs r1, 0x3
- bl CopyWindowToVram
- bl sub_804F384
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_804F17C
-
- thumb_func_start sub_804F1CC
-sub_804F1CC: @ 804F1CC
- push {r4,r5,lr}
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- beq _0804F1DC
- movs r0, 0x1
- b _0804F216
-_0804F1DC:
- ldr r4, =gUnknown_02022E1C
- ldrh r1, [r4]
- movs r5, 0x80
- lsls r5, 2
- cmp r1, r5
- bne _0804F1F0
- movs r0, 0
- b _0804F216
- .pool
-_0804F1F0:
- movs r0, 0xD0
- lsls r0, 1
- cmp r1, r0
- bne _0804F1FC
- bl sub_804F220
-_0804F1FC:
- ldrh r0, [r4]
- adds r0, 0x8
- strh r0, [r4]
- lsls r0, 16
- ldr r1, =0x01ff0000
- cmp r0, r1
- bls _0804F20C
- strh r5, [r4]
-_0804F20C:
- ldrh r1, [r4]
- eors r1, r5
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
-_0804F216:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_804F1CC
-
- thumb_func_start sub_804F220
-sub_804F220: @ 804F220
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- ldr r6, =gBattleStruct
- ldr r0, [r6]
- ldrb r0, [r0, 0x10]
- movs r5, 0x64
- muls r0, r5
- ldr r4, =gPlayerParty
- adds r0, r4
- movs r1, 0x38
- bl GetMonData
- mov r8, r0
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldr r0, [r6]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- bl GetMonGender
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, [r6]
- ldrb r0, [r0, 0x10]
- muls r0, r5
- adds r0, r4
- ldr r5, =gStringVar4
- adds r1, r5, 0
- bl GetMonNickname
- str r5, [sp]
- mov r2, sp
- movs r1, 0
- movs r0, 0xE
- strb r0, [r2, 0x4]
- mov r0, sp
- strb r1, [r0, 0x5]
- movs r4, 0x20
- strb r4, [r0, 0x6]
- strb r1, [r0, 0x7]
- strb r4, [r0, 0x8]
- strb r1, [r0, 0x9]
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r3, sp
- ldrb r2, [r3, 0xC]
- subs r1, 0x10
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3, 0xC]
- mov r2, sp
- movs r0, 0x10
- strb r0, [r2, 0xC]
- ldrb r0, [r2, 0xD]
- ands r1, r0
- strb r1, [r2, 0xD]
- mov r0, sp
- strb r4, [r0, 0xD]
- movs r1, 0xFF
- movs r2, 0
- bl AddTextPrinter
- movs r0, 0xF9
- strb r0, [r5]
- adds r5, 0x1
- movs r0, 0x5
- strb r0, [r5]
- adds r5, 0x1
- adds r4, r5, 0
- adds r0, r4, 0
- mov r1, r8
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r5, r0, 0
- subs r4, r5, r4
- movs r2, 0x4
- subs r2, r4
- lsls r2, 16
- lsrs r2, 16
- movs r1, 0x77
- bl StringFill
- adds r5, r0, 0
- cmp r7, 0xFF
- beq _0804F320
- cmp r7, 0
- bne _0804F300
- movs r1, 0
- movs r2, 0xC
- bl WriteColorChangeControlCode
- adds r5, r0, 0
- movs r1, 0x1
- movs r2, 0xD
- bl WriteColorChangeControlCode
- adds r5, r0, 0
- movs r0, 0xB5
- b _0804F318
- .pool
-_0804F300:
- adds r0, r5, 0
- movs r1, 0
- movs r2, 0xE
- bl WriteColorChangeControlCode
- adds r5, r0, 0
- movs r1, 0x1
- movs r2, 0xF
- bl WriteColorChangeControlCode
- adds r5, r0, 0
- movs r0, 0xB6
-_0804F318:
- strb r0, [r5]
- adds r5, 0x1
- movs r0, 0xFF
- strb r0, [r5]
-_0804F320:
- mov r0, sp
- movs r1, 0xA
- strb r1, [r0, 0x7]
- strb r1, [r0, 0x9]
- movs r1, 0xFF
- movs r2, 0
- bl AddTextPrinter
- movs r0, 0xE
- movs r1, 0x2
- bl CopyWindowToVram
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_804F220
-
- thumb_func_start sub_804F344
-sub_804F344: @ 804F344
- push {lr}
- ldr r0, =gUnknown_02022E1C
- ldrh r1, [r0]
- movs r3, 0xD0
- lsls r3, 1
- adds r2, r0, 0
- cmp r1, r3
- bne _0804F35C
- movs r0, 0
- b _0804F380
- .pool
-_0804F35C:
- ldrh r0, [r2]
- adds r1, r0, 0
- subs r1, 0x10
- ldr r0, =0x0000019f
- cmp r1, r0
- bgt _0804F370
- strh r3, [r2]
- b _0804F372
- .pool
-_0804F370:
- strh r1, [r2]
-_0804F372:
- ldrh r1, [r2]
- movs r0, 0xD0
- lsls r0, 1
- eors r1, r0
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
-_0804F380:
- pop {r1}
- bx r1
- thumb_func_end sub_804F344
-
- thumb_func_start sub_804F384
-sub_804F384: @ 804F384
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x10
- ldr r0, =gBattleStruct
- mov r8, r0
- ldr r0, [r0]
- ldrb r0, [r0, 0x10]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gPlayerParty
- adds r0, r5
- movs r1, 0xB
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- mov r1, r8
- ldr r0, [r1]
- ldrb r0, [r0, 0x10]
- muls r0, r6
- adds r0, r5
- movs r1, 0
- bl GetMonData
- adds r1, r0, 0
- adds r0, r4, 0
- movs r2, 0x1
- bl sub_80D2EDC
- str r0, [sp]
- ldr r5, =0xffff0000
- ldr r0, [sp, 0x4]
- ands r0, r5
- movs r1, 0x80
- lsls r1, 2
- orrs r0, r1
- ldr r1, =0x0000ffff
- ands r0, r1
- ldr r1, =0xd75a0000
- orrs r0, r1
- str r0, [sp, 0x4]
- adds r0, r4, 0
- bl sub_80D30B0
- str r0, [sp, 0x8]
- add r4, sp, 0x8
- ldr r0, [r4, 0x4]
- ands r0, r5
- ldr r1, =0x0000d75a
- orrs r0, r1
- str r0, [r4, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- adds r0, r4, 0
- bl LoadSpritePalette
- ldr r0, =gUnknown_0831C3C0
- movs r1, 0x80
- lsls r1, 1
- movs r2, 0xA
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0
- strh r0, [r1, 0x2E]
- ldr r0, =gUnknown_02022E1C
- ldrh r0, [r0]
- strh r0, [r1, 0x30]
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_804F384
-
- thumb_func_start sub_804F450
-sub_804F450: @ 804F450
- push {r4,lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_02022E1C
- ldrh r1, [r2, 0x30]
- ldrh r0, [r0]
- subs r1, r0
- strh r1, [r2, 0x24]
- lsls r1, 16
- cmp r1, 0
- beq _0804F470
- movs r0, 0x1
- strh r0, [r2, 0x2E]
- b _0804F48C
- .pool
-_0804F470:
- movs r1, 0x2E
- ldrsh r0, [r2, r1]
- cmp r0, 0
- beq _0804F48C
- adds r0, r2, 0
- bl DestroySprite
- ldr r4, =0x0000d75a
- adds r0, r4, 0
- bl FreeSpriteTilesByTag
- adds r0, r4, 0
- bl FreeSpritePaletteByTag
-_0804F48C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_804F450
-
- thumb_func_start sub_804F498
-sub_804F498: @ 804F498
- push {lr}
- ldr r3, =gBattlePartyID
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- ldrh r1, [r3]
- ldrb r2, [r0, 0x10]
- cmp r1, r2
- beq _0804F4BA
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0804F4CC
- ldrh r0, [r3, 0x4]
- cmp r0, r2
- bne _0804F4CC
-_0804F4BA:
- movs r0, 0x1
- b _0804F4CE
- .pool
-_0804F4CC:
- movs r0, 0
-_0804F4CE:
- pop {r1}
- bx r1
- thumb_func_end sub_804F498
-
- thumb_func_start atk6D_set_sentpokes_values
-atk6D_set_sentpokes_values: @ 804F4D4
- push {lr}
- bl sub_803F988
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk6D_set_sentpokes_values
-
- thumb_func_start atk6E_set_atk_to_player0
-atk6E_set_atk_to_player0: @ 804F4EC
- push {lr}
- movs r0, 0
- bl GetBankByPlayerAI
- ldr r1, =gBankAttacker
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk6E_set_atk_to_player0
-
- thumb_func_start atk6F_set_visible
-atk6F_set_visible: @ 804F50C
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- movs r1, 0
- bl dp01_build_cmdbuf_x33_a_33_33
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk6F_set_visible
-
- thumb_func_start atk70_record_ability
-atk70_record_ability: @ 804F540
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r1, =gActiveBank
- strb r0, [r1]
- ldrb r0, [r1]
- ldr r1, =gLastUsedAbility
- ldrb r1, [r1]
- bl RecordAbilityBattle
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk70_record_ability
-
- thumb_func_start sub_804F574
-sub_804F574: @ 804F574
- ldr r2, =gBattleTextBuff2
- movs r0, 0xFD
- strb r0, [r2]
- movs r0, 0x2
- strb r0, [r2, 0x1]
- ldr r0, =gMoveToLearn
- ldrh r1, [r0]
- strb r1, [r2, 0x2]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- lsrs r0, 8
- strb r0, [r2, 0x3]
- movs r0, 0xFF
- strb r0, [r2, 0x4]
- bx lr
- .pool
- thumb_func_end sub_804F574
-
- thumb_func_start atk71_buffer_move_to_learn
-atk71_buffer_move_to_learn: @ 804F59C
- push {lr}
- bl sub_804F574
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk71_buffer_move_to_learn
-
- thumb_func_start atk72_jump_if_can_run_frombattle
-atk72_jump_if_can_run_frombattle: @ 804F5B4
- push {lr}
- ldr r0, =gBank1
- ldrb r0, [r0]
- bl sub_803EC20
- lsls r0, 24
- cmp r0, 0
- beq _0804F5E8
- ldr r3, =gBattlescriptCurrInstr
- 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 _0804F5F0
- .pool
-_0804F5E8:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0804F5F0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk72_jump_if_can_run_frombattle
-
- thumb_func_start atk73_hp_thresholds
-atk73_hp_thresholds: @ 804F5F8
- push {r4-r6,lr}
- ldr r0, =gBattleTypeFlags
- ldr r4, [r0]
- movs r6, 0x1
- ands r4, r6
- cmp r4, 0
- bne _0804F68E
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r1, =gActiveBank
- strb r0, [r1]
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gBattleMons
- movs r1, 0x58
- muls r1, r0
- adds r1, r2
- ldrh r5, [r1, 0x28]
- movs r0, 0x64
- muls r0, r5
- ldrh r1, [r1, 0x2C]
- bl __divsi3
- cmp r0, 0
- bne _0804F636
- movs r0, 0x1
-_0804F636:
- cmp r0, 0x45
- bgt _0804F63E
- cmp r5, 0
- bne _0804F65C
-_0804F63E:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB1
- strb r4, [r0]
- b _0804F68E
- .pool
-_0804F65C:
- cmp r0, 0x27
- ble _0804F670
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB1
- strb r6, [r0]
- b _0804F68E
- .pool
-_0804F670:
- cmp r0, 0x9
- ble _0804F684
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB1
- movs r1, 0x2
- b _0804F68C
- .pool
-_0804F684:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB1
- movs r1, 0x3
-_0804F68C:
- strb r1, [r0]
-_0804F68E:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk73_hp_thresholds
-
- thumb_func_start atk74_hp_thresholds2
-atk74_hp_thresholds2: @ 804F6A4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gBattleTypeFlags
- ldr r7, [r0]
- movs r0, 0x1
- mov r8, r0
- ands r7, r0
- cmp r7, 0
- bne _0804F73E
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- adds r4, r0, 0
- ldr r0, =gActiveBank
- strb r4, [r0]
- movs r0, 0x1
- eors r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gBattleStruct
- ldr r6, [r1]
- lsrs r0, 23
- adds r0, r6
- adds r0, 0xA8
- ldrb r5, [r0]
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r4
- adds r0, r1
- ldrh r4, [r0, 0x28]
- subs r1, r5, r4
- movs r0, 0x64
- muls r0, r1
- adds r1, r5, 0
- bl __divsi3
- adds r1, r0, 0
- cmp r4, r5
- bcc _0804F71C
- adds r0, r6, 0
- adds r0, 0xB1
- strb r7, [r0]
- b _0804F73E
- .pool
-_0804F71C:
- cmp r0, 0x1D
- bgt _0804F72A
- adds r0, r6, 0
- adds r0, 0xB1
- mov r1, r8
- strb r1, [r0]
- b _0804F73E
-_0804F72A:
- cmp r1, 0x45
- bgt _0804F736
- adds r1, r6, 0
- adds r1, 0xB1
- movs r0, 0x2
- b _0804F73C
-_0804F736:
- adds r1, r6, 0
- adds r1, 0xB1
- movs r0, 0x3
-_0804F73C:
- strb r0, [r1]
-_0804F73E:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk74_hp_thresholds2
-
- thumb_func_start atk75_8026A58
-atk75_8026A58: @ 804F754
- push {lr}
- sub sp, 0x4
- ldr r2, =gBankInMenu
- ldr r1, =gBankAttacker
- ldrb r0, [r1]
- strb r0, [r2]
- ldr r2, =gBattlePartyID
- ldrb r0, [r1]
- lsls r0, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r1, =gEnemyParty
- adds r0, r1
- ldr r1, =gLastUsedItem
- ldrh r1, [r1]
- lsls r2, 24
- lsrs r2, 24
- movs r3, 0x1
- str r3, [sp]
- movs r3, 0
- bl ExecuteTableBasedItemEffect
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk75_8026A58
-
- thumb_func_start atk76_various
-atk76_various: @ 804F7AC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r1, =gActiveBank
- strb r0, [r1]
- ldr r0, [r4]
- ldrb r0, [r0, 0x2]
- cmp r0, 0x1A
- bls _0804F7CA
- b _0804FD70
-_0804F7CA:
- lsls r0, 2
- ldr r1, =_0804F7E0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0804F7E0:
- .4byte _0804F84C
- .4byte _0804F85C
- .4byte _0804F8BC
- .4byte _0804F8CC
- .4byte _0804F8E4
- .4byte _0804F920
- .4byte _0804F958
- .4byte _0804F9E0
- .4byte _0804FA20
- .4byte _0804FACC
- .4byte _0804FAE8
- .4byte _0804FB3C
- .4byte _0804FB94
- .4byte _0804FC18
- .4byte _0804FC2C
- .4byte _0804FC32
- .4byte _0804FC38
- .4byte _0804FC60
- .4byte _0804FC6A
- .4byte _0804FC78
- .4byte _0804FC8C
- .4byte _0804FCC4
- .4byte _0804FCD8
- .4byte _0804FCF0
- .4byte _0804FD1C
- .4byte _0804FD30
- .4byte _0804FD5C
-_0804F84C:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl CancelMultiTurnMoves
- b _0804FD70
- .pool
-_0804F85C:
- ldr r1, =gBankAttacker
- ldr r4, =gBankTarget
- ldrb r0, [r4]
- strb r0, [r1]
- ldrb r0, [r1]
- bl GetBankSide
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSideTimers
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r2, r1, r2
- ldrb r0, [r2, 0x8]
- cmp r0, 0
- beq _0804F8A8
- ldr r1, =gBattleMons
- ldrb r2, [r2, 0x9]
- movs r0, 0x58
- muls r0, r2
- adds r0, r1
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _0804F8A8
- strb r2, [r4]
- b _0804FD70
- .pool
-_0804F8A8:
- ldr r0, =gBankTarget
- ldr r1, =gActiveBank
- ldrb r1, [r1]
- strb r1, [r0]
- b _0804FD70
- .pool
-_0804F8BC:
- bl sub_803BB88
- ldr r1, =gBattleCommunication
- strb r0, [r1]
- b _0804FD70
- .pool
-_0804F8CC:
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- movs r1, 0
- bl GetMoveTarget
- ldr r1, =gBankTarget
- strb r0, [r1]
- b _0804FD70
- .pool
-_0804F8E4:
- ldr r2, =gHitMarker
- ldr r1, =gBitTable
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- lsls r0, 28
- ldr r2, [r2]
- ands r2, r0
- cmp r2, 0
- beq _0804F914
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1]
- b _0804FD70
- .pool
-_0804F914:
- ldr r0, =gBattleCommunication
- strb r2, [r0]
- b _0804FD70
- .pool
-_0804F920:
- ldr r4, =gSpecialStatuses
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1]
- movs r0, 0x9
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldrb r0, [r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- b _0804FD70
- .pool
-_0804F958:
- ldr r4, =gBattlePartyID
- ldr r1, =gBattleStruct
- ldr r0, [r1]
- ldrh r3, [r4]
- ldrb r2, [r0, 0x10]
- adds r6, r1, 0
- cmp r3, r2
- beq _0804F974
- ldrh r0, [r4, 0x4]
- cmp r0, r2
- beq _0804F970
- b _0804FD70
-_0804F970:
- cmp r3, r0
- bne _0804F988
-_0804F974:
- ldr r1, =gActiveBank
- movs r0, 0
- b _0804F98C
- .pool
-_0804F988:
- ldr r1, =gActiveBank
- movs r0, 0x2
-_0804F98C:
- strb r0, [r1]
- adds r5, r1, 0
- ldrb r2, [r5]
- lsls r0, r2, 1
- adds r0, 0xC8
- ldr r1, [r6]
- adds r4, r1, r0
- movs r3, 0
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r2
- adds r1, 0xC
- adds r0, r1
- ldrh r0, [r0]
- ldrh r2, [r4]
- cmp r0, r2
- beq _0804F9CC
- adds r6, r5, 0
- movs r5, 0x58
- adds r2, r1, 0
-_0804F9B4:
- adds r3, 0x1
- cmp r3, 0x3
- bgt _0804F9CC
- lsls r1, r3, 1
- ldrb r0, [r6]
- muls r0, r5
- adds r1, r0
- adds r1, r2
- ldrh r0, [r1]
- ldrh r1, [r4]
- cmp r0, r1
- bne _0804F9B4
-_0804F9CC:
- cmp r3, 0x4
- beq _0804F9D2
- b _0804FD70
-_0804F9D2:
- movs r0, 0
- strh r0, [r4]
- b _0804FD70
- .pool
-_0804F9E0:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0xB
- ands r0, r1
- cmp r0, 0x8
- beq _0804F9EE
- b _0804FD70
-_0804F9EE:
- ldr r1, =gBattleMons
- ldrh r0, [r1, 0x28]
- cmp r0, 0
- bne _0804F9F8
- b _0804FD70
-_0804F9F8:
- adds r0, r1, 0
- adds r0, 0x80
- ldrh r0, [r0]
- cmp r0, 0
- bne _0804FA04
- b _0804FD70
-_0804FA04:
- ldr r0, =gHitMarker
- ldr r1, [r0]
- ldr r2, =0xffbfffff
- ands r1, r2
- str r1, [r0]
- b _0804FD70
- .pool
-_0804FA20:
- ldr r2, =gBattleCommunication
- mov r8, r2
- movs r0, 0
- strb r0, [r2]
- ldr r1, =gBattleScripting
- ldr r6, =gActiveBank
- ldrb r0, [r2, 0x1]
- strb r0, [r6]
- strb r0, [r1, 0x17]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r7, r0, 0
- adds r7, 0x92
- ldrb r3, [r7]
- ldr r1, =gBitTable
- ldrb r2, [r6]
- lsls r0, r2, 2
- adds r0, r1
- ldr r5, [r0]
- adds r0, r3, 0
- ands r0, r5
- cmp r0, 0
- beq _0804FA50
- b _0804FD70
-_0804FA50:
- ldr r4, =gBattleMons
- movs r0, 0x58
- mov r12, r0
- mov r1, r12
- muls r1, r2
- adds r2, r1, 0
- adds r1, r2, r4
- ldrh r0, [r1, 0x2C]
- lsrs r0, 1
- ldrh r1, [r1, 0x28]
- cmp r0, r1
- bcs _0804FA6A
- b _0804FD70
-_0804FA6A:
- cmp r1, 0
- bne _0804FA70
- b _0804FD70
-_0804FA70:
- adds r0, r4, 0
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- beq _0804FA82
- b _0804FD70
-_0804FA82:
- orrs r3, r5
- strb r3, [r7]
- movs r0, 0x1
- mov r2, r8
- strb r0, [r2]
- ldrb r0, [r6]
- mov r1, r12
- muls r1, r0
- adds r0, r1, 0
- adds r1, r4, 0
- adds r1, 0x48
- adds r0, r1
- ldr r0, [r0]
- bl GetNatureFromPersonality
- ldr r1, =gUnknown_0831C4F8
- lsls r0, 24
- lsrs r0, 24
- adds r0, r1
- ldrb r0, [r0]
- mov r2, r8
- strb r0, [r2, 0x5]
- b _0804FD70
- .pool
-_0804FACC:
- ldr r4, =gBattleCommunication
- adds r0, r4, 0
- bl sub_81A5258
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0
- bne _0804FADE
- b _0804FD78
-_0804FADE:
- strb r3, [r4, 0x1]
- b _0804FD70
- .pool
-_0804FAE8:
- ldr r0, =gBattleMons
- adds r0, 0x80
- movs r1, 0
- strh r1, [r0]
- ldr r2, =gHitMarker
- ldr r3, =gBitTable
- ldr r1, [r3, 0x4]
- lsls r1, 28
- ldr r0, [r2]
- orrs r0, r1
- str r0, [r2]
- ldr r0, =gBattleStruct
- ldr r2, [r0]
- ldr r0, =0x000002a1
- adds r2, r0
- ldr r0, =gBattlePartyID
- ldrh r0, [r0, 0x2]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gDisableStructs
- adds r1, 0x34
- ldrb r0, [r1]
- movs r2, 0x2
- b _0804FBF4
- .pool
-_0804FB3C:
- ldr r1, =gBattleMons
- movs r0, 0
- strh r0, [r1, 0x28]
- ldr r2, =gHitMarker
- ldr r3, =gBitTable
- ldr r1, [r3]
- lsls r1, 28
- ldr r0, [r2]
- orrs r0, r1
- movs r1, 0x80
- lsls r1, 15
- orrs r0, r1
- str r0, [r2]
- ldr r0, =gBattleStruct
- ldr r2, [r0]
- movs r1, 0xA8
- lsls r1, 2
- adds r2, r1
- ldr r0, =gBattlePartyID
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r2, =gDisableStructs
- ldrb r0, [r2, 0x18]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0x18]
- b _0804FD70
- .pool
-_0804FB94:
- ldr r0, =gBattleMons
- movs r1, 0
- strh r1, [r0, 0x28]
- adds r0, 0x80
- strh r1, [r0]
- ldr r2, =gHitMarker
- ldr r3, =gBitTable
- ldr r0, [r3]
- lsls r0, 28
- ldr r1, [r2]
- orrs r1, r0
- ldr r0, [r3, 0x4]
- lsls r0, 28
- orrs r1, r0
- movs r0, 0x80
- lsls r0, 15
- orrs r1, r0
- str r1, [r2]
- ldr r5, =gBattleStruct
- ldr r2, [r5]
- movs r0, 0xA8
- lsls r0, 2
- adds r2, r0
- ldr r4, =gBattlePartyID
- ldrh r0, [r4]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r2, [r5]
- ldr r1, =0x000002a1
- adds r2, r1
- ldrh r0, [r4, 0x2]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gDisableStructs
- ldrb r0, [r1, 0x18]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1, 0x18]
- adds r1, 0x34
- ldrb r0, [r1]
-_0804FBF4:
- orrs r0, r2
- strb r0, [r1]
- b _0804FD70
- .pool
-_0804FC18:
- movs r0, 0
- bl sub_8033E10
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- b _0804FD70
- .pool
-_0804FC2C:
- bl sub_81A5BF8
- b _0804FD70
-_0804FC32:
- bl sub_81A5D44
- b _0804FD70
-_0804FC38:
- ldr r1, =gRefereeStringsTable
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
- ldr r0, =gDisplayedStringBattle
- movs r1, 0x16
- bl battle_show_message_maybe
- b _0804FD70
- .pool
-_0804FC60:
- movs r0, 0x16
- bl IsTextPrinterActive
- lsls r0, 16
- b _0804FD24
-_0804FC6A:
- bl IsCryFinished
- lsls r0, 24
- cmp r0, 0
- bne _0804FC76
- b _0804FD78
-_0804FC76:
- b _0804FD70
-_0804FC78:
- ldr r4, =gActiveBank
- movs r0, 0x1
- strb r0, [r4]
- ldr r0, =gBattleMons
- adds r0, 0x58
- b _0804FCA2
- .pool
-_0804FC8C:
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r0, 0x3
- bls _0804FD70
- ldr r4, =gActiveBank
- movs r0, 0x3
- strb r0, [r4]
- ldr r0, =gBattleMons
- movs r2, 0x84
- lsls r2, 1
- adds r0, r2
-_0804FCA2:
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _0804FD70
- movs r0, 0
- movs r1, 0
- bl dp01_build_cmdbuf_x06_a
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _0804FD70
- .pool
-_0804FCC4:
- ldr r0, =gMPlay_BGM
- ldr r1, =0x0000ffff
- movs r2, 0x55
- bl m4aMPlayVolumeControl
- b _0804FD70
- .pool
-_0804FCD8:
- ldr r0, =gMPlay_BGM
- ldr r1, =0x0000ffff
- movs r2, 0x80
- lsls r2, 1
- bl m4aMPlayVolumeControl
- b _0804FD70
- .pool
-_0804FCF0:
- ldr r0, =gBattleStruct
- ldr r2, [r0]
- ldr r0, =0x000002a2
- adds r2, r0
- ldr r1, =gBitTable
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldrb r1, [r2]
- orrs r0, r1
- strb r0, [r2]
- b _0804FD70
- .pool
-_0804FD1C:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl sub_805725C
-_0804FD24:
- cmp r0, 0
- bne _0804FD78
- b _0804FD70
- .pool
-_0804FD30:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0804FD50
- ldr r1, =gBattleOutcome
- movs r0, 0x5
- strb r0, [r1]
- b _0804FD70
- .pool
-_0804FD50:
- ldr r1, =gBattleOutcome
- movs r0, 0xA
- strb r0, [r1]
- b _0804FD70
- .pool
-_0804FD5C:
- movs r1, 0xCE
- lsls r1, 1
- movs r0, 0
- movs r2, 0x1
- bl sub_8034300
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
-_0804FD70:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x3
- str r0, [r1]
-_0804FD78:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk76_various
-
- thumb_func_start atk77_setprotect
-atk77_setprotect: @ 804FD8C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r6, 0x1
- ldr r2, =gUnknown_02024260
- ldr r1, =gBankAttacker
- ldrb r3, [r1]
- lsls r0, r3, 1
- adds r0, r2
- ldrh r0, [r0]
- mov r8, r1
- ldr r7, =gDisableStructs
- cmp r0, 0xB6
- beq _0804FDBC
- cmp r0, 0xC5
- beq _0804FDBC
- cmp r0, 0xCB
- beq _0804FDBC
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r7
- movs r1, 0
- strb r1, [r0, 0x8]
-_0804FDBC:
- ldr r0, =gUnknown_02024082
- ldrb r1, [r0]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r1, r0
- bne _0804FDCC
- movs r6, 0
-_0804FDCC:
- ldr r2, =sProtectSuccessRates
- mov r5, r8
- ldrb r1, [r5]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r7
- ldrb r4, [r0, 0x8]
- lsls r4, 1
- adds r4, r2
- bl Random
- ldrh r1, [r4]
- lsls r0, 16
- lsrs r0, 16
- cmp r1, r0
- bcc _0804FE80
- cmp r6, 0
- beq _0804FE80
- ldr r4, =gBattleMoves
- ldr r3, =gCurrentMove
- ldrh r0, [r3]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r0, [r1]
- cmp r0, 0x6F
- bne _0804FE1C
- ldr r0, =gProtectStructs
- ldrb r1, [r5]
- lsls r1, 4
- adds r1, r0
- ldrb r0, [r1]
- movs r2, 0x1
- orrs r0, r2
- strb r0, [r1]
- ldr r1, =gBattleCommunication
- movs r0, 0
- strb r0, [r1, 0x5]
-_0804FE1C:
- ldrh r0, [r3]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r0, [r1]
- cmp r0, 0x74
- bne _0804FE42
- ldr r0, =gProtectStructs
- ldrb r1, [r5]
- lsls r1, 4
- adds r1, r0
- ldrb r0, [r1]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
-_0804FE42:
- mov r1, r8
- ldrb r0, [r1]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r7
- ldrb r0, [r1, 0x8]
- adds r0, 0x1
- strb r0, [r1, 0x8]
- b _0804FEA2
- .pool
-_0804FE80:
- ldr r2, =gDisableStructs
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0
- strb r1, [r0, 0x8]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
-_0804FEA2:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk77_setprotect
-
- thumb_func_start atk78_faintifabilitynotdamp
-atk78_faintifabilitynotdamp: @ 804FEC8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gBattleExecBuffer
- ldr r2, [r0]
- cmp r2, 0
- bne _0804FFCC
- ldr r1, =gBankTarget
- strb r2, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r3, [r0]
- adds r5, r1, 0
- mov r8, r0
- ldr r6, =gBattleMons
- cmp r2, r3
- bcs _0804FF14
- adds r0, r6, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x6
- beq _0804FF14
- adds r2, r3, 0
- adds r4, r6, 0
- movs r3, 0x58
-_0804FEF8:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r2
- bcs _0804FF14
- ldrb r0, [r5]
- muls r0, r3
- adds r0, r4
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x6
- bne _0804FEF8
-_0804FF14:
- ldrb r0, [r5]
- mov r1, r8
- ldrb r1, [r1]
- cmp r0, r1
- bne _0804FFB0
- ldr r4, =gActiveBank
- ldr r7, =gBankAttacker
- ldrb r0, [r7]
- strb r0, [r4]
- ldr r2, =gBattleMoveDamage
- ldrb r1, [r4]
- movs r0, 0x58
- muls r0, r1
- adds r0, r6
- ldrh r0, [r0, 0x28]
- str r0, [r2]
- ldr r1, =0x00007fff
- movs r0, 0
- bl dp01_build_cmdbuf_x18_0_aa_health_bar_update
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- movs r0, 0
- strb r0, [r5]
- mov r2, r8
- ldrb r0, [r2]
- cmp r0, 0
- beq _0804FFCC
- adds r3, r5, 0
- ldrb r5, [r7]
- ldr r7, =gBitTable
- adds r4, r0, 0
- ldr r6, =gAbsentBankFlags
-_0804FF60:
- ldrb r2, [r3]
- cmp r2, r5
- beq _0804FF76
- ldrb r0, [r6]
- ldrb r1, [r3]
- lsls r1, 2
- adds r1, r7
- ldr r1, [r1]
- ands r0, r1
- cmp r0, 0
- beq _0804FFCC
-_0804FF76:
- adds r0, r2, 0x1
- strb r0, [r3]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r4
- bcc _0804FF60
- b _0804FFCC
- .pool
-_0804FFB0:
- ldr r1, =gLastUsedAbility
- movs r0, 0x6
- strb r0, [r1]
- ldrb r0, [r5]
- movs r1, 0x58
- muls r1, r0
- adds r1, r6
- adds r1, 0x20
- ldrb r1, [r1]
- bl RecordAbilityBattle
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB560
- str r0, [r1]
-_0804FFCC:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk78_faintifabilitynotdamp
-
- thumb_func_start atk79_setatkhptozero
-atk79_setatkhptozero: @ 804FFE4
- push {r4,lr}
- sub sp, 0x4
- ldr r0, =gBattleExecBuffer
- ldr r3, [r0]
- cmp r3, 0
- bne _08050028
- ldr r4, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r4]
- ldr r1, =gBattleMons
- ldrb r0, [r4]
- movs r2, 0x58
- muls r0, r2
- adds r0, r1
- strh r3, [r0, 0x28]
- ldrb r0, [r4]
- muls r0, r2
- adds r1, 0x28
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x2A
- movs r2, 0
- movs r3, 0x2
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_08050028:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk79_setatkhptozero
-
- thumb_func_start atk7A_jumpwhiletargetvalid
-atk7A_jumpwhiletargetvalid: @ 8050044
- push {r4-r7,lr}
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r4, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r4, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r4, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r4, r0
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- adds r7, r3, 0
- cmp r0, 0
- beq _080500DC
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- adds r1, 0x1
- strb r1, [r0]
- ldr r2, =gBankAttacker
- lsls r1, 24
- lsrs r1, 24
- adds r3, r0, 0
- ldr r6, =gAbsentBankFlags
- ldr r5, =gBitTable
- ldr r0, =gNoOfAllBanks
- mov r12, r0
- ldrb r0, [r2]
- cmp r1, r0
- bne _0805009A
-_0805008A:
- ldrb r0, [r3]
- adds r0, 0x1
- strb r0, [r3]
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r2]
- cmp r0, r1
- beq _0805008A
-_0805009A:
- ldrb r0, [r6]
- ldrb r1, [r3]
- lsls r1, 2
- adds r1, r5
- ldr r1, [r1]
- ands r0, r1
- cmp r0, 0
- bne _0805008A
- ldrb r0, [r3]
- mov r2, r12
- ldrb r2, [r2]
- cmp r0, r2
- bcc _080500D8
- ldr r0, [r7]
- adds r0, 0x5
- str r0, [r7]
- b _080500E0
- .pool
-_080500D8:
- str r4, [r7]
- b _080500E0
-_080500DC:
- adds r0, r2, 0x5
- str r0, [r3]
-_080500E0:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end atk7A_jumpwhiletargetvalid
-
- thumb_func_start atk7B_healhalfHP_if_possible
-atk7B_healhalfHP_if_possible: @ 80500E8
- push {r4-r6,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r1, [r4]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r1, 0x2]
- lsls r0, 8
- orrs r2, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 16
- orrs r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 24
- orrs r2, r0
- ldrb r0, [r1, 0x5]
- ldr r3, =gBankTarget
- cmp r0, 0x1
- bne _08050110
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r3]
-_08050110:
- ldr r1, =gBattleMoveDamage
- ldr r6, =gBattleMons
- ldrb r0, [r3]
- movs r5, 0x58
- muls r0, r5
- adds r0, r6
- ldrh r0, [r0, 0x2C]
- lsrs r0, 1
- str r0, [r1]
- cmp r0, 0
- bne _0805012A
- movs r0, 0x1
- str r0, [r1]
-_0805012A:
- ldr r0, [r1]
- negs r0, r0
- str r0, [r1]
- ldrb r0, [r3]
- muls r0, r5
- adds r0, r6
- ldrh r1, [r0, 0x28]
- ldrh r0, [r0, 0x2C]
- cmp r1, r0
- bne _08050158
- str r2, [r4]
- b _0805015E
- .pool
-_08050158:
- ldr r0, [r4]
- adds r0, 0x6
- str r0, [r4]
-_0805015E:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk7B_healhalfHP_if_possible
-
- thumb_func_start atk7C_8025508
-atk7C_8025508: @ 8050164
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- ldr r2, =gNoOfAllBanks
- ldr r0, =gBankAttacker
- mov r10, r0
- movs r1, 0
- add r0, sp, 0x4
-_0805017A:
- strh r1, [r0]
- subs r0, 0x2
- cmp r0, sp
- bge _0805017A
- movs r1, 0
- mov r8, r1
- movs r5, 0
- ldrb r1, [r2]
- cmp r5, r1
- bge _080501D0
- ldr r0, =gBankAttacker
- ldrb r6, [r0]
- ldr r2, =0x0000ffff
- mov r9, r2
- lsls r4, r6, 3
- mov r2, sp
- ldr r0, =gBattleStruct
- mov r12, r0
- adds r7, r1, 0
-_080501A0:
- cmp r5, r6
- beq _080501C8
- mov r1, r12
- ldr r0, [r1]
- adds r0, r4, r0
- adds r1, r0, 0
- adds r1, 0xE0
- ldrb r3, [r1]
- adds r0, 0xE1
- ldrb r0, [r0]
- lsls r0, 8
- orrs r3, r0
- cmp r3, 0
- beq _080501C8
- cmp r3, r9
- beq _080501C8
- strh r3, [r2]
- adds r2, 0x2
- movs r0, 0x1
- add r8, r0
-_080501C8:
- adds r4, 0x2
- adds r5, 0x1
- cmp r5, r7
- blt _080501A0
-_080501D0:
- mov r1, r10
- ldrb r0, [r1]
- ldr r2, =gBattleStruct
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r1, r0, 0
- adds r1, 0x98
- ldrb r3, [r1]
- adds r0, 0x99
- ldrb r0, [r0]
- lsls r0, 8
- orrs r3, r0
- cmp r3, 0
- beq _08050220
- ldr r0, =0x0000ffff
- cmp r3, r0
- beq _08050220
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffffbff
- ands r0, r1
- str r0, [r2]
- ldr r4, =gCurrentMove
- strh r3, [r4]
- b _0805024A
- .pool
-_08050220:
- mov r0, r8
- cmp r0, 0
- beq _08050290
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffffbff
- ands r0, r1
- str r0, [r2]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- mov r1, r8
- bl __modsi3
- adds r5, r0, 0
- ldr r4, =gCurrentMove
- lsls r0, r5, 1
- add r0, sp
- ldrh r0, [r0]
- strh r0, [r4]
-_0805024A:
- ldrh r0, [r4]
- movs r1, 0
- bl GetMoveTarget
- ldr r1, =gBankTarget
- strb r0, [r1]
- ldr r5, =gBattlescriptCurrInstr
- ldr r3, =gUnknown_082D86A8
- ldr r2, =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- str r0, [r5]
- b _080502AE
- .pool
-_08050290:
- ldr r2, =gSpecialStatuses
- mov r0, r10
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_080502AE:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk7C_8025508
-
- thumb_func_start atk7D_set_rain
-atk7D_set_rain: @ 80502C8
- push {lr}
- ldr r2, =gBattleWeather
- ldrh r0, [r2]
- movs r1, 0x7
- ands r1, r0
- cmp r1, 0
- beq _080502F4
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- b _08050304
- .pool
-_080502F4:
- movs r0, 0x1
- strh r0, [r2]
- ldr r0, =gBattleCommunication
- strb r1, [r0, 0x5]
- ldr r0, =gWishFutureKnock
- adds r0, 0x28
- movs r1, 0x5
- strb r1, [r0]
-_08050304:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk7D_set_rain
-
- thumb_func_start atk7E_setreflect
-atk7E_setreflect: @ 805031C
- push {r4-r6,lr}
- ldr r6, =gBankAttacker
- ldrb r0, [r6]
- bl GetBankIdentity
- ldr r4, =gSideAffecting
- movs r5, 0x1
- adds r1, r5, 0
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r1, [r1]
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _0805035C
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0
- b _080503D0
- .pool
-_0805035C:
- ldrb r0, [r6]
- bl GetBankIdentity
- adds r1, r5, 0
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r0, [r1]
- movs r2, 0x1
- orrs r0, r2
- strh r0, [r1]
- ldrb r0, [r6]
- bl GetBankIdentity
- ldr r4, =gSideTimers
- adds r1, r5, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x5
- strb r1, [r0]
- ldrb r0, [r6]
- bl GetBankIdentity
- adds r1, r5, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r6]
- strb r1, [r0, 0x1]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ands r0, r5
- cmp r0, 0
- beq _080503CC
- movs r0, 0x1
- bl CountAliveMonsInBattle
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bne _080503CC
- ldr r0, =gBattleCommunication
- strb r1, [r0, 0x5]
- b _080503D2
- .pool
-_080503CC:
- ldr r1, =gBattleCommunication
- movs r0, 0x1
-_080503D0:
- strb r0, [r1, 0x5]
-_080503D2:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk7E_setreflect
-
- thumb_func_start atk7F_setseeded
-atk7F_setseeded: @ 80503E8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r7, =gBattleMoveFlags
- ldrb r5, [r7]
- movs r0, 0x29
- ands r0, r5
- cmp r0, 0
- bne _0805041A
- ldr r0, =gStatuses3
- mov r9, r0
- ldr r1, =gBankTarget
- mov r8, r1
- ldrb r4, [r1]
- lsls r0, r4, 2
- mov r2, r9
- adds r6, r0, r2
- ldr r2, [r6]
- movs r0, 0x4
- mov r12, r0
- adds r3, r2, 0
- ands r3, r0
- cmp r3, 0
- beq _08050438
-_0805041A:
- movs r0, 0x1
- orrs r0, r5
- strb r0, [r7]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
- b _08050488
- .pool
-_08050438:
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r4
- adds r1, r0, r1
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0xC
- beq _08050454
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0xC
- bne _0805046C
-_08050454:
- movs r0, 0x1
- orrs r0, r5
- strb r0, [r7]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- b _08050488
- .pool
-_0805046C:
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- orrs r2, r0
- str r2, [r6]
- mov r2, r8
- ldrb r1, [r2]
- lsls r1, 2
- add r1, r9
- ldr r0, [r1]
- mov r2, r12
- orrs r0, r2
- str r0, [r1]
- ldr r0, =gBattleCommunication
- strb r3, [r0, 0x5]
-_08050488:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk7F_setseeded
-
- thumb_func_start atk80_manipulatedamage
-atk80_manipulatedamage: @ 80504A8
- push {r4,lr}
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- ldrb r2, [r0, 0x1]
- adds r4, r1, 0
- cmp r2, 0x1
- beq _080504D8
- cmp r2, 0x1
- bgt _080504C4
- cmp r2, 0
- beq _080504CA
- b _08050518
- .pool
-_080504C4:
- cmp r2, 0x2
- beq _08050510
- b _08050518
-_080504CA:
- ldr r1, =gBattleMoveDamage
- ldr r0, [r1]
- negs r0, r0
- b _08050516
- .pool
-_080504D8:
- ldr r3, =gBattleMoveDamage
- ldr r0, [r3]
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- str r0, [r3]
- cmp r0, 0
- bne _080504EA
- str r2, [r3]
-_080504EA:
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x2C]
- lsrs r1, r0, 1
- ldr r0, [r3]
- cmp r1, r0
- bge _08050518
- str r1, [r3]
- b _08050518
- .pool
-_08050510:
- ldr r1, =gBattleMoveDamage
- ldr r0, [r1]
- lsls r0, 1
-_08050516:
- str r0, [r1]
-_08050518:
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk80_manipulatedamage
-
- thumb_func_start atk81_setrest
-atk81_setrest: @ 8050528
- push {r4-r7,lr}
- sub sp, 0x4
- ldr r0, =gBattlescriptCurrInstr
- mov r12, r0
- ldr r1, [r0]
- ldrb r6, [r1, 0x1]
- ldrb r0, [r1, 0x2]
- lsls r0, 8
- orrs r6, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 16
- orrs r6, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 24
- orrs r6, r0
- ldr r5, =gActiveBank
- ldr r2, =gBankTarget
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r2]
- strb r0, [r5]
- ldr r4, =gBattleMoveDamage
- ldr r1, =gBattleMons
- ldrb r0, [r2]
- movs r3, 0x58
- muls r0, r3
- adds r0, r1
- ldrh r0, [r0, 0x2C]
- negs r0, r0
- str r0, [r4]
- ldrb r0, [r2]
- adds r4, r0, 0
- muls r4, r3
- adds r0, r4, r1
- ldrh r3, [r0, 0x28]
- adds r7, r5, 0
- adds r5, r2, 0
- adds r2, r1, 0
- ldrh r0, [r0, 0x2C]
- cmp r3, r0
- bne _08050598
- mov r0, r12
- str r6, [r0]
- b _080505E8
- .pool
-_08050598:
- adds r0, r2, 0
- adds r0, 0x4C
- adds r0, r4, r0
- ldr r1, [r0]
- movs r0, 0xF8
- ands r1, r0
- cmp r1, 0
- beq _080505B4
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
- b _080505B8
- .pool
-_080505B4:
- ldr r0, =gBattleCommunication
- strb r1, [r0, 0x5]
-_080505B8:
- ldrb r0, [r5]
- movs r3, 0x58
- muls r0, r3
- adds r2, 0x4C
- adds r0, r2
- movs r1, 0x3
- str r1, [r0]
- ldrb r0, [r7]
- muls r0, r3
- adds r0, r2
- str r0, [sp]
- movs r0, 0
- movs r1, 0x28
- movs r2, 0
- movs r3, 0x4
- bl EmitSetAttributes
- ldrb r0, [r7]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_080505E8:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk81_setrest
-
- thumb_func_start atk82_jumpifnotfirstturn
-atk82_jumpifnotfirstturn: @ 80505F8
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r4, [r5]
- ldrb r3, [r4, 0x1]
- ldrb r0, [r4, 0x2]
- lsls r0, 8
- orrs r3, r0
- ldrb r0, [r4, 0x3]
- lsls r0, 16
- orrs r3, r0
- ldrb r0, [r4, 0x4]
- lsls r0, 24
- orrs r3, r0
- ldr r2, =gDisableStructs
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x16]
- cmp r0, 0
- beq _08050638
- adds r0, r4, 0x5
- str r0, [r5]
- b _0805063A
- .pool
-_08050638:
- str r3, [r5]
-_0805063A:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end atk82_jumpifnotfirstturn
-
- thumb_func_start atk83_nop
-atk83_nop: @ 8050640
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atk83_nop
-
- thumb_func_start UproarWakeUpCheck
-UproarWakeUpCheck: @ 8050650
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r3, r0, 24
- movs r2, 0
- ldr r0, =gNoOfAllBanks
- ldrb r1, [r0]
- mov r8, r0
- cmp r2, r1
- bge _080506C4
- ldr r0, =gBattleMons
- mov r12, r0
- movs r0, 0x58
- muls r0, r3
- add r0, r12
- adds r5, r0, 0
- adds r5, 0x20
- adds r4, r1, 0
- movs r3, 0
- ldr r6, =gBattleScripting
- ldr r7, =gBattleCommunication
-_0805067C:
- mov r0, r12
- adds r0, 0x50
- adds r0, r3, r0
- ldr r0, [r0]
- movs r1, 0x70
- ands r0, r1
- cmp r0, 0
- beq _080506BC
- ldrb r0, [r5]
- cmp r0, 0x2B
- beq _080506BC
- movs r3, 0
- strb r2, [r6, 0x17]
- ldr r1, =gBankTarget
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _080506DC
- cmp r0, r2
- beq _080506D0
- movs r0, 0x1
- strb r0, [r7, 0x5]
- b _080506C4
- .pool
-_080506BC:
- adds r3, 0x58
- adds r2, 0x1
- cmp r2, r4
- blt _0805067C
-_080506C4:
- mov r1, r8
- ldrb r1, [r1]
- cmp r2, r1
- beq _080506E0
- movs r0, 0x1
- b _080506E2
-_080506D0:
- ldr r0, =gBattleCommunication
- strb r3, [r0, 0x5]
- b _080506C4
- .pool
-_080506DC:
- strb r2, [r1]
- b _080506C4
-_080506E0:
- movs r0, 0
-_080506E2:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end UproarWakeUpCheck
-
- thumb_func_start atk84_jump_if_cant_sleep
-atk84_jump_if_cant_sleep: @ 80506EC
- push {r4-r6,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r1, [r5]
- ldrb r4, [r1, 0x1]
- ldrb r0, [r1, 0x2]
- lsls r0, 8
- orrs r4, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 16
- orrs r4, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 24
- orrs r4, r0
- ldr r6, =gBankTarget
- ldrb r0, [r6]
- bl UproarWakeUpCheck
- lsls r0, 24
- cmp r0, 0
- beq _08050720
- str r4, [r5]
- b _08050762
- .pool
-_08050720:
- ldr r1, =gBattleMons
- ldrb r3, [r6]
- movs r0, 0x58
- muls r0, r3
- adds r0, r1
- adds r0, 0x20
- ldrb r0, [r0]
- adds r1, r0, 0
- cmp r1, 0xF
- beq _08050738
- cmp r1, 0x48
- bne _0805075C
-_08050738:
- ldr r2, =gLastUsedAbility
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- str r4, [r5]
- ldrb r1, [r2]
- adds r0, r3, 0
- bl RecordAbilityBattle
- b _08050762
- .pool
-_0805075C:
- ldr r0, [r5]
- adds r0, 0x5
- str r0, [r5]
-_08050762:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end atk84_jump_if_cant_sleep
-
- thumb_func_start atk85_stockpile
-atk85_stockpile: @ 8050768
- push {r4,r5,lr}
- ldr r5, =gDisableStructs
- ldr r4, =gBankAttacker
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r0, r5
- ldrb r0, [r1, 0x9]
- cmp r0, 0x3
- bne _080507A0
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
- b _080507CA
- .pool
-_080507A0:
- adds r0, 0x1
- movs r3, 0
- strb r0, [r1, 0x9]
- ldr r2, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r2]
- movs r0, 0x1
- strb r0, [r2, 0x1]
- strb r0, [r2, 0x2]
- strb r0, [r2, 0x3]
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r0, [r0, 0x9]
- strb r0, [r2, 0x4]
- movs r0, 0xFF
- strb r0, [r2, 0x5]
- ldr r0, =gBattleCommunication
- strb r3, [r0, 0x5]
-_080507CA:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk85_stockpile
-
- thumb_func_start atk86_stockpiletobasedamage
-atk86_stockpiletobasedamage: @ 80507E4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- ldr r3, =gBattlescriptCurrInstr
- ldr r1, [r3]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r1, 0x2]
- lsls r0, 8
- orrs r2, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 16
- orrs r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 24
- orrs r2, r0
- ldr r7, =gDisableStructs
- ldr r6, =gBankAttacker
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r7
- ldrb r0, [r0, 0x9]
- cmp r0, 0
- bne _08050828
- str r2, [r3]
- b _080508CA
- .pool
-_08050828:
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x6]
- cmp r0, 0x1
- beq _080508B0
- ldr r0, =gBattleMoveDamage
- mov r8, r0
- ldr r4, =gSideAffecting
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- bl GetBankIdentity
- movs r1, 0x1
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r3, [r1]
- ldrb r0, [r6]
- movs r4, 0x58
- muls r0, r4
- ldr r2, =gBattleMons
- adds r0, r2
- ldrb r1, [r5]
- muls r1, r4
- adds r1, r2
- ldr r2, =gCurrentMove
- ldrh r2, [r2]
- movs r4, 0
- str r4, [sp]
- str r4, [sp, 0x4]
- ldrb r4, [r6]
- str r4, [sp, 0x8]
- ldrb r4, [r5]
- str r4, [sp, 0xC]
- bl CalculateBaseDamage
- ldrb r2, [r6]
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r7
- ldrb r1, [r1, 0x9]
- adds r3, r0, 0
- muls r3, r1
- mov r1, r8
- str r3, [r1]
- ldr r2, =gBattleScripting
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r7
- ldrb r0, [r0, 0x9]
- strb r0, [r2, 0x18]
- ldr r1, =gProtectStructs
- ldrb r0, [r6]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 28
- cmp r0, 0
- bge _080508B0
- lsls r0, r3, 4
- subs r0, r3
- movs r1, 0xA
- bl __divsi3
- mov r1, r8
- str r0, [r1]
-_080508B0:
- ldr r2, =gDisableStructs
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0
- strb r1, [r0, 0x9]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_080508CA:
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk86_stockpiletobasedamage
-
- thumb_func_start atk87_stockpiletohpheal
-atk87_stockpiletohpheal: @ 8050904
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r7, =gBattlescriptCurrInstr
- ldr r1, [r7]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r1, 0x2]
- lsls r0, 8
- orrs r2, r0
- ldrb r0, [r1, 0x3]
- lsls r0, 16
- orrs r2, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 24
- orrs r2, r0
- ldr r0, =gDisableStructs
- mov r8, r0
- ldr r6, =gBankAttacker
- ldrb r3, [r6]
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- mov r1, r8
- adds r4, r0, r1
- ldrb r1, [r4, 0x9]
- cmp r1, 0
- bne _08050954
- str r2, [r7]
- ldr r0, =gBattleCommunication
- strb r1, [r0, 0x5]
- b _080509D0
- .pool
-_08050954:
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r3
- adds r1, r0, r1
- ldrh r0, [r1, 0x2C]
- ldrh r3, [r1, 0x28]
- cmp r0, r3
- bne _08050984
- movs r0, 0
- strb r0, [r4, 0x9]
- str r2, [r7]
- ldr r1, =gBankTarget
- ldrb r0, [r6]
- strb r0, [r1]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
- b _080509D0
- .pool
-_08050984:
- ldr r5, =gBattleMoveDamage
- ldrh r0, [r1, 0x2C]
- ldrb r1, [r4, 0x9]
- movs r2, 0x3
- subs r2, r1
- movs r4, 0x1
- adds r1, r4, 0
- lsls r1, r2
- bl __divsi3
- str r0, [r5]
- cmp r0, 0
- bne _080509A0
- str r4, [r5]
-_080509A0:
- ldr r0, [r5]
- negs r0, r0
- str r0, [r5]
- ldr r3, =gBattleScripting
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r8
- ldrb r0, [r0, 0x9]
- movs r2, 0
- strb r0, [r3, 0x18]
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r8
- strb r2, [r0, 0x9]
- ldr r0, [r7]
- adds r0, 0x5
- str r0, [r7]
- ldr r1, =gBankTarget
- ldrb r0, [r6]
- strb r0, [r1]
-_080509D0:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk87_stockpiletohpheal
-
- thumb_func_start atk88_negativedamage
-atk88_negativedamage: @ 80509E8
- push {lr}
- ldr r2, =gBattleMoveDamage
- ldr r0, =gUnknown_020241F4
- ldr r0, [r0]
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- negs r0, r0
- str r0, [r2]
- cmp r0, 0
- bne _08050A04
- movs r0, 0x1
- negs r0, r0
- str r0, [r2]
-_08050A04:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk88_negativedamage
-
- thumb_func_start sub_8050A1C
-sub_8050A1C: @ 8050A1C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r8, r3
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 24
- lsrs r5, r2, 24
- movs r0, 0
- mov r9, r0
- mov r10, r0
- movs r0, 0x40
- ands r0, r5
- cmp r0, 0
- beq _08050A50
- ldr r0, =gActiveBank
- ldr r1, =gBankAttacker
- b _08050A54
- .pool
-_08050A50:
- ldr r0, =gActiveBank
- ldr r1, =gBankTarget
-_08050A54:
- ldrb r1, [r1]
- strb r1, [r0]
- movs r0, 0xBF
- ands r5, r0
- movs r0, 0x80
- ands r0, r5
- cmp r0, 0
- beq _08050A6E
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
-_08050A6E:
- movs r0, 0x7F
- ands r5, r0
- movs r0, 0x20
- ands r0, r5
- cmp r0, 0
- beq _08050A84
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
-_08050A84:
- movs r0, 0xDF
- ands r5, r0
- ldr r1, =gBattleTextBuff1
- movs r4, 0
- movs r2, 0xFD
- strb r2, [r1]
- movs r0, 0x5
- strb r0, [r1, 0x1]
- strb r7, [r1, 0x2]
- movs r3, 0x1
- negs r3, r3
- mov r12, r3
- movs r0, 0xFF
- strb r0, [r1, 0x3]
- lsls r0, r6, 24
- cmp r0, 0
- blt _08050AA8
- b _08050D8C
-_08050AA8:
- ldr r4, =gSideTimers
- ldr r1, =gActiveBank
- ldrb r0, [r1]
- bl GetBankIdentity
- movs r1, 0x1
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x4]
- cmp r0, 0
- beq _08050B48
- mov r2, r9
- cmp r2, 0
- bne _08050B48
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- cmp r0, 0xAE
- beq _08050B78
- cmp r5, 0x1
- bne _08050B68
- ldr r4, =gSpecialStatuses
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r0, [r1]
- lsls r0, 31
- cmp r0, 0
- beq _08050B10
- ldr r0, =gBattlescriptCurrInstr
- mov r4, r8
- str r4, [r0]
- b _08050B68
- .pool
-_08050B10:
- mov r0, r8
- bl b_movescr_stack_push
- ldr r1, =gBattleScripting
- ldr r6, =gActiveBank
- ldrb r0, [r6]
- strb r0, [r1, 0x17]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAE03
- str r0, [r1]
- ldrb r1, [r6]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- b _08050B68
- .pool
-_08050B48:
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- cmp r0, 0xAE
- beq _08050B78
- mov r0, r10
- cmp r0, 0x1
- beq _08050B78
- movs r0, 0
- bl sub_80464AC
- lsls r0, 24
- cmp r0, 0
- beq _08050B78
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082D9F1C
- str r0, [r1]
-_08050B68:
- movs r0, 0x1
- b _08050E80
- .pool
-_08050B78:
- ldr r2, =gBattleMons
- ldr r1, =gActiveBank
- ldrb r3, [r1]
- movs r4, 0x58
- adds r0, r3, 0
- muls r0, r4
- adds r0, r2
- adds r0, 0x20
- ldrb r0, [r0]
- mov r10, r2
- cmp r0, 0x1D
- beq _08050B94
- cmp r0, 0x49
- bne _08050C2C
-_08050B94:
- mov r0, r9
- cmp r0, 0
- bne _08050C2C
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- cmp r0, 0xAE
- beq _08050C2C
- cmp r5, 0x1
- bne _08050B68
- ldr r4, =gSpecialStatuses
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _08050BD4
- ldr r0, =gBattlescriptCurrInstr
- mov r1, r8
- str r1, [r0]
- b _08050B68
- .pool
-_08050BD4:
- mov r0, r8
- bl b_movescr_stack_push
- ldr r1, =gBattleScripting
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- strb r0, [r1, 0x17]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB5C7
- str r0, [r1]
- ldr r1, =gLastUsedAbility
- ldrb r0, [r2]
- movs r3, 0x58
- muls r0, r3
- add r0, r10
- adds r0, 0x20
- ldrb r0, [r0]
- strb r0, [r1]
- ldrb r0, [r2]
- ldrb r1, [r1]
- bl RecordAbilityBattle
- ldr r6, =gActiveBank
- ldrb r1, [r6]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- b _08050B68
- .pool
-_08050C2C:
- ldr r1, =gActiveBank
- ldrb r0, [r1]
- movs r4, 0x58
- muls r0, r4
- add r0, r10
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x33
- bne _08050C8C
- mov r2, r9
- cmp r2, 0
- bne _08050C8C
- cmp r7, 0x6
- bne _08050C8C
- cmp r5, 0x1
- bne _08050B68
- mov r0, r8
- bl b_movescr_stack_push
- ldr r1, =gBattleScripting
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- strb r0, [r1, 0x17]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB62F
- str r0, [r1]
- ldr r1, =gLastUsedAbility
- ldrb r0, [r3]
- muls r0, r4
- add r0, r10
- adds r0, 0x20
- ldrb r0, [r0]
- strb r0, [r1]
- ldrb r0, [r3]
- ldrb r1, [r1]
- bl RecordAbilityBattle
- b _08050B68
- .pool
-_08050C8C:
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- movs r4, 0x58
- muls r0, r4
- add r0, r10
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x34
- bne _08050CF0
- mov r0, r9
- cmp r0, 0
- bne _08050CF0
- cmp r7, 0x1
- bne _08050CF0
- cmp r5, 0x1
- beq _08050CAE
- b _08050B68
-_08050CAE:
- mov r0, r8
- bl b_movescr_stack_push
- ldr r1, =gBattleScripting
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- strb r0, [r1, 0x17]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB62F
- str r0, [r1]
- ldr r1, =gLastUsedAbility
- ldrb r0, [r2]
- muls r0, r4
- add r0, r10
- adds r0, 0x20
- ldrb r0, [r0]
- strb r0, [r1]
- ldrb r0, [r2]
- ldrb r1, [r1]
- bl RecordAbilityBattle
- b _08050B68
- .pool
-_08050CF0:
- ldr r3, =gActiveBank
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- add r0, r10
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x13
- bne _08050D08
- cmp r5, 0
- bne _08050D08
- b _08050B68
-_08050D08:
- lsls r0, r6, 24
- asrs r0, 28
- movs r1, 0x7
- ands r0, r1
- negs r0, r0
- lsls r0, 24
- ldr r3, =gBattleTextBuff2
- movs r4, 0
- movs r1, 0xFD
- strb r1, [r3]
- movs r2, 0x1
- lsrs r6, r0, 24
- asrs r0, 24
- subs r1, 0xFF
- cmp r0, r1
- bne _08050D32
- strb r4, [r3, 0x1]
- movs r0, 0xD3
- strb r0, [r3, 0x2]
- strb r4, [r3, 0x3]
- movs r2, 0x4
-_08050D32:
- adds r0, r2, r3
- strb r4, [r0]
- adds r2, 0x1
- adds r1, r2, r3
- movs r0, 0xD4
- strb r0, [r1]
- adds r2, 0x1
- adds r0, r2, r3
- strb r4, [r0]
- adds r2, 0x1
- adds r1, r2, r3
- movs r0, 0xFF
- strb r0, [r1]
- ldr r4, =gActiveBank
- ldrb r2, [r4]
- movs r0, 0x58
- muls r0, r2
- adds r0, r7, r0
- mov r1, r10
- adds r1, 0x18
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- beq _08050DE2
- movs r1, 0
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- ldr r3, =gBattleCommunication
- mov r8, r3
- cmp r0, r2
- bne _08050D76
- movs r1, 0x1
-_08050D76:
- mov r4, r8
- strb r1, [r4, 0x5]
- b _08050E10
- .pool
-_08050D8C:
- asrs r6, r0, 28
- movs r0, 0x7
- ands r6, r0
- ldr r3, =gBattleTextBuff2
- strb r2, [r3]
- movs r2, 0x1
- cmp r6, 0x2
- bne _08050DA6
- strb r4, [r3, 0x1]
- movs r0, 0xD1
- strb r0, [r3, 0x2]
- strb r4, [r3, 0x3]
- movs r2, 0x4
-_08050DA6:
- adds r0, r2, r3
- strb r4, [r0]
- adds r2, 0x1
- adds r1, r2, r3
- movs r0, 0xD2
- strb r0, [r1]
- adds r2, 0x1
- adds r0, r2, r3
- strb r4, [r0]
- adds r2, 0x1
- adds r1, r2, r3
- ldrb r0, [r1]
- mov r2, r12
- orrs r0, r2
- strb r0, [r1]
- ldr r2, =gBattleMons
- ldr r4, =gActiveBank
- ldrb r3, [r4]
- movs r0, 0x58
- muls r0, r3
- adds r0, r7, r0
- adds r1, r2, 0
- adds r1, 0x18
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- mov r10, r2
- cmp r0, 0xC
- bne _08050DFC
-_08050DE2:
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- mov r8, r1
- b _08050E10
- .pool
-_08050DFC:
- movs r1, 0
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- ldr r2, =gBattleCommunication
- mov r8, r2
- cmp r0, r3
- bne _08050E0C
- movs r1, 0x1
-_08050E0C:
- mov r3, r8
- strb r1, [r3, 0x5]
-_08050E10:
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- movs r4, 0x58
- adds r1, r0, 0
- muls r1, r4
- adds r1, r7, r1
- mov r3, r10
- adds r3, 0x18
- adds r1, r3
- lsls r0, r6, 24
- asrs r0, 24
- ldrb r6, [r1]
- adds r0, r6
- strb r0, [r1]
- ldrb r0, [r2]
- muls r0, r4
- adds r0, r7, r0
- adds r1, r0, r3
- movs r0, 0
- ldrsb r0, [r1, r0]
- cmp r0, 0
- bge _08050E40
- movs r0, 0
- strb r0, [r1]
-_08050E40:
- ldr r1, =gActiveBank
- ldrb r0, [r1]
- muls r0, r4
- adds r0, r7, r0
- adds r1, r0, r3
- movs r0, 0
- ldrsb r0, [r1, r0]
- cmp r0, 0xC
- ble _08050E56
- movs r0, 0xC
- strb r0, [r1]
-_08050E56:
- mov r2, r8
- ldrb r0, [r2, 0x5]
- cmp r0, 0x2
- bne _08050E7E
- movs r3, 0x1
- ands r3, r5
- cmp r3, 0
- beq _08050E70
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
-_08050E70:
- mov r4, r8
- ldrb r0, [r4, 0x5]
- cmp r0, 0x2
- bne _08050E7E
- cmp r3, 0
- bne _08050E7E
- b _08050B68
-_08050E7E:
- movs r0, 0
-_08050E80:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8050A1C
-
- thumb_func_start atk89_statbuffchange
-atk89_statbuffchange: @ 8050EA0
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r2, [r5]
- ldrb r3, [r2, 0x2]
- ldrb r0, [r2, 0x3]
- lsls r0, 8
- orrs r3, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 16
- orrs r3, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 24
- orrs r3, r0
- ldr r0, =gBattleScripting
- ldrb r4, [r0, 0x1A]
- movs r0, 0xF0
- ands r0, r4
- lsls r0, 24
- asrs r0, 24
- movs r1, 0xF
- ands r1, r4
- ldrb r2, [r2, 0x1]
- bl sub_8050A1C
- lsls r0, 24
- cmp r0, 0
- bne _08050EDC
- ldr r0, [r5]
- adds r0, 0x6
- str r0, [r5]
-_08050EDC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk89_statbuffchange
-
- thumb_func_start atk8A_normalisebuffs
-atk8A_normalisebuffs: @ 8050EEC
- push {r4-r7,lr}
- movs r2, 0
- ldr r0, =gNoOfAllBanks
- ldrb r1, [r0]
- ldr r0, =gBattlescriptCurrInstr
- mov r12, r0
- cmp r2, r1
- bge _08050F24
- ldr r0, =gBattleMons
- movs r4, 0x6
- adds r5, r1, 0
- movs r7, 0x58
- adds r6, r0, 0
- adds r6, 0x18
-_08050F08:
- adds r3, r2, 0x1
- movs r1, 0x7
- adds r0, r2, 0
- muls r0, r7
- adds r0, r6
- adds r0, 0x7
-_08050F14:
- strb r4, [r0]
- subs r0, 0x1
- subs r1, 0x1
- cmp r1, 0
- bge _08050F14
- adds r2, r3, 0
- cmp r2, r5
- blt _08050F08
-_08050F24:
- mov r1, r12
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk8A_normalisebuffs
-
- thumb_func_start atk8B_setbide
-atk8B_setbide: @ 8050F40
- push {r4,r5,lr}
- ldr r4, =gBattleMons
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- movs r5, 0x58
- adds r2, r0, 0
- muls r2, r5
- adds r4, 0x50
- adds r2, r4
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 5
- orrs r0, r1
- str r0, [r2]
- ldr r1, =gUnknown_02024268
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r1
- ldr r1, =gCurrentMove
- ldrh r1, [r1]
- movs r2, 0
- strh r1, [r0]
- ldr r1, =gTakenDmg
- ldrb r0, [r3]
- lsls r0, 2
- adds r0, r1
- str r2, [r0]
- ldrb r0, [r3]
- adds r1, r0, 0
- muls r1, r5
- adds r1, r4
- ldr r0, [r1]
- movs r2, 0x80
- lsls r2, 2
- orrs r0, r2
- str r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk8B_setbide
-
- thumb_func_start atk8C_confuseifrepeatingattackends
-atk8C_confuseifrepeatingattackends: @ 8050FB0
- push {lr}
- ldr r1, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0xC0
- lsls r1, 4
- ands r0, r1
- cmp r0, 0
- bne _08050FD2
- ldr r1, =gBattleCommunication
- movs r0, 0x75
- strb r0, [r1, 0x3]
-_08050FD2:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk8C_confuseifrepeatingattackends
-
- thumb_func_start atk8D_setmultihit_counter
-atk8D_setmultihit_counter: @ 8050FF0
- push {r4,r5,lr}
- ldr r0, =gBattlescriptCurrInstr
- ldr r0, [r0]
- ldrb r1, [r0, 0x1]
- cmp r1, 0
- beq _0805100C
- ldr r0, =gUnknown_02024212
- strb r1, [r0]
- b _08051026
- .pool
-_0805100C:
- ldr r4, =gUnknown_02024212
- bl Random
- movs r5, 0x3
- ands r0, r5
- strb r0, [r4]
- cmp r0, 0x1
- bls _08051022
- bl Random
- ands r0, r5
-_08051022:
- adds r0, 0x2
- strb r0, [r4]
-_08051026:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk8D_setmultihit_counter
-
- thumb_func_start atk8E_prepare_multihit
-atk8E_prepare_multihit: @ 805103C
- ldr r1, =gBattleScripting
- movs r2, 0
- movs r0, 0xFD
- strb r0, [r1, 0x8]
- movs r0, 0x1
- strb r0, [r1, 0x9]
- strb r0, [r1, 0xA]
- strb r0, [r1, 0xB]
- strb r2, [r1, 0xC]
- movs r0, 0xFF
- strb r0, [r1, 0xD]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atk8E_prepare_multihit
-
- thumb_func_start sub_8051064
-sub_8051064: @ 8051064
- push {r4-r7,lr}
- ldr r6, =gBattleMons
- ldr r7, =gBankAttacker
- ldrb r0, [r7]
- movs r5, 0x58
- adds r1, r0, 0
- muls r1, r5
- adds r1, r6
- adds r1, 0x2A
- ldr r4, =gBankTarget
- ldrb r3, [r4]
- adds r0, r3, 0
- muls r0, r5
- adds r0, r6
- adds r0, 0x2A
- ldrb r1, [r1]
- ldrb r0, [r0]
- cmp r1, r0
- bcc _080510AC
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r1, r3, r1
- adds r1, 0x58
- ldr r2, =gBattlePartyID
- lsls r0, r3, 1
- b _08051108
- .pool
-_080510AC:
- bl Random
- movs r3, 0xFF
- ands r3, r0
- ldrb r0, [r7]
- muls r0, r5
- adds r0, r6
- adds r0, 0x2A
- ldrb r2, [r0]
- ldrb r4, [r4]
- adds r0, r4, 0
- muls r0, r5
- adds r0, r6
- adds r0, 0x2A
- ldrb r1, [r0]
- adds r2, r1
- adds r0, r3, 0
- muls r0, r2
- asrs r0, 8
- adds r0, 0x1
- lsrs r1, 2
- cmp r0, r1
- bhi _080510FC
- ldr r3, =gBattlescriptCurrInstr
- 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]
- movs r0, 0
- b _08051116
- .pool
-_080510FC:
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r1, r4, r1
- adds r1, 0x58
- ldr r2, =gBattlePartyID
- lsls r0, r4, 1
-_08051108:
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DADD8
- str r0, [r1]
- movs r0, 0x1
-_08051116:
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8051064
-
- thumb_func_start atk8F_forcerandomswitch
-atk8F_forcerandomswitch: @ 805112C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- movs r0, 0
- str r0, [sp, 0x4]
- ldr r5, =gBattleTypeFlags
- ldr r0, [r5]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- bne _0805114A
- b _08051410
-_0805114A:
- ldr r4, =gBankTarget
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gEnemyParty
- str r1, [sp]
- cmp r0, 0
- bne _08051160
- ldr r0, =gPlayerParty
- str r0, [sp]
-_08051160:
- ldr r2, [r5]
- movs r1, 0x81
- lsls r1, 1
- adds r0, r2, 0
- ands r0, r1
- cmp r0, r1
- beq _08051182
- ldr r1, =0x02000100
- adds r0, r2, 0
- ands r0, r1
- cmp r0, r1
- beq _08051182
- movs r0, 0x80
- lsls r0, 15
- ands r0, r2
- cmp r0, 0
- beq _080511C8
-_08051182:
- ldr r2, =gBankTarget
- ldrb r1, [r2]
- movs r0, 0x2
- ands r0, r1
- adds r1, r2, 0
- cmp r0, 0
- beq _080511AC
- movs r0, 0x3
- mov r9, r0
- movs r0, 0x6
- b _080511B2
- .pool
-_080511AC:
- movs r0, 0
- mov r9, r0
- movs r0, 0x3
-_080511B2:
- mov r8, r0
- movs r0, 0x3
- mov r10, r0
- movs r0, 0x1
- str r0, [sp, 0x8]
- ldr r2, =gBattlePartyID
- ldrb r1, [r1]
- b _0805128E
- .pool
-_080511C8:
- movs r0, 0x42
- ands r0, r2
- cmp r0, 0x42
- beq _080511DA
- ldr r1, =0x02000040
- adds r0, r2, 0
- ands r0, r1
- cmp r0, r1
- bne _0805121C
-_080511DA:
- ldrb r0, [r4]
- bl sub_806D864
- lsls r0, 24
- lsrs r0, 24
- bl sub_806D82C
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bne _080511FC
- movs r1, 0x3
- mov r9, r1
- movs r0, 0x6
- b _08051202
- .pool
-_080511FC:
- movs r1, 0
- mov r9, r1
- movs r0, 0x3
-_08051202:
- mov r8, r0
- movs r1, 0x3
- mov r10, r1
- movs r0, 0x1
- str r0, [sp, 0x8]
- ldr r2, =gBattlePartyID
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- b _0805128E
- .pool
-_0805121C:
- movs r0, 0x80
- lsls r0, 8
- ands r0, r2
- cmp r0, 0
- beq _08051274
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08051240
- movs r1, 0
- mov r9, r1
- movs r0, 0x6
- mov r8, r0
- mov r10, r0
- movs r1, 0x2
- b _08051260
-_08051240:
- ldrb r1, [r4]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08051252
- movs r0, 0x3
- mov r9, r0
- movs r1, 0x6
- b _08051258
-_08051252:
- movs r0, 0
- mov r9, r0
- movs r1, 0x3
-_08051258:
- mov r8, r1
- movs r0, 0x3
- mov r10, r0
- movs r1, 0x1
-_08051260:
- str r1, [sp, 0x8]
- ldr r2, =gBattlePartyID
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- b _0805128E
- .pool
-_08051274:
- movs r0, 0x1
- ands r2, r0
- cmp r2, 0
- beq _080512A4
- movs r0, 0
- mov r9, r0
- movs r1, 0x6
- mov r8, r1
- mov r10, r1
- movs r0, 0x2
- str r0, [sp, 0x8]
- ldr r2, =gBattlePartyID
- ldrb r1, [r4]
-_0805128E:
- lsls r0, r1, 1
- adds r0, r2
- ldrh r7, [r0]
- movs r0, 0x2
- eors r1, r0
- lsls r1, 1
- adds r1, r2
- ldrh r5, [r1]
- b _080512BE
- .pool
-_080512A4:
- movs r1, 0
- mov r9, r1
- movs r0, 0x6
- mov r8, r0
- mov r10, r0
- movs r1, 0x1
- str r1, [sp, 0x8]
- ldr r1, =gBattlePartyID
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r5, [r0]
- adds r7, r5, 0
-_080512BE:
- mov r6, r9
- cmp r6, r8
- bge _080512FC
-_080512C4:
- movs r0, 0x64
- muls r0, r6
- ldr r1, [sp]
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _080512F6
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _080512F6
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080512F6
- ldr r0, [sp, 0x4]
- adds r0, 0x1
- str r0, [sp, 0x4]
-_080512F6:
- adds r6, 0x1
- cmp r6, r8
- blt _080512C4
-_080512FC:
- ldr r1, [sp, 0x4]
- ldr r0, [sp, 0x8]
- cmp r1, r0
- bgt _08051328
- ldr r3, =gBattlescriptCurrInstr
- 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 _08051414
- .pool
-_08051328:
- bl sub_8051064
- lsls r0, 24
- cmp r0, 0
- beq _08051378
-_08051332:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- mov r1, r10
- bl __modsi3
- adds r6, r0, 0
- add r6, r9
- cmp r6, r7
- beq _08051332
- cmp r6, r5
- beq _08051332
- movs r0, 0x64
- muls r0, r6
- ldr r1, [sp]
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08051332
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0x1
- beq _08051332
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08051332
-_08051378:
- ldr r4, =gBankTarget
- ldrb r0, [r4]
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- adds r0, 0x5C
- strb r6, [r0]
- bl sub_81B1250
- lsls r0, 24
- cmp r0, 0
- bne _08051396
- ldrb r0, [r4]
- bl sub_803BDA0
-_08051396:
- ldr r0, =gBattleTypeFlags
- ldr r2, [r0]
- movs r1, 0x81
- lsls r1, 1
- adds r0, r2, 0
- ands r0, r1
- cmp r0, r1
- beq _080513C0
- movs r0, 0x42
- ands r0, r2
- cmp r0, 0x42
- beq _080513C0
- ldr r1, =0x02000100
- adds r0, r2, 0
- ands r0, r1
- cmp r0, r1
- beq _080513C0
- ldr r0, =0x02000040
- ands r2, r0
- cmp r2, r0
- bne _080513DE
-_080513C0:
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- lsls r4, r6, 24
- lsrs r4, 24
- adds r1, r4, 0
- movs r2, 0
- bl sub_81B8E80
- ldrb r1, [r5]
- movs r0, 0x2
- eors r0, r1
- adds r1, r4, 0
- movs r2, 0x1
- bl sub_81B8E80
-_080513DE:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _08051414
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- lsls r1, r6, 24
- lsrs r1, 24
- bl sub_80571DC
- b _08051414
- .pool
-_08051410:
- bl sub_8051064
-_08051414:
- 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 atk8F_forcerandomswitch
-
- thumb_func_start atk90_conversion_type_change
-atk90_conversion_type_change: @ 8051424
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r6, 0
- ldr r2, =gBattleMons
- ldr r3, =gBankAttacker
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- adds r1, r2, 0
- adds r1, 0xC
- adds r0, r1
- ldrh r0, [r0]
- mov r8, r2
- cmp r0, 0
- beq _08051466
- movs r5, 0x58
- adds r2, r1, 0
-_0805144C:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x3
- bhi _08051466
- lsls r1, r6, 1
- ldrb r0, [r3]
- muls r0, r5
- adds r1, r0
- adds r1, r2
- ldrh r0, [r1]
- cmp r0, 0
- bne _0805144C
-_08051466:
- movs r3, 0
- cmp r3, r6
- bcs _080514E8
- ldr r0, =gBattleMoves
- mov r10, r0
- ldr r5, =gBattleMons
- mov r12, r5
- ldr r7, =gBankAttacker
- ldrb r0, [r7]
- movs r4, 0x58
- adds r5, r0, 0
- muls r5, r4
- movs r0, 0xC
- add r0, r12
- mov r9, r0
-_08051484:
- lsls r0, r3, 1
- adds r0, r5
- add r0, r9
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrb r2, [r0, 0x2]
- cmp r2, 0x9
- bne _080514C6
- mov r0, r8
- adds r1, r5, r0
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x7
- beq _080514B2
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x7
- bne _080514C4
-_080514B2:
- movs r2, 0x7
- b _080514C6
- .pool
-_080514C4:
- movs r2, 0
-_080514C6:
- ldrb r0, [r7]
- muls r0, r4
- add r0, r12
- adds r1, r0, 0
- adds r1, 0x21
- ldrb r1, [r1]
- cmp r2, r1
- beq _080514DE
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r2, r0
- bne _080514E8
-_080514DE:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, r6
- bcc _08051484
-_080514E8:
- cmp r3, r6
- bne _0805150C
- ldr r3, =gBattlescriptCurrInstr
- 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 _080515B0
- .pool
-_0805150C:
- movs r7, 0x3
- ldr r5, =gBattleMoves
- mov r9, r5
-_08051512:
- bl Random
- adds r3, r0, 0
- ands r3, r7
- cmp r3, r6
- bcs _08051512
- ldr r4, =gBattleMons
- lsls r1, r3, 1
- ldr r3, =gBankAttacker
- ldrb r2, [r3]
- movs r0, 0x58
- adds r5, r2, 0
- muls r5, r0
- adds r1, r5
- adds r0, r4, 0
- adds r0, 0xC
- adds r1, r0
- ldrh r1, [r1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- add r0, r9
- ldrb r2, [r0, 0x2]
- mov r8, r4
- adds r4, r3, 0
- cmp r2, 0x9
- bne _08051572
- mov r0, r8
- adds r2, r5, r0
- adds r0, r2, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x7
- beq _08051560
- adds r0, r2, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x7
- bne _08051570
-_08051560:
- movs r2, 0x7
- b _08051572
- .pool
-_08051570:
- movs r2, 0
-_08051572:
- ldrb r0, [r4]
- movs r3, 0x58
- muls r0, r3
- add r0, r8
- adds r1, r0, 0
- adds r1, 0x21
- ldrb r5, [r1]
- cmp r2, r5
- beq _08051512
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r2, r0
- beq _08051512
- strb r2, [r1]
- ldrb r0, [r4]
- muls r0, r3
- add r0, r8
- adds r0, 0x22
- strb r2, [r0]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x3
- strb r0, [r1, 0x1]
- strb r2, [r1, 0x2]
- movs r0, 0xFF
- strb r0, [r1, 0x3]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_080515B0:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk90_conversion_type_change
-
- thumb_func_start atk91_givepaydaymoney
-atk91_givepaydaymoney: @ 80515C8
- push {r4,lr}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x02000002
- ands r0, r1
- cmp r0, 0
- bne _08051650
- ldr r1, =gUnknown_0202432E
- ldrh r0, [r1]
- cmp r0, 0
- beq _08051650
- adds r1, r0, 0
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x4A
- ldrb r0, [r0]
- adds r4, r1, 0
- muls r4, r0
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- adds r1, r4, 0
- bl AddMoney
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x1
- strb r0, [r1, 0x1]
- movs r0, 0x2
- strb r0, [r1, 0x2]
- movs r0, 0x5
- strb r0, [r1, 0x3]
- strb r4, [r1, 0x4]
- movs r0, 0xFF
- lsls r0, 8
- ands r4, r0
- lsrs r4, 8
- strb r4, [r1, 0x5]
- movs r0, 0xFF
- strb r0, [r1, 0x6]
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- adds r0, 0x1
- bl b_movescr_stack_push
- ldr r0, =gUnknown_082DB307
- str r0, [r4]
- b _08051658
- .pool
-_08051650:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_08051658:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk91_givepaydaymoney
-
- thumb_func_start atk92_setlightscreen
-atk92_setlightscreen: @ 8051664
- push {r4-r6,lr}
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- bl GetBankIdentity
- ldr r4, =gSideAffecting
- movs r6, 0x1
- adds r1, r6, 0
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r1, [r1]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080516A4
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0
- b _08051718
- .pool
-_080516A4:
- ldrb r0, [r5]
- bl GetBankIdentity
- adds r1, r6, 0
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r0, [r1]
- movs r2, 0x2
- orrs r0, r2
- strh r0, [r1]
- ldrb r0, [r5]
- bl GetBankIdentity
- ldr r4, =gSideTimers
- adds r1, r6, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x5
- strb r1, [r0, 0x2]
- ldrb r0, [r5]
- bl GetBankIdentity
- adds r1, r6, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r5]
- strb r1, [r0, 0x3]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ands r0, r6
- cmp r0, 0
- beq _08051714
- movs r0, 0x1
- bl CountAliveMonsInBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _08051714
- ldr r1, =gBattleCommunication
- movs r0, 0x4
- b _08051718
- .pool
-_08051714:
- ldr r1, =gBattleCommunication
- movs r0, 0x3
-_08051718:
- strb r0, [r1, 0x5]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk92_setlightscreen
-
- thumb_func_start atk93_ko_move
-atk93_ko_move: @ 8051730
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r7, =gBattleMons
- ldr r6, =gBankTarget
- ldrb r2, [r6]
- movs r5, 0x58
- adds r0, r2, 0
- muls r0, r5
- adds r1, r0, r7
- ldrh r0, [r1, 0x2E]
- cmp r0, 0xAF
- bne _08051768
- ldr r1, =gEnigmaBerries
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r4, [r0, 0x7]
- ldrb r6, [r0, 0x1A]
- b _08051782
- .pool
-_08051768:
- ldrh r0, [r1, 0x2E]
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r7
- ldrh r0, [r0, 0x2E]
- bl ItemId_GetHoldEffectParam
- lsls r0, 24
- lsrs r6, r0, 24
-_08051782:
- ldr r1, =gStringBank
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- strb r0, [r1]
- cmp r4, 0x27
- bne _080517C0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r6
- bcs _080517C0
- ldrb r0, [r5]
- movs r1, 0x27
- bl RecordItemEffectBattle
- ldr r2, =gSpecialStatuses
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
-_080517C0:
- ldr r1, =gBattleMons
- ldr r2, =gBankTarget
- ldrb r3, [r2]
- movs r6, 0x58
- adds r0, r3, 0
- muls r0, r6
- adds r5, r0, r1
- adds r0, r5, 0
- adds r0, 0x20
- ldrb r4, [r0]
- mov r8, r1
- mov r9, r2
- cmp r4, 0x5
- bne _0805181C
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gLastUsedAbility
- strb r4, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB552
- str r0, [r1]
- mov r1, r9
- ldrb r0, [r1]
- movs r1, 0x5
- bl RecordAbilityBattle
- b _08051A70
- .pool
-_0805181C:
- ldr r1, =gStatuses3
- lsls r0, r3, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x18
- ands r0, r1
- cmp r0, 0
- bne _080518A0
- ldr r1, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- lsls r2, r0, 1
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- ldr r7, =gBankAttacker
- ldrb r0, [r7]
- muls r0, r6
- add r0, r8
- adds r0, 0x2A
- ldrb r0, [r0]
- adds r1, r5, 0
- adds r1, 0x2A
- ldrb r1, [r1]
- subs r0, r1
- ldrb r2, [r2, 0x3]
- adds r0, r2
- lsls r0, 16
- lsrs r4, r0, 16
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- adds r0, 0x1
- cmp r0, r4
- blt _08051870
- b _08051A08
-_08051870:
- ldrb r0, [r7]
- adds r1, r0, 0
- muls r1, r6
- add r1, r8
- adds r1, 0x2A
- mov r2, r9
- ldrb r0, [r2]
- muls r0, r6
- add r0, r8
- adds r0, 0x2A
- ldrb r1, [r1]
- movs r4, 0x1
- ldrb r0, [r0]
- cmp r1, r0
- bcs _08051936
- b _08051A08
- .pool
-_080518A0:
- ldr r1, =gDisableStructs
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldr r1, =gBankAttacker
- ldrb r0, [r0, 0x15]
- adds r7, r1, 0
- ldrb r3, [r7]
- cmp r0, r3
- bne _080518CA
- ldrb r0, [r7]
- muls r0, r6
- add r0, r8
- adds r0, 0x2A
- adds r1, r5, 0
- adds r1, 0x2A
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bcs _08051942
-_080518CA:
- ldr r1, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- lsls r2, r0, 1
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- ldr r6, =gBattleMons
- ldrb r0, [r7]
- movs r5, 0x58
- muls r0, r5
- adds r0, r6
- adds r0, 0x2A
- ldrb r1, [r0]
- ldr r0, =gBankTarget
- mov r8, r0
- ldrb r0, [r0]
- muls r0, r5
- adds r0, r6
- adds r0, 0x2A
- ldrb r0, [r0]
- subs r1, r0
- ldrb r2, [r2, 0x3]
- adds r1, r2
- lsls r1, 16
- lsrs r4, r1, 16
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- adds r0, 0x1
- cmp r0, r4
- bge _08051934
- ldrb r0, [r7]
- adds r1, r0, 0
- muls r1, r5
- adds r1, r6
- adds r1, 0x2A
- mov r2, r8
- ldrb r0, [r2]
- muls r0, r5
- adds r0, r6
- adds r0, 0x2A
- ldrb r1, [r1]
- movs r4, 0x1
- ldrb r0, [r0]
- cmp r1, r0
- bcs _08051936
-_08051934:
- movs r4, 0
-_08051936:
- ldr r3, =gBattleMons
- mov r8, r3
- ldr r0, =gBankTarget
- mov r9, r0
- cmp r4, 0
- beq _08051A08
-_08051942:
- ldr r0, =gProtectStructs
- mov r1, r9
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 30
- cmp r0, 0
- bge _08051990
- ldr r1, =gBattleMoveDamage
- movs r0, 0x58
- muls r0, r2
- add r0, r8
- ldrh r0, [r0, 0x28]
- subs r0, 0x1
- str r0, [r1]
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x40
- b _080519EE
- .pool
-_08051990:
- ldr r0, =gSpecialStatuses
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- lsrs r0, 7
- cmp r0, 0
- beq _080519DC
- ldr r1, =gBattleMoveDamage
- movs r3, 0x58
- adds r0, r2, 0
- muls r0, r3
- add r0, r8
- ldrh r0, [r0, 0x28]
- subs r0, 0x1
- str r0, [r1]
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gLastUsedItem
- mov r2, r9
- ldrb r0, [r2]
- muls r0, r3
- add r0, r8
- ldrh r0, [r0, 0x2E]
- strh r0, [r1]
- b _080519F2
- .pool
-_080519DC:
- ldr r1, =gBattleMoveDamage
- movs r0, 0x58
- muls r0, r2
- add r0, r8
- ldrh r0, [r0, 0x28]
- str r0, [r1]
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x10
-_080519EE:
- orrs r0, r1
- strb r0, [r2]
-_080519F2:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08051A70
- .pool
-_08051A08:
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r3, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- movs r2, 0x58
- adds r1, r0, 0
- muls r1, r2
- adds r1, r3
- adds r1, 0x2A
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- muls r0, r2
- adds r0, r3
- adds r0, 0x2A
- ldrb r1, [r1]
- ldrb r0, [r0]
- cmp r1, r0
- bcc _08051A50
- ldr r1, =gBattleCommunication
- movs r0, 0
- b _08051A54
- .pool
-_08051A50:
- ldr r1, =gBattleCommunication
- movs r0, 0x1
-_08051A54:
- strb r0, [r1, 0x5]
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08051A70:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk93_ko_move
-
- thumb_func_start atk94_gethalfcurrentenemyhp
-atk94_gethalfcurrentenemyhp: @ 8051A84
- push {lr}
- ldr r3, =gBattleMoveDamage
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x28]
- lsrs r0, 1
- str r0, [r3]
- cmp r0, 0
- bne _08051AA2
- movs r0, 0x1
- str r0, [r3]
-_08051AA2:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk94_gethalfcurrentenemyhp
-
- thumb_func_start atk95_setsandstorm
-atk95_setsandstorm: @ 8051AC0
- push {lr}
- ldr r2, =gBattleWeather
- ldrh r1, [r2]
- movs r0, 0x18
- ands r0, r1
- cmp r0, 0
- beq _08051AEC
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- b _08051AFE
- .pool
-_08051AEC:
- movs r0, 0x8
- strh r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x3
- strb r0, [r1, 0x5]
- ldr r0, =gWishFutureKnock
- adds r0, 0x28
- movs r1, 0x5
- strb r1, [r0]
-_08051AFE:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk95_setsandstorm
-
- thumb_func_start atk96_weatherdamage
-atk96_weatherdamage: @ 8051B18
- push {r4,r5,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08051B36
- b _08051C48
-_08051B36:
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _08051B4C
- b _08051C48
-_08051B4C:
- ldr r2, =gBattleWeather
- ldrh r1, [r2]
- movs r0, 0x18
- ands r0, r1
- adds r4, r2, 0
- ldr r5, =gBankAttacker
- cmp r0, 0
- beq _08051BDA
- ldr r0, =gBattleMons
- ldrb r2, [r5]
- movs r1, 0x58
- muls r1, r2
- adds r3, r1, r0
- adds r0, r3, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x5
- beq _08051BD4
- cmp r0, 0x8
- beq _08051BD4
- cmp r0, 0x4
- beq _08051BD4
- adds r0, r3, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x5
- beq _08051BD4
- cmp r0, 0x8
- beq _08051BD4
- cmp r0, 0x4
- beq _08051BD4
- adds r0, r3, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x8
- beq _08051BD4
- ldr r0, =gStatuses3
- lsls r1, r2, 2
- adds r1, r0
- ldr r1, [r1]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08051BD4
- movs r0, 0x80
- lsls r0, 11
- ands r1, r0
- cmp r1, 0
- bne _08051BD4
- ldr r1, =gBattleMoveDamage
- ldrh r0, [r3, 0x2C]
- lsrs r0, 4
- str r0, [r1]
- cmp r0, 0
- bne _08051BDA
- movs r0, 0x1
- b _08051BD8
- .pool
-_08051BD4:
- ldr r1, =gBattleMoveDamage
- movs r0, 0
-_08051BD8:
- str r0, [r1]
-_08051BDA:
- ldrh r1, [r4]
- movs r4, 0x80
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _08051C50
- ldr r1, =gBattleMons
- ldrb r3, [r5]
- movs r0, 0x58
- muls r0, r3
- adds r2, r0, r1
- adds r0, r2, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0xF
- beq _08051C3C
- adds r0, r2, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0xF
- beq _08051C3C
- ldr r0, =gStatuses3
- lsls r1, r3, 2
- adds r1, r0
- ldr r1, [r1]
- adds r0, r1, 0
- ands r0, r4
- cmp r0, 0
- bne _08051C3C
- movs r0, 0x80
- lsls r0, 11
- ands r1, r0
- cmp r1, 0
- bne _08051C3C
- ldr r1, =gBattleMoveDamage
- ldrh r0, [r2, 0x2C]
- lsrs r0, 4
- str r0, [r1]
- cmp r0, 0
- bne _08051C50
- movs r0, 0x1
- str r0, [r1]
- b _08051C50
- .pool
-_08051C3C:
- ldr r1, =gBattleMoveDamage
- movs r0, 0
- str r0, [r1]
- b _08051C50
- .pool
-_08051C48:
- ldr r1, =gBattleMoveDamage
- movs r0, 0
- str r0, [r1]
- ldr r5, =gBankAttacker
-_08051C50:
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08051C6A
- ldr r1, =gBattleMoveDamage
- movs r0, 0
- str r0, [r1]
-_08051C6A:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk96_weatherdamage
-
- thumb_func_start atk97_try_infatuation
-atk97_try_infatuation: @ 8051C90
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08051CC8
- ldr r1, =gBattlePartyID
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, =gPlayerParty
- b _08051CD8
- .pool
-_08051CC8:
- ldr r1, =gBattlePartyID
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, =gEnemyParty
-_08051CD8:
- adds r5, r1, r0
- ldr r4, =gBankTarget
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08051D0C
- ldr r1, =gBattlePartyID
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, =gPlayerParty
- b _08051D1C
- .pool
-_08051D0C:
- ldr r1, =gBattlePartyID
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, =gEnemyParty
-_08051D1C:
- adds r4, r1, r0
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- adds r0, r5, 0
- movs r1, 0
- bl GetMonData
- mov r9, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- adds r7, r0, 0
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- movs r6, 0x58
- muls r0, r6
- ldr r1, =gBattleMons
- adds r0, r1
- adds r0, 0x20
- ldrb r2, [r0]
- cmp r2, 0xC
- bne _08051D94
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB5F5
- str r0, [r1]
- ldr r0, =gLastUsedAbility
- strb r2, [r0]
- ldrb r0, [r5]
- movs r1, 0xC
- bl RecordAbilityBattle
- b _08051E2C
- .pool
-_08051D94:
- mov r0, r10
- mov r1, r9
- bl GetGenderFromSpeciesAndPersonality
- adds r4, r0, 0
- mov r0, r8
- adds r1, r7, 0
- bl GetGenderFromSpeciesAndPersonality
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _08051DE4
- ldrb r0, [r5]
- muls r0, r6
- ldr r4, =gBattleMons
- adds r4, 0x50
- adds r0, r4
- ldr r0, [r0]
- movs r1, 0xF0
- lsls r1, 12
- ands r0, r1
- cmp r0, 0
- bne _08051DE4
- mov r0, r10
- mov r1, r9
- bl GetGenderFromSpeciesAndPersonality
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _08051DE4
- mov r0, r8
- adds r1, r7, 0
- bl GetGenderFromSpeciesAndPersonality
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _08051E08
-_08051DE4:
- ldr r3, =gBattlescriptCurrInstr
- 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 _08051E2C
- .pool
-_08051E08:
- ldrb r0, [r5]
- adds r2, r0, 0
- muls r2, r6
- adds r2, r4
- ldr r1, =gBitTable
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- lsls r1, 16
- ldr r0, [r2]
- orrs r0, r1
- str r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08051E2C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk97_try_infatuation
-
- thumb_func_start atk98_status_icon_update
-atk98_status_icon_update: @ 8051E48
- push {r4-r7,lr}
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- bne _08051F34
- ldr r5, =gBattlescriptCurrInstr
- ldr r1, [r5]
- ldrb r0, [r1, 0x1]
- cmp r0, 0x4
- beq _08051EA0
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r3, =gBattleMons
- ldrb r1, [r4]
- movs r0, 0x58
- adds r2, r1, 0
- muls r2, r0
- adds r0, r3, 0
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r1, [r0]
- adds r3, 0x50
- adds r2, r3
- ldr r2, [r2]
- movs r0, 0
- bl dp01_build_cmdbuf_x1A_aaaa_bbbb
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
- b _08051F34
- .pool
-_08051EA0:
- ldr r4, =gActiveBank
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- strb r0, [r4]
- ldr r6, =gAbsentBankFlags
- ldrb r1, [r6]
- ldr r7, =gBitTable
- ldrb r2, [r4]
- lsls r0, r2, 2
- adds r0, r7
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08051EDC
- ldr r3, =gBattleMons
- movs r0, 0x58
- muls r2, r0
- adds r0, r3, 0
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r1, [r0]
- adds r3, 0x50
- adds r2, r3
- ldr r2, [r2]
- movs r0, 0
- bl dp01_build_cmdbuf_x1A_aaaa_bbbb
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_08051EDC:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08051F2C
- ldrb r0, [r5]
- bl GetBankIdentity
- movs r1, 0x2
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- strb r0, [r4]
- ldrb r1, [r6]
- ldrb r2, [r4]
- lsls r0, r2, 2
- adds r0, r7
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08051F2C
- ldr r3, =gBattleMons
- movs r0, 0x58
- muls r2, r0
- adds r0, r3, 0
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r1, [r0]
- adds r3, 0x50
- adds r2, r3
- ldr r2, [r2]
- movs r0, 0
- bl dp01_build_cmdbuf_x1A_aaaa_bbbb
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_08051F2C:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
-_08051F34:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk98_status_icon_update
-
- thumb_func_start atk99_setmist
-atk99_setmist: @ 8051F58
- push {r4-r6,lr}
- ldr r6, =gSideTimers
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankIdentity
- movs r5, 0x1
- adds r1, r5, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0, 0x4]
- cmp r0, 0
- beq _08051F98
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gBattleCommunication
- strb r5, [r0, 0x5]
- b _08051FE6
- .pool
-_08051F98:
- ldrb r0, [r4]
- bl GetBankIdentity
- adds r1, r5, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- movs r1, 0x5
- strb r1, [r0, 0x4]
- ldrb r0, [r4]
- bl GetBankIdentity
- adds r1, r5, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r4]
- strb r1, [r0, 0x5]
- ldrb r0, [r4]
- bl GetBankIdentity
- ldr r2, =gSideAffecting
- adds r1, r5, 0
- ands r1, r0
- lsls r1, 1
- adds r1, r2
- ldrh r2, [r1]
- movs r3, 0x80
- lsls r3, 1
- adds r0, r3, 0
- movs r3, 0
- orrs r0, r2
- strh r0, [r1]
- ldr r0, =gBattleCommunication
- strb r3, [r0, 0x5]
-_08051FE6:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk99_setmist
-
- thumb_func_start atk9A_set_focusenergy
-atk9A_set_focusenergy: @ 8052000
- push {lr}
- ldr r1, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r1, [r0]
- movs r3, 0x80
- lsls r3, 13
- adds r2, r1, 0
- ands r2, r3
- cmp r2, 0
- beq _08052040
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
- b _08052048
- .pool
-_08052040:
- orrs r1, r3
- str r1, [r0]
- ldr r0, =gBattleCommunication
- strb r2, [r0, 0x5]
-_08052048:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk9A_set_focusenergy
-
- thumb_func_start atk9B_transformdataexecution
-atk9B_transformdataexecution: @ 805205C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r1, =gUnknown_020241EC
- ldr r2, =0x0000ffff
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r7, =gBattleMons
- ldr r0, =gBankTarget
- mov r12, r0
- ldrb r1, [r0]
- movs r6, 0x58
- adds r0, r1, 0
- muls r0, r6
- adds r5, r7, 0
- adds r5, 0x50
- adds r0, r5
- ldr r0, [r0]
- movs r4, 0x80
- lsls r4, 14
- ands r0, r4
- cmp r0, 0
- bne _080520A2
- ldr r0, =gStatuses3
- lsls r1, 2
- adds r1, r0
- ldr r2, [r1]
- ldr r0, =0x000400c0
- ands r2, r0
- cmp r2, 0
- beq _080520D8
-_080520A2:
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- b _080521EC
- .pool
-_080520D8:
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- adds r1, r0, 0
- muls r1, r6
- adds r1, r5
- ldr r0, [r1]
- orrs r0, r4
- str r0, [r1]
- ldr r4, =gDisableStructs
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r4
- strh r2, [r0, 0x4]
- ldrb r0, [r3]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0xB]
- movs r0, 0x10
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0xB]
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r4
- mov r2, r12
- ldrb r1, [r2]
- muls r1, r6
- adds r2, r7, 0
- adds r2, 0x48
- adds r1, r2
- ldr r1, [r1]
- str r1, [r0]
- ldrb r0, [r3]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0x18]
- movs r0, 0xF
- ands r0, r2
- strb r0, [r1, 0x18]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x6
- strb r0, [r1, 0x1]
- mov r2, r12
- ldrb r0, [r2]
- muls r0, r6
- adds r0, r7
- ldrh r0, [r0]
- strb r0, [r1, 0x2]
- ldrb r0, [r2]
- muls r0, r6
- adds r0, r7
- ldrh r0, [r0]
- lsrs r0, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldrb r0, [r3]
- muls r0, r6
- adds r5, r0, r7
- ldrb r0, [r2]
- muls r0, r6
- adds r2, r0, r7
- movs r4, 0
- adds r6, r3, 0
- ldr r0, =gActiveBank
- mov r8, r0
-_08052170:
- adds r0, r5, r4
- adds r1, r2, r4
- ldrb r1, [r1]
- strb r1, [r0]
- adds r4, 0x1
- cmp r4, 0x23
- bls _08052170
- movs r4, 0
- ldr r7, =gBattleMoves
- ldr r3, =gBattleMons + 0xC
- adds r5, r3, 0
- adds r5, 0x18
-_08052188:
- lsls r1, r4, 1
- ldrb r2, [r6]
- movs r0, 0x58
- muls r2, r0
- adds r1, r2
- adds r1, r3
- ldrh r1, [r1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- ldrb r1, [r0, 0x4]
- cmp r1, 0x4
- bhi _080521C4
- adds r0, r4, r2
- adds r0, r5
- b _080521CA
- .pool
-_080521C4:
- adds r0, r4, r2
- adds r0, r5
- movs r1, 0x5
-_080521CA:
- strb r1, [r0]
- adds r4, 0x1
- cmp r4, 0x3
- ble _08052188
- ldrb r0, [r6]
- mov r1, r8
- strb r0, [r1]
- movs r0, 0
- movs r1, 0x2
- bl dp01_build_cmdbuf_x38_a
- mov r2, r8
- ldrb r0, [r2]
- bl MarkBufferBankForExecution
- ldr r1, =gBattleCommunication
- movs r0, 0
-_080521EC:
- strb r0, [r1, 0x5]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk9B_transformdataexecution
-
- thumb_func_start atk9C_set_substitute
-atk9C_set_substitute: @ 80521FC
- push {r4-r7,lr}
- ldr r7, =gBattleMons
- ldr r6, =gBankAttacker
- ldrb r0, [r6]
- movs r5, 0x58
- muls r0, r5
- adds r3, r0, r7
- ldrh r0, [r3, 0x2C]
- lsrs r1, r0, 2
- adds r2, r1, 0
- cmp r1, 0
- bne _08052216
- movs r2, 0x1
-_08052216:
- ldrh r0, [r3, 0x28]
- cmp r0, r2
- bhi _0805223C
- ldr r1, =gBattleMoveDamage
- movs r0, 0
- str r0, [r1]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
- b _08052290
- .pool
-_0805223C:
- ldr r4, =gBattleMoveDamage
- str r1, [r4]
- cmp r1, 0
- bne _08052248
- movs r0, 0x1
- str r0, [r4]
-_08052248:
- ldrb r0, [r6]
- adds r2, r0, 0
- muls r2, r5
- adds r3, r7, 0
- adds r3, 0x50
- adds r2, r3
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 17
- orrs r0, r1
- str r0, [r2]
- ldrb r0, [r6]
- adds r1, r0, 0
- muls r1, r5
- adds r1, r3
- ldr r0, [r1]
- ldr r2, =0xffff1fff
- ands r0, r2
- str r0, [r1]
- ldr r2, =gDisableStructs
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, [r4]
- movs r2, 0
- strb r1, [r0, 0xA]
- ldr r0, =gBattleCommunication
- strb r2, [r0, 0x5]
- ldr r2, =gHitMarker
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 1
- orrs r0, r1
- str r0, [r2]
-_08052290:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk9C_set_substitute
-
- thumb_func_start sub_80522B8
-sub_80522B8: @ 80522B8
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r2, r0, 16
- movs r3, 0
- ldr r0, =gUnknown_0831C3E0
- ldrh r1, [r0]
- ldr r4, =0x0000fffe
- adds r5, r0, 0
- cmp r1, r4
- beq _080522E0
- cmp r1, r2
- beq _080522E0
- adds r1, r5, 0
-_080522D2:
- adds r1, 0x2
- adds r3, 0x1
- ldrh r0, [r1]
- cmp r0, r4
- beq _080522E0
- cmp r0, r2
- bne _080522D2
-_080522E0:
- lsls r0, r3, 1
- adds r0, r5
- ldrh r1, [r0]
- ldr r0, =0x0000fffe
- eors r1, r0
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80522B8
-
- thumb_func_start atk9D_copyattack
-atk9D_copyattack: @ 8052300
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gUnknown_020241EC
- ldr r1, =0x0000ffff
- adds r7, r1, 0
- strh r7, [r0]
- ldr r5, =gLastUsedMovesByBanks
- ldr r6, =gBankTarget
- ldrb r0, [r6]
- lsls r0, 1
- adds r0, r5
- ldrh r0, [r0]
- bl sub_80522B8
- lsls r0, 24
- cmp r0, 0
- bne _0805235A
- ldr r3, =gBattleMons
- ldr r2, =gBankAttacker
- ldrb r1, [r2]
- movs r0, 0x58
- adds r4, r1, 0
- muls r4, r0
- adds r0, r3, 0
- adds r0, 0x50
- adds r0, r4, r0
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 14
- ands r1, r0
- mov r12, r3
- mov r9, r2
- cmp r1, 0
- bne _0805235A
- ldrb r0, [r6]
- lsls r0, 1
- adds r0, r5
- ldrh r1, [r0]
- cmp r1, 0
- beq _0805235A
- cmp r1, r7
- bne _08052394
-_0805235A:
- ldr r3, =gBattlescriptCurrInstr
- 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 _080524CC
- .pool
-_08052394:
- movs r2, 0
- mov r3, r12
- adds r3, 0xC
- adds r0, r4, r3
- ldrh r0, [r0]
- ldr r4, =gBattlescriptCurrInstr
- mov r10, r4
- cmp r0, r1
- beq _080523CE
- mov r8, r3
- adds r7, r5, 0
- adds r5, r6, 0
- mov r4, r9
- movs r3, 0x58
-_080523B0:
- adds r2, 0x1
- cmp r2, 0x3
- bgt _080523CE
- lsls r1, r2, 1
- ldrb r0, [r4]
- muls r0, r3
- adds r1, r0
- add r1, r8
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r7
- ldrh r1, [r1]
- ldrh r0, [r0]
- cmp r1, r0
- bne _080523B0
-_080523CE:
- cmp r2, 0x4
- bne _080524B0
- ldr r5, =gCurrMovePos
- ldrb r1, [r5]
- lsls r1, 1
- mov r2, r9
- ldrb r0, [r2]
- movs r6, 0x58
- muls r0, r6
- adds r1, r0
- mov r0, r12
- adds r0, 0xC
- adds r1, r0
- ldr r2, =gLastUsedMovesByBanks
- ldr r3, =gBankTarget
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r4, =gBattleMoves
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r4, [r0, 0x4]
- cmp r4, 0x4
- bhi _08052438
- mov r1, r9
- ldrb r0, [r1]
- muls r0, r6
- ldrb r1, [r5]
- adds r0, r1
- mov r1, r12
- adds r1, 0x24
- adds r0, r1
- strb r4, [r0]
- b _0805244C
- .pool
-_08052438:
- mov r4, r9
- ldrb r0, [r4]
- muls r0, r6
- ldrb r1, [r5]
- adds r0, r1
- mov r1, r12
- adds r1, 0x24
- adds r0, r1
- movs r1, 0x5
- strb r1, [r0]
-_0805244C:
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x2
- strb r0, [r1, 0x1]
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1, 0x2]
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- lsrs r0, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gDisableStructs
- mov r2, r9
- ldrb r0, [r2]
- lsls r2, r0, 3
- subs r2, r0
- lsls r2, 2
- adds r2, r1
- ldrb r4, [r2, 0x18]
- lsrs r3, r4, 4
- ldr r1, =gBitTable
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- orrs r1, r3
- lsls r1, 4
- movs r0, 0xF
- ands r0, r4
- orrs r0, r1
- strb r0, [r2, 0x18]
- mov r4, r10
- ldr r0, [r4]
- adds r0, 0x5
- str r0, [r4]
- b _080524CC
- .pool
-_080524B0:
- mov r0, r10
- ldr r2, [r0]
- 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
- mov r2, r10
- str r1, [r2]
-_080524CC:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end atk9D_copyattack
-
- thumb_func_start atk9E_metronome
-atk9E_metronome: @ 80524DC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r7, =gCurrentMove
- movs r6, 0xB1
- lsls r6, 1
- ldr r5, =gUnknown_0831C3E0
- ldr r0, =gBattlescriptCurrInstr
- mov r8, r0
-_080524EE:
- bl Random
- ldr r2, =0x000001ff
- adds r1, r2, 0
- ands r0, r1
- adds r0, 0x1
- strh r0, [r7]
- cmp r0, r6
- bhi _080524EE
- movs r0, 0x3
-_08052502:
- subs r0, 0x1
- cmp r0, 0
- bge _08052502
- ldr r4, =gCurrentMove
- ldrh r2, [r4]
- ldr r3, =0x0000ffff
- subs r0, r5, 0x2
-_08052510:
- adds r0, 0x2
- ldrh r1, [r0]
- cmp r1, r2
- beq _0805251C
- cmp r1, r3
- bne _08052510
-_0805251C:
- ldr r0, =0x0000ffff
- cmp r1, r0
- bne _080524EE
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffffbff
- ands r0, r1
- str r0, [r2]
- ldr r3, =gUnknown_082D86A8
- ldr r2, =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- mov r1, r8
- str r0, [r1]
- ldrh r0, [r4]
- movs r1, 0
- bl GetMoveTarget
- ldr r1, =gBankTarget
- strb r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atk9E_metronome
-
- thumb_func_start atk9F_dmgtolevel
-atk9F_dmgtolevel: @ 8052584
- ldr r3, =gBattleMoveDamage
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x2A
- ldrb r0, [r0]
- str r0, [r3]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atk9F_dmgtolevel
-
- thumb_func_start atkA0_psywavedamageeffect
-atkA0_psywavedamageeffect: @ 80525B4
- push {r4,lr}
- movs r4, 0xF
-_080525B8:
- bl Random
- adds r3, r4, 0
- ands r3, r0
- cmp r3, 0xA
- bgt _080525B8
- lsls r0, r3, 2
- adds r0, r3
- lsls r3, r0, 1
- ldr r4, =gBattleMoveDamage
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x2A
- ldrb r1, [r0]
- adds r0, r3, 0
- adds r0, 0x32
- muls r0, r1
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA0_psywavedamageeffect
-
- thumb_func_start atkA1_counterdamagecalculator
-atkA1_counterdamagecalculator: @ 8052608
- push {r4-r6,lr}
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r5, =gProtectStructs
- ldrb r0, [r4]
- lsls r0, 4
- adds r0, r5
- ldrb r0, [r0, 0xC]
- bl GetBankSide
- lsls r0, 24
- lsrs r2, r0, 24
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r0, r5, 0x4
- adds r0, r1, r0
- ldr r3, [r0]
- cmp r3, 0
- beq _080526BC
- cmp r6, r2
- beq _080526BC
- ldr r6, =gBattleMons
- adds r0, r1, r5
- ldrb r0, [r0, 0xC]
- movs r4, 0x58
- muls r0, r4
- adds r0, r6
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _080526BC
- ldr r1, =gBattleMoveDamage
- lsls r0, r3, 1
- str r0, [r1]
- ldr r1, =gSideTimers
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r1
- ldrb r0, [r1, 0x8]
- cmp r0, 0
- beq _08052690
- ldrb r1, [r1, 0x9]
- adds r0, r1, 0
- muls r0, r4
- adds r0, r6
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _08052690
- ldr r0, =gBankTarget
- strb r1, [r0]
- b _080526A0
- .pool
-_08052690:
- ldr r2, =gBankTarget
- ldr r1, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0xC]
- strb r0, [r2]
-_080526A0:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _080526EC
- .pool
-_080526BC:
- ldr r2, =gSpecialStatuses
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_080526EC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA1_counterdamagecalculator
-
- thumb_func_start atkA2_mirrorcoatdamagecalculator
-atkA2_mirrorcoatdamagecalculator: @ 8052700
- push {r4-r6,lr}
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r5, =gProtectStructs
- ldrb r0, [r4]
- lsls r0, 4
- adds r0, r5
- ldrb r0, [r0, 0xD]
- bl GetBankSide
- lsls r0, 24
- lsrs r2, r0, 24
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r0, r5, 0
- adds r0, 0x8
- adds r0, r1, r0
- ldr r3, [r0]
- cmp r3, 0
- beq _080527B4
- cmp r6, r2
- beq _080527B4
- ldr r6, =gBattleMons
- adds r0, r1, r5
- ldrb r0, [r0, 0xD]
- movs r4, 0x58
- muls r0, r4
- adds r0, r6
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _080527B4
- ldr r1, =gBattleMoveDamage
- lsls r0, r3, 1
- str r0, [r1]
- ldr r1, =gSideTimers
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r1
- ldrb r0, [r1, 0x8]
- cmp r0, 0
- beq _08052788
- ldrb r1, [r1, 0x9]
- adds r0, r1, 0
- muls r0, r4
- adds r0, r6
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _08052788
- ldr r0, =gBankTarget
- strb r1, [r0]
- b _08052798
- .pool
-_08052788:
- ldr r2, =gBankTarget
- ldr r1, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0xD]
- strb r0, [r2]
-_08052798:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _080527E4
- .pool
-_080527B4:
- ldr r2, =gSpecialStatuses
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_080527E4:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA2_mirrorcoatdamagecalculator
-
- thumb_func_start atkA3_disablelastusedattack
-atkA3_disablelastusedattack: @ 80527F8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r4, 0
- ldr r2, =gBattleMons
- ldr r3, =gBankTarget
- ldrb r1, [r3]
- movs r0, 0x58
- muls r0, r1
- adds r7, r2, 0
- adds r7, 0xC
- adds r0, r7
- ldr r5, =gLastUsedMovesByBanks
- lsls r1, 1
- adds r1, r5
- ldrh r0, [r0]
- mov r9, r2
- adds r6, r3, 0
- ldr r2, =gDisableStructs
- mov r8, r2
- ldrh r1, [r1]
- cmp r0, r1
- beq _0805284C
- mov r12, r6
- movs r3, 0x58
-_0805282C:
- adds r4, 0x1
- cmp r4, 0x3
- bgt _0805284C
- lsls r2, r4, 1
- mov r0, r12
- ldrb r1, [r0]
- adds r0, r1, 0
- muls r0, r3
- adds r2, r0
- adds r2, r7
- lsls r1, 1
- adds r1, r5
- ldrh r0, [r2]
- ldrh r1, [r1]
- cmp r0, r1
- bne _0805282C
-_0805284C:
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r8
- ldrh r0, [r0, 0x4]
- cmp r0, 0
- bne _08052910
- cmp r4, 0x4
- beq _08052910
- movs r5, 0x58
- adds r0, r1, 0
- muls r0, r5
- adds r0, r4, r0
- mov r1, r9
- adds r1, 0x24
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08052910
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x2
- strb r0, [r1, 0x1]
- lsls r2, r4, 1
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r2, r0
- mov r3, r9
- adds r3, 0xC
- adds r0, r3
- ldrh r0, [r0]
- strb r0, [r1, 0x2]
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r2, r0
- adds r0, r3
- ldrh r0, [r0]
- lsrs r0, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r8
- muls r1, r5
- adds r2, r1
- adds r2, r3
- ldrh r1, [r2]
- strh r1, [r0, 0x4]
- bl Random
- ldrb r2, [r6]
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- add r1, r8
- movs r2, 0x3
- ands r2, r0
- adds r2, 0x2
- ldrb r3, [r1, 0xB]
- movs r0, 0x10
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0xB]
- ldrb r0, [r6]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- add r1, r8
- ldrb r3, [r1, 0xB]
- lsls r2, r3, 28
- lsrs r2, 24
- movs r0, 0xF
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0xB]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _0805292A
- .pool
-_08052910:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_0805292A:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA3_disablelastusedattack
-
- thumb_func_start atkA4_setencore
-atkA4_setencore: @ 805293C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r5, 0
- ldr r3, =gBattleMons
- ldr r4, =gBankTarget
- ldrb r1, [r4]
- movs r0, 0x58
- muls r0, r1
- adds r6, r3, 0
- adds r6, 0xC
- adds r0, r6
- ldr r2, =gLastUsedMovesByBanks
- lsls r1, 1
- adds r1, r2
- ldrh r0, [r0]
- mov r10, r3
- mov r8, r2
- ldr r2, =gDisableStructs
- mov r9, r2
- ldrh r1, [r1]
- cmp r0, r1
- beq _08052996
- mov r12, r4
- adds r7, r6, 0
- mov r6, r8
- movs r3, 0x58
-_08052976:
- adds r5, 0x1
- cmp r5, 0x3
- bgt _08052996
- lsls r2, r5, 1
- mov r0, r12
- ldrb r1, [r0]
- adds r0, r1, 0
- muls r0, r3
- adds r2, r0
- adds r2, r7
- lsls r1, 1
- adds r1, r6
- ldrh r0, [r2]
- ldrh r1, [r1]
- cmp r0, r1
- bne _08052976
-_08052996:
- ldrb r0, [r4]
- lsls r0, 1
- add r0, r8
- ldrh r2, [r0]
- cmp r2, 0xA5
- beq _080529AA
- cmp r2, 0xE3
- beq _080529AA
- cmp r2, 0x77
- bne _080529AC
-_080529AA:
- movs r5, 0x4
-_080529AC:
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- mov r2, r9
- adds r3, r0, r2
- ldrh r0, [r3, 0x6]
- cmp r0, 0
- bne _08052A44
- cmp r5, 0x4
- beq _08052A44
- movs r0, 0x58
- adds r2, r1, 0
- muls r2, r0
- adds r0, r5, r2
- mov r1, r10
- adds r1, 0x24
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08052A44
- lsls r0, r5, 1
- adds r0, r2
- subs r1, 0x18
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r3, 0x6]
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r9
- strb r5, [r0, 0xC]
- bl Random
- ldrb r2, [r4]
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- add r1, r9
- movs r2, 0x3
- ands r2, r0
- adds r2, 0x3
- ldrb r3, [r1, 0xE]
- movs r0, 0x10
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0xE]
- ldrb r0, [r4]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- add r1, r9
- ldrb r3, [r1, 0xE]
- lsls r2, r3, 28
- lsrs r2, 24
- movs r0, 0xF
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0xE]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08052A5E
- .pool
-_08052A44:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08052A5E:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA4_setencore
-
- thumb_func_start atkA5_painsplitdmgcalc
-atkA5_painsplitdmgcalc: @ 8052A70
- push {r4-r7,lr}
- ldr r6, =gBattleMons
- ldr r0, =gBankTarget
- mov r12, r0
- ldrb r0, [r0]
- movs r7, 0x58
- adds r2, r0, 0
- muls r2, r7
- adds r0, r6, 0
- adds r0, 0x50
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- bne _08052B10
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- muls r0, r7
- adds r0, r6
- ldrh r3, [r0, 0x28]
- adds r0, r2, r6
- ldrh r1, [r0, 0x28]
- adds r3, r1
- asrs r3, 1
- ldr r4, =gBattleMoveDamage
- subs r1, r3
- str r1, [r4]
- ldr r2, =gBattleScripting
- strb r1, [r2]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- asrs r0, 8
- strb r0, [r2, 0x1]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r1
- asrs r0, 16
- strb r0, [r2, 0x2]
- lsrs r1, 24
- strb r1, [r2, 0x3]
- ldrb r0, [r5]
- muls r0, r7
- adds r0, r6
- ldrh r0, [r0, 0x28]
- subs r0, r3
- str r0, [r4]
- ldr r2, =gSpecialStatuses
- mov r0, r12
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, 0x4
- adds r0, r2
- ldr r1, =0x0000ffff
- str r1, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08052B2A
- .pool
-_08052B10:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08052B2A:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA5_painsplitdmgcalc
-
- thumb_func_start atkA6_settypetorandomresistance
-atkA6_settypetorandomresistance: @ 8052B34
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r1, =gUnknown_02024250
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- lsls r0, 1
- adds r2, r0, r1
- ldrh r1, [r2]
- cmp r1, 0
- beq _08052B7E
- ldr r0, =0x0000ffff
- cmp r1, r0
- beq _08052B7E
- ldrh r0, [r2]
- bl sub_8052F48
- lsls r0, 24
- cmp r0, 0
- beq _08052C1C
- ldr r1, =gBattleMons
- ldr r2, =gUnknown_02024270
- ldrb r0, [r4]
- adds r0, r2
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 5
- ands r0, r1
- cmp r0, 0
- beq _08052C1C
-_08052B7E:
- ldr r3, =gBattlescriptCurrInstr
- 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 _08052D08
- .pool
-_08052BB4:
- mov r0, r12
- strb r5, [r0]
- mov r1, r10
- ldrb r0, [r1]
- muls r0, r2
- adds r0, r7
- adds r0, 0x22
- strb r5, [r0]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x3
- strb r0, [r1, 0x1]
- strb r5, [r1, 0x2]
- movs r0, 0xFF
- strb r0, [r1, 0x3]
- ldr r1, =gBattlescriptCurrInstr
- b _08052C0A
- .pool
-_08052BE0:
- mov r0, r8
- adds r0, 0x1
- adds r0, r3
- ldrb r2, [r0]
- strb r2, [r4]
- mov r4, r10
- ldrb r0, [r4]
- muls r0, r6
- ldr r7, =gBattleMons
- adds r0, r7
- adds r0, 0x22
- strb r2, [r0]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x3
- strb r0, [r1, 0x1]
- strb r2, [r1, 0x2]
- movs r0, 0xFF
- strb r0, [r1, 0x3]
- mov r1, r12
-_08052C0A:
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08052D08
- .pool
-_08052C1C:
- movs r4, 0
- mov r8, r4
- movs r7, 0x7F
- mov r9, r7
-_08052C24:
- bl Random
- mov r4, r9
- ands r4, r0
- cmp r4, 0x70
- bhi _08052C24
- lsls r0, r4, 1
- adds r4, r0, r4
- ldr r6, =gUnknown_0831ACE8
- adds r3, r4, r6
- ldr r1, =gUnknown_02024258
- ldr r2, =gBankAttacker
- ldrb r5, [r2]
- lsls r0, r5, 1
- adds r0, r1
- ldrb r1, [r3]
- mov r10, r2
- ldrh r0, [r0]
- cmp r1, r0
- bne _08052C80
- adds r0, r4, 0x2
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0x5
- bhi _08052C80
- ldr r7, =gBattleMons
- movs r2, 0x58
- adds r0, r5, 0
- muls r0, r2
- adds r3, r0, r7
- movs r0, 0x21
- adds r0, r3
- mov r12, r0
- adds r0, r4, 0x1
- adds r0, r6
- ldrb r5, [r0]
- mov r1, r12
- ldrb r0, [r1]
- adds r1, r5, 0
- cmp r0, r1
- beq _08052C80
- adds r0, r3, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, r1
- bne _08052BB4
-_08052C80:
- movs r7, 0x1
- add r8, r7
- ldr r0, =0x000003e7
- cmp r8, r0
- ble _08052C24
- movs r0, 0
- mov r8, r0
- ldr r1, =gBattlescriptCurrInstr
- mov r12, r1
- ldr r3, =gUnknown_0831ACE8
- adds r0, r4, 0x1
- adds r0, r3
- mov r9, r0
- adds r5, r3, 0
-_08052C9C:
- ldrb r1, [r5]
- cmp r1, 0xFF
- bgt _08052CA6
- cmp r1, 0xFE
- bge _08052CE0
-_08052CA6:
- mov r4, r10
- ldrb r2, [r4]
- lsls r0, r2, 1
- ldr r7, =gUnknown_02024258
- adds r0, r7
- ldrh r0, [r0]
- cmp r1, r0
- bne _08052CE0
- ldrb r0, [r5, 0x2]
- cmp r0, 0x5
- bhi _08052CE0
- movs r6, 0x58
- adds r0, r2, 0
- muls r0, r6
- ldr r1, =gBattleMons
- adds r2, r0, r1
- adds r4, r2, 0
- adds r4, 0x21
- ldrb r0, [r4]
- mov r7, r9
- ldrb r1, [r7]
- cmp r0, r1
- beq _08052CE0
- adds r0, r2, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, r1
- beq _08052CE0
- b _08052BE0
-_08052CE0:
- adds r5, 0x3
- movs r0, 0x3
- add r8, r0
- ldr r0, =0x0000014f
- cmp r8, r0
- bls _08052C9C
- mov r1, r12
- ldr r2, [r1]
- 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
- mov r4, r12
- str r1, [r4]
-_08052D08:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA6_settypetorandomresistance
-
- thumb_func_start atkA7_setalwayshitflag
-atkA7_setalwayshitflag: @ 8052D34
- push {r4,lr}
- ldr r4, =gStatuses3
- ldr r3, =gBankTarget
- ldrb r1, [r3]
- lsls r1, 2
- adds r1, r4
- ldr r0, [r1]
- movs r2, 0x19
- negs r2, r2
- ands r0, r2
- str r0, [r1]
- ldrb r1, [r3]
- lsls r1, 2
- adds r1, r4
- ldr r0, [r1]
- movs r2, 0x10
- orrs r0, r2
- str r0, [r1]
- ldr r2, =gDisableStructs
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, =gBankAttacker
- ldrb r1, [r1]
- strb r1, [r0, 0x15]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA7_setalwayshitflag
-
- thumb_func_start atkA8_copymovepermanently
-atkA8_copymovepermanently: @ 8052D8C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- ldr r0, =gUnknown_020241EC
- ldr r1, =0x0000ffff
- adds r5, r1, 0
- strh r5, [r0]
- ldr r3, =gBattleMons
- ldr r2, =gBankAttacker
- ldrb r1, [r2]
- movs r0, 0x58
- adds r4, r1, 0
- muls r4, r0
- adds r0, r3, 0
- adds r0, 0x50
- adds r0, r4, r0
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 14
- ands r1, r0
- mov r12, r3
- mov r10, r2
- cmp r1, 0
- beq _08052DC4
- b _08052F18
-_08052DC4:
- ldr r0, =gUnknown_02024240
- ldr r2, =gBankTarget
- ldrb r1, [r2]
- lsls r1, 1
- adds r1, r0
- ldrh r1, [r1]
- mov r9, r0
- mov r8, r2
- cmp r1, 0xA5
- bne _08052DDA
- b _08052F18
-_08052DDA:
- cmp r1, 0
- bne _08052DE0
- b _08052F18
-_08052DE0:
- cmp r1, r5
- bne _08052DE6
- b _08052F18
-_08052DE6:
- cmp r1, 0xA6
- bne _08052DEC
- b _08052F18
-_08052DEC:
- movs r7, 0
- mov r5, r9
- mov r0, r12
- adds r0, 0xC
- adds r1, r4, r0
- mov r3, r8
-_08052DF8:
- ldrh r2, [r1]
- cmp r2, 0xA6
- beq _08052E0A
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r5
- ldrh r0, [r0]
- cmp r2, r0
- beq _08052E12
-_08052E0A:
- adds r1, 0x2
- adds r7, 0x1
- cmp r7, 0x3
- ble _08052DF8
-_08052E12:
- cmp r7, 0x4
- beq _08052E18
- b _08052F18
-_08052E18:
- ldr r4, =gCurrMovePos
- ldrb r1, [r4]
- lsls r1, 1
- mov r2, r10
- ldrb r0, [r2]
- movs r3, 0x58
- muls r0, r3
- adds r1, r0
- mov r6, r12
- adds r6, 0xC
- adds r1, r6
- mov r2, r8
- ldrb r0, [r2]
- lsls r0, 1
- add r0, r9
- ldrh r0, [r0]
- strh r0, [r1]
- mov r1, r10
- ldrb r0, [r1]
- adds r2, r0, 0
- muls r2, r3
- ldrb r4, [r4]
- adds r2, r4
- mov r5, r12
- adds r5, 0x24
- adds r2, r5
- ldr r4, =gBattleMoves
- mov r1, r8
- ldrb r0, [r1]
- lsls r0, 1
- add r0, r9
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x4]
- strb r0, [r2]
- ldr r1, =gActiveBank
- mov r2, r10
- ldrb r0, [r2]
- strb r0, [r1]
- movs r7, 0
- ldrb r0, [r2]
- muls r0, r3
- adds r4, r0, r5
- adds r3, r0, 0
- add r2, sp, 0x4
- add r5, sp, 0xC
-_08052E7A:
- adds r0, r3, r6
- ldrh r0, [r0]
- strh r0, [r2]
- adds r1, r5, r7
- ldrb r0, [r4]
- strb r0, [r1]
- adds r4, 0x1
- adds r3, 0x2
- adds r2, 0x2
- adds r7, 0x1
- cmp r7, 0x3
- ble _08052E7A
- add r2, sp, 0x4
- mov r0, r10
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- add r0, r12
- adds r0, 0x3B
- ldrb r0, [r0]
- strb r0, [r2, 0xC]
- str r2, [sp]
- movs r0, 0
- movs r1, 0x3
- movs r2, 0
- movs r3, 0x10
- bl EmitSetAttributes
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x2
- strb r0, [r1, 0x1]
- ldr r3, =gUnknown_02024240
- ldr r2, =gBankTarget
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- strb r0, [r1, 0x2]
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- lsrs r0, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08052F32
- .pool
-_08052F18:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08052F32:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA8_copymovepermanently
-
- thumb_func_start sub_8052F48
-sub_8052F48: @ 8052F48
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- ldr r2, =gBattleMoves
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1]
- cmp r0, 0x91
- beq _08052F72
- cmp r0, 0x27
- beq _08052F72
- cmp r0, 0x4B
- beq _08052F72
- cmp r0, 0x97
- beq _08052F72
- cmp r0, 0x9B
- beq _08052F72
- cmp r0, 0x1A
- bne _08052F7C
-_08052F72:
- movs r0, 0x1
- b _08052F7E
- .pool
-_08052F7C:
- movs r0, 0
-_08052F7E:
- pop {r1}
- bx r1
- thumb_func_end sub_8052F48
-
- thumb_func_start sub_8052F84
-sub_8052F84: @ 8052F84
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _08052FA2
- cmp r1, 0xD6
- beq _08052FA2
- movs r0, 0x89
- lsls r0, 1
- cmp r1, r0
- beq _08052FA2
- cmp r1, 0x77
- beq _08052FA2
- cmp r1, 0x76
- bne _08052FA6
-_08052FA2:
- movs r0, 0x1
- b _08052FA8
-_08052FA6:
- movs r0, 0
-_08052FA8:
- pop {r1}
- bx r1
- thumb_func_end sub_8052F84
-
- thumb_func_start move_weather_interaction
-move_weather_interaction: @ 8052FAC
- push {lr}
- lsls r1, 16
- lsrs r2, r1, 16
- ldr r1, =gBattleMoves
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- adds r3, r1, 0
- cmp r0, 0x97
- bne _08052FD0
- ldr r0, =gBattleWeather
- ldrh r1, [r0]
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- bne _08053010
-_08052FD0:
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x91
- beq _08052FF2
- cmp r0, 0x27
- beq _08052FF2
- cmp r0, 0x4B
- beq _08052FF2
- cmp r0, 0x97
- beq _08052FF2
- cmp r0, 0x9B
- beq _08052FF2
- cmp r0, 0x1A
- bne _08053010
-_08052FF2:
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 20
- ands r0, r1
- cmp r0, 0
- beq _08053010
- movs r0, 0x1
- b _08053012
- .pool
-_08053010:
- movs r0, 0x2
-_08053012:
- pop {r1}
- bx r1
- thumb_func_end move_weather_interaction
-
- thumb_func_start atkA9_sleeptalk_choose_move
-atkA9_sleeptalk_choose_move: @ 8053018
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r6, 0
- movs r5, 0
- ldr r0, =gBankAttacker
- mov r9, r0
- movs r1, 0x58
- mov r8, r1
- ldr r7, =gBattleMons + 0xC
- movs r0, 0x84
- lsls r0, 1
- mov r10, r0
-_08053036:
- lsls r4, r5, 1
- mov r1, r9
- ldrb r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r4, r0
- adds r0, r7
- ldrh r0, [r0]
- bl sub_8052F84
- lsls r0, 24
- cmp r0, 0
- bne _08053076
- mov r1, r9
- ldrb r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r4, r0
- adds r0, r7
- ldrh r1, [r0]
- cmp r1, r10
- beq _08053076
- cmp r1, 0xFD
- beq _08053076
- adds r0, r1, 0
- bl sub_8052F48
- lsls r0, 24
- cmp r0, 0
- beq _08053084
-_08053076:
- ldr r1, =gBitTable
- lsls r0, r5, 2
- adds r0, r1
- ldr r0, [r0]
- orrs r6, r0
- lsls r0, r6, 24
- lsrs r6, r0, 24
-_08053084:
- adds r5, 0x1
- cmp r5, 0x3
- ble _08053036
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- adds r1, r6, 0
- movs r2, 0xFD
- bl CheckMoveLimitations
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0xF
- bne _080530B8
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _0805311C
- .pool
-_080530B8:
- movs r7, 0x3
- ldr r4, =gBitTable
-_080530BC:
- bl Random
- adds r5, r7, 0
- ands r5, r0
- lsls r0, r5, 2
- adds r0, r4
- ldr r0, [r0]
- ands r0, r6
- cmp r0, 0
- bne _080530BC
- ldr r4, =gRandomMove
- ldr r2, =gBattleMons
- lsls r1, r5, 1
- ldr r0, =gBankAttacker
- ldrb r3, [r0]
- movs r0, 0x58
- muls r0, r3
- adds r1, r0
- adds r2, 0xC
- adds r1, r2
- ldrh r0, [r1]
- strh r0, [r4]
- ldr r0, =gCurrMovePos
- strb r5, [r0]
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffffbff
- ands r0, r1
- str r0, [r2]
- ldrh r0, [r4]
- movs r1, 0
- bl GetMoveTarget
- ldr r1, =gBankTarget
- strb r0, [r1]
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_0805311C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkA9_sleeptalk_choose_move
-
- thumb_func_start atkAA_set_destinybond
-atkAA_set_destinybond: @ 8053150
- ldr r1, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- movs r0, 0x58
- muls r2, r0
- adds r1, 0x50
- adds r2, r1
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 18
- orrs r0, r1
- str r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atkAA_set_destinybond
-
- thumb_func_start b_feature_update_destiny_bond
-b_feature_update_destiny_bond: @ 8053180
- push {r4,r5,lr}
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gBankTarget
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r1, =gBattleMons
- ldrb r2, [r4]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 18
- ands r0, r1
- cmp r0, 0
- beq _080531CA
- cmp r5, r3
- beq _080531CA
- ldr r2, =gHitMarker
- ldr r1, [r2]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r1
- cmp r0, 0
- bne _080531CA
- movs r0, 0x40
- orrs r1, r0
- str r1, [r2]
-_080531CA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end b_feature_update_destiny_bond
-
- thumb_func_start atkAB_DestinyBondFlagUpdate
-atkAB_DestinyBondFlagUpdate: @ 80531E0
- push {lr}
- bl b_feature_update_destiny_bond
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkAB_DestinyBondFlagUpdate
-
- thumb_func_start atkAC_remaininghptopower
-atkAC_remaininghptopower: @ 80531F8
- push {lr}
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r1, r0
- adds r1, r2
- movs r2, 0x28
- ldrsh r0, [r1, r2]
- movs r2, 0x2C
- ldrsh r1, [r1, r2]
- movs r2, 0x30
- bl sub_8075034
- lsls r0, 24
- lsrs r1, r0, 24
- movs r3, 0
- ldr r0, =gUnknown_0831C408
- ldrb r2, [r0]
- cmp r1, r2
- ble _08053232
- adds r2, r0, 0
-_08053224:
- adds r3, 0x2
- cmp r3, 0xB
- bgt _08053232
- adds r0, r3, r2
- ldrb r0, [r0]
- cmp r1, r0
- bgt _08053224
-_08053232:
- ldr r2, =gDynamicBasePower
- ldr r1, =gUnknown_0831C408
- adds r0, r3, 0x1
- adds r0, r1
- ldrb r0, [r0]
- strh r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkAC_remaininghptopower
-
- thumb_func_start atkAD_spite_ppreduce
-atkAD_spite_ppreduce: @ 8053260
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r4, =gLastUsedMovesByBanks
- ldr r1, =gBankTarget
- ldrb r3, [r1]
- lsls r0, r3, 1
- adds r0, r4
- ldrh r2, [r0]
- mov r8, r1
- cmp r2, 0
- bne _08053280
- b _08053408
-_08053280:
- ldr r0, =0x0000ffff
- cmp r2, r0
- bne _08053288
- b _08053408
-_08053288:
- movs r7, 0
- ldr r0, =gBattleMons
- movs r1, 0x58
- muls r1, r3
- adds r3, r0, 0
- adds r3, 0xC
- adds r1, r3
- ldrh r1, [r1]
- cmp r2, r1
- beq _080532C0
- adds r6, r4, 0
- mov r5, r8
- adds r4, r3, 0
- movs r3, 0x58
-_080532A4:
- adds r7, 0x1
- cmp r7, 0x3
- bgt _080532C0
- ldrb r0, [r5]
- lsls r2, r0, 1
- adds r2, r6
- lsls r1, r7, 1
- muls r0, r3
- adds r1, r0
- adds r1, r4
- ldrh r0, [r2]
- ldrh r1, [r1]
- cmp r0, r1
- bne _080532A4
-_080532C0:
- cmp r7, 0x4
- bne _080532C6
- b _08053408
-_080532C6:
- mov r4, r8
- ldrb r0, [r4]
- movs r1, 0x58
- mov r9, r1
- mov r3, r9
- muls r3, r0
- adds r0, r3, 0
- adds r0, r7, r0
- ldr r1, =gBattleMons
- adds r1, 0x24
- mov r10, r1
- add r0, r10
- ldrb r0, [r0]
- cmp r0, 0x1
- bhi _080532E6
- b _08053408
-_080532E6:
- bl Random
- movs r1, 0x3
- ands r1, r0
- adds r6, r1, 0x2
- ldrb r0, [r4]
- mov r3, r9
- muls r3, r0
- adds r0, r3, 0
- adds r0, r7, r0
- add r0, r10
- ldrb r0, [r0]
- cmp r0, r6
- bge _08053304
- adds r6, r0, 0
-_08053304:
- ldr r1, =gBattleTextBuff1
- movs r5, 0xFD
- strb r5, [r1]
- movs r0, 0x2
- strb r0, [r1, 0x1]
- ldr r2, =gLastUsedMovesByBanks
- mov r3, r8
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1, 0x2]
- ldrb r0, [r3]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- lsrs r0, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r4, =gBattleTextBuff2
- adds r0, r4, 0
- adds r1, r6, 0
- movs r2, 0
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- strb r5, [r4]
- movs r0, 0x1
- strb r0, [r4, 0x1]
- strb r0, [r4, 0x2]
- strb r0, [r4, 0x3]
- strb r6, [r4, 0x4]
- subs r0, 0x2
- strb r0, [r4, 0x5]
- mov r1, r8
- ldrb r0, [r1]
- mov r1, r9
- muls r1, r0
- adds r1, r7, r1
- add r1, r10
- ldrb r0, [r1]
- subs r0, r6
- strb r0, [r1]
- ldr r4, =gActiveBank
- mov r3, r8
- ldrb r0, [r3]
- strb r0, [r4]
- ldr r1, =gDisableStructs
- ldrb r3, [r4]
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x18]
- lsrs r1, 4
- ldr r2, =gBitTable
- lsls r0, r7, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _080533B8
- mov r2, r9
- muls r2, r3
- ldr r0, =gBattleMons
- adds r0, 0x50
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 14
- ands r0, r1
- cmp r0, 0
- bne _080533B8
- adds r1, r7, 0
- adds r1, 0x9
- lsls r1, 24
- lsrs r1, 24
- mov r3, r10
- adds r0, r2, r3
- adds r0, r7
- str r0, [sp]
- movs r0, 0
- movs r2, 0
- movs r3, 0x1
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_080533B8:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- ldr r1, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r0, r7, r0
- adds r1, 0x24
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08053422
- adds r0, r2, 0
- bl CancelMultiTurnMoves
- b _08053422
- .pool
-_08053408:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08053422:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkAD_spite_ppreduce
-
- thumb_func_start atkAE_heal_party_status
-atkAE_heal_party_status: @ 8053438
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- movs r4, 0
- str r4, [sp, 0x4]
- mov r8, r4
- ldr r0, =gCurrentMove
- ldrh r0, [r0]
- cmp r0, 0xD7
- beq _08053454
- b _0805363E
-_08053454:
- ldr r6, =gBattleCommunication
- mov r0, r8
- strb r0, [r6, 0x5]
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gEnemyParty
- mov r10, r1
- cmp r0, 0
- bne _08053470
- ldr r2, =gPlayerParty
- mov r10, r2
-_08053470:
- ldr r4, =gBattleMons
- ldrb r3, [r5]
- movs r7, 0x58
- adds r2, r3, 0
- muls r2, r7
- adds r0, r2, r4
- adds r1, r0, 0
- adds r1, 0x20
- ldrb r0, [r1]
- cmp r0, 0x2B
- beq _080534C4
- adds r0, r4, 0
- adds r0, 0x4C
- adds r0, r2, r0
- mov r1, r8
- str r1, [r0]
- ldrb r0, [r5]
- adds r2, r0, 0
- muls r2, r7
- adds r0, r4, 0
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- ldr r1, =0xf7ffffff
- ands r0, r1
- str r0, [r2]
- b _080534D4
- .pool
-_080534C4:
- ldrb r1, [r1]
- adds r0, r3, 0
- bl RecordAbilityBattle
- ldrb r0, [r6, 0x5]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r6, 0x5]
-_080534D4:
- ldr r7, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankIdentity
- movs r2, 0x2
- mov r9, r2
- mov r1, r9
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r1, =gBattleScripting
- strb r0, [r1, 0x17]
- strb r0, [r7]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0805357A
- ldr r0, =gAbsentBankFlags
- ldrb r2, [r0]
- ldr r1, =gBitTable
- ldrb r3, [r7]
- lsls r0, r3, 2
- adds r0, r1
- ldr r0, [r0]
- ands r2, r0
- cmp r2, 0
- bne _0805357A
- ldr r5, =gBattleMons
- movs r6, 0x58
- adds r4, r3, 0
- muls r4, r6
- adds r0, r4, r5
- adds r1, r0, 0
- adds r1, 0x20
- ldrb r0, [r1]
- cmp r0, 0x2B
- beq _08053568
- adds r0, r5, 0
- adds r0, 0x4C
- adds r0, r4, r0
- str r2, [r0]
- ldrb r0, [r7]
- adds r2, r0, 0
- muls r2, r6
- adds r0, r5, 0
- adds r0, 0x50
- adds r2, r0
- ldr r0, [r2]
- ldr r1, =0xf7ffffff
- ands r0, r1
- str r0, [r2]
- b _0805357A
- .pool
-_08053568:
- ldrb r1, [r1]
- adds r0, r3, 0
- bl RecordAbilityBattle
- ldr r1, =gBattleCommunication
- ldrb r0, [r1, 0x5]
- mov r2, r9
- orrs r0, r2
- strb r0, [r1, 0x5]
-_0805357A:
- movs r6, 0
- ldr r7, =gBattleMons
-_0805357E:
- movs r0, 0x64
- adds r4, r6, 0
- muls r4, r0
- add r4, r10
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0x2E
- bl GetMonData
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r5, 0
- beq _08053636
- movs r0, 0xCE
- lsls r0, 1
- cmp r5, r0
- beq _08053636
- ldr r2, =gBattlePartyID
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r0, [r0]
- cmp r0, r6
- bne _080535D0
- movs r0, 0x58
- muls r0, r1
- b _08053600
- .pool
-_080535D0:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08053618
- ldr r0, =gActiveBank
- ldrb r3, [r0]
- lsls r0, r3, 1
- adds r0, r2
- ldrh r0, [r0]
- cmp r0, r6
- bne _08053618
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08053618
- movs r0, 0x58
- muls r0, r3
-_08053600:
- adds r0, r7
- adds r0, 0x20
- ldrb r0, [r0]
- b _08053624
- .pool
-_08053618:
- adds r0, r5, 0
- adds r1, r4, 0
- bl GetAbilityBySpecies
- lsls r0, 24
- lsrs r0, 24
-_08053624:
- cmp r0, 0x2B
- beq _08053636
- movs r0, 0x1
- lsls r0, r6
- mov r1, r8
- orrs r1, r0
- lsls r0, r1, 24
- lsrs r0, 24
- mov r8, r0
-_08053636:
- adds r6, 0x1
- cmp r6, 0x5
- ble _0805357E
- b _080536BC
-_0805363E:
- ldr r1, =gBattleCommunication
- movs r0, 0x4
- strb r0, [r1, 0x5]
- movs r2, 0x3F
- mov r8, r2
- ldr r3, =gBattleMons
- ldr r2, =gBankAttacker
- ldrb r0, [r2]
- movs r5, 0x58
- muls r0, r5
- movs r1, 0x4C
- adds r1, r3
- mov r9, r1
- add r0, r9
- str r4, [r0]
- ldrb r0, [r2]
- adds r1, r0, 0
- muls r1, r5
- adds r7, r3, 0
- adds r7, 0x50
- adds r1, r7
- ldr r0, [r1]
- ldr r6, =0xf7ffffff
- ands r0, r6
- str r0, [r1]
- ldrb r0, [r2]
- bl GetBankIdentity
- movs r1, 0x2
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080536BC
- ldr r0, =gAbsentBankFlags
- ldrb r2, [r0]
- ldr r1, =gBitTable
- ldrb r3, [r4]
- lsls r0, r3, 2
- adds r0, r1
- ldr r0, [r0]
- ands r2, r0
- cmp r2, 0
- bne _080536BC
- adds r0, r3, 0
- muls r0, r5
- add r0, r9
- str r2, [r0]
- ldrb r0, [r4]
- adds r1, r0, 0
- muls r1, r5
- adds r1, r7
- ldr r0, [r1]
- ands r0, r6
- str r0, [r1]
-_080536BC:
- mov r2, r8
- cmp r2, 0
- beq _080536DE
- ldr r4, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r4]
- add r0, sp, 0x4
- str r0, [sp]
- movs r0, 0
- movs r1, 0x28
- movs r3, 0x4
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_080536DE:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkAE_heal_party_status
-
- thumb_func_start atkAF_cursetarget
-atkAF_cursetarget: @ 805371C
- push {r4,r5,lr}
- ldr r5, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- movs r4, 0x58
- adds r1, r0, 0
- muls r1, r4
- adds r0, r5, 0
- adds r0, 0x50
- adds r1, r0
- ldr r2, [r1]
- movs r3, 0x80
- lsls r3, 21
- adds r0, r2, 0
- ands r0, r3
- cmp r0, 0
- beq _08053768
- ldr r3, =gBattlescriptCurrInstr
- 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 _0805378C
- .pool
-_08053768:
- orrs r2, r3
- str r2, [r1]
- ldr r1, =gBattleMoveDamage
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- muls r0, r4
- adds r0, r5
- ldrh r0, [r0, 0x2C]
- lsrs r0, 1
- str r0, [r1]
- cmp r0, 0
- bne _08053784
- movs r0, 0x1
- str r0, [r1]
-_08053784:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0805378C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkAF_cursetarget
-
- thumb_func_start atkB0_set_spikes
-atkB0_set_spikes: @ 80537A0
- push {r4,lr}
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSideTimers
- lsls r2, r0, 1
- adds r0, r2, r0
- lsls r0, 2
- adds r3, r0, r1
- ldrb r0, [r3, 0xA]
- cmp r0, 0x3
- bne _08053804
- ldr r2, =gSpecialStatuses
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
- ldr r3, =gBattlescriptCurrInstr
- 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 _0805381E
- .pool
-_08053804:
- ldr r1, =gSideAffecting
- adds r1, r2, r1
- ldrh r2, [r1]
- movs r0, 0x10
- orrs r0, r2
- strh r0, [r1]
- ldrb r0, [r3, 0xA]
- adds r0, 0x1
- strb r0, [r3, 0xA]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0805381E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkB0_set_spikes
-
- thumb_func_start atkB1_set_foresight
-atkB1_set_foresight: @ 805382C
- ldr r1, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r2, [r0]
- movs r0, 0x58
- muls r2, r0
- adds r1, 0x50
- adds r2, r1
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 22
- orrs r0, r1
- str r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atkB1_set_foresight
-
- thumb_func_start atkB2_setperishsong
-atkB2_setperishsong: @ 805385C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r6, 0
- movs r3, 0
- ldr r0, =gNoOfAllBanks
- adds r7, r0, 0
- ldr r0, =gBankAttacker
- mov r8, r0
- ldrb r1, [r7]
- cmp r6, r1
- bge _080538C8
- movs r5, 0x20
- ldr r0, =gBattleMons
- mov r12, r0
- ldr r0, =gDisableStructs
- adds r4, r0, 0
- adds r4, 0xF
- ldr r2, =gStatuses3
-_08053884:
- ldr r1, [r2]
- adds r0, r1, 0
- ands r0, r5
- cmp r0, 0
- bne _0805389C
- movs r0, 0x58
- muls r0, r3
- add r0, r12
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x2B
- bne _080538B4
-_0805389C:
- adds r6, 0x1
- b _080538BC
- .pool
-_080538B4:
- orrs r1, r5
- str r1, [r2]
- movs r0, 0x33
- strb r0, [r4]
-_080538BC:
- adds r4, 0x1C
- adds r2, 0x4
- adds r3, 0x1
- ldrb r0, [r7]
- cmp r3, r0
- blt _08053884
-_080538C8:
- mov r1, r8
- ldrb r0, [r1]
- bl sub_803F67C
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r6, r0
- bne _080538FC
- ldr r3, =gBattlescriptCurrInstr
- 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 _08053904
- .pool
-_080538FC:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08053904:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkB2_setperishsong
-
- thumb_func_start atkB3_rolloutdamagecalculation
-atkB3_rolloutdamagecalculation: @ 8053914
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- beq _08053948
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl CancelMultiTurnMoves
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082D8A60
- str r0, [r1]
- b _08053A60
- .pool
-_08053948:
- ldr r2, =gBattleMons
- ldr r1, =gBankAttacker
- ldrb r3, [r1]
- movs r5, 0x58
- adds r0, r3, 0
- muls r0, r5
- adds r4, r2, 0
- adds r4, 0x50
- adds r0, r4
- ldr r0, [r0]
- movs r7, 0x80
- lsls r7, 5
- ands r0, r7
- adds r6, r1, 0
- mov r9, r2
- ldr r1, =gDisableStructs
- mov r12, r1
- ldr r2, =gCurrentMove
- mov r8, r2
- cmp r0, 0
- bne _080539BA
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- add r0, r12
- ldrb r2, [r0, 0x11]
- movs r1, 0x10
- negs r1, r1
- ands r1, r2
- movs r2, 0x5
- orrs r1, r2
- strb r1, [r0, 0x11]
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- add r0, r12
- ldrb r2, [r0, 0x11]
- movs r1, 0xF
- ands r1, r2
- movs r2, 0x50
- orrs r1, r2
- strb r1, [r0, 0x11]
- ldrb r0, [r6]
- adds r1, r0, 0
- muls r1, r5
- adds r1, r4
- ldr r0, [r1]
- orrs r0, r7
- str r0, [r1]
- ldr r1, =gUnknown_02024268
- ldrb r0, [r6]
- lsls r0, 1
- adds r0, r1
- mov r2, r8
- ldrh r1, [r2]
- strh r1, [r0]
-_080539BA:
- ldrb r0, [r6]
- lsls r2, r0, 3
- subs r2, r0
- lsls r2, 2
- add r2, r12
- ldrb r3, [r2, 0x11]
- lsls r1, r3, 28
- lsrs r1, 28
- subs r1, 0x1
- movs r0, 0xF
- ands r1, r0
- movs r0, 0x10
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2, 0x11]
- cmp r1, 0
- bne _080539EE
- ldrb r0, [r6]
- adds r1, r0, 0
- muls r1, r5
- adds r1, r4
- ldr r0, [r1]
- ldr r2, =0xffffefff
- ands r0, r2
- str r0, [r1]
-_080539EE:
- ldr r3, =gDynamicBasePower
- ldr r2, =gBattleMoves
- mov r0, r8
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- strh r0, [r3]
- movs r2, 0x1
- ldrb r1, [r6]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- mov r1, r12
- adds r4, r0, r1
- ldrb r0, [r4, 0x11]
- lsls r0, 28
- lsrs r0, 28
- movs r1, 0x5
- subs r1, r0
- ldr r7, =gBattlescriptCurrInstr
- adds r5, r3, 0
- cmp r2, r1
- bge _08053A3C
- adds r1, r5, 0
- adds r3, r4, 0
- movs r4, 0x5
-_08053A28:
- ldrh r0, [r1]
- lsls r0, 1
- strh r0, [r1]
- adds r2, 0x1
- ldrb r0, [r3, 0x11]
- lsls r0, 28
- lsrs r0, 28
- subs r0, r4, r0
- cmp r2, r0
- blt _08053A28
-_08053A3C:
- ldrb r1, [r6]
- movs r0, 0x58
- muls r0, r1
- mov r1, r9
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 23
- ands r0, r1
- cmp r0, 0
- beq _08053A5A
- ldrh r0, [r5]
- lsls r0, 1
- strh r0, [r5]
-_08053A5A:
- ldr r0, [r7]
- adds r0, 0x1
- str r0, [r7]
-_08053A60:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkB3_rolloutdamagecalculation
-
- thumb_func_start atkB4_jumpifconfusedandstatmaxed
-atkB4_jumpifconfusedandstatmaxed: @ 8053A90
- push {r4,r5,lr}
- ldr r5, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- adds r3, r1, 0
- muls r3, r0
- adds r0, r5, 0
- adds r0, 0x50
- adds r0, r3, r0
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- ldr r4, =gBattlescriptCurrInstr
- cmp r0, 0
- beq _08053AEC
- ldr r2, [r4]
- ldrb r0, [r2, 0x1]
- adds r0, r3
- adds r1, r5, 0
- adds r1, 0x18
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0xC
- bne _08053AEC
- 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, [r4]
- b _08053AF2
- .pool
-_08053AEC:
- ldr r0, [r4]
- adds r0, 0x6
- str r0, [r4]
-_08053AF2:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end atkB4_jumpifconfusedandstatmaxed
-
- thumb_func_start atkB5_furycuttercalc
-atkB5_furycuttercalc: @ 8053AF8
- push {r4,r5,lr}
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- beq _08053B34
- ldr r2, =gDisableStructs
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0
- strb r1, [r0, 0x10]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082D8A60
- str r0, [r1]
- b _08053B8C
- .pool
-_08053B34:
- ldr r5, =gDisableStructs
- ldr r4, =gBankAttacker
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r0, r5
- ldrb r0, [r1, 0x10]
- cmp r0, 0x5
- beq _08053B4C
- adds r0, 0x1
- strb r0, [r1, 0x10]
-_08053B4C:
- ldr r3, =gDynamicBasePower
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- strh r0, [r3]
- movs r2, 0x1
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r4, =gBattlescriptCurrInstr
- ldrb r1, [r0, 0x10]
- cmp r2, r1
- bge _08053B86
- adds r1, r3, 0
- adds r3, r0, 0
-_08053B78:
- ldrh r0, [r1]
- lsls r0, 1
- strh r0, [r1]
- adds r2, 0x1
- ldrb r0, [r3, 0x10]
- cmp r2, r0
- blt _08053B78
-_08053B86:
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
-_08053B8C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkB5_furycuttercalc
-
- thumb_func_start atkB6_happinesstodamagecalculation
-atkB6_happinesstodamagecalculation: @ 8053BAC
- push {r4,lr}
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x79
- bne _08053BEC
- ldr r4, =gDynamicBasePower
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x2B
- ldrb r1, [r0]
- b _08053C02
- .pool
-_08053BEC:
- ldr r4, =gDynamicBasePower
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x2B
- ldrb r0, [r0]
- movs r1, 0xFF
- subs r1, r0
-_08053C02:
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 1
- movs r1, 0x19
- bl __divsi3
- strh r0, [r4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkB6_happinesstodamagecalculation
-
- thumb_func_start atkB7_presentdamagecalculation
-atkB7_presentdamagecalculation: @ 8053C30
- push {r4,lr}
- bl Random
- movs r4, 0xFF
- ands r4, r0
- cmp r4, 0x65
- bgt _08053C4C
- ldr r1, =gDynamicBasePower
- movs r0, 0x28
- strh r0, [r1]
- b _08053C8E
- .pool
-_08053C4C:
- cmp r4, 0xB1
- bgt _08053C5C
- ldr r1, =gDynamicBasePower
- movs r0, 0x50
- strh r0, [r1]
- b _08053C8E
- .pool
-_08053C5C:
- cmp r4, 0xCB
- bgt _08053C6C
- ldr r1, =gDynamicBasePower
- movs r0, 0x78
- strh r0, [r1]
- b _08053C8E
- .pool
-_08053C6C:
- ldr r3, =gBattleMoveDamage
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x2C]
- lsrs r0, 2
- str r0, [r3]
- cmp r0, 0
- bne _08053C88
- movs r0, 0x1
- str r0, [r3]
-_08053C88:
- ldr r0, [r3]
- negs r0, r0
- str r0, [r3]
-_08053C8E:
- cmp r4, 0xCB
- bgt _08053CAC
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082D8A30
- b _08053CE6
- .pool
-_08053CAC:
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r1, [r0, 0x2C]
- ldrh r0, [r0, 0x28]
- cmp r1, r0
- bne _08053CD8
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082D9EFB
- b _08053CE6
- .pool
-_08053CD8:
- ldr r2, =gBattleMoveFlags
- ldrb r1, [r2]
- movs r0, 0xF7
- ands r0, r1
- strb r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082D9EE1
-_08053CE6:
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkB7_presentdamagecalculation
-
- thumb_func_start atkB8_set_safeguard
-atkB8_set_safeguard: @ 8053CFC
- push {r4-r7,lr}
- ldr r7, =gBankAttacker
- ldrb r0, [r7]
- bl GetBankIdentity
- ldr r4, =gSideAffecting
- movs r6, 0x1
- adds r1, r6, 0
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r1, [r1]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08053D40
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0
- strb r0, [r1, 0x5]
- b _08053D88
- .pool
-_08053D40:
- ldrb r0, [r7]
- bl GetBankIdentity
- adds r1, r6, 0
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r0, [r1]
- movs r2, 0x20
- orrs r0, r2
- strh r0, [r1]
- ldrb r0, [r7]
- bl GetBankIdentity
- ldr r5, =gSideTimers
- adds r1, r6, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r4, 0x5
- strb r4, [r0, 0x6]
- ldrb r0, [r7]
- bl GetBankIdentity
- adds r1, r6, 0
- ands r1, r0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r7]
- strb r1, [r0, 0x7]
- ldr r0, =gBattleCommunication
- strb r4, [r0, 0x5]
-_08053D88:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkB8_set_safeguard
-
- thumb_func_start atkB9_magnitudedamagecalculation
-atkB9_magnitudedamagecalculation: @ 8053DA4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x4
- bgt _08053DD0
- ldr r1, =gDynamicBasePower
- movs r0, 0xA
- strh r0, [r1]
- movs r3, 0x4
- b _08053E3C
- .pool
-_08053DD0:
- cmp r3, 0xE
- bgt _08053DE4
- ldr r1, =gDynamicBasePower
- movs r0, 0x1E
- strh r0, [r1]
- movs r3, 0x5
- b _08053E3C
- .pool
-_08053DE4:
- cmp r3, 0x22
- bgt _08053DF8
- ldr r1, =gDynamicBasePower
- movs r0, 0x32
- strh r0, [r1]
- movs r3, 0x6
- b _08053E3C
- .pool
-_08053DF8:
- cmp r3, 0x40
- bgt _08053E0C
- ldr r1, =gDynamicBasePower
- movs r0, 0x46
- strh r0, [r1]
- movs r3, 0x7
- b _08053E3C
- .pool
-_08053E0C:
- cmp r3, 0x54
- bgt _08053E20
- ldr r1, =gDynamicBasePower
- movs r0, 0x5A
- strh r0, [r1]
- movs r3, 0x8
- b _08053E3C
- .pool
-_08053E20:
- cmp r3, 0x5E
- bgt _08053E34
- ldr r1, =gDynamicBasePower
- movs r0, 0x6E
- strh r0, [r1]
- movs r3, 0x9
- b _08053E3C
- .pool
-_08053E34:
- ldr r1, =gDynamicBasePower
- movs r0, 0x96
- strh r0, [r1]
- movs r3, 0xA
-_08053E3C:
- ldr r1, =gBattleTextBuff1
- movs r2, 0
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x1
- strb r0, [r1, 0x1]
- strb r0, [r1, 0x2]
- movs r0, 0x2
- strb r0, [r1, 0x3]
- strb r3, [r1, 0x4]
- movs r0, 0xFF
- strb r0, [r1, 0x5]
- ldr r1, =gBankTarget
- strb r2, [r1]
- ldr r0, =gNoOfAllBanks
- ldrb r3, [r0]
- adds r6, r1, 0
- ldr r0, =gBattlescriptCurrInstr
- mov r8, r0
- cmp r2, r3
- bcs _08053E94
- adds r4, r6, 0
- ldr r0, =gBankAttacker
- ldrb r5, [r0]
- ldr r1, =gBitTable
- mov r12, r1
- ldr r7, =gAbsentBankFlags
-_08053E72:
- ldrb r2, [r4]
- cmp r2, r5
- beq _08053E88
- ldrb r0, [r7]
- ldrb r1, [r6]
- lsls r1, 2
- add r1, r12
- ldr r1, [r1]
- ands r0, r1
- cmp r0, 0
- beq _08053E94
-_08053E88:
- adds r0, r2, 0x1
- strb r0, [r4]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r3
- bcc _08053E72
-_08053E94:
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkB9_magnitudedamagecalculation
-
- thumb_func_start atkBA_jumpifnopursuitswitchdmg
-atkBA_jumpifnopursuitswitchdmg: @ 8053EC8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gUnknown_02024212
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08053EF8
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08053EF4
- movs r0, 0x1
- b _08053F12
- .pool
-_08053EF4:
- movs r0, 0
- b _08053F12
-_08053EF8:
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08053F10
- movs r0, 0x3
- b _08053F12
- .pool
-_08053F10:
- movs r0, 0x2
-_08053F12:
- bl GetBankByPlayerAI
- ldr r1, =gBankTarget
- strb r0, [r1]
- ldr r0, =gUnknown_0202421C
- ldr r1, =gBankTarget
- ldrb r3, [r1]
- adds r0, r3, r0
- ldrb r0, [r0]
- cmp r0, 0
- beq _08053F2A
- b _08054030
-_08053F2A:
- ldr r5, =gBankAttacker
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r1, r3, r1
- ldrb r2, [r5]
- ldrb r1, [r1, 0xC]
- cmp r2, r1
- bne _08054030
- ldr r4, =gBattleMons
- movs r2, 0x58
- adds r0, r3, 0
- muls r0, r2
- adds r1, r4, 0
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x27
- ands r0, r1
- cmp r0, 0
- bne _08054030
- ldrb r0, [r5]
- muls r0, r2
- adds r0, r4
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- beq _08054030
- ldr r0, =gDisableStructs
- lsls r1, r3, 3
- subs r1, r3
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x18]
- lsls r0, 31
- cmp r0, 0
- bne _08054030
- ldr r0, =gChosenMovesByBanks
- lsls r1, r3, 1
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0xE4
- bne _08054030
- movs r1, 0
- ldr r0, =gNoOfAllBanks
- ldr r2, =gCurrentMove
- mov r8, r2
- ldr r7, =gCurrMovePos
- mov r10, r7
- ldr r2, =gUnknown_020241E9
- mov r9, r2
- ldr r7, =gHitMarker
- mov r12, r7
- ldrb r2, [r0]
- cmp r1, r2
- bge _08053FB6
- ldr r6, =gTurnOrder
- ldr r5, =gBankTarget
- ldr r4, =gUnknown_0202407A
- movs r3, 0xB
- adds r2, r0, 0
-_08053FA0:
- adds r0, r1, r6
- ldrb r0, [r0]
- ldrb r7, [r5]
- cmp r0, r7
- bne _08053FAE
- adds r0, r1, r4
- strb r3, [r0]
-_08053FAE:
- adds r1, 0x1
- ldrb r0, [r2]
- cmp r1, r0
- blt _08053FA0
-_08053FB6:
- movs r0, 0xE4
- mov r1, r8
- strh r0, [r1]
- ldr r2, =gBankTarget
- ldrb r0, [r2]
- ldr r7, =gBattleStruct
- ldr r1, [r7]
- adds r0, r1
- adds r0, 0x80
- ldrb r0, [r0]
- mov r1, r9
- strb r0, [r1]
- mov r2, r10
- strb r0, [r2]
- ldr r7, =gBattlescriptCurrInstr
- ldr r0, [r7]
- adds r0, 0x5
- str r0, [r7]
- movs r0, 0x1
- ldr r1, =gBattleScripting
- strb r0, [r1, 0x18]
- mov r2, r12
- ldr r0, [r2]
- ldr r1, =0xfffffbff
- ands r0, r1
- str r0, [r2]
- b _0805404A
- .pool
-_08054030:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_0805404A:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkBA_jumpifnopursuitswitchdmg
-
- thumb_func_start atkBB_setsunny
-atkBB_setsunny: @ 805405C
- push {lr}
- ldr r2, =gBattleWeather
- ldrh r1, [r2]
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- beq _08054088
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- b _0805409A
- .pool
-_08054088:
- movs r0, 0x20
- strh r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x4
- strb r0, [r1, 0x5]
- ldr r0, =gWishFutureKnock
- adds r0, 0x28
- movs r1, 0x5
- strb r1, [r0]
-_0805409A:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkBB_setsunny
-
- thumb_func_start atkBC_maxattackhalvehp
-atkBC_maxattackhalvehp: @ 80540B4
- push {r4,r5,lr}
- ldr r5, =gBattleMons
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- movs r3, 0x58
- muls r0, r3
- adds r2, r0, r5
- ldrh r0, [r2, 0x2C]
- lsrs r1, r0, 1
- cmp r1, 0
- bne _080540CC
- movs r1, 0x1
-_080540CC:
- movs r0, 0x19
- ldrsb r0, [r2, r0]
- cmp r0, 0xB
- bgt _08054110
- ldrh r0, [r2, 0x28]
- cmp r0, r1
- bls _08054110
- movs r0, 0xC
- strb r0, [r2, 0x19]
- ldr r1, =gBattleMoveDamage
- ldrb r0, [r4]
- muls r0, r3
- adds r0, r5
- ldrh r0, [r0, 0x2C]
- lsrs r0, 1
- str r0, [r1]
- cmp r0, 0
- bne _080540F4
- movs r0, 0x1
- str r0, [r1]
-_080540F4:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _0805412A
- .pool
-_08054110:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_0805412A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkBC_maxattackhalvehp
-
- thumb_func_start atkBD_copyfoestats
-atkBD_copyfoestats: @ 8054134
- push {r4-r7,lr}
- movs r2, 0
- ldr r7, =gBattlescriptCurrInstr
- ldr r6, =gBankAttacker
- movs r4, 0x58
- ldr r3, =gBattleMons + 0x18
- ldr r5, =gBankTarget
-_08054142:
- ldrb r0, [r6]
- adds r1, r0, 0
- muls r1, r4
- adds r1, r2, r1
- adds r1, r3
- ldrb r0, [r5]
- muls r0, r4
- adds r0, r2, r0
- adds r0, r3
- ldrb r0, [r0]
- strb r0, [r1]
- adds r2, 0x1
- cmp r2, 0x7
- ble _08054142
- ldr r0, [r7]
- adds r0, 0x5
- str r0, [r7]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkBD_copyfoestats
-
- thumb_func_start atkBE_breakfree
-atkBE_breakfree: @ 805417C
- push {r4-r6,lr}
- ldr r1, =gBattleMons
- ldr r5, =gBankAttacker
- ldrb r2, [r5]
- movs r6, 0x58
- adds r0, r2, 0
- muls r0, r6
- adds r4, r1, 0
- adds r4, 0x50
- adds r0, r4
- ldr r0, [r0]
- movs r1, 0xE0
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _08054210
- ldr r1, =gBattleScripting
- ldr r3, =gBankTarget
- ldrb r0, [r3]
- strb r0, [r1, 0x17]
- ldrb r0, [r5]
- adds r1, r0, 0
- muls r1, r6
- adds r1, r4
- ldr r0, [r1]
- ldr r2, =0xffff1fff
- ands r0, r2
- str r0, [r1]
- ldrb r0, [r5]
- ldr r1, =gBattleStruct
- ldr r2, [r1]
- adds r0, r2
- ldrb r0, [r0, 0x14]
- strb r0, [r3]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x2
- strb r0, [r1, 0x1]
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r2
- ldrb r0, [r0, 0x4]
- strb r0, [r1, 0x2]
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r2
- ldrb r0, [r0, 0x5]
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAFC5
- b _080542BA
- .pool
-_08054210:
- ldr r4, =gStatuses3
- lsls r0, r2, 2
- adds r3, r0, r4
- ldr r1, [r3]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08054250
- movs r0, 0x5
- negs r0, r0
- ands r1, r0
- str r1, [r3]
- ldrb r1, [r5]
- lsls r1, 2
- adds r1, r4
- ldr r0, [r1]
- movs r2, 0x4
- negs r2, r2
- ands r0, r2
- str r0, [r1]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAFD6
- b _080542BA
- .pool
-_08054250:
- adds r0, r2, 0
- bl GetBankSide
- ldr r4, =gSideAffecting
- lsls r0, 24
- lsrs r0, 23
- adds r0, r4
- ldrh r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080542B4
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 23
- adds r0, r4
- ldrh r2, [r0]
- ldr r1, =0x0000ffef
- ands r1, r2
- movs r4, 0
- strh r1, [r0]
- ldrb r0, [r5]
- bl GetBankSide
- ldr r2, =gSideTimers
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- strb r4, [r1, 0xA]
- bl b_movescr_stack_push_cursor
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DAFDD
- b _080542BA
- .pool
-_080542B4:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
-_080542BA:
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkBE_breakfree
-
- thumb_func_start atkBF_set_defense_curl
-atkBF_set_defense_curl: @ 80542C8
- ldr r1, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- movs r0, 0x58
- muls r2, r0
- adds r1, 0x50
- adds r2, r1
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 23
- orrs r0, r1
- str r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atkBF_set_defense_curl
-
- thumb_func_start atkC0_recoverbasedonsunlight
-atkC0_recoverbasedonsunlight: @ 80542F8
- push {r4-r7,lr}
- sub sp, 0x4
- ldr r1, =gBankTarget
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- strb r0, [r1]
- ldr r7, =gBattleMons
- ldrb r0, [r5]
- movs r6, 0x58
- muls r0, r6
- adds r0, r7
- ldrh r1, [r0, 0x28]
- ldrh r0, [r0, 0x2C]
- cmp r1, r0
- beq _080543D8
- ldr r4, =gBattleWeather
- ldrh r0, [r4]
- cmp r0, 0
- beq _0805434A
- movs r0, 0
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _0805434A
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _08054378
-_0805434A:
- ldr r3, =gBattleMoveDamage
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x2C]
- lsrs r0, 1
- str r0, [r3]
- adds r1, r3, 0
- b _080543B2
- .pool
-_08054378:
- ldrh r1, [r4]
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- beq _080543A4
- ldr r4, =gBattleMoveDamage
- ldrb r0, [r5]
- muls r0, r6
- adds r0, r7
- ldrh r1, [r0, 0x2C]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- movs r1, 0x1E
- bl __divsi3
- str r0, [r4]
- adds r1, r4, 0
- b _080543B2
- .pool
-_080543A4:
- ldr r1, =gBattleMoveDamage
- ldrb r0, [r5]
- muls r0, r6
- adds r0, r7
- ldrh r0, [r0, 0x2C]
- lsrs r0, 2
- str r0, [r1]
-_080543B2:
- adds r2, r1, 0
- ldr r0, [r2]
- cmp r0, 0
- bne _080543BE
- movs r0, 0x1
- str r0, [r2]
-_080543BE:
- ldr r0, [r1]
- negs r0, r0
- str r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _080543F2
- .pool
-_080543D8:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_080543F2:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC0_recoverbasedonsunlight
-
- thumb_func_start atkC1_hidden_power
-atkC1_hidden_power: @ 8054400
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- adds r4, r1, 0
- muls r4, r0
- adds r4, r2
- ldrb r0, [r4, 0x14]
- mov r10, r0
- mov r7, r10
- lsls r7, 27
- adds r0, r7, 0
- lsrs r0, 27
- mov r10, r0
- movs r1, 0x2
- mov r2, r10
- ands r2, r1
- asrs r2, 1
- ldrh r7, [r4, 0x14]
- mov r9, r7
- mov r0, r9
- lsls r0, 22
- mov r9, r0
- lsrs r3, r0, 27
- adds r0, r1, 0
- ands r0, r3
- orrs r2, r0
- ldrb r7, [r4, 0x15]
- mov r8, r7
- mov r0, r8
- lsls r0, 25
- mov r8, r0
- lsrs r3, r0, 27
- adds r0, r1, 0
- ands r0, r3
- lsls r0, 1
- orrs r2, r0
- ldr r6, [r4, 0x14]
- lsls r6, 12
- lsrs r3, r6, 27
- adds r0, r1, 0
- ands r0, r3
- lsls r0, 2
- orrs r2, r0
- ldrh r5, [r4, 0x16]
- lsls r5, 23
- lsrs r3, r5, 27
- adds r0, r1, 0
- ands r0, r3
- lsls r0, 3
- orrs r2, r0
- ldrb r3, [r4, 0x17]
- lsls r3, 26
- lsrs r0, r3, 27
- ands r1, r0
- lsls r1, 4
- orrs r2, r1
- movs r1, 0x1
- adds r4, r1, 0
- mov r7, r10
- ands r4, r7
- mov r0, r9
- lsrs r0, 27
- mov r9, r0
- adds r0, r1, 0
- mov r7, r9
- ands r0, r7
- lsls r0, 1
- orrs r4, r0
- mov r0, r8
- lsrs r0, 27
- mov r8, r0
- adds r0, r1, 0
- mov r7, r8
- ands r0, r7
- lsls r0, 2
- orrs r4, r0
- lsrs r6, 27
- adds r0, r1, 0
- ands r0, r6
- lsls r0, 3
- orrs r4, r0
- lsrs r5, 27
- adds r0, r1, 0
- ands r0, r5
- lsls r0, 4
- orrs r4, r0
- lsrs r3, 27
- ands r1, r3
- lsls r1, 5
- orrs r4, r1
- ldr r5, =gDynamicBasePower
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- movs r1, 0x3F
- bl __divsi3
- adds r0, 0x1E
- strh r0, [r5]
- ldr r6, =gBattleStruct
- ldr r5, [r6]
- lsls r0, r4, 4
- subs r0, r4
- movs r1, 0x3F
- bl __divsi3
- adds r0, 0x1
- strb r0, [r5, 0x13]
- ldr r1, [r6]
- ldrb r0, [r1, 0x13]
- cmp r0, 0x8
- bls _080544F0
- adds r0, 0x1
- strb r0, [r1, 0x13]
-_080544F0:
- ldr r2, [r6]
- ldrb r0, [r2, 0x13]
- movs r1, 0xC0
- orrs r0, r1
- strb r0, [r2, 0x13]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC1_hidden_power
-
- thumb_func_start atkC2_selectnexttarget
-atkC2_selectnexttarget: @ 8054524
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gBankTarget
- movs r1, 0
- strb r1, [r0]
- ldr r1, =gNoOfAllBanks
- ldrb r1, [r1]
- adds r6, r0, 0
- ldr r0, =gBattlescriptCurrInstr
- mov r8, r0
- cmp r1, 0
- beq _0805456E
- adds r3, r6, 0
- ldr r0, =gBankAttacker
- ldrb r5, [r0]
- ldr r0, =gBitTable
- mov r12, r0
- adds r4, r1, 0
- ldr r7, =gAbsentBankFlags
-_0805454C:
- ldrb r2, [r3]
- cmp r2, r5
- beq _08054562
- ldrb r0, [r7]
- ldrb r1, [r6]
- lsls r1, 2
- add r1, r12
- ldr r1, [r1]
- ands r0, r1
- cmp r0, 0
- beq _0805456E
-_08054562:
- adds r0, r2, 0x1
- strb r0, [r3]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r4
- bcc _0805454C
-_0805456E:
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC2_selectnexttarget
-
- thumb_func_start atkC3_setfutureattack
-atkC3_setfutureattack: @ 8054598
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- ldr r0, =gWishFutureKnock
- mov r8, r0
- ldr r6, =gBankTarget
- ldrb r1, [r6]
- adds r0, r1, r0
- ldrb r7, [r0]
- cmp r7, 0
- beq _080545DC
- ldr r3, =gBattlescriptCurrInstr
- 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 _080546CC
- .pool
-_080545DC:
- adds r0, r1, 0
- bl GetBankIdentity
- ldr r4, =gSideAffecting
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1
- mov r10, r1
- ands r0, r1
- lsls r0, 1
- adds r0, r4
- ldrh r2, [r0]
- movs r1, 0x40
- movs r5, 0
- mov r3, sp
- strh r5, [r3, 0x10]
- orrs r1, r2
- strh r1, [r0]
- ldrb r0, [r6]
- lsls r0, 1
- mov r1, r8
- adds r1, 0x18
- adds r0, r1
- ldr r1, =gCurrentMove
- mov r9, r1
- ldrh r1, [r1]
- strh r1, [r0]
- mov r0, r8
- adds r0, 0x4
- ldrb r2, [r6]
- adds r0, r2
- ldr r5, =gBankAttacker
- ldrb r1, [r5]
- strb r1, [r0]
- ldrb r0, [r6]
- add r0, r8
- movs r1, 0x3
- strb r1, [r0]
- ldrb r0, [r6]
- bl GetBankIdentity
- mov r1, r10
- ands r1, r0
- lsls r1, 1
- adds r1, r4
- ldrh r3, [r1]
- ldrb r0, [r5]
- movs r4, 0x58
- muls r0, r4
- ldr r2, =gBattleMons
- adds r0, r2
- ldrb r1, [r6]
- muls r1, r4
- adds r1, r2
- mov r4, r9
- ldrh r2, [r4]
- str r7, [sp]
- str r7, [sp, 0x4]
- ldrb r4, [r5]
- str r4, [sp, 0x8]
- ldrb r4, [r6]
- str r4, [sp, 0xC]
- bl CalculateBaseDamage
- ldrb r1, [r6]
- lsls r1, 2
- mov r2, r8
- adds r2, 0x8
- adds r1, r2
- str r0, [r1]
- ldr r1, =gProtectStructs
- ldrb r0, [r5]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 28
- cmp r0, 0
- bge _0805468C
- ldrb r4, [r6]
- lsls r4, 2
- adds r4, r2
- ldr r1, [r4]
- lsls r0, r1, 4
- subs r0, r1
- movs r1, 0xA
- bl __divsi3
- str r0, [r4]
-_0805468C:
- mov r5, r9
- ldrh r1, [r5]
- ldr r0, =0x00000161
- cmp r1, r0
- bne _080546BC
- ldr r0, =gBattleCommunication
- mov r1, r10
- strb r1, [r0, 0x5]
- b _080546C4
- .pool
-_080546BC:
- ldr r0, =gBattleCommunication
- mov r2, sp
- ldrb r2, [r2, 0x10]
- strb r2, [r0, 0x5]
-_080546C4:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_080546CC:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC3_setfutureattack
-
- thumb_func_start atkC4_beat_up
-atkC4_beat_up: @ 80546E4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- ldr r7, =gEnemyParty
- cmp r0, 0
- bne _080546FE
- ldr r7, =gPlayerParty
-_080546FE:
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- bne _08054740
- ldr r3, =gBattlescriptCurrInstr
- 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]
- b _080548DC
- .pool
-_08054740:
- ldr r6, =gBattleCommunication
- ldrb r0, [r6]
- mov r8, r0
- cmp r0, 0x5
- bls _0805474C
- b _080548A8
-_0805474C:
- adds r4, r6, 0
- movs r5, 0x64
-_08054750:
- ldrb r0, [r4]
- muls r0, r5
- adds r0, r7, r0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08054794
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r7, r0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _08054794
- ldrb r0, [r4]
- muls r0, r5
- adds r0, r7, r0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _08054794
- ldrb r0, [r4]
- muls r0, r5
- adds r0, r7, r0
- movs r1, 0x37
- bl GetMonData
- cmp r0, 0
- beq _080547A4
-_08054794:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- adds r6, r4, 0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- bls _08054750
-_080547A4:
- ldr r1, =gBattleCommunication
- mov r9, r1
- ldrb r2, [r1]
- cmp r2, 0x5
- bhi _080548A8
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x4
- strb r0, [r1, 0x1]
- ldr r6, =gBankAttacker
- ldrb r0, [r6]
- strb r0, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x9
- str r0, [r1]
- ldr r2, =gBattleMoveDamage
- mov r8, r2
- ldr r5, =gBaseStats
- mov r1, r9
- ldrb r0, [r1]
- movs r4, 0x64
- muls r0, r4
- adds r0, r7, r0
- movs r1, 0xB
- bl GetMonData
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r5
- ldrb r3, [r1, 0x1]
- mov r2, r8
- str r3, [r2]
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- muls r0, r3
- mov r1, r8
- str r0, [r1]
- mov r2, r9
- ldrb r0, [r2]
- muls r0, r4
- adds r0, r7, r0
- movs r1, 0x38
- bl GetMonData
- lsls r0, 1
- movs r1, 0x5
- bl __udivsi3
- adds r0, 0x2
- mov r2, r8
- ldr r1, [r2]
- muls r0, r1
- str r0, [r2]
- ldr r3, =gBattleMons
- ldr r1, =gBankTarget
- ldrb r2, [r1]
- movs r1, 0x58
- muls r1, r2
- adds r1, r3
- ldrh r2, [r1]
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r5
- ldrb r1, [r1, 0x2]
- bl __divsi3
- mov r1, r8
- str r0, [r1]
- movs r1, 0x32
- bl __divsi3
- adds r2, r0, 0x2
- mov r0, r8
- str r2, [r0]
- ldr r1, =gProtectStructs
- ldrb r0, [r6]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 28
- cmp r0, 0
- bge _08054870
- lsls r0, r2, 4
- subs r0, r2
- movs r1, 0xA
- bl __divsi3
- mov r1, r8
- str r0, [r1]
-_08054870:
- mov r2, r9
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- b _080548E2
- .pool
-_080548A8:
- mov r0, r8
- cmp r0, 0
- beq _080548C8
- ldr r3, =gBattlescriptCurrInstr
- 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]
- b _080548DC
- .pool
-_080548C8:
- ldr r3, =gBattlescriptCurrInstr
- ldr r2, [r3]
- ldrb r1, [r2, 0x5]
- ldrb r0, [r2, 0x6]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x8]
-_080548DC:
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
-_080548E2:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC4_beat_up
-
- thumb_func_start atkC5_hidepreattack
-atkC5_hidepreattack: @ 80548F4
- push {lr}
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- cmp r1, 0x5B
- beq _08054934
- cmp r1, 0x5B
- bgt _0805490C
- cmp r1, 0x13
- beq _08054918
- b _08054960
- .pool
-_0805490C:
- ldr r0, =0x00000123
- cmp r1, r0
- beq _0805494C
- adds r0, 0x31
- cmp r1, r0
- bne _08054960
-_08054918:
- ldr r2, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 2
- adds r1, r2
- ldr r0, [r1]
- movs r2, 0x40
- b _0805495C
- .pool
-_08054934:
- ldr r2, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 2
- adds r1, r2
- ldr r0, [r1]
- movs r2, 0x80
- b _0805495C
- .pool
-_0805494C:
- ldr r2, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 2
- adds r1, r2
- ldr r0, [r1]
- movs r2, 0x80
- lsls r2, 11
-_0805495C:
- orrs r0, r2
- str r0, [r1]
-_08054960:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC5_hidepreattack
-
- thumb_func_start atkC6_unhidepostattack
-atkC6_unhidepostattack: @ 8054978
- push {lr}
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- cmp r1, 0x5B
- beq _080549BC
- cmp r1, 0x5B
- bgt _08054990
- cmp r1, 0x13
- beq _0805499C
- b _080549EA
- .pool
-_08054990:
- ldr r0, =0x00000123
- cmp r1, r0
- beq _080549D8
- adds r0, 0x31
- cmp r1, r0
- bne _080549EA
-_0805499C:
- ldr r2, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 2
- adds r1, r2
- ldr r0, [r1]
- movs r2, 0x41
- negs r2, r2
- b _080549E6
- .pool
-_080549BC:
- ldr r2, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 2
- adds r1, r2
- ldr r0, [r1]
- movs r2, 0x81
- negs r2, r2
- b _080549E6
- .pool
-_080549D8:
- ldr r2, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 2
- adds r1, r2
- ldr r0, [r1]
- ldr r2, =0xfffbffff
-_080549E6:
- ands r0, r2
- str r0, [r1]
-_080549EA:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC6_unhidepostattack
-
- thumb_func_start atkC7_setminimize
-atkC7_setminimize: @ 8054A08
- push {lr}
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 18
- ands r0, r1
- cmp r0, 0
- beq _08054A2C
- ldr r2, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- lsls r1, 2
- adds r1, r2
- ldr r0, [r1]
- movs r2, 0x80
- lsls r2, 1
- orrs r0, r2
- str r0, [r1]
-_08054A2C:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC7_setminimize
-
- thumb_func_start atkC8_sethail
-atkC8_sethail: @ 8054A48
- push {lr}
- ldr r3, =gBattleWeather
- ldrh r1, [r3]
- movs r2, 0x80
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _08054A78
- ldr r2, =gBattleMoveFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
- b _08054A86
- .pool
-_08054A78:
- strh r2, [r3]
- ldr r0, =gBattleCommunication
- movs r1, 0x5
- strb r1, [r0, 0x5]
- ldr r0, =gWishFutureKnock
- adds r0, 0x28
- strb r1, [r0]
-_08054A86:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC8_sethail
-
- thumb_func_start atkC9_jumpifattackandspecialattackcannotfall
-atkC9_jumpifattackandspecialattackcannotfall: @ 8054AA0
- push {r4,lr}
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r1, r0, r2
- movs r0, 0x19
- ldrsb r0, [r1, r0]
- adds r3, r2, 0
- cmp r0, 0
- bne _08054AF4
- movs r0, 0x1C
- ldrsb r0, [r1, r0]
- cmp r0, 0
- bne _08054AF4
- ldr r0, =gBattleCommunication
- ldrb r0, [r0, 0x6]
- cmp r0, 0x1
- beq _08054AF4
- ldr r3, =gBattlescriptCurrInstr
- 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 _08054B20
- .pool
-_08054AF4:
- ldr r4, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r4]
- ldr r2, =gBattleMoveDamage
- ldrb r1, [r4]
- movs r0, 0x58
- muls r0, r1
- adds r0, r3
- ldrh r0, [r0, 0x28]
- str r0, [r2]
- ldr r1, =0x00007fff
- movs r0, 0
- bl dp01_build_cmdbuf_x18_0_aa_health_bar_update
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08054B20:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkC9_jumpifattackandspecialattackcannotfall
-
- thumb_func_start atkCA_setforcedtarget
-atkCA_setforcedtarget: @ 8054B3C
- push {r4,r5,lr}
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- ldr r5, =gSideTimers
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- movs r0, 0x1
- strb r0, [r1, 0x8]
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldrb r0, [r4]
- strb r0, [r1, 0x9]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkCA_setforcedtarget
-
- thumb_func_start atkCB_setcharge
-atkCB_setcharge: @ 8054B88
- push {r4,lr}
- ldr r0, =gStatuses3
- ldr r3, =gBankAttacker
- ldrb r1, [r3]
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- movs r2, 0x80
- lsls r2, 2
- orrs r0, r2
- str r0, [r1]
- ldr r4, =gDisableStructs
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r2, [r0, 0x12]
- movs r1, 0x10
- negs r1, r1
- ands r1, r2
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0, 0x12]
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r2, [r0, 0x12]
- movs r1, 0xF
- ands r1, r2
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0, 0x12]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkCB_setcharge
-
- thumb_func_start atkCC_callterrainattack
-atkCC_callterrainattack: @ 8054BEC
- push {r4,lr}
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffffbff
- ands r0, r1
- str r0, [r2]
- ldr r4, =gCurrentMove
- ldr r1, =gUnknown_0831C414
- ldr r0, =gUnknown_02022FF0
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r4]
- ldrh r0, [r4]
- movs r1, 0
- bl GetMoveTarget
- ldr r1, =gBankTarget
- strb r0, [r1]
- ldr r3, =gUnknown_082D86A8
- ldr r2, =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- bl b_movescr_stack_push
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkCC_callterrainattack
-
- thumb_func_start atkCD_cureifburnedparalysedorpoisoned
-atkCD_cureifburnedparalysedorpoisoned: @ 8054C60
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r1, =gBattleMons
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- movs r6, 0x58
- muls r0, r6
- adds r5, r1, 0
- adds r5, 0x4C
- adds r2, r0, r5
- ldr r0, [r2]
- movs r1, 0xD8
- ands r0, r1
- cmp r0, 0
- beq _08054CBC
- movs r0, 0
- str r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- ldr r4, =gActiveBank
- ldrb r0, [r3]
- strb r0, [r4]
- ldrb r0, [r4]
- muls r0, r6
- adds r0, r5
- str r0, [sp]
- movs r0, 0
- movs r1, 0x28
- movs r2, 0
- movs r3, 0x4
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- b _08054CD6
- .pool
-_08054CBC:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08054CD6:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkCD_cureifburnedparalysedorpoisoned
-
- thumb_func_start atkCE_settorment
-atkCE_settorment: @ 8054CE4
- push {lr}
- ldr r1, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r1, [r0]
- movs r2, 0x80
- lsls r2, 24
- cmp r1, 0
- bge _08054D28
- ldr r3, =gBattlescriptCurrInstr
- 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 _08054D34
- .pool
-_08054D28:
- orrs r1, r2
- str r1, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08054D34:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkCE_settorment
-
- thumb_func_start atkCF_jumpifnodamage
-atkCF_jumpifnodamage: @ 8054D3C
- push {lr}
- ldr r2, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r0, r2, 0x4
- adds r0, r1, r0
- ldr r0, [r0]
- cmp r0, 0
- bne _08054D5C
- adds r0, r2, 0
- adds r0, 0x8
- adds r0, r1, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _08054D74
-_08054D5C:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08054D8E
- .pool
-_08054D74:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08054D8E:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkCF_jumpifnodamage
-
- thumb_func_start atkD0_settaunt
-atkD0_settaunt: @ 8054D98
- push {r4,lr}
- ldr r4, =gDisableStructs
- ldr r3, =gBankTarget
- ldrb r0, [r3]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r2, r1, r4
- ldrb r1, [r2, 0x13]
- lsls r0, r1, 28
- cmp r0, 0
- bne _08054DE8
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0x13]
- ldrb r1, [r3]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r2, [r0, 0x13]
- movs r1, 0xF
- ands r1, r2
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0, 0x13]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08054E02
- .pool
-_08054DE8:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08054E02:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD0_settaunt
-
- thumb_func_start atkD1_set_helpinghand
-atkD1_set_helpinghand: @ 8054E0C
- push {r4,lr}
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankIdentity
- movs r1, 0x2
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r3, =gBankTarget
- strb r0, [r3]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08054E90
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- ldrb r3, [r3]
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08054E90
- ldr r1, =gProtectStructs
- ldrb r0, [r4]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 28
- cmp r0, 0
- blt _08054E90
- lsls r0, r3, 4
- adds r2, r0, r1
- ldrb r1, [r2]
- lsls r0, r1, 28
- cmp r0, 0
- blt _08054E90
- movs r0, 0x8
- orrs r0, r1
- strb r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08054EAA
- .pool
-_08054E90:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08054EAA:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD1_set_helpinghand
-
- thumb_func_start atkD2_swap_items
-atkD2_swap_items: @ 8054EB4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r4, =gBattleTypeFlags
- ldr r0, [r4]
- movs r1, 0x80
- lsls r1, 19
- ands r0, r1
- cmp r0, 0
- bne _08054F9A
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08054EE8
- ldr r0, [r4]
- ldr r1, =0x0a3f0902
- ands r0, r1
- cmp r0, 0
- beq _08054F9A
-_08054EE8:
- ldr r6, =gBankAttacker
- ldrb r0, [r6]
- bl GetBankSide
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r7, =gBankTarget
- ldrb r0, [r7]
- bl GetBankSide
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x0a3f0902
- ands r0, r1
- cmp r0, 0
- bne _08054F46
- ldr r0, =gWishFutureKnock
- adds r2, r0, 0
- adds r2, 0x29
- adds r0, r4, r2
- ldrb r1, [r0]
- ldr r4, =gBitTable
- ldr r3, =gBattlePartyID
- ldrb r0, [r6]
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08054F9A
- adds r0, r5, r2
- ldrb r1, [r0]
- ldrb r0, [r7]
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08054F9A
-_08054F46:
- ldr r0, =gBattleMons
- mov r8, r0
- ldr r1, =gBankAttacker
- ldrb r4, [r1]
- movs r5, 0x58
- adds r0, r4, 0
- muls r0, r5
- add r0, r8
- mov r9, r0
- ldrh r3, [r0, 0x2E]
- adds r1, r3, 0
- cmp r1, 0
- bne _08054F6E
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- muls r0, r5
- add r0, r8
- ldrh r0, [r0, 0x2E]
- cmp r0, 0
- beq _08054F9A
-_08054F6E:
- cmp r1, 0xAF
- beq _08054F9A
- ldr r7, =gBankTarget
- ldrb r0, [r7]
- muls r0, r5
- mov r2, r8
- adds r1, r0, r2
- ldrh r2, [r1, 0x2E]
- cmp r2, 0xAF
- beq _08054F9A
- adds r0, r3, 0
- subs r0, 0x79
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xB
- bls _08054F9A
- adds r0, r2, 0
- subs r0, 0x79
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xB
- bhi _08054FDC
-_08054F9A:
- ldr r3, =gBattlescriptCurrInstr
- 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 _08055132
- .pool
-_08054FDC:
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x3C
- bne _08055010
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DB63F
- str r0, [r1]
- ldr r1, =gLastUsedAbility
- ldrb r0, [r7]
- muls r0, r5
- add r0, r8
- adds r0, 0x20
- ldrb r0, [r0]
- strb r0, [r1]
- ldrb r0, [r7]
- ldrb r1, [r1]
- bl RecordAbilityBattle
- b _08055132
- .pool
-_08055010:
- ldr r3, =gBattleStruct
- mov r10, r3
- lsls r0, r4, 1
- adds r0, 0xD0
- ldr r1, [r3]
- adds r6, r1, r0
- mov r0, r9
- ldrh r0, [r0, 0x2E]
- mov r9, r0
- strh r2, [r6]
- ldr r1, =gBankAttacker
- ldrb r0, [r1]
- muls r0, r5
- add r0, r8
- movs r1, 0
- strh r1, [r0, 0x2E]
- ldrb r0, [r7]
- muls r0, r5
- add r0, r8
- mov r2, r9
- strh r2, [r0, 0x2E]
- ldr r4, =gActiveBank
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- strb r0, [r4]
- str r6, [sp]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl EmitSetAttributes
- ldr r1, =gBankAttacker
- ldrb r0, [r1]
- bl MarkBufferBankForExecution
- ldrb r0, [r7]
- strb r0, [r4]
- ldrb r0, [r7]
- muls r0, r5
- mov r1, r8
- adds r1, 0x2E
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl EmitSetAttributes
- ldrb r0, [r7]
- bl MarkBufferBankForExecution
- ldrb r0, [r7]
- mov r2, r10
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC8
- movs r3, 0
- strb r3, [r0]
- ldrb r0, [r7]
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC9
- strb r3, [r0]
- ldr r1, =gBankAttacker
- ldrb r0, [r1]
- ldr r1, [r2]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC8
- strb r3, [r0]
- ldr r2, =gBankAttacker
- ldrb r0, [r2]
- mov r3, r10
- ldr r1, [r3]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC9
- movs r1, 0
- strb r1, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- ldr r1, =gBattleTextBuff1
- movs r3, 0xFD
- strb r3, [r1]
- movs r2, 0xA
- strb r2, [r1, 0x1]
- ldrh r0, [r6]
- strb r0, [r1, 0x2]
- ldrh r0, [r6]
- lsrs r0, 8
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattleTextBuff2
- strb r3, [r1]
- strb r2, [r1, 0x1]
- mov r2, r9
- strb r2, [r1, 0x2]
- mov r3, r9
- lsrs r0, r3, 8
- strb r0, [r1, 0x3]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r1, 0x4]
- cmp r3, 0
- beq _08055118
- ldrh r0, [r6]
- cmp r0, 0
- beq _0805512C
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- b _08055130
- .pool
-_08055118:
- ldrh r0, [r6]
- cmp r0, 0
- beq _0805512C
- ldr r0, =gBattleCommunication
- movs r1, 0
- strb r1, [r0, 0x5]
- b _08055132
- .pool
-_0805512C:
- ldr r1, =gBattleCommunication
- movs r0, 0x1
-_08055130:
- strb r0, [r1, 0x5]
-_08055132:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD2_swap_items
-
- thumb_func_start atkD3_copy_ability
-atkD3_copy_ability: @ 8055148
- push {r4,lr}
- ldr r3, =gBattleMons
- ldr r4, =gBankTarget
- ldrb r0, [r4]
- movs r2, 0x58
- muls r0, r2
- adds r0, r3
- adds r0, 0x20
- ldrb r1, [r0]
- adds r0, r1, 0
- cmp r0, 0
- beq _0805519C
- cmp r0, 0x19
- beq _0805519C
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- muls r0, r2
- adds r0, r3
- adds r0, 0x20
- strb r1, [r0]
- ldr r1, =gLastUsedAbility
- ldrb r0, [r4]
- muls r0, r2
- adds r0, r3
- adds r0, 0x20
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _080551B6
- .pool
-_0805519C:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_080551B6:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD3_copy_ability
-
- thumb_func_start atkD4_wish_effect
-atkD4_wish_effect: @ 80551C0
- push {r4-r7,lr}
- ldr r7, =gBattlescriptCurrInstr
- ldr r2, [r7]
- ldrb r3, [r2, 0x1]
- cmp r3, 0
- beq _080551D8
- cmp r3, 0x1
- beq _08055210
- b _0805528C
- .pool
-_080551D8:
- ldr r1, =gWishFutureKnock
- ldr r4, =gBankAttacker
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r5, [r4]
- adds r3, r0, r5
- ldrb r0, [r3]
- cmp r0, 0
- bne _0805525C
- movs r0, 0x2
- strb r0, [r3]
- ldrb r0, [r4]
- adds r1, 0x24
- adds r1, r0, r1
- ldr r2, =gBattlePartyID
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1]
- ldr r0, [r7]
- adds r0, 0x6
- b _0805528A
- .pool
-_08055210:
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x4
- strb r0, [r1, 0x1]
- ldr r4, =gBankTarget
- ldrb r0, [r4]
- strb r0, [r1, 0x2]
- ldr r0, =gWishFutureKnock
- adds r0, 0x24
- ldrb r5, [r4]
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r1, =gBattleMoveDamage
- ldr r6, =gBattleMons
- ldrb r0, [r4]
- movs r5, 0x58
- muls r0, r5
- adds r0, r6
- ldrh r0, [r0, 0x2C]
- lsrs r0, 1
- str r0, [r1]
- cmp r0, 0
- bne _08055248
- str r3, [r1]
-_08055248:
- ldr r0, [r1]
- negs r0, r0
- str r0, [r1]
- ldrb r0, [r4]
- muls r0, r5
- adds r0, r6
- ldrh r1, [r0, 0x28]
- ldrh r0, [r0, 0x2C]
- cmp r1, r0
- bne _08055288
-_0805525C:
- 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, [r7]
- b _0805528C
- .pool
-_08055288:
- adds r0, r2, 0x6
-_0805528A:
- str r0, [r7]
-_0805528C:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end atkD4_wish_effect
-
- thumb_func_start atkD5_setroots
-atkD5_setroots: @ 8055294
- push {lr}
- ldr r1, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 2
- adds r2, r0, r1
- ldr r1, [r2]
- movs r3, 0x80
- lsls r3, 3
- adds r0, r1, 0
- ands r0, r3
- cmp r0, 0
- beq _080552D8
- ldr r3, =gBattlescriptCurrInstr
- 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 _080552E4
- .pool
-_080552D8:
- orrs r1, r3
- str r1, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_080552E4:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD5_setroots
-
- thumb_func_start atkD6_doubledamagedealtifdamaged
-atkD6_doubledamagedealtifdamaged: @ 80552EC
- push {lr}
- ldr r3, =gProtectStructs
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r2, r0, 4
- adds r0, r3, 0x4
- adds r0, r2, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _0805530C
- adds r0, r2, r3
- ldr r1, =gBankTarget
- ldrb r0, [r0, 0xC]
- ldrb r1, [r1]
- cmp r0, r1
- beq _08055324
-_0805530C:
- adds r0, r3, 0
- adds r0, 0x8
- adds r0, r2, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _0805532A
- adds r0, r2, r3
- ldr r1, =gBankTarget
- ldrb r0, [r0, 0xD]
- ldrb r1, [r1]
- cmp r0, r1
- bne _0805532A
-_08055324:
- ldr r1, =gBattleScripting
- movs r0, 0x2
- strb r0, [r1, 0xE]
-_0805532A:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD6_doubledamagedealtifdamaged
-
- thumb_func_start atkD7_setyawn
-atkD7_setyawn: @ 805534C
- push {r4,lr}
- ldr r1, =gStatuses3
- ldr r0, =gBankTarget
- ldrb r3, [r0]
- lsls r0, r3, 2
- adds r4, r0, r1
- ldr r2, [r4]
- movs r0, 0xC0
- lsls r0, 5
- ands r0, r2
- cmp r0, 0
- bne _08055374
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r3
- adds r1, 0x4C
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080553A0
-_08055374:
- ldr r3, =gBattlescriptCurrInstr
- 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 _080553B0
- .pool
-_080553A0:
- movs r0, 0x80
- lsls r0, 5
- orrs r2, r0
- str r2, [r4]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_080553B0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD7_setyawn
-
- thumb_func_start atkD8_setdamagetohealthdifference
-atkD8_setdamagetohealthdifference: @ 80553BC
- push {lr}
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- movs r1, 0x58
- muls r0, r1
- adds r3, r0, r2
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- muls r0, r1
- adds r1, r0, r2
- ldrh r0, [r3, 0x28]
- ldrh r2, [r1, 0x28]
- cmp r0, r2
- bhi _08055408
- ldr r3, =gBattlescriptCurrInstr
- 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 _0805541A
- .pool
-_08055408:
- ldr r2, =gBattleMoveDamage
- ldrh r0, [r3, 0x28]
- ldrh r1, [r1, 0x28]
- subs r0, r1
- str r0, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0805541A:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD8_setdamagetohealthdifference
-
- thumb_func_start atkD9_scaledamagebyhealthratio
-atkD9_scaledamagebyhealthratio: @ 8055428
- push {r4,lr}
- ldr r4, =gDynamicBasePower
- ldrh r0, [r4]
- cmp r0, 0
- bne _08055464
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r3, [r0, 0x1]
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r1, r0
- adds r1, r2
- ldrh r0, [r1, 0x28]
- muls r0, r3
- ldrh r1, [r1, 0x2C]
- bl __divsi3
- strh r0, [r4]
- lsls r0, 16
- cmp r0, 0
- bne _08055464
- movs r0, 0x1
- strh r0, [r4]
-_08055464:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkD9_scaledamagebyhealthratio
-
- thumb_func_start atkDA_abilityswap
-atkDA_abilityswap: @ 805548C
- push {r4-r6,lr}
- ldr r5, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- movs r4, 0x58
- muls r0, r4
- adds r0, r5
- adds r2, r0, 0
- adds r2, 0x20
- ldrb r1, [r2]
- cmp r1, 0
- bne _080554B4
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- muls r0, r4
- adds r0, r5
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0
- beq _080554D4
-_080554B4:
- cmp r1, 0x19
- beq _080554D4
- ldr r6, =gBankTarget
- ldrb r0, [r6]
- muls r0, r4
- adds r0, r5
- adds r0, 0x20
- ldrb r3, [r0]
- cmp r3, 0x19
- beq _080554D4
- ldr r0, =gBattleMoveFlags
- ldrb r1, [r0]
- movs r0, 0x29
- ands r0, r1
- cmp r0, 0
- beq _08055504
-_080554D4:
- ldr r3, =gBattlescriptCurrInstr
- 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 _0805551A
- .pool
-_08055504:
- ldrb r1, [r2]
- strb r3, [r2]
- ldrb r0, [r6]
- muls r0, r4
- adds r0, r5
- adds r0, 0x20
- strb r1, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0805551A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkDA_abilityswap
-
- thumb_func_start atkDB_imprisoneffect
-atkDB_imprisoneffect: @ 8055524
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r1, =gStatuses3
- ldr r4, =gBankAttacker
- ldrb r2, [r4]
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 6
- ands r0, r1
- cmp r0, 0
- beq _08055574
- b _080555F6
- .pool
-_0805554C:
- ldr r0, =gStatuses3
- mov r2, r9
- ldrb r1, [r2]
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- movs r2, 0x80
- lsls r2, 6
- orrs r0, r2
- str r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _080555EE
- .pool
-_08055574:
- adds r0, r2, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldrb r0, [r4]
- bl sub_803F548
- movs r6, 0
- b _080555E6
-_0805558A:
- adds r0, r6, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r8, r0
- beq _080555E0
- movs r4, 0
- ldr r7, =gBankAttacker
- mov r9, r7
- ldr r0, =gBattleMons
- mov r12, r0
- mov r1, r9
- ldrb r0, [r1]
- mov r2, r12
- adds r2, 0xC
- movs r1, 0x58
- muls r0, r1
- adds r3, r0, r2
- adds r5, r6, 0
- muls r5, r1
-_080555B4:
- movs r2, 0
- ldrh r1, [r3]
- mov r0, r12
- adds r0, 0xC
- adds r0, r5, r0
-_080555BE:
- ldrh r7, [r0]
- cmp r1, r7
- bne _080555C8
- cmp r1, 0
- bne _080555D0
-_080555C8:
- adds r0, 0x2
- adds r2, 0x1
- cmp r2, 0x3
- ble _080555BE
-_080555D0:
- cmp r2, 0x4
- bne _080555DC
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- ble _080555B4
-_080555DC:
- cmp r4, 0x4
- bne _0805554C
-_080555E0:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_080555E6:
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r6, r0
- bcc _0805558A
-_080555EE:
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r6, r0
- bne _08055610
-_080555F6:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08055610:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkDB_imprisoneffect
-
- thumb_func_start atkDC_setgrudge
-atkDC_setgrudge: @ 805562C
- push {lr}
- ldr r1, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 2
- adds r2, r0, r1
- ldr r1, [r2]
- movs r3, 0x80
- lsls r3, 7
- adds r0, r1, 0
- ands r0, r3
- cmp r0, 0
- beq _08055670
- ldr r3, =gBattlescriptCurrInstr
- 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 _0805567C
- .pool
-_08055670:
- orrs r1, r3
- str r1, [r2]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0805567C:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkDC_setgrudge
-
- thumb_func_start atkDD_weightdamagecalculation
-atkDD_weightdamagecalculation: @ 8055684
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r5, 0
- ldr r2, =gUnknown_0831C428
- ldrh r0, [r2]
- ldr r1, =0x0000ffff
- cmp r0, r1
- beq _080556FC
- adds r6, r2, 0
- ldr r0, =gBattleMons
- mov r8, r0
- adds r7, r1, 0
- adds r4, r6, 0
-_080556A0:
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- add r0, r8
- ldrh r0, [r0]
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- bl GetPokedexHeightWeight
- ldrh r1, [r4]
- lsls r0, 16
- lsrs r0, 16
- cmp r1, r0
- bhi _080556CE
- adds r4, 0x4
- adds r5, 0x2
- ldrh r0, [r4]
- cmp r0, r7
- bne _080556A0
-_080556CE:
- lsls r0, r5, 1
- adds r0, r6
- ldrh r1, [r0]
- ldr r0, =0x0000ffff
- cmp r1, r0
- beq _080556FC
- ldr r0, =gDynamicBasePower
- adds r1, r5, 0x1
- lsls r1, 1
- adds r1, r6
- ldrh r1, [r1]
- strh r1, [r0]
- b _08055702
- .pool
-_080556FC:
- ldr r1, =gDynamicBasePower
- movs r0, 0x78
- strh r0, [r1]
-_08055702:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkDD_weightdamagecalculation
-
- thumb_func_start atkDE_asistattackselect
-atkDE_asistattackselect: @ 805571C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- movs r0, 0
- mov r10, r0
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x18
- str r0, [sp, 0x4]
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankIdentity
- movs r1, 0x1
- ands r1, r0
- ldr r0, =gPlayerParty
- str r0, [sp]
- cmp r1, 0
- beq _0805574C
- ldr r1, =gEnemyParty
- str r1, [sp]
-_0805574C:
- movs r2, 0
-_0805574E:
- ldr r1, =gBattlePartyID
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- adds r1, r2, 0x1
- str r1, [sp, 0x8]
- ldrh r0, [r0]
- cmp r2, r0
- beq _080557F4
- movs r0, 0x64
- adds r6, r2, 0
- muls r6, r0
- ldr r0, [sp]
- adds r4, r0, r6
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _080557F4
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080557F4
- movs r5, 0
- ldr r1, =0x0000ffff
- mov r8, r1
- mov r9, r6
- mov r1, r10
- lsls r0, r1, 1
- ldr r1, [sp, 0x4]
- adds r6, r0, r1
-_08055798:
- movs r7, 0
- adds r1, r5, 0
- adds r1, 0xD
- ldr r0, [sp]
- add r0, r9
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl sub_8052F84
- lsls r0, 24
- adds r1, r5, 0x1
- cmp r0, 0
- bne _080557EE
- ldr r0, =gUnknown_0831C3E0
- ldrh r2, [r0]
- adds r3, r0, 0
- cmp r2, r8
- beq _080557E2
- cmp r4, r2
- beq _080557D8
- ldr r5, =0x0000ffff
- adds r2, r3, 0
-_080557CA:
- adds r2, 0x2
- adds r7, 0x1
- ldrh r0, [r2]
- cmp r0, r5
- beq _080557E2
- cmp r4, r0
- bne _080557CA
-_080557D8:
- lsls r0, r7, 1
- adds r0, r3
- ldrh r0, [r0]
- cmp r0, r8
- bne _080557EE
-_080557E2:
- cmp r4, 0
- beq _080557EE
- strh r4, [r6]
- adds r6, 0x2
- movs r0, 0x1
- add r10, r0
-_080557EE:
- adds r5, r1, 0
- cmp r5, 0x3
- ble _08055798
-_080557F4:
- ldr r2, [sp, 0x8]
- cmp r2, 0x5
- ble _0805574E
- mov r1, r10
- cmp r1, 0
- beq _0805586C
- ldr r2, =gHitMarker
- ldr r0, [r2]
- ldr r1, =0xfffffbff
- ands r0, r1
- str r0, [r2]
- ldr r4, =gRandomMove
- bl Random
- movs r1, 0xFF
- ands r1, r0
- mov r0, r10
- muls r0, r1
- asrs r0, 8
- lsls r0, 1
- ldr r1, [sp, 0x4]
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r4]
- ldrh r0, [r4]
- movs r1, 0
- bl GetMoveTarget
- ldr r1, =gBankTarget
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08055886
- .pool
-_0805586C:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08055886:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkDE_asistattackselect
-
- thumb_func_start atkDF_setmagiccoat
-atkDF_setmagiccoat: @ 805589C
- push {lr}
- ldr r1, =gBankTarget
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- strb r0, [r1]
- ldr r2, =gSpecialStatuses
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
- ldr r0, =gUnknown_02024082
- ldrb r1, [r0]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r1, r0
- bne _080558FC
- ldr r3, =gBattlescriptCurrInstr
- 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 _08055914
- .pool
-_080558FC:
- ldr r0, =gProtectStructs
- ldrb r1, [r3]
- lsls r1, 4
- adds r1, r0
- ldrb r0, [r1]
- movs r2, 0x10
- orrs r0, r2
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08055914:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkDF_setmagiccoat
-
- thumb_func_start atkE0_setstealstatchange
-atkE0_setstealstatchange: @ 8055920
- push {lr}
- ldr r2, =gSpecialStatuses
- ldr r3, =gBankAttacker
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
- ldr r0, =gUnknown_02024082
- ldrb r1, [r0]
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r1, r0
- bne _08055978
- ldr r3, =gBattlescriptCurrInstr
- 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 _0805598E
- .pool
-_08055978:
- ldr r0, =gProtectStructs
- ldrb r1, [r3]
- lsls r1, 4
- adds r1, r0
- ldrb r0, [r1]
- orrs r0, r2
- strb r0, [r1]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0805598E:
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE0_setstealstatchange
-
- thumb_func_start atkE1_intimidate_string_loader
-atkE1_intimidate_string_loader: @ 805599C
- push {r4-r6,lr}
- ldr r4, =gBattleScripting
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xD8
- ldrb r0, [r0]
- strb r0, [r4, 0x17]
- ldrb r0, [r4, 0x17]
- bl GetBankSide
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r2, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r2]
- movs r0, 0x9
- strb r0, [r2, 0x1]
- ldr r3, =gBattleMons
- ldrb r1, [r4, 0x17]
- movs r0, 0x58
- muls r0, r1
- adds r0, r3
- adds r0, 0x20
- ldrb r0, [r0]
- strb r0, [r2, 0x2]
- movs r0, 0xFF
- strb r0, [r2, 0x3]
- ldr r2, =gBankTarget
- ldr r1, =gNoOfAllBanks
- ldrb r0, [r2]
- ldrb r1, [r1]
- cmp r0, r1
- bcs _08055A22
- adds r4, r2, 0
- ldr r6, =gBitTable
-_080559E2:
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r5
- beq _08055A04
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- ands r1, r0
- ldr r2, =gNoOfAllBanks
- cmp r1, 0
- beq _08055A18
-_08055A04:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, =gNoOfAllBanks
- lsls r0, 24
- lsrs r0, 24
- adds r2, r1, 0
- ldrb r1, [r2]
- cmp r0, r1
- bcc _080559E2
-_08055A18:
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- ldrb r2, [r2]
- cmp r0, r2
- bcc _08055A64
-_08055A22:
- ldr r3, =gBattlescriptCurrInstr
- 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 _08055A6C
- .pool
-_08055A64:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08055A6C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE1_intimidate_string_loader
-
- thumb_func_start atkE2_switchout_abilities
-atkE2_switchout_abilities: @ 8055A78
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r3, =gBattleMons
- ldrb r0, [r4]
- movs r6, 0x58
- adds r1, r0, 0
- muls r1, r6
- adds r0, r1, r3
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1E
- bne _08055AD2
- adds r3, 0x4C
- adds r1, r3
- movs r0, 0
- str r0, [r1]
- ldr r2, =gBitTable
- ldrb r1, [r4]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, r1, r0
- adds r0, 0x58
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r2
- ldrb r2, [r0]
- adds r0, r1, 0
- muls r0, r6
- adds r0, r3
- str r0, [sp]
- movs r0, 0
- movs r1, 0x28
- movs r3, 0x4
- bl EmitSetAttributes
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
-_08055AD2:
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE2_switchout_abilities
-
- thumb_func_start atkE3_jumpiffainted
-atkE3_jumpiffainted: @ 8055AF4
- push {r4,lr}
- ldr r4, =gBattlescriptCurrInstr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl get_battle_side_of_something
- ldr r1, =gActiveBank
- strb r0, [r1]
- ldr r2, =gBattleMons
- ldrb r1, [r1]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0, 0x28]
- cmp r0, 0
- bne _08055B3C
- ldr r2, [r4]
- 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, [r4]
- b _08055B42
- .pool
-_08055B3C:
- ldr r0, [r4]
- adds r0, 0x6
- str r0, [r4]
-_08055B42:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end atkE3_jumpiffainted
-
- thumb_func_start atkE4_getsecretpowereffect
-atkE4_getsecretpowereffect: @ 8055B48
- push {lr}
- ldr r0, =gUnknown_02022FF0
- ldrb r0, [r0]
- cmp r0, 0x7
- bhi _08055BE4
- lsls r0, 2
- ldr r1, =_08055B64
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08055B64:
- .4byte _08055B84
- .4byte _08055B90
- .4byte _08055B9C
- .4byte _08055BA8
- .4byte _08055BB4
- .4byte _08055BC0
- .4byte _08055BCC
- .4byte _08055BD8
-_08055B84:
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- b _08055BE8
- .pool
-_08055B90:
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- b _08055BE8
- .pool
-_08055B9C:
- ldr r1, =gBattleCommunication
- movs r0, 0x1B
- b _08055BE8
- .pool
-_08055BA8:
- ldr r1, =gBattleCommunication
- movs r0, 0x17
- b _08055BE8
- .pool
-_08055BB4:
- ldr r1, =gBattleCommunication
- movs r0, 0x16
- b _08055BE8
- .pool
-_08055BC0:
- ldr r1, =gBattleCommunication
- movs r0, 0x18
- b _08055BE8
- .pool
-_08055BCC:
- ldr r1, =gBattleCommunication
- movs r0, 0x7
- b _08055BE8
- .pool
-_08055BD8:
- ldr r1, =gBattleCommunication
- movs r0, 0x8
- b _08055BE8
- .pool
-_08055BE4:
- ldr r1, =gBattleCommunication
- movs r0, 0x5
-_08055BE8:
- strb r0, [r1, 0x3]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE4_getsecretpowereffect
-
- thumb_func_start atkE5_pickup
-atkE5_pickup: @ 8055C00
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- bl InBattlePike
- lsls r0, 24
- cmp r0, 0
- beq _08055C18
- b _08055DD8
-_08055C18:
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- beq _08055CC4
- movs r6, 0
- mov r7, sp
- ldr r0, =gBaseStats
- mov r8, r0
-_08055C2A:
- movs r0, 0x64
- adds r4, r6, 0
- muls r4, r0
- ldr r0, =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- strh r0, [r7]
- adds r0, r4, 0
- movs r1, 0x2E
- bl GetMonData
- cmp r0, 0
- beq _08055C6C
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- add r0, r8
- ldrb r0, [r0, 0x17]
- b _08055C76
- .pool
-_08055C6C:
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- add r0, r8
- ldrb r0, [r0, 0x16]
-_08055C76:
- cmp r0, 0x35
- bne _08055CB6
- cmp r5, 0
- beq _08055CB6
- movs r0, 0xCE
- lsls r0, 1
- cmp r5, r0
- beq _08055CB6
- ldrh r0, [r7]
- cmp r0, 0
- bne _08055CB6
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _08055CB6
- bl CalculateBattlePyramidPickupItemId
- strh r0, [r7]
- movs r0, 0x64
- muls r0, r6
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xC
- mov r2, sp
- bl SetMonData
-_08055CB6:
- adds r6, 0x1
- cmp r6, 0x5
- ble _08055C2A
- b _08055DD8
- .pool
-_08055CC4:
- movs r6, 0
- movs r1, 0x64
- mov r8, r1
- ldr r7, =gPlayerParty
- mov r10, sp
-_08055CCE:
- mov r4, r8
- muls r4, r6
- adds r4, r7
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- mov r1, r10
- strh r0, [r1]
- adds r0, r4, 0
- movs r1, 0x2E
- bl GetMonData
- cmp r0, 0
- beq _08055D30
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- ldr r1, =gBaseStats
- adds r0, r1
- ldrb r0, [r0, 0x17]
- b _08055D3C
- .pool
-_08055D10:
- mov r0, r8
- muls r0, r6
- adds r0, r7
- adds r2, r1, 0
- adds r2, 0x63
- subs r2, r4
- lsls r2, 1
- ldr r1, =gRarePickupItems
- adds r2, r1
- movs r1, 0xC
- bl SetMonData
- b _08055DD0
- .pool
-_08055D30:
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- ldr r1, =gBaseStats
- adds r0, r1
- ldrb r0, [r0, 0x16]
-_08055D3C:
- adds r1, r6, 0x1
- mov r9, r1
- cmp r0, 0x35
- bne _08055DD0
- cmp r5, 0
- beq _08055DD0
- movs r0, 0xCE
- lsls r0, 1
- cmp r5, r0
- beq _08055DD0
- mov r1, r10
- ldrh r0, [r1]
- cmp r0, 0
- bne _08055DD0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _08055DD0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r4, r0, 16
- mov r0, r8
- muls r0, r6
- adds r0, r7
- movs r1, 0x38
- bl GetMonData
- subs r0, 0x1
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x9
- bls _08055D9C
- movs r1, 0x9
-_08055D9C:
- movs r2, 0
- b _08055DAE
- .pool
-_08055DA4:
- adds r0, r4, 0
- subs r0, 0x62
- cmp r0, 0x1
- bls _08055D10
- adds r2, 0x1
-_08055DAE:
- cmp r2, 0x8
- bgt _08055DD0
- ldr r0, =gPickupProbabilities
- adds r0, r2, r0
- ldrb r0, [r0]
- cmp r0, r4
- ble _08055DA4
- mov r0, r8
- muls r0, r6
- adds r0, r7
- adds r2, r1, r2
- lsls r2, 1
- ldr r1, =gPickupItems
- adds r2, r1
- movs r1, 0xC
- bl SetMonData
-_08055DD0:
- mov r6, r9
- cmp r6, 0x5
- bgt _08055DD8
- b _08055CCE
-_08055DD8:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE5_pickup
-
- thumb_func_start atkE6_castform_change_animation
-atkE6_castform_change_animation: @ 8055DFC
- push {r4,lr}
- ldr r4, =gActiveBank
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x17]
- strb r0, [r4]
- ldr r1, =gBattleMons
- ldrb r2, [r4]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- ldr r3, =gBattleStruct
- cmp r0, 0
- beq _08055E2C
- ldr r0, [r3]
- adds r0, 0x7F
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
-_08055E2C:
- ldr r0, [r3]
- adds r0, 0x7F
- ldrb r2, [r0]
- movs r0, 0
- movs r1, 0
- bl dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE6_castform_change_animation
-
- thumb_func_start atkE7_castform_data_change
-atkE7_castform_data_change: @ 8055E64
- push {r4,lr}
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x17]
- bl CastformDataTypeChange
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _08055E8E
- ldr r0, =BattleScript_CastformChange
- bl b_push_move_exec
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x7F
- subs r1, r4, 0x1
- strb r1, [r0]
-_08055E8E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE7_castform_data_change
-
- thumb_func_start atkE8_settypebasedhalvers
-atkE8_settypebasedhalvers: @ 8055EA4
- push {r4,lr}
- movs r4, 0
- ldr r2, =gBattleMoves
- ldr r0, =gCurrentMove
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0xC9
- bne _08055EF4
- ldr r1, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 2
- adds r2, r0, r1
- ldr r1, [r2]
- movs r3, 0x80
- lsls r3, 9
- adds r0, r1, 0
- ands r0, r3
- cmp r0, 0
- bne _08055F18
- orrs r1, r3
- str r1, [r2]
- ldr r0, =gBattleCommunication
- strb r4, [r0, 0x5]
- b _08055F1C
- .pool
-_08055EF4:
- ldr r1, =gStatuses3
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- lsls r0, 2
- adds r2, r0, r1
- ldr r1, [r2]
- movs r3, 0x80
- lsls r3, 10
- adds r0, r1, 0
- ands r0, r3
- cmp r0, 0
- bne _08055F18
- orrs r1, r3
- str r1, [r2]
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
- movs r4, 0x1
-_08055F18:
- cmp r4, 0
- beq _08055F38
-_08055F1C:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08055F52
- .pool
-_08055F38:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08055F52:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE8_settypebasedhalvers
-
- thumb_func_start atkE9_setweatherballtype
-atkE9_setweatherballtype: @ 8055F5C
- push {lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _08055FFC
- str r0, [sp]
- movs r0, 0x13
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _08055FFC
- ldr r2, =gBattleWeather
- ldrb r0, [r2]
- cmp r0, 0
- beq _08055F9A
- ldr r1, =gBattleScripting
- movs r0, 0x2
- strb r0, [r1, 0xE]
-_08055F9A:
- ldrh r1, [r2]
- movs r0, 0x7
- ands r0, r1
- cmp r0, 0
- beq _08055FB8
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- movs r0, 0x8B
- b _08055FFA
- .pool
-_08055FB8:
- movs r0, 0x18
- ands r0, r1
- cmp r0, 0
- beq _08055FCC
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- movs r0, 0x85
- b _08055FFA
- .pool
-_08055FCC:
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- beq _08055FE0
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- movs r0, 0x8A
- b _08055FFA
- .pool
-_08055FE0:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08055FF4
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- movs r0, 0x8F
- b _08055FFA
- .pool
-_08055FF4:
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- movs r0, 0x80
-_08055FFA:
- strb r0, [r1, 0x13]
-_08055FFC:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkE9_setweatherballtype
-
- thumb_func_start atkEA_recycleitem
-atkEA_recycleitem: @ 8056014
- push {r4-r7,lr}
- sub sp, 0x4
- ldr r7, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r7]
- ldr r1, =gBattleStruct
- ldrb r2, [r7]
- lsls r0, r2, 1
- adds r0, 0xB8
- ldr r1, [r1]
- adds r6, r1, r0
- ldrh r5, [r6]
- cmp r5, 0
- beq _08056094
- ldr r4, =gBattleMons
- movs r3, 0x58
- adds r0, r2, 0
- muls r0, r3
- adds r0, r4
- ldrh r0, [r0, 0x2E]
- cmp r0, 0
- bne _08056094
- ldr r1, =gLastUsedItem
- strh r5, [r1]
- strh r0, [r6]
- ldrb r0, [r7]
- muls r0, r3
- adds r0, r4
- ldrh r1, [r1]
- strh r1, [r0, 0x2E]
- ldrb r0, [r7]
- muls r0, r3
- adds r1, r4, 0
- adds r1, 0x2E
- adds r0, r1
- str r0, [sp]
- movs r0, 0
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl EmitSetAttributes
- ldrb r0, [r7]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _080560AE
- .pool
-_08056094:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_080560AE:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkEA_recycleitem
-
- thumb_func_start atkEB_settypetoterrain
-atkEB_settypetoterrain: @ 80560BC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gBattleMons
- mov r8, r0
- ldr r7, =gBankAttacker
- ldrb r0, [r7]
- movs r6, 0x58
- muls r0, r6
- mov r1, r8
- adds r3, r0, r1
- movs r0, 0x21
- adds r0, r3
- mov r12, r0
- ldr r5, =sTerrainToType
- ldr r4, =gUnknown_02022FF0
- ldrb r0, [r4]
- adds r0, r5
- ldrb r2, [r0]
- mov r1, r12
- ldrb r0, [r1]
- adds r1, r2, 0
- cmp r0, r1
- beq _08056144
- adds r0, r3, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, r1
- beq _08056144
- mov r0, r12
- strb r2, [r0]
- ldrb r0, [r7]
- adds r1, r0, 0
- muls r1, r6
- add r1, r8
- ldrb r0, [r4]
- adds r0, r5
- ldrb r0, [r0]
- adds r1, 0x22
- strb r0, [r1]
- ldr r1, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r1]
- movs r0, 0x3
- strb r0, [r1, 0x1]
- ldrb r0, [r4]
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1, 0x2]
- movs r0, 0xFF
- strb r0, [r1, 0x3]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _0805615E
- .pool
-_08056144:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_0805615E:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkEB_settypetoterrain
-
- thumb_func_start atkEC_pursuit_sth
-atkEC_pursuit_sth: @ 805616C
- push {r4-r6,lr}
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- bl GetBankIdentity
- movs r1, 0x2
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r6, 0x1
- ands r0, r6
- cmp r0, 0
- beq _0805620C
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- ldrb r3, [r4]
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0805620C
- ldr r0, =gUnknown_0202421C
- adds r0, r3, r0
- ldrb r0, [r0]
- cmp r0, 0
- bne _0805620C
- ldr r1, =gChosenMovesByBanks
- lsls r0, r3, 1
- adds r0, r1
- ldrh r2, [r0]
- cmp r2, 0xE4
- bne _0805620C
- ldr r0, =gUnknown_0202407A
- adds r0, r3, r0
- movs r1, 0xB
- strb r1, [r0]
- ldr r0, =gCurrentMove
- strh r2, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- ldr r0, =gBattleScripting
- strb r6, [r0, 0x18]
- ldrb r1, [r5]
- adds r0, 0x20
- strb r1, [r0]
- ldrb r0, [r4]
- strb r0, [r5]
- b _08056226
- .pool
-_0805620C:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08056226:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkEC_pursuit_sth
-
- thumb_func_start atkED_802B4B4
-atkED_802B4B4: @ 8056230
- push {r4,lr}
- ldr r1, =gEffectBank
- ldr r3, =gBankAttacker
- ldrb r0, [r3]
- strb r0, [r1]
- ldr r2, =gBankTarget
- lsls r0, 24
- lsrs r0, 24
- adds r4, r1, 0
- ldrb r1, [r2]
- cmp r0, r1
- bne _08056264
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x17]
- strb r0, [r2]
- strb r0, [r3]
- b _0805626A
- .pool
-_08056264:
- ldr r1, =gBattleScripting
- ldrb r0, [r1, 0x17]
- strb r0, [r2]
-_0805626A:
- ldrb r0, [r4]
- strb r0, [r1, 0x17]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkED_802B4B4
-
- thumb_func_start atkEE_removelightscreenreflect
-atkEE_removelightscreenreflect: @ 8056284
- push {r4,lr}
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSideTimers
- lsls r3, r0, 1
- adds r0, r3, r0
- lsls r0, 2
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0
- bne _080562AC
- ldrb r1, [r4, 0x2]
- cmp r1, 0
- beq _080562E4
-_080562AC:
- ldr r2, =gSideAffecting
- adds r2, r3, r2
- ldrh r1, [r2]
- ldr r0, =0x0000fffe
- ands r0, r1
- movs r3, 0
- ldr r1, =0x0000fffd
- ands r0, r1
- strh r0, [r2]
- strb r3, [r4]
- strb r3, [r4, 0x2]
- ldr r1, =gBattleScripting
- movs r0, 0x1
- strb r0, [r1, 0x18]
- strb r0, [r1, 0x19]
- b _080562EA
- .pool
-_080562E4:
- ldr r0, =gBattleScripting
- strb r1, [r0, 0x18]
- strb r1, [r0, 0x19]
-_080562EA:
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkEE_removelightscreenreflect
-
- thumb_func_start atkEF_pokeball_catch_calculation
-atkEF_pokeball_catch_calculation: @ 8056300
- push {r4-r6,lr}
- movs r4, 0
- ldr r0, =gBattleExecBuffer
- ldr r0, [r0]
- cmp r0, 0
- beq _0805630E
- b _08056696
-_0805630E:
- ldr r5, =gActiveBank
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r5]
- ldr r6, =gBankTarget
- movs r1, 0x1
- eors r0, r1
- strb r0, [r6]
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0805635C
- movs r0, 0
- movs r1, 0x5
- bl dp01_build_cmdbuf_x0D_a
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBE02
- b _08056694
- .pool
-_0805635C:
- movs r0, 0x80
- lsls r0, 2
- ands r1, r0
- cmp r1, 0
- beq _08056384
- movs r0, 0
- movs r1, 0x4
- bl dp01_build_cmdbuf_x0D_a
- ldrb r0, [r5]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBDCA
- b _08056694
- .pool
-_08056384:
- ldr r0, =gLastUsedItem
- ldrh r0, [r0]
- cmp r0, 0x5
- bne _080563B0
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x7C
- ldrb r0, [r0]
- lsls r1, r0, 2
- adds r1, r0
- lsls r0, r1, 8
- subs r0, r1
- movs r1, 0x64
- bl __divsi3
- lsls r0, 24
- lsrs r5, r0, 24
- b _080563C8
- .pool
-_080563B0:
- ldr r3, =gBaseStats
- ldr r2, =gBattleMons
- ldrb r1, [r6]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r5, [r0, 0x8]
-_080563C8:
- ldr r2, =gLastUsedItem
- ldrh r0, [r2]
- cmp r0, 0x5
- bhi _080563D2
- b _080564C8
-_080563D2:
- subs r0, 0x6
- cmp r0, 0x6
- bls _080563DA
- b _080564D2
-_080563DA:
- lsls r0, 2
- ldr r1, =_080563F4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080563F4:
- .4byte _08056410
- .4byte _08056440
- .4byte _08056452
- .4byte _08056480
- .4byte _080564B0
- .4byte _08056472
- .4byte _08056472
-_08056410:
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r1, r0, 0
- adds r1, 0x21
- ldrb r1, [r1]
- cmp r1, 0xB
- beq _080564A4
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0xB
- beq _080564A4
- cmp r1, 0x6
- beq _080564A4
- cmp r0, 0x6
- beq _080564A4
- b _08056472
- .pool
-_08056440:
- bl sav1_map_get_light_level
- lsls r0, 24
- lsrs r0, 24
- movs r4, 0xA
- cmp r0, 0x5
- bne _080564D2
- movs r4, 0x23
- b _080564D2
-_08056452:
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x2A
- ldrb r1, [r0]
- cmp r1, 0x27
- bhi _08056472
- movs r0, 0x28
- subs r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x9
- bhi _080564D2
-_08056472:
- movs r4, 0xA
- b _080564D2
- .pool
-_08056480:
- ldr r2, =gBattleMons
- ldr r0, =gBankTarget
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r0, [r0]
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- movs r4, 0xA
- cmp r0, 0
- beq _080564D2
-_080564A4:
- movs r4, 0x1E
- b _080564D2
- .pool
-_080564B0:
- ldr r0, =gBattleResults
- ldrb r0, [r0, 0x13]
- adds r0, 0xA
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x28
- bls _080564D2
- movs r4, 0x28
- b _080564D2
- .pool
-_080564C8:
- ldr r1, =sBallCatchBonuses
- ldrh r0, [r2]
- subs r0, 0x2
- adds r0, r1
- ldrb r4, [r0]
-_080564D2:
- adds r0, r5, 0
- muls r0, r4
- movs r1, 0xA
- bl __divsi3
- ldr r5, =gBattleMons
- ldr r1, =gBankTarget
- ldrb r2, [r1]
- movs r1, 0x58
- adds r4, r2, 0
- muls r4, r1
- adds r3, r4, r5
- ldrh r2, [r3, 0x2C]
- lsls r1, r2, 1
- adds r1, r2
- ldrh r2, [r3, 0x28]
- lsls r2, 1
- subs r2, r1, r2
- muls r0, r2
- bl __divsi3
- adds r6, r0, 0
- adds r5, 0x4C
- adds r4, r5
- ldr r4, [r4]
- movs r0, 0x27
- ands r0, r4
- cmp r0, 0
- beq _0805650E
- lsls r6, 1
-_0805650E:
- movs r0, 0xD8
- ands r4, r0
- cmp r4, 0
- beq _08056522
- lsls r0, r6, 4
- subs r0, r6
- movs r1, 0xA
- bl __udivsi3
- adds r6, r0, 0
-_08056522:
- ldr r1, =gLastUsedItem
- ldrh r0, [r1]
- cmp r0, 0x5
- beq _08056564
- cmp r0, 0x1
- bne _08056550
- ldr r0, =gBattleResults
- ldrb r1, [r0, 0x5]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0, 0x5]
- b _08056564
- .pool
-_08056550:
- ldr r0, =gBattleResults
- ldrh r1, [r1]
- adds r0, r1
- adds r1, r0, 0
- adds r1, 0x34
- ldrb r0, [r1]
- cmp r0, 0xFE
- bhi _08056564
- adds r0, 0x1
- strb r0, [r1]
-_08056564:
- cmp r6, 0xFE
- bls _080565C8
- movs r0, 0
- movs r1, 0x4
- bl dp01_build_cmdbuf_x0D_a
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBD84
- str r0, [r1]
- ldr r1, =gBattlePartyID
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- ldr r2, =gLastUsedItem
- movs r1, 0x26
- bl SetMonData
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6
- beq _08056656
- b _08056680
- .pool
-_080565C8:
- movs r0, 0xFF
- lsls r0, 16
- adds r1, r6, 0
- bl __udivsi3
- bl Sqrt
- lsls r0, 16
- lsrs r0, 16
- bl Sqrt
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, =0x000ffff0
- adds r1, r6, 0
- bl __udivsi3
- adds r6, r0, 0
- movs r4, 0
- b _080565FA
- .pool
-_080565F4:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080565FA:
- cmp r4, 0x3
- bhi _0805660A
- bl Random
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r6
- bcc _080565F4
-_0805660A:
- ldr r5, =gLastUsedItem
- ldrh r0, [r5]
- cmp r0, 0x1
- bne _08056614
- movs r4, 0x4
-_08056614:
- movs r0, 0
- adds r1, r4, 0
- bl dp01_build_cmdbuf_x0D_a
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl MarkBufferBankForExecution
- cmp r4, 0x4
- bne _0805668C
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBD84
- str r0, [r1]
- ldr r1, =gBattlePartyID
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x26
- adds r2, r5, 0
- bl SetMonData
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6
- bne _08056680
-_08056656:
- ldr r1, =gBattleCommunication
- movs r0, 0
- strb r0, [r1, 0x5]
- b _08056696
- .pool
-_08056680:
- ldr r1, =gBattleCommunication
- movs r0, 0x1
- strb r0, [r1, 0x5]
- b _08056696
- .pool
-_0805668C:
- ldr r0, =gBattleCommunication
- strb r4, [r0, 0x5]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, =gUnknown_082DBDD4
-_08056694:
- str r0, [r1]
-_08056696:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkEF_pokeball_catch_calculation
-
- thumb_func_start atkF0_copy_caught_poke
-atkF0_copy_caught_poke: @ 80566A8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gBattlePartyID
- mov r9, r0
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- movs r6, 0x1
- eors r0, r6
- lsls r0, 1
- add r0, r9
- ldrh r0, [r0]
- movs r7, 0x64
- muls r0, r7
- ldr r1, =gEnemyParty
- mov r8, r1
- add r0, r8
- bl GiveMonToPlayer
- lsls r0, 24
- cmp r0, 0
- beq _08056792
- bl sub_813B21C
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _08056734
- ldr r0, =gBattleCommunication
- strb r1, [r0, 0x5]
- ldr r4, =gStringVar1
- ldr r0, =0x00004036
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- bl sav3_get_box_name
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldrb r0, [r5]
- eors r0, r6
- lsls r0, 1
- add r0, r9
- ldrh r0, [r0]
- muls r0, r7
- add r0, r8
- ldr r2, =gStringVar2
- movs r1, 0x2
- bl GetMonData
- b _0805677E
- .pool
-_08056734:
- ldr r4, =gStringVar1
- ldr r0, =0x00004036
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- bl sav3_get_box_name
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldrb r0, [r5]
- eors r0, r6
- lsls r0, 1
- add r0, r9
- ldrh r0, [r0]
- muls r0, r7
- add r0, r8
- ldr r2, =gStringVar2
- movs r1, 0x2
- bl GetMonData
- ldr r4, =gStringVar3
- bl get_unknown_box_id
- lsls r0, 24
- lsrs r0, 24
- bl sav3_get_box_name
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r1, =gBattleCommunication
- movs r0, 0x2
- strb r0, [r1, 0x5]
-_0805677E:
- ldr r0, =0x000008ab
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08056792
- ldr r1, =gBattleCommunication
- ldrb r0, [r1, 0x5]
- adds r0, 0x1
- strb r0, [r1, 0x5]
-_08056792:
- ldr r0, =gBattlePartyID
- mov r10, r0
- ldr r1, =gBankAttacker
- mov r9, r1
- ldrb r0, [r1]
- movs r4, 0x1
- eors r0, r4
- lsls r0, 1
- add r0, r10
- ldrh r0, [r0]
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r6, =gEnemyParty
- adds r0, r6
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- ldr r5, =gBattleResults
- strh r0, [r5, 0x28]
- mov r1, r9
- ldrb r0, [r1]
- eors r0, r4
- lsls r0, 1
- add r0, r10
- ldrh r0, [r0]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- adds r2, r5, 0
- adds r2, 0x2A
- movs r1, 0x2
- bl GetMonData
- mov r1, r9
- ldrb r0, [r1]
- eors r4, r0
- lsls r4, 1
- add r4, r10
- ldrh r0, [r4]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- movs r1, 0x26
- movs r2, 0
- bl GetMonData
- movs r1, 0xF
- ands r0, r1
- lsls r0, 2
- ldrb r2, [r5, 0x5]
- movs r1, 0x3D
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r5, 0x5]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkF0_copy_caught_poke
-
- thumb_func_start atkF1_setpoke_as_caught
-atkF1_setpoke_as_caught: @ 8056850
- push {r4,r5,lr}
- ldr r4, =gEnemyParty
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- adds r0, r5, 0
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _080568A8
- ldr r3, =gBattlescriptCurrInstr
- 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 _080568C2
- .pool
-_080568A8:
- adds r0, r5, 0
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- adds r2, r4, 0
- bl HandleSetPokedexFlag
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_080568C2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkF1_setpoke_as_caught
-
- thumb_func_start atkF2_display_dex_info
-atkF2_display_dex_info: @ 80568CC
- push {r4,lr}
- sub sp, 0x4
- ldr r0, =gEnemyParty
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, =gBattleCommunication
- ldrb r0, [r0]
- cmp r0, 0x5
- bls _080568E8
- b _08056A2C
-_080568E8:
- lsls r0, 2
- ldr r1, =_08056900
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08056900:
- .4byte _08056918
- .4byte _0805692A
- .4byte _08056978
- .4byte _080569C8
- .4byte _080569E0
- .4byte _08056A18
-_08056918:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- b _08056A06
-_0805692A:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08056938
- b _08056A2C
-_08056938:
- bl FreeAllWindowBuffers
- adds r0, r4, 0
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- ldr r3, =gBattleMons
- ldr r1, =gBankTarget
- ldrb r2, [r1]
- movs r1, 0x58
- muls r2, r1
- adds r1, r3, 0
- adds r1, 0x54
- adds r1, r2, r1
- ldr r1, [r1]
- adds r3, 0x48
- adds r2, r3
- ldr r2, [r2]
- bl sub_80BFDF4
- ldr r1, =gBattleCommunication
- strb r0, [r1, 0x1]
- b _08056A08
- .pool
-_08056978:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08056A2C
- ldr r0, =gMain
- ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
- cmp r1, r0
- bne _08056A2C
- ldr r2, =gTasks
- ldr r4, =gBattleCommunication
- ldrb r1, [r4, 0x1]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x4]
- cmp r0, 0
- bne _08056A2C
- ldr r0, =vblank_cb_08078BB4
- bl SetVBlankCallback
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _08056A2C
- .pool
-_080569C8:
- bl c2_berry_program_update_menu
- bl sub_8035AA4
- ldr r1, =gUnknown_02022E20
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- b _08056A06
- .pool
-_080569E0:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _08056A2C
- ldr r0, =0x0000ffff
- str r1, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r0, 0
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
-_08056A06:
- ldr r1, =gBattleCommunication
-_08056A08:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08056A2C
- .pool
-_08056A18:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08056A2C
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
-_08056A2C:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkF2_display_dex_info
-
- thumb_func_start sub_8056A3C
-sub_8056A3C: @ 8056A3C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- ldr r4, [sp, 0x40]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp, 0x10]
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x1C]
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp, 0x14]
- lsls r4, 24
- lsrs r4, 24
- mov r10, r4
- movs r1, 0
- add r0, sp, 0xC
- strh r1, [r0]
- ldr r6, [sp, 0x10]
- cmp r6, r3
- ble _08056A76
- b _08056B62
-_08056A76:
- mov r4, r8
- adds r0, r6, 0x1
- str r0, [sp, 0x18]
- ldr r2, [sp, 0x1C]
- cmp r4, r2
- bgt _08056B58
- add r5, sp, 0xC
- lsls r7, r6, 24
- mov r9, r7
-_08056A88:
- ldr r0, [sp, 0x10]
- cmp r6, r0
- bne _08056AB4
- cmp r4, r8
- bne _08056A9C
- ldr r0, =0x00001022
- b _08056AFE
- .pool
-_08056A9C:
- ldr r2, [sp, 0x1C]
- cmp r4, r2
- bne _08056AAC
- ldr r0, =0x00001024
- b _08056AFE
- .pool
-_08056AAC:
- ldr r0, =0x00001023
- b _08056AFE
- .pool
-_08056AB4:
- ldr r7, [sp, 0x14]
- cmp r6, r7
- bne _08056AE0
- cmp r4, r8
- bne _08056AC8
- ldr r0, =0x00001028
- b _08056AFE
- .pool
-_08056AC8:
- ldr r0, [sp, 0x1C]
- cmp r4, r0
- bne _08056AD8
- ldr r0, =0x0000102a
- b _08056AFE
- .pool
-_08056AD8:
- ldr r0, =0x00001029
- b _08056AFE
- .pool
-_08056AE0:
- cmp r4, r8
- bne _08056AEC
- ldr r0, =0x00001025
- b _08056AFE
- .pool
-_08056AEC:
- ldr r2, [sp, 0x1C]
- cmp r4, r2
- bne _08056AFC
- ldr r0, =0x00001027
- b _08056AFE
- .pool
-_08056AFC:
- ldr r0, =0x00001026
-_08056AFE:
- strh r0, [r5]
- movs r1, 0x1
- mov r0, r10
- ands r0, r1
- cmp r0, 0
- beq _08056B0E
- movs r0, 0
- strh r0, [r5]
-_08056B0E:
- movs r0, 0x80
- mov r7, r10
- ands r0, r7
- cmp r0, 0
- beq _08056B38
- lsls r2, r4, 24
- lsrs r2, 24
- str r1, [sp]
- str r1, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0x1
- add r1, sp, 0xC
- mov r7, r9
- lsrs r3, r7, 24
- bl CopyToBgTilemapBufferRect_ChangePalette
- b _08056B50
- .pool
-_08056B38:
- lsls r2, r4, 24
- lsrs r2, 24
- str r1, [sp]
- str r1, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0
- add r1, sp, 0xC
- mov r7, r9
- lsrs r3, r7, 24
- bl CopyToBgTilemapBufferRect_ChangePalette
-_08056B50:
- adds r4, 0x1
- ldr r0, [sp, 0x1C]
- cmp r4, r0
- ble _08056A88
-_08056B58:
- ldr r6, [sp, 0x18]
- ldr r2, [sp, 0x14]
- cmp r6, r2
- bgt _08056B62
- b _08056A76
-_08056B62:
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8056A3C
-
- thumb_func_start sub_8056B74
-sub_8056B74: @ 8056B74
- push {lr}
- sub sp, 0x10
- adds r3, r0, 0
- add r0, sp, 0xC
- movs r2, 0x1
- strh r2, [r0]
- movs r1, 0x2
- strh r1, [r0, 0x2]
- lsls r3, 25
- movs r0, 0x90
- lsls r0, 20
- adds r3, r0
- lsrs r3, 24
- str r2, [sp]
- str r1, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0
- add r1, sp, 0xC
- movs r2, 0x19
- bl CopyToBgTilemapBufferRect_ChangePalette
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- add sp, 0x10
- pop {r0}
- bx r0
- thumb_func_end sub_8056B74
-
- thumb_func_start sub_8056BAC
-sub_8056BAC: @ 8056BAC
- push {lr}
- sub sp, 0x10
- adds r3, r0, 0
- add r0, sp, 0xC
- ldr r1, =0x00001016
- strh r1, [r0]
- strh r1, [r0, 0x2]
- lsls r3, 25
- movs r0, 0x90
- lsls r0, 20
- adds r3, r0
- lsrs r3, 24
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0
- add r1, sp, 0xC
- movs r2, 0x19
- bl CopyToBgTilemapBufferRect_ChangePalette
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- add sp, 0x10
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8056BAC
-
- thumb_func_start atkF3_nickname_caught_poke
-atkF3_nickname_caught_poke: @ 8056BEC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- ldr r0, =gBattleCommunication
- ldrb r1, [r0]
- adds r4, r0, 0
- cmp r1, 0x4
- bls _08056C04
- b _08056E62
-_08056C04:
- lsls r0, r1, 2
- ldr r1, =_08056C18
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08056C18:
- .4byte _08056C2C
- .4byte _08056C60
- .4byte _08056CFC
- .4byte _08056DD4
- .4byte _08056E2C
-_08056C2C:
- movs r4, 0
- str r4, [sp]
- movs r0, 0x18
- movs r1, 0x8
- movs r2, 0x1D
- movs r3, 0xD
- bl sub_8056A3C
- ldr r0, =gText_BattleYesNoChoice
- movs r1, 0xC
- bl battle_show_message_maybe
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- strb r4, [r1, 0x1]
- movs r0, 0
- bl sub_8056B74
- b _08056E62
- .pool
-_08056C60:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08056C86
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- beq _08056C86
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0
- strb r0, [r4, 0x1]
- bl sub_8056B74
-_08056C86:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08056CAE
- ldr r4, =gBattleCommunication
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- bne _08056CAE
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4, 0x1]
- bl sub_8056BAC
- movs r0, 0x1
- strb r0, [r4, 0x1]
- bl sub_8056B74
-_08056CAE:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08056CE0
- movs r0, 0x5
- bl PlaySE
- ldr r1, =gBattleCommunication
- ldrb r0, [r1, 0x1]
- cmp r0, 0
- bne _08056CF2
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- movs r0, 0x3
- bl BeginFastPaletteFade
- b _08056E62
- .pool
-_08056CE0:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08056CEA
- b _08056E62
-_08056CEA:
- movs r0, 0x5
- bl PlaySE
- ldr r1, =gBattleCommunication
-_08056CF2:
- movs r0, 0x4
- strb r0, [r1]
- b _08056E62
- .pool
-_08056CFC:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08056D0A
- b _08056E62
-_08056D0A:
- ldr r7, =gBattlePartyID
- ldr r0, =gBankAttacker
- mov r10, r0
- ldrb r0, [r0]
- movs r4, 0x1
- eors r0, r4
- lsls r0, 1
- adds r0, r7
- ldrh r0, [r0]
- movs r1, 0x64
- mov r9, r1
- mov r2, r9
- muls r2, r0
- adds r0, r2, 0
- ldr r1, =gEnemyParty
- mov r8, r1
- add r0, r8
- ldr r1, =gBattleStruct
- ldr r2, [r1]
- adds r2, 0x6D
- movs r1, 0x2
- bl GetMonData
- bl FreeAllWindowBuffers
- mov r2, r10
- ldrb r0, [r2]
- eors r0, r4
- lsls r0, 1
- adds r0, r7
- ldrh r0, [r0]
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
- add r0, r8
- movs r1, 0xB
- bl GetMonData
- adds r6, r0, 0
- lsls r6, 16
- lsrs r6, 16
- mov r2, r10
- ldrb r0, [r2]
- eors r0, r4
- lsls r0, 1
- adds r0, r7
- ldrh r0, [r0]
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
- add r0, r8
- bl GetMonGender
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- mov r2, r10
- ldrb r0, [r2]
- eors r4, r0
- lsls r4, 1
- adds r4, r7
- ldrh r0, [r4]
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
- add r0, r8
- movs r1, 0
- movs r2, 0
- bl GetMonData
- ldr r2, =gBattleStruct
- ldr r1, [r2]
- adds r1, 0x6D
- str r0, [sp]
- ldr r0, =sub_8038420
- str r0, [sp, 0x4]
- movs r0, 0x2
- adds r2, r6, 0
- adds r3, r5, 0
- bl DoNamingScreen
- ldr r1, =gBattleCommunication
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08056E62
- .pool
-_08056DD4:
- ldr r0, =gMain
- ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
- cmp r1, r0
- bne _08056E62
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08056E62
- ldr r2, =gBattlePartyID
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x1
- eors r0, r1
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- ldr r1, =gBattleStruct
- ldr r2, [r1]
- adds r2, 0x6D
- movs r1, 0x2
- bl SetMonData
- b _08056E48
- .pool
-_08056E2C:
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6
- bne _08056E48
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
- b _08056E62
- .pool
-_08056E48:
- ldr r3, =gBattlescriptCurrInstr
- 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]
-_08056E62:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end atkF3_nickname_caught_poke
-
- thumb_func_start atkF4_802BEF0
-atkF4_802BEF0: @ 8056E78
- ldr r2, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r1, [r0]
- movs r0, 0x58
- muls r1, r0
- adds r1, r2
- ldr r0, =gBattleMoveDamage
- ldr r2, [r0]
- ldrh r0, [r1, 0x28]
- subs r0, r2
- strh r0, [r1, 0x28]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atkF4_802BEF0
-
- thumb_func_start atkF5_removeattackerstatus1
-atkF5_removeattackerstatus1: @ 8056EA8
- ldr r1, =gBattleMons
- ldr r0, =gBankAttacker
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x4C
- adds r0, r1
- movs r1, 0
- str r1, [r0]
- ldr r1, =gBattlescriptCurrInstr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end atkF5_removeattackerstatus1
-
- thumb_func_start atkF6_802BF48
-atkF6_802BF48: @ 8056ED0
- ldr r1, =gFightStateTracker
- movs r0, 0xC
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end atkF6_802BF48
-
- thumb_func_start atkF7_802BF54
-atkF7_802BF54: @ 8056EDC
- ldr r1, =gFightStateTracker
- movs r0, 0xC
- strb r0, [r1]
- ldr r1, =gUnknown_02024082
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end atkF7_802BF54
-
- thumb_func_start sub_8056EF8
-sub_8056EF8: @ 8056EF8
- push {r4,r5,lr}
- ldr r5, =gBattlescriptCurrInstr
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl GetBankByPlayerAI
- ldr r4, =gActiveBank
- strb r0, [r4]
- movs r0, 0
- bl dp01_build_cmdbuf_x09_9_9_9
- ldrb r0, [r4]
- bl MarkBufferBankForExecution
- ldr r0, [r5]
- adds r0, 0x2
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8056EF8
-
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_5.s b/asm/battle_5.s
index 3db603531..f2d6797f9 100644
--- a/asm/battle_5.s
+++ b/asm/battle_5.s
@@ -6,8 +6,8 @@
.text
- thumb_func_start sub_8056F28
-sub_8056F28: @ 8056F28
+ thumb_func_start AllocateBattleResrouces
+AllocateBattleResrouces: @ 8056F28
push {r4-r6,lr}
ldr r5, =gBattleResources
ldr r6, =gBattleTypeFlags
@@ -59,13 +59,13 @@ _08056F3E:
bl AllocZeroed
ldr r1, [r5]
str r0, [r1, 0x1C]
- ldr r4, =gUnknown_020244A0
+ ldr r4, =gLinkBattleSendBuffer
movs r5, 0x80
lsls r5, 5
adds r0, r5, 0
bl AllocZeroed
str r0, [r4]
- ldr r4, =gUnknown_020244A4
+ ldr r4, =gLinkBattleRecvBuffer
adds r0, r5, 0
bl AllocZeroed
str r0, [r4]
@@ -102,10 +102,10 @@ _08056FFA:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8056F28
+ thumb_func_end AllocateBattleResrouces
- thumb_func_start sub_8057028
-sub_8057028: @ 8057028
+ thumb_func_start FreeBattleResources
+FreeBattleResources: @ 8057028
push {r4-r6,lr}
ldr r0, =gBattleTypeFlags
ldr r0, [r0]
@@ -160,11 +160,11 @@ _0805703C:
str r5, [r0, 0x1C]
bl Free
str r5, [r6]
- ldr r4, =gUnknown_020244A0
+ ldr r4, =gLinkBattleSendBuffer
ldr r0, [r4]
bl Free
str r5, [r4]
- ldr r4, =gUnknown_020244A4
+ ldr r4, =gLinkBattleRecvBuffer
ldr r0, [r4]
bl Free
str r5, [r4]
@@ -181,10 +181,10 @@ _080570D0:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8057028
+ thumb_func_end FreeBattleResources
- thumb_func_start sub_80570F4
-sub_80570F4: @ 80570F4
+ thumb_func_start AdjustFriendshipOnBattleFaint
+AdjustFriendshipOnBattleFaint: @ 80570F4
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
@@ -195,11 +195,11 @@ sub_80570F4: @ 80570F4
cmp r0, 0
beq _08057140
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
movs r0, 0x3
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r3, r0, 24
ldr r2, =gBattleMons
@@ -220,7 +220,7 @@ sub_80570F4: @ 80570F4
.pool
_08057140:
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
_0805714A:
@@ -285,7 +285,7 @@ _080571CE:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80570F4
+ thumb_func_end AdjustFriendshipOnBattleFaint
thumb_func_start sub_80571DC
sub_80571DC: @ 80571DC
@@ -414,7 +414,7 @@ _0805729A:
ldr r1, =0xf7ffffff
ands r0, r1
str r0, [r2]
- bl b_movescr_stack_push_cursor
+ bl BattleScriptPushCursor
movs r0, 0x1
mov r2, r10
strb r0, [r2, 0x5]
@@ -474,7 +474,7 @@ _08057354:
ldr r1, =0xf7ffffff
ands r0, r1
str r0, [r2]
- bl b_movescr_stack_push_cursor
+ bl BattleScriptPushCursor
ldr r0, =gBattleCommunication
strb r4, [r0, 0x5]
ldr r1, =gBattlescriptCurrInstr
@@ -523,7 +523,7 @@ _080573D4:
negs r1, r1
ands r0, r1
str r0, [r4]
- bl b_movescr_stack_push_cursor
+ bl BattleScriptPushCursor
ldr r1, =gBattlescriptCurrInstr
ldr r0, =BattleScript_MoveUsedUnfroze
str r0, [r1]
@@ -562,7 +562,7 @@ _08057406:
movs r1, 0x28
movs r2, 0
movs r3, 0x4
- bl EmitSetAttributes
+ bl EmitSetMonData
ldrb r0, [r4]
bl MarkBufferBankForExecution
_08057430:
diff --git a/asm/battle_7.s b/asm/battle_7.s
index fd8c3b4a5..ea6fc40b3 100644
--- a/asm/battle_7.s
+++ b/asm/battle_7.s
@@ -5,10 +5,10 @@
.text
- thumb_func_start dp11_init
-dp11_init: @ 805D118
+ thumb_func_start AllocateBattleSpritesData
+AllocateBattleSpritesData: @ 805D118
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
movs r0, 0x10
bl AllocZeroed
str r0, [r4]
@@ -32,12 +32,12 @@ dp11_init: @ 805D118
pop {r0}
bx r0
.pool
- thumb_func_end dp11_init
+ thumb_func_end AllocateBattleSpritesData
- thumb_func_start dp11_free
-dp11_free: @ 805D158
+ thumb_func_start FreeBattleSpritesData
+FreeBattleSpritesData: @ 805D158
push {r4,r5,lr}
- ldr r5, =gUnknown_020244D0
+ ldr r5, =gBattleSpritesDataPtr
ldr r0, [r5]
cmp r0, 0
beq _0805D192
@@ -65,7 +65,7 @@ _0805D192:
pop {r0}
bx r0
.pool
- thumb_func_end dp11_free
+ thumb_func_end FreeBattleSpritesData
thumb_func_start sub_805D19C
sub_805D19C: @ 805D19C
@@ -428,7 +428,7 @@ _0805D470:
movs r0, 0x1
ands r0, r1
eors r0, r2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 16
_0805D48A:
@@ -579,7 +579,7 @@ sub_805D5F4: @ 805D5F4
cmp r0, 0
bne _0805D630
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
mov r8, r0
@@ -588,13 +588,13 @@ sub_805D5F4: @ 805D5F4
.pool
_0805D630:
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
mov r8, r0
movs r0, 0x2
_0805D63E:
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r7, r0, 24
ldr r1, =gBattleMons
@@ -839,7 +839,7 @@ move_anim_start_t2_for_situation: @ 805D808
push {r4-r6,lr}
adds r4, r1, 0
lsls r0, 24
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r1, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -1001,7 +1001,7 @@ move_anim_start_t3: @ 805D908
b _0805DA1E
.pool
_0805D950:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
mov r9, r0
ldr r0, [r0]
ldr r0, [r0]
@@ -1056,21 +1056,21 @@ _0805D980:
b _0805DA1E
.pool
_0805D9CC:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
mov r2, r10
strb r2, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
mov r1, sp
ldrb r1, [r1]
strb r1, [r0]
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r0, [r0, 0x8]
strh r7, [r0]
ldr r0, =gUnknown_082C9320
adds r1, r5, 0
movs r2, 0
- bl move_something
+ bl DoBattleAnim
ldr r0, =task0A_0803415C
movs r1, 0xA
bl CreateTask
@@ -1119,7 +1119,7 @@ task0A_0803415C: @ 805DA48
ldrb r0, [r0]
cmp r0, 0
bne _0805DA8A
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r1, =gTasks
lsls r0, r4, 2
@@ -1180,14 +1180,14 @@ move_anim_start_t4: @ 805DAC4
lsrs r4, 24
lsls r3, 24
lsrs r3, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
strb r1, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
strb r2, [r0]
ldr r0, =gUnknown_082C937C
adds r1, r3, 0
movs r2, 0
- bl move_something
+ bl DoBattleAnim
ldr r0, =task0A_08034248
movs r1, 0xA
bl CreateTask
@@ -1199,7 +1199,7 @@ move_anim_start_t4: @ 805DAC4
lsls r1, 3
adds r1, r2
strh r4, [r1, 0x8]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
movs r2, 0x8
ldrsh r1, [r1, r2]
@@ -1230,7 +1230,7 @@ task0A_08034248: @ 805DB34
ldrb r0, [r0]
cmp r0, 0
bne _0805DB76
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r1, =gTasks
lsls r0, r4, 2
@@ -1274,7 +1274,7 @@ mplay_80342A4: @ 805DB90
lsls r0, 24
cmp r0, 0
beq _0805DBD8
- ldr r2, =gUnknown_020244D0
+ ldr r2, =gBattleSpritesDataPtr
ldr r0, [r2]
ldr r1, [r0, 0x4]
lsls r0, r4, 1
@@ -1307,7 +1307,7 @@ _0805DBDC:
b _0805DC02
.pool
_0805DBF0:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r4, 1
@@ -1323,8 +1323,8 @@ _0805DC02:
.pool
thumb_func_end mplay_80342A4
- thumb_func_start sub_805DC0C
-sub_805DC0C: @ 805DC0C
+ thumb_func_start BattleLoadOpponentMonSpriteGfx
+BattleLoadOpponentMonSpriteGfx: @ 805DC0C
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -1338,7 +1338,7 @@ sub_805DC0C: @ 805DC0C
movs r1, 0
bl GetMonData
str r0, [sp]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
mov r2, r8
@@ -1371,7 +1371,7 @@ _0805DC58:
lsls r2, r5, 3
ldr r1, =gMonFrontPicTable
adds r2, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
lsrs r0, 22
adds r1, 0x4
@@ -1386,7 +1386,7 @@ _0805DC58:
movs r0, 0x80
lsls r0, 1
adds r7, r2, r0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
lsls r1, r3, 2
@@ -1444,7 +1444,7 @@ _0805DCC6:
movs r2, 0x20
bl LoadPalette
_0805DD1A:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
ldr r1, [sp, 0x4]
@@ -1474,10 +1474,10 @@ _0805DD46:
pop {r0}
bx r0
.pool
- thumb_func_end sub_805DC0C
+ thumb_func_end BattleLoadOpponentMonSpriteGfx
- thumb_func_start sub_805DD7C
-sub_805DD7C: @ 805DD7C
+ thumb_func_start BattleLoadPlayerMonSpriteGfx
+BattleLoadPlayerMonSpriteGfx: @ 805DD7C
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -1491,7 +1491,7 @@ sub_805DD7C: @ 805DD7C
movs r1, 0
bl GetMonData
str r0, [sp]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
mov r2, r8
@@ -1532,7 +1532,7 @@ _0805DDC8:
mov r10, r1
cmp r0, 0x1
beq _0805DE00
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
add r0, r10
@@ -1543,7 +1543,7 @@ _0805DE00:
lsls r0, r5, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
lsls r2, r7, 2
adds r1, 0x4
@@ -1558,7 +1558,7 @@ _0805DE2C:
lsls r0, r5, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
lsls r2, r7, 2
adds r1, 0x4
@@ -1573,7 +1573,7 @@ _0805DE46:
movs r0, 0x80
lsls r0, 1
adds r7, r1, r0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
add r0, r10
@@ -1629,7 +1629,7 @@ _0805DE7E:
movs r2, 0x20
bl LoadPalette
_0805DED2:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
add r0, r10
@@ -1658,7 +1658,7 @@ _0805DEFC:
pop {r0}
bx r0
.pool
- thumb_func_end sub_805DD7C
+ thumb_func_end BattleLoadPlayerMonSpriteGfx
thumb_func_start nullsub_23
nullsub_23: @ 805DF30
@@ -1684,7 +1684,7 @@ sub_805DF38: @ 805DF38
lsls r4, 3
ldr r2, =gTrainerFrontPicTable
adds r2, r4, r2
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
lsrs r0, 22
adds r1, 0x4
@@ -1703,8 +1703,8 @@ sub_805DF38: @ 805DF38
.pool
thumb_func_end sub_805DF38
- thumb_func_start sub_805DF84
-sub_805DF84: @ 805DF84
+ thumb_func_start LoadBackTrainerBankSpriteGfx
+LoadBackTrainerBankSpriteGfx: @ 805DF84
push {r4,r5,lr}
adds r5, r0, 0
adds r4, r1, 0
@@ -1718,7 +1718,7 @@ sub_805DF84: @ 805DF84
lsls r5, 3
ldr r2, =gTrainerBackPicTable
adds r2, r5, r2
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
lsrs r0, 22
adds r1, 0x4
@@ -1742,7 +1742,7 @@ sub_805DF84: @ 805DF84
pop {r0}
bx r0
.pool
- thumb_func_end sub_805DF84
+ thumb_func_end LoadBackTrainerBankSpriteGfx
thumb_func_start nullsub_25
nullsub_25: @ 805DFE0
@@ -1772,7 +1772,7 @@ sub_805DFFC: @ 805DFFC
adds r4, 0x8
adds r0, r4, 0
bl LoadSpritePalette
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _0805E034
@@ -1801,7 +1801,7 @@ _0805E056:
movs r4, 0
cmp r4, r5
bcs _0805E076
- ldr r7, =gBanksBySide
+ ldr r7, =gBanksByIdentity
ldr r6, =gUnknown_0832C108
_0805E060:
adds r0, r4, r7
@@ -1821,8 +1821,8 @@ _0805E076:
.pool
thumb_func_end sub_805DFFC
- thumb_func_start sub_805E08C
-sub_805E08C: @ 805E08C
+ thumb_func_start BattleLoadAllHealthBoxesGfx
+BattleLoadAllHealthBoxesGfx: @ 805E08C
push {r4-r6,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -1843,7 +1843,7 @@ _0805E09C:
b _0805E1AE
.pool
_0805E0B8:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _0805E120
@@ -1874,14 +1874,14 @@ _0805E0F0:
_0805E100:
cmp r4, 0x4
bne _0805E110
- ldr r0, =gBanksBySide
+ ldr r0, =gBanksByIdentity
ldrb r0, [r0]
b _0805E198
.pool
_0805E110:
cmp r4, 0x5
bne _0805E1AC
- ldr r0, =gBanksBySide
+ ldr r0, =gBanksByIdentity
ldrb r0, [r0, 0x1]
b _0805E198
.pool
@@ -1916,28 +1916,28 @@ _0805E150:
_0805E160:
cmp r4, 0x6
bne _0805E170
- ldr r0, =gBanksBySide
+ ldr r0, =gBanksByIdentity
ldrb r0, [r0]
b _0805E198
.pool
_0805E170:
cmp r4, 0x7
bne _0805E180
- ldr r0, =gBanksBySide
+ ldr r0, =gBanksByIdentity
ldrb r0, [r0, 0x1]
b _0805E198
.pool
_0805E180:
cmp r4, 0x8
bne _0805E190
- ldr r0, =gBanksBySide
+ ldr r0, =gBanksByIdentity
ldrb r0, [r0, 0x2]
b _0805E198
.pool
_0805E190:
cmp r5, 0x9
bne _0805E1AC
- ldr r0, =gBanksBySide
+ ldr r0, =gBanksByIdentity
ldrb r0, [r0, 0x3]
_0805E198:
lsls r0, 3
@@ -1953,13 +1953,13 @@ _0805E1AE:
pop {r4-r6}
pop {r1}
bx r1
- thumb_func_end sub_805E08C
+ thumb_func_end BattleLoadAllHealthBoxesGfx
- thumb_func_start load_gfxc_health_bar
-load_gfxc_health_bar: @ 805E1B8
+ thumb_func_start LoadBattleBarGfx
+LoadBattleBarGfx: @ 805E1B8
push {lr}
ldr r0, =gUnknown_08C093F0
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
movs r2, 0xBA
lsls r2, 1
@@ -1969,10 +1969,10 @@ load_gfxc_health_bar: @ 805E1B8
pop {r0}
bx r0
.pool
- thumb_func_end load_gfxc_health_bar
+ thumb_func_end LoadBattleBarGfx
- thumb_func_start battle_load_something
-battle_load_something: @ 805E1D8
+ thumb_func_start BattleInitAllSprites
+BattleInitAllSprites: @ 805E1D8
push {r4-r6,lr}
adds r5, r0, 0
adds r4, r1, 0
@@ -2002,7 +2002,7 @@ _0805E214:
b _0805E324
_0805E21A:
ldrb r0, [r4]
- bl sub_805E08C
+ bl BattleLoadAllHealthBoxesGfx
lsls r0, 24
cmp r0, 0
beq _0805E228
@@ -2022,12 +2022,12 @@ _0805E230:
ldrb r0, [r4]
cmp r0, 0
bne _0805E24C
- bl battle_make_oam_safari_battle
+ bl CreateSafariPlayerHealthboxSprites
b _0805E252
.pool
_0805E24C:
ldrb r0, [r4]
- bl battle_make_oam_normal_battle
+ bl CreateBankHealthboxSprites
_0805E252:
ldr r2, =gHealthBoxesIds
ldrb r1, [r4]
@@ -2037,8 +2037,8 @@ _0805E252:
.pool
_0805E260:
ldrb r0, [r4]
- bl sub_8072B18
- ldr r0, =gBanksBySide
+ bl SetBankHealthboxSpritePos
+ ldr r0, =gBanksByIdentity
ldrb r1, [r4]
adds r0, r1, r0
ldrb r0, [r0]
@@ -2048,7 +2048,7 @@ _0805E260:
adds r0, r1, r0
ldrb r0, [r0]
movs r1, 0
- bl nullsub_30
+ bl DummyBattleInterfaceFunc
b _0805E30E
.pool
_0805E288:
@@ -2056,7 +2056,7 @@ _0805E288:
adds r0, r1, r0
ldrb r0, [r0]
movs r1, 0x1
- bl nullsub_30
+ bl DummyBattleInterfaceFunc
b _0805E30E
.pool
_0805E29C:
@@ -2084,7 +2084,7 @@ _0805E29C:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
b _0805E302
.pool
_0805E2E4:
@@ -2101,13 +2101,13 @@ _0805E2E4:
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
_0805E302:
ldr r1, =gHealthBoxesIds
ldrb r0, [r4]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
_0805E30E:
ldrb r0, [r4]
adds r0, 0x1
@@ -2128,7 +2128,7 @@ _0805E324:
b _0805E346
.pool
_0805E33C:
- bl sub_805EC84
+ bl LoadAndCreateEnemyShadowSprites
bl sub_81B8C68
movs r6, 0x1
_0805E346:
@@ -2136,12 +2136,12 @@ _0805E346:
pop {r4-r6}
pop {r1}
bx r1
- thumb_func_end battle_load_something
+ thumb_func_end BattleInitAllSprites
thumb_func_start sub_805E350
sub_805E350: @ 805E350
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r0, [r0, 0x4]
movs r1, 0
@@ -2162,7 +2162,7 @@ sub_805E350: @ 805E350
sub_805E378: @ 805E378
push {lr}
bl sub_805E350
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
movs r1, 0
@@ -2191,7 +2191,7 @@ sub_805E394: @ 805E394
movs r0, 0x2
negs r0, r0
mov r8, r0
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r6, =gBankSpriteIds
_0805E3B8:
ldr r0, [r7]
@@ -2233,7 +2233,7 @@ _0805E3EA:
sub_805E408: @ 805E408
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
ldr r1, [r1]
ldr r1, [r1]
lsls r3, r0, 2
@@ -2285,7 +2285,7 @@ sub_805E448: @ 805E448
ldr r1, =gSprites
mov r8, r1
add r0, r8
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r1, [r4]
ldr r1, [r1, 0x8]
ldrb r1, [r1]
@@ -2353,7 +2353,7 @@ _0805E51C:
beq _0805E558
movs r0, 0
mov r10, r0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0x18]
ldrh r1, [r2, 0x2]
@@ -2364,7 +2364,7 @@ _0805E51C:
lsls r0, r1, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x4]
ldr r3, [r2, 0x10]
@@ -2434,7 +2434,7 @@ _0805E59C:
lsls r0, r1, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
mov r3, r10
lsls r2, r3, 2
@@ -2472,7 +2472,7 @@ _0805E618:
lsls r0, r1, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
mov r3, r10
lsls r2, r3, 2
@@ -2486,7 +2486,7 @@ _0805E618:
mov r2, r8
bl HandleLoadSpecialPokePic_DontHandleDeoxys
_0805E662:
- ldr r0, =gBattleSpritesGfx
+ ldr r0, =gMonSpritesGfxPtr
ldr r0, [r0]
mov r2, r10
lsls r1, r2, 2
@@ -2541,7 +2541,7 @@ _0805E662:
ldr r1, =gSprites
adds r1, 0x8
adds r0, r1
- ldr r1, =gUnknown_08309AAC
+ ldr r1, =gMonAnimationsSpriteAnimsPtrTable
mov r3, r8
lsls r2, r3, 2
adds r1, r2
@@ -2582,7 +2582,7 @@ _0805E70A:
lsls r0, 24
cmp r0, 0
bne _0805E74A
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r7, 2
@@ -2630,8 +2630,8 @@ _0805E77A:
.pool
thumb_func_end sub_805E448
- thumb_func_start sub_805E7DC
-sub_805E7DC: @ 805E7DC
+ thumb_func_start BattleLoadSubstituteSpriteGfx
+BattleLoadSubstituteSpriteGfx: @ 805E7DC
push {r4-r7,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -2666,7 +2666,7 @@ _0805E814:
beq _0805E83C
ldr r0, =gUnknown_08C2CEE0
_0805E822:
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
lsls r4, 2
adds r1, 0x4
@@ -2677,7 +2677,7 @@ _0805E822:
.pool
_0805E83C:
ldr r0, =gUnknown_08C2D120
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
lsls r4, 2
adds r1, 0x4
@@ -2688,7 +2688,7 @@ _0805E84E:
movs r3, 0x1
lsls r6, r5, 4
ldr r7, =gUnknown_08C2CEBC
- ldr r0, =gBattleSpritesGfx
+ ldr r0, =gMonSpritesGfxPtr
ldr r0, [r0]
adds r0, 0x4
adds r4, r0, r4
@@ -2732,7 +2732,7 @@ _0805E898:
ldr r1, =gEnemyParty
adds r0, r1
adds r1, r4, 0
- bl sub_805DC0C
+ bl BattleLoadOpponentMonSpriteGfx
b _0805E8E6
.pool
_0805E8D0:
@@ -2745,13 +2745,13 @@ _0805E8D0:
ldr r1, =gPlayerParty
adds r0, r1
adds r1, r5, 0
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
_0805E8E6:
pop {r4-r7}
pop {r0}
bx r0
.pool
- thumb_func_end sub_805E7DC
+ thumb_func_end BattleLoadSubstituteSpriteGfx
thumb_func_start refresh_graphics_maybe
refresh_graphics_maybe: @ 805E8F4
@@ -2766,7 +2766,7 @@ refresh_graphics_maybe: @ 805E8F4
lsrs r4, 24
adds r0, r6, 0
adds r1, r5, 0
- bl sub_805E7DC
+ bl BattleLoadSubstituteSpriteGfx
lsls r0, r4, 4
adds r0, r4
lsls r0, 2
@@ -2804,7 +2804,7 @@ sub_805E94C: @ 805E94C
lsrs r1, 16
cmp r1, 0xA4
bne _0805E96C
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
lsls r1, r2, 2
@@ -2822,7 +2822,7 @@ _0805E96C:
thumb_func_start sub_805E974
sub_805E974: @ 805E974
lsls r0, 24
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
ldr r1, [r1]
ldr r1, [r1]
lsrs r0, 22
@@ -2857,12 +2857,12 @@ sub_805E990: @ 805E990
lsls r1, 16
asrs r1, 16
adds r0, r4, 0
- bl sub_8075060
+ bl GetHPBarLevel
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0805EA08
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r0, [r7]
ldr r2, [r0]
lsls r4, r6, 2
@@ -2895,7 +2895,7 @@ _0805E9F6:
b _0805EA5A
.pool
_0805EA08:
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r0, [r0]
lsls r1, r6, 2
@@ -2905,7 +2905,7 @@ _0805EA08:
negs r0, r0
ands r0, r2
strb r0, [r1]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _0805EA34
@@ -2914,7 +2914,7 @@ _0805EA08:
b _0805EA5A
.pool
_0805EA34:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805EA5A
@@ -2937,14 +2937,14 @@ _0805EA5A:
bx r0
thumb_func_end sub_805E990
- thumb_func_start sub_805EA60
-sub_805EA60: @ 805EA60
+ thumb_func_start BattleMusicStop
+BattleMusicStop: @ 805EA60
push {r4-r6,lr}
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
- ldr r5, =gUnknown_020244D0
+ ldr r5, =gBattleSpritesDataPtr
ldr r0, [r5]
ldr r0, [r0]
lsls r1, r4, 2
@@ -2955,7 +2955,7 @@ sub_805EA60: @ 805EA60
adds r0, r6, 0
ands r0, r2
strb r0, [r1]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805EAA2
@@ -2977,7 +2977,7 @@ _0805EAA2:
pop {r0}
bx r0
.pool
- thumb_func_end sub_805EA60
+ thumb_func_end BattleMusicStop
thumb_func_start sub_805EAB4
sub_805EAB4: @ 805EAB4
@@ -2997,7 +2997,7 @@ sub_805EAB4: @ 805EAB4
lsls r1, 16
asrs r1, 16
adds r0, r4, 0
- bl sub_8075060
+ bl GetHPBarLevel
lsls r0, 24
lsrs r0, 24
pop {r4,r5}
@@ -3020,12 +3020,12 @@ sub_805EAE8: @ 805EAE8
cmp r0, 0
beq _0805EB7E
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
mov r8, r0
movs r0, 0x2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
mov r9, r0
@@ -3059,7 +3059,7 @@ sub_805EAE8: @ 805EAE8
mov r1, r8
bl sub_805E990
_0805EB5A:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805EB7E
@@ -3111,7 +3111,7 @@ sub_805EB9C: @ 805EB9C
_0805EBC8:
lsls r0, r5, 24
lsrs r0, 24
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _0805EC60
@@ -3134,7 +3134,7 @@ _0805EBC8:
mov r7, r8
cmp r7, 0
bne _0805EC3C
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r2, [r0, 0x4]
adds r2, r6, r2
@@ -3164,7 +3164,7 @@ _0805EC3C:
adds r2, r0
lsls r2, 2
adds r2, r4
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
adds r0, r6, r0
@@ -3195,15 +3195,15 @@ _0805EC6C:
.pool
thumb_func_end sub_805EB9C
- thumb_func_start sub_805EC84
-sub_805EC84: @ 805EC84
+ thumb_func_start LoadAndCreateEnemyShadowSprites
+LoadAndCreateEnemyShadowSprites: @ 805EC84
push {r4-r7,lr}
mov r7, r8
push {r7}
ldr r0, =gUnknown_0831C6A0
bl LoadCompressedObjectPic
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
@@ -3229,7 +3229,7 @@ sub_805EC84: @ 805EC84
adds r1, r4, 0
movs r3, 0xC8
bl CreateSprite
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r1, [r6]
ldr r2, [r1, 0x4]
lsls r1, r5, 1
@@ -3247,12 +3247,12 @@ sub_805EC84: @ 805EC84
lsls r0, 2
adds r0, r7
strh r5, [r0, 0x2E]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805ED56
movs r0, 0x3
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
@@ -3299,7 +3299,7 @@ _0805ED56:
pop {r0}
bx r0
.pool
- thumb_func_end sub_805EC84
+ thumb_func_end LoadAndCreateEnemyShadowSprites
thumb_func_start sub_805ED70
@ int sub_805ED70(obj *a1)
@@ -3329,7 +3329,7 @@ sub_805ED70: @ 805ED70
cmp r0, 0
beq _0805EDAC
adds r0, r4, 0
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
bne _0805EDC0
@@ -3351,12 +3351,12 @@ _0805EDC0:
_0805EDD2:
movs r0, 0x1
mov r8, r0
- ldr r2, =gUnknown_020244D0
+ ldr r2, =gBattleSpritesDataPtr
lsls r4, 2
b _0805EE06
.pool
_0805EDE4:
- ldr r2, =gUnknown_020244D0
+ ldr r2, =gBattleSpritesDataPtr
ldr r0, [r2]
ldr r0, [r0]
lsls r1, r4, 2
@@ -3365,7 +3365,7 @@ _0805EDE4:
adds r4, r1, 0
cmp r0, 0
beq _0805EE06
- ldr r0, =gUnknown_08305DCC
+ ldr r0, =gEnemyMonElevation
ldrh r1, [r3, 0x2]
adds r1, r0
ldrb r0, [r1]
@@ -3418,8 +3418,8 @@ sub_805EE48: @ 805EE48
bx lr
thumb_func_end sub_805EE48
- thumb_func_start sub_805EE54
-sub_805EE54: @ 805EE54
+ thumb_func_start SetBankEnemyShadowSpriteCallback
+SetBankEnemyShadowSpriteCallback: @ 805EE54
push {r4-r6,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -3431,7 +3431,7 @@ sub_805EE54: @ 805EE54
lsls r0, 24
cmp r0, 0
beq _0805EED0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r3, [r0]
ldr r1, [r3]
lsls r0, r4, 2
@@ -3441,7 +3441,7 @@ sub_805EE54: @ 805EE54
beq _0805EE7E
adds r5, r0, 0
_0805EE7E:
- ldr r0, =gUnknown_08305DCC
+ ldr r0, =gEnemyMonElevation
adds r0, r5, r0
ldrb r0, [r0]
cmp r0, 0
@@ -3482,14 +3482,14 @@ _0805EED0:
pop {r0}
bx r0
.pool
- thumb_func_end sub_805EE54
+ thumb_func_end SetBankEnemyShadowSpriteCallback
thumb_func_start sub_805EEE0
sub_805EEE0: @ 805EEE0
lsls r0, 24
lsrs r0, 24
ldr r2, =gSprites
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
ldr r1, [r1]
ldr r3, [r1, 0x4]
lsls r1, r0, 1
@@ -3578,7 +3578,7 @@ sub_805EF84: @ 805EF84
lsls r0, 24
lsrs r4, r0, 24
lsls r1, 24
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r2, [r0]
lsls r0, r4, 2
@@ -3600,15 +3600,15 @@ _0805EFAC:
.pool
thumb_func_end sub_805EF84
- thumb_func_start init_uns_table_pokemon_copy
-init_uns_table_pokemon_copy: @ 805EFBC
+ thumb_func_start AllocateMonSpritesGfx
+AllocateMonSpritesGfx: @ 805EFBC
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
movs r6, 0
- ldr r4, =gBattleSpritesGfx
+ ldr r4, =gMonSpritesGfxPtr
str r6, [r4]
movs r0, 0xC0
lsls r0, 1
@@ -3620,7 +3620,7 @@ init_uns_table_pokemon_copy: @ 805EFBC
ldr r1, [r4]
str r0, [r1]
_0805EFE2:
- ldr r0, =gBattleSpritesGfx
+ ldr r0, =gMonSpritesGfxPtr
ldr r1, [r0]
lsls r4, r6, 2
adds r2, r1, 0x4
@@ -3649,7 +3649,7 @@ _0805EFE2:
mov r12, r8
adds r7, r4, 0
_0805F01A:
- ldr r2, =gBattleSpritesGfx
+ ldr r2, =gMonSpritesGfxPtr
ldr r1, [r2]
lsls r4, r5, 3
add r4, r12
@@ -3672,7 +3672,7 @@ _0805F01A:
lsrs r5, r0, 24
cmp r5, 0x3
bls _0805F01A
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r2, [r1]
mov r5, r9
adds r0, r5, r6
@@ -3692,7 +3692,7 @@ _0805F01A:
movs r0, 0x80
lsls r0, 5
bl AllocZeroed
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
movs r2, 0xBA
lsls r2, 1
@@ -3706,12 +3706,12 @@ _0805F01A:
pop {r0}
bx r0
.pool
- thumb_func_end init_uns_table_pokemon_copy
+ thumb_func_end AllocateMonSpritesGfx
- thumb_func_start sub_805F094
-sub_805F094: @ 805F094
+ thumb_func_start FreeMonSpritesGfx
+FreeMonSpritesGfx: @ 805F094
push {r4-r6,lr}
- ldr r6, =gBattleSpritesGfx
+ ldr r6, =gMonSpritesGfxPtr
ldr r0, [r6]
cmp r0, 0
beq _0805F106
@@ -3769,7 +3769,7 @@ _0805F106:
pop {r0}
bx r0
.pool
- thumb_func_end sub_805F094
+ thumb_func_end FreeMonSpritesGfx
thumb_func_start sub_805F110
sub_805F110: @ 805F110
@@ -3796,7 +3796,7 @@ sub_805F110: @ 805F110
lsls r1, 16
asrs r1, 16
adds r0, r4, 0
- bl sub_8075060
+ bl GetHPBarLevel
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
diff --git a/asm/battle_9.s b/asm/battle_9.s
deleted file mode 100644
index f1811e1af..000000000
--- a/asm/battle_9.s
+++ /dev/null
@@ -1,2847 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start ai_switch_perish_song
-ai_switch_perish_song: @ 8062BF8
- push {lr}
- ldr r1, =gStatuses3
- ldr r0, =gActiveBank
- ldrb r2, [r0]
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08062C50
- ldr r0, =gDisableStructs
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xF]
- lsls r0, 28
- cmp r0, 0
- bne _08062C50
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, r2, r0
- movs r1, 0xA5
- lsls r1, 2
- adds r0, r1
- movs r1, 0x6
- strb r1, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- movs r0, 0x1
- b _08062C52
- .pool
-_08062C50:
- movs r0, 0
-_08062C52:
- pop {r1}
- bx r1
- thumb_func_end ai_switch_perish_song
-
- thumb_func_start sub_8062C58
-sub_8062C58: @ 8062C58
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08062C72
- b _08062E2C
-_08062C72:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- ldr r4, =gBattleMons
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x58
- muls r0, r1
- adds r0, r4
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x19
- beq _08062C9E
- b _08062E2C
-_08062C9E:
- mov r0, r10
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r2, r0, 24
- movs r6, 0
- mov r8, r4
- movs r7, 0x58
- adds r0, r2, 0
- muls r0, r7
- adds r4, r0, r4
- movs r0, 0x20
- adds r0, r4
- mov r9, r0
-_08062CBA:
- lsls r1, r6, 1
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- muls r0, r7
- adds r1, r0
- mov r0, r8
- adds r0, 0xC
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _08062CE8
- ldrh r1, [r4]
- mov r3, r9
- ldrb r2, [r3]
- bl ai_rate_move
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _08062CE8
- b _08062E2C
-_08062CE8:
- adds r6, 0x1
- cmp r6, 0x3
- ble _08062CBA
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x00808000
- ands r0, r1
- cmp r0, 0
- beq _08062D50
- ldrb r1, [r5]
- movs r0, 0x2
- ands r0, r1
- adds r1, r5, 0
- cmp r0, 0
- bne _08062D20
- movs r4, 0
- movs r0, 0x3
- str r0, [sp]
- b _08062D58
- .pool
-_08062D20:
- movs r4, 0x3
- movs r3, 0x6
- str r3, [sp]
- b _08062D58
-_08062D28:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- movs r1, 0xA5
- lsls r1, 2
- adds r0, r1
- strb r6, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- movs r0, 0x1
- b _08062E2E
- .pool
-_08062D50:
- movs r4, 0
- movs r3, 0x6
- str r3, [sp]
- adds r1, r5, 0
-_08062D58:
- ldrb r0, [r1]
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gEnemyParty
- mov r9, r1
- cmp r0, 0
- bne _08062D6C
- ldr r3, =gPlayerParty
- mov r9, r3
-_08062D6C:
- adds r6, r4, 0
- ldr r0, [sp]
- cmp r6, r0
- bge _08062E2C
-_08062D74:
- movs r0, 0x64
- adds r5, r6, 0
- muls r5, r0
- mov r1, r9
- adds r4, r1, r5
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08062E24
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _08062E24
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _08062E24
- ldr r1, =gBattlePartyID
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- beq _08062E24
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- adds r0, r4, 0
- movs r1, 0x2E
- bl GetMonData
- mov r0, r10
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r2, r0, 24
- movs r4, 0
- mov r8, r5
- ldr r1, =gBattleMons
- movs r0, 0x58
- muls r0, r2
- adds r5, r0, r1
- adds r7, r5, 0
- adds r7, 0x20
-_08062DE0:
- adds r1, r4, 0
- adds r1, 0xD
- mov r0, r9
- add r0, r8
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- beq _08062E1E
- ldrh r1, [r5]
- ldrb r2, [r7]
- bl ai_rate_move
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _08062E1E
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _08062D28
-_08062E1E:
- adds r4, 0x1
- cmp r4, 0x3
- ble _08062DE0
-_08062E24:
- adds r6, 0x1
- ldr r3, [sp]
- cmp r6, r3
- blt _08062D74
-_08062E2C:
- movs r0, 0
-_08062E2E:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8062C58
-
- thumb_func_start sub_8062E54
-sub_8062E54: @ 8062E54
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- movs r0, 0x1
- bl ai_has_super_effective_move_on_field
- lsls r0, 24
- cmp r0, 0
- beq _08062E82
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- beq _08062E82
- b _080630AC
-_08062E82:
- ldr r1, =gUnknown_02024250
- ldr r5, =gActiveBank
- ldrb r3, [r5]
- lsls r0, r3, 1
- adds r4, r0, r1
- ldrh r1, [r4]
- cmp r1, 0
- bne _08062E94
- b _080630AC
-_08062E94:
- ldr r0, =0x0000ffff
- cmp r1, r0
- bne _08062E9C
- b _080630AC
-_08062E9C:
- ldr r2, =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _08062EB0
- b _080630AC
-_08062EB0:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08062F1A
- mov r8, r3
- mov r0, r8
- bl GetBankIdentity
- movs r4, 0x2
- eors r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r1, =gAbsentBankFlags
- ldrb r1, [r1]
- ldr r2, =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08062F04
- ldrb r7, [r5]
- b _08062F1E
- .pool
-_08062F04:
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r7, r0, 24
- b _08062F1E
-_08062F1A:
- adds r7, r3, 0
- mov r8, r7
-_08062F1E:
- ldr r3, =gBattleMoves
- ldr r1, =gUnknown_02024250
- ldr r2, =gActiveBank
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x2]
- cmp r0, 0xA
- bne _08062F4C
- movs r0, 0x12
- b _08062F5E
- .pool
-_08062F4C:
- cmp r0, 0xB
- bne _08062F56
- movs r1, 0xB
- str r1, [sp]
- b _08062F60
-_08062F56:
- cmp r0, 0xD
- beq _08062F5C
- b _080630AC
-_08062F5C:
- movs r0, 0xA
-_08062F5E:
- str r0, [sp]
-_08062F60:
- ldr r1, =gBattleMons
- ldrb r3, [r2]
- movs r0, 0x58
- muls r0, r3
- adds r0, r1
- adds r0, 0x20
- ldrb r0, [r0]
- ldr r1, [sp]
- cmp r0, r1
- bne _08062F76
- b _080630AC
-_08062F76:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x00808000
- ands r0, r1
- cmp r0, 0
- beq _08062FCC
- movs r0, 0x2
- ands r3, r0
- cmp r3, 0
- bne _08062F9C
- movs r4, 0
- movs r0, 0x3
- b _08062FD0
- .pool
-_08062F9C:
- movs r4, 0x3
- movs r1, 0x6
- mov r10, r1
- b _08062FD2
-_08062FA4:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- movs r2, 0xA5
- lsls r2, 2
- adds r0, r2
- strb r5, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- movs r0, 0x1
- b _080630AE
- .pool
-_08062FCC:
- movs r4, 0
- movs r0, 0x6
-_08062FD0:
- mov r10, r0
-_08062FD2:
- ldrb r0, [r2]
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gEnemyParty
- str r1, [sp, 0x4]
- cmp r0, 0
- bne _08062FE6
- ldr r2, =gPlayerParty
- str r2, [sp, 0x4]
-_08062FE6:
- adds r5, r4, 0
- cmp r5, r10
- bge _080630AC
- ldr r0, =gBaseStats
- mov r9, r0
-_08062FF0:
- movs r0, 0x64
- muls r0, r5
- ldr r1, [sp, 0x4]
- adds r6, r1, r0
- adds r0, r6, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080630A6
- adds r0, r6, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _080630A6
- adds r0, r6, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080630A6
- ldr r1, =gBattlePartyID
- mov r2, r8
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r5, r0
- beq _080630A6
- lsls r0, r7, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r5, r0
- beq _080630A6
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r0, r2, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r5, r0
- beq _080630A6
- adds r0, r7, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r5, r0
- beq _080630A6
- adds r0, r6, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r6, 0
- movs r1, 0x2E
- bl GetMonData
- cmp r0, 0
- beq _08063088
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- add r0, r9
- ldrb r0, [r0, 0x17]
- b _08063092
- .pool
-_08063088:
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- add r0, r9
- ldrb r0, [r0, 0x16]
-_08063092:
- ldr r1, [sp]
- cmp r1, r0
- bne _080630A6
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _080630A6
- b _08062FA4
-_080630A6:
- adds r5, 0x1
- cmp r5, r10
- blt _08062FF0
-_080630AC:
- movs r0, 0
-_080630AE:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8062E54
-
- thumb_func_start ai_switchout_natural_cure
-ai_switchout_natural_cure: @ 80630C0
- push {r4,r5,lr}
- ldr r3, =gBattleMons
- ldr r5, =gActiveBank
- ldrb r4, [r5]
- movs r0, 0x58
- adds r2, r4, 0
- muls r2, r0
- adds r0, r3, 0
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- beq _08063188
- adds r1, r2, r3
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1E
- bne _08063188
- ldrh r0, [r1, 0x2C]
- ldrh r1, [r1, 0x28]
- lsrs r0, 1
- cmp r1, r0
- bcc _08063188
- ldr r1, =gUnknown_02024250
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- cmp r1, 0
- beq _08063106
- ldr r0, =0x0000ffff
- cmp r1, r0
- bne _08063128
-_08063106:
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _08063128
- ldrb r0, [r5]
- b _08063190
- .pool
-_08063128:
- ldr r2, =gBattleMoves
- ldr r1, =gUnknown_02024250
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _08063160
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _08063160
- ldrb r0, [r4]
- b _08063190
- .pool
-_08063160:
- movs r0, 0x8
- movs r1, 0x1
- bl ai_switchout_something
- lsls r0, 24
- cmp r0, 0
- bne _080631AA
- movs r0, 0x4
- movs r1, 0x1
- bl ai_switchout_something
- lsls r0, 24
- cmp r0, 0
- bne _080631AA
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- bne _0806318C
-_08063188:
- movs r0, 0
- b _080631AC
-_0806318C:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
-_08063190:
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- movs r1, 0xA5
- lsls r1, 2
- adds r0, r1
- movs r1, 0x6
- strb r1, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
-_080631AA:
- movs r0, 0x1
-_080631AC:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end ai_switchout_natural_cure
-
- thumb_func_start ai_has_super_effective_move_on_field
-ai_has_super_effective_move_on_field: @ 80631BC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08063256
- movs r4, 0
- ldr r6, =gBattleMons
- movs r7, 0x58
- adds r0, r3, 0
- muls r0, r7
- adds r5, r0, r6
- movs r0, 0x20
- adds r0, r5
- mov r8, r0
-_0806320A:
- lsls r1, r4, 1
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- muls r0, r7
- adds r1, r0
- adds r0, r6, 0
- adds r0, 0xC
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _08063250
- ldrh r1, [r5]
- mov r3, r8
- ldrb r2, [r3]
- bl ai_rate_move
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _08063250
- mov r0, r9
- cmp r0, 0
- bne _08063278
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _08063278
-_08063250:
- adds r4, 0x1
- cmp r4, 0x3
- ble _0806320A
-_08063256:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0806327C
- b _080632FA
- .pool
-_08063278:
- movs r0, 0x1
- b _080632FC
-_0806327C:
- movs r1, 0x2
- mov r0, r10
- eors r0, r1
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _080632FA
- movs r4, 0
- ldr r6, =gBattleMons
- movs r7, 0x58
- adds r0, r3, 0
- muls r0, r7
- adds r5, r0, r6
- movs r3, 0x20
- adds r3, r5
- mov r8, r3
-_080632AE:
- lsls r1, r4, 1
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- muls r0, r7
- adds r1, r0
- adds r0, r6, 0
- adds r0, 0xC
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _080632F4
- ldrh r1, [r5]
- mov r3, r8
- ldrb r2, [r3]
- bl ai_rate_move
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _080632F4
- mov r0, r9
- cmp r0, 0
- bne _08063278
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _08063278
-_080632F4:
- adds r4, 0x1
- cmp r4, 0x3
- ble _080632AE
-_080632FA:
- movs r0, 0
-_080632FC:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end ai_has_super_effective_move_on_field
-
- thumb_func_start ai_is_too_invested_in_stat_buffs
-ai_is_too_invested_in_stat_buffs: @ 806331C
- push {r4,lr}
- movs r4, 0
- ldr r1, =gBattleMons
- ldr r0, =gActiveBank
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x18
- adds r2, r0, r1
- movs r3, 0x7
-_08063330:
- ldrb r1, [r2]
- movs r0, 0
- ldrsb r0, [r2, r0]
- cmp r0, 0x6
- ble _08063346
- subs r1, 0x6
- lsls r0, r4, 24
- asrs r0, 24
- adds r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
-_08063346:
- adds r2, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _08063330
- movs r0, 0
- cmp r4, 0x3
- bls _08063356
- movs r0, 0x1
-_08063356:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end ai_is_too_invested_in_stat_buffs
-
- thumb_func_start ai_switchout_something
-ai_switchout_something: @ 8063364
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp, 0x4]
- ldr r2, =gUnknown_02024250
- ldr r1, =gActiveBank
- ldrb r3, [r1]
- lsls r0, r3, 1
- adds r4, r0, r2
- ldrh r2, [r4]
- adds r5, r1, 0
- cmp r2, 0
- bne _08063390
- b _080635EE
-_08063390:
- ldr r0, =0x0000ffff
- cmp r2, r0
- bne _08063398
- b _080635EE
-_08063398:
- ldr r0, =gUnknown_02024270
- adds r0, r3, r0
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _080633A4
- b _080635EE
-_080633A4:
- ldr r2, =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _080633B8
- b _080635EE
-_080633B8:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0806342C
- mov r9, r3
- mov r0, r9
- bl GetBankIdentity
- movs r4, 0x2
- eors r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r1, =gAbsentBankFlags
- ldrb r1, [r1]
- ldr r2, =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08063414
- ldrb r5, [r5]
- mov r10, r5
- b _08063430
- .pool
-_08063414:
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- b _08063430
-_0806342C:
- mov r9, r3
- mov r10, r9
-_08063430:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x00808000
- ands r0, r1
- cmp r0, 0
- beq _08063490
- ldr r2, =gActiveBank
- ldrb r1, [r2]
- movs r0, 0x2
- ands r0, r1
- adds r5, r2, 0
- cmp r0, 0
- bne _08063460
- movs r4, 0
- movs r0, 0x3
- str r0, [sp, 0x8]
- b _08063498
- .pool
-_08063460:
- movs r4, 0x3
- movs r1, 0x6
- str r1, [sp, 0x8]
- b _08063498
-_08063468:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r0, r1
- movs r2, 0xA5
- lsls r2, 2
- adds r0, r2
- strb r6, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- movs r0, 0x1
- b _080635F0
- .pool
-_08063490:
- movs r4, 0
- movs r0, 0x6
- str r0, [sp, 0x8]
- ldr r5, =gActiveBank
-_08063498:
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gEnemyParty
- str r1, [sp, 0xC]
- cmp r0, 0
- bne _080634AC
- ldr r2, =gPlayerParty
- str r2, [sp, 0xC]
-_080634AC:
- adds r6, r4, 0
- b _080635E6
- .pool
-_080634BC:
- movs r0, 0x64
- muls r0, r6
- ldr r1, [sp, 0xC]
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _080634D2
- b _080635E4
-_080634D2:
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- bne _080634E0
- b _080635E4
-_080634E0:
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080635E4
- ldr r1, =gBattlePartyID
- mov r2, r9
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- beq _080635E4
- mov r2, r10
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- beq _080635E4
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- mov r2, r9
- adds r0, r2, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r6, r0
- beq _080635E4
- mov r2, r10
- adds r0, r2, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r6, r0
- beq _080635E4
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r5, 0
- movs r1, 0x2E
- bl GetMonData
- cmp r0, 0
- beq _08063558
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- ldr r1, =gBaseStats
- adds r0, r1
- ldrb r2, [r0, 0x17]
- b _08063564
- .pool
-_08063558:
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- ldr r2, =gBaseStats
- adds r0, r2
- ldrb r2, [r0, 0x16]
-_08063564:
- ldr r1, =gUnknown_02024250
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- adds r1, r4, 0
- bl ai_rate_move
- ldr r1, [sp]
- ands r1, r0
- cmp r1, 0
- beq _080635E4
- ldr r1, =gUnknown_02024270
- ldrb r0, [r5]
- adds r0, r1
- ldrb r0, [r0]
- mov r9, r0
- movs r4, 0
- movs r0, 0x64
- adds r1, r6, 0
- muls r1, r0
- mov r8, r1
- ldr r1, =gBattleMons
- movs r0, 0x58
- mov r2, r9
- muls r2, r0
- adds r0, r2, 0
- adds r5, r0, r1
- adds r7, r5, 0
- adds r7, 0x20
-_080635A2:
- adds r1, r4, 0
- adds r1, 0xD
- ldr r0, [sp, 0xC]
- add r0, r8
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- beq _080635DE
- ldrh r1, [r5]
- ldrb r2, [r7]
- bl ai_rate_move
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _080635DE
- bl Random
- lsls r0, 16
- lsrs r0, 16
- ldr r1, [sp, 0x4]
- bl __modsi3
- cmp r0, 0
- bne _080635DE
- b _08063468
-_080635DE:
- adds r4, 0x1
- cmp r4, 0x3
- ble _080635A2
-_080635E4:
- adds r6, 0x1
-_080635E6:
- ldr r0, [sp, 0x8]
- cmp r6, r0
- bge _080635EE
- b _080634BC
-_080635EE:
- movs r0, 0
-_080635F0:
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end ai_switchout_something
-
- thumb_func_start sub_8063614
-sub_8063614: @ 8063614
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r6, =gBattleMons
- ldr r4, =gActiveBank
- ldrb r2, [r4]
- movs r5, 0x58
- adds r0, r2, 0
- muls r0, r5
- adds r1, r6, 0
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x0400e000
- ands r0, r1
- cmp r0, 0
- beq _0806363E
- b _0806386C
-_0806363E:
- ldr r0, =gStatuses3
- lsls r1, r2, 2
- adds r1, r0
- ldr r1, [r1]
- movs r0, 0x80
- lsls r0, 3
- ands r1, r0
- cmp r1, 0
- beq _08063652
- b _0806386C
-_08063652:
- str r1, [sp]
- movs r0, 0xC
- adds r1, r2, 0
- movs r2, 0x17
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _0806366A
- b _0806386C
-_0806366A:
- ldrb r1, [r4]
- str r0, [sp]
- movs r0, 0xC
- movs r2, 0x47
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08063682
- b _0806386C
-_08063682:
- str r0, [sp]
- movs r0, 0xE
- movs r1, 0
- movs r2, 0x2A
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _080636B4
- ldrb r0, [r4]
- muls r0, r5
- adds r1, r0, r6
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x8
- bne _080636A8
- b _0806386C
-_080636A8:
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x8
- bne _080636B4
- b _0806386C
-_080636B4:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- beq _080636C4
- b _0806386C
-_080636C4:
- movs r0, 0
- mov r10, r0
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0806372E
- ldrb r7, [r4]
- adds r0, r7, 0
- bl GetBankIdentity
- movs r5, 0x2
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r1, =gAbsentBankFlags
- ldrb r1, [r1]
- ldr r2, =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08063718
- ldrb r6, [r4]
- b _08063732
- .pool
-_08063718:
- ldrb r0, [r4]
- bl GetBankIdentity
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r6, r0, 24
- b _08063732
-_0806372E:
- ldrb r6, [r4]
- adds r7, r6, 0
-_08063732:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x00808000
- ands r0, r1
- cmp r0, 0
- beq _08063768
- ldr r2, =gActiveBank
- ldrb r1, [r2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08063760
- movs r4, 0
- movs r1, 0x3
- mov r8, r1
- b _08063770
- .pool
-_08063760:
- movs r4, 0x3
- movs r0, 0x6
- mov r8, r0
- b _08063770
-_08063768:
- movs r4, 0
- movs r1, 0x6
- mov r8, r1
- ldr r2, =gActiveBank
-_08063770:
- ldrb r0, [r2]
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gEnemyParty
- mov r9, r1
- cmp r0, 0
- bne _08063784
- ldr r0, =gPlayerParty
- mov r9, r0
-_08063784:
- adds r5, r4, 0
- cmp r5, r8
- bge _080637F2
-_0806378A:
- movs r0, 0x64
- muls r0, r5
- mov r1, r9
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080637EC
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _080637EC
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080637EC
- ldr r1, =gBattlePartyID
- lsls r0, r7, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r5, r0
- beq _080637EC
- lsls r0, r6, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r5, r0
- beq _080637EC
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r0, r7, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r5, r0
- beq _080637EC
- adds r0, r6, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r5, r0
- beq _080637EC
- movs r0, 0x1
- add r10, r0
-_080637EC:
- adds r5, 0x1
- cmp r5, r8
- blt _0806378A
-_080637F2:
- mov r1, r10
- cmp r1, 0
- beq _0806386C
- bl ai_switch_perish_song
- lsls r0, 24
- cmp r0, 0
- bne _08063852
- bl sub_8062C58
- lsls r0, 24
- cmp r0, 0
- bne _08063852
- bl sub_8062E54
- lsls r0, 24
- cmp r0, 0
- bne _08063852
- bl ai_switchout_natural_cure
- lsls r0, 24
- cmp r0, 0
- bne _08063852
- movs r0, 0
- bl ai_has_super_effective_move_on_field
- lsls r0, 24
- cmp r0, 0
- bne _0806386C
- bl ai_is_too_invested_in_stat_buffs
- lsls r0, 24
- cmp r0, 0
- bne _0806386C
- movs r0, 0x8
- movs r1, 0x2
- bl ai_switchout_something
- lsls r0, 24
- cmp r0, 0
- bne _08063852
- movs r0, 0x4
- movs r1, 0x3
- bl ai_switchout_something
- lsls r0, 24
- cmp r0, 0
- beq _0806386C
-_08063852:
- movs r0, 0x1
- b _0806386E
- .pool
-_0806386C:
- movs r0, 0
-_0806386E:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8063614
-
- thumb_func_start sub_8063880
-sub_8063880: @ 8063880
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r6, r0, 24
- adds r5, r6, 0
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- ldr r1, =gEnemyParty
- mov r8, r1
- cmp r0, 0
- bne _080638A8
- ldr r2, =gPlayerParty
- mov r8, r2
-_080638A8:
- ldr r7, =gBattleTypeFlags
- ldr r0, [r7]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- bne _080638B6
- b _080639E6
-_080638B6:
- bl sub_8063614
- lsls r0, 24
- cmp r0, 0
- bne _080638C2
- b _080639DC
-_080638C2:
- ldrb r0, [r4]
- ldr r2, =gBattleStruct
- ldr r1, [r2]
- adds r0, r1
- movs r1, 0xA5
- lsls r1, 2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x6
- bne _080639B8
- bl sub_8063A90
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x6
- bne _080639A6
- ldr r0, [r7]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08063910
- adds r0, r6, 0
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- b _08063928
- .pool
-_08063910:
- adds r0, r5, 0
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0x2
- eors r5, r0
- adds r0, r5, 0
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r5, r0, 24
-_08063928:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x00808000
- ands r0, r1
- cmp r0, 0
- beq _08063958
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08063954
- movs r0, 0
- movs r7, 0x3
- b _0806395C
- .pool
-_08063954:
- movs r0, 0x3
- b _0806395A
-_08063958:
- movs r0, 0
-_0806395A:
- movs r7, 0x6
-_0806395C:
- adds r4, r0, 0
- cmp r4, r7
- bge _080639A6
-_08063962:
- movs r0, 0x64
- muls r0, r4
- add r0, r8
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080639A0
- ldr r1, =gBattlePartyID
- lsls r0, r6, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r4, r0
- beq _080639A0
- lsls r0, r5, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r4, r0
- beq _080639A0
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r0, r6, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r4, r0
- beq _080639A0
- adds r0, r5, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r4, r0
- bne _080639A6
-_080639A0:
- adds r4, 0x1
- cmp r4, r7
- blt _08063962
-_080639A6:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- ldr r2, =gBattleStruct
- ldr r1, [r2]
- adds r0, r1
- movs r1, 0xA5
- lsls r1, 2
- adds r0, r1
- strb r4, [r0]
-_080639B8:
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- ldr r0, [r2]
- adds r0, r1, r0
- adds r1, r0, 0
- adds r1, 0x5C
- movs r2, 0xA5
- lsls r2, 2
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- b _080639F8
- .pool
-_080639DC:
- bl sub_8063EE0
- lsls r0, 24
- cmp r0, 0
- bne _080639F8
-_080639E6:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- movs r2, 0x1
- eors r2, r0
- lsls r2, 8
- movs r0, 0x1
- movs r1, 0
- bl dp01_build_cmdbuf_x21_a_bb
-_080639F8:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8063880
-
- thumb_func_start sub_8063A08
-sub_8063A08: @ 8063A08
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- adds r6, r3, 0
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- movs r7, 0
- ldr r0, =gUnknown_0831ACE8
- mov r10, r0
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _08063A7A
- mov r5, r10
-_08063A36:
- ldrb r0, [r5]
- cmp r0, 0xFE
- beq _08063A6C
- ldr r1, [sp]
- cmp r0, r1
- bne _08063A6C
- ldrb r4, [r5, 0x1]
- cmp r4, r9
- bne _08063A56
- ldrb r1, [r6]
- ldrb r0, [r5, 0x2]
- muls r0, r1
- movs r1, 0xA
- bl __divsi3
- strb r0, [r6]
-_08063A56:
- cmp r4, r8
- bne _08063A6C
- cmp r9, r8
- beq _08063A6C
- ldrb r1, [r6]
- ldrb r0, [r5, 0x2]
- muls r0, r1
- movs r1, 0xA
- bl __divsi3
- strb r0, [r6]
-_08063A6C:
- adds r5, 0x3
- adds r7, 0x3
- mov r1, r10
- adds r0, r7, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08063A36
-_08063A7A:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8063A08
-
- thumb_func_start sub_8063A90
-sub_8063A90: @ 8063A90
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x24
- ldr r4, =gActiveBank
- ldrb r2, [r4]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, r2, r0
- adds r1, r0, 0
- adds r1, 0x5C
- ldrb r0, [r1]
- cmp r0, 0x6
- beq _08063AB2
- b _08063E50
-_08063AB2:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- beq _08063AE0
- ldr r1, =gBattlePartyID
- lsls r0, r2, 1
- adds r0, r1
- ldrb r0, [r0]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- b _08063E50
- .pool
-_08063AE0:
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- beq _08063B6C
- str r2, [sp, 0x10]
- adds r0, r2, 0
- bl GetBankIdentity
- movs r5, 0x2
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- ldr r1, =gAbsentBankFlags
- ldrb r1, [r1]
- ldr r2, =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08063B20
- ldrb r4, [r4]
- str r4, [sp, 0x14]
- b _08063B36
- .pool
-_08063B20:
- ldrb r0, [r4]
- bl GetBankIdentity
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x14]
-_08063B36:
- bl Random
- movs r3, 0x2
- ands r0, r3
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- ldr r4, [sp, 0x4]
- lsls r0, r4, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08063B8A
- eors r4, r3
- lsls r0, r4, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- b _08063B8A
- .pool
-_08063B6C:
- adds r0, r2, 0
- bl GetBankIdentity
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- ldrb r4, [r4]
- str r4, [sp, 0x14]
- str r4, [sp, 0x10]
-_08063B8A:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x00808000
- ands r0, r1
- cmp r0, 0
- beq _08063BC2
- ldr r2, =gActiveBank
- ldrb r1, [r2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08063BB8
- movs r0, 0
- str r0, [sp, 0x18]
- movs r1, 0x3
- str r1, [sp, 0x1C]
- b _08063BCC
- .pool
-_08063BB8:
- movs r4, 0x3
- str r4, [sp, 0x18]
- movs r0, 0x6
- str r0, [sp, 0x1C]
- b _08063BCC
-_08063BC2:
- movs r1, 0
- str r1, [sp, 0x18]
- movs r2, 0x6
- str r2, [sp, 0x1C]
- ldr r2, =gActiveBank
-_08063BCC:
- ldrb r0, [r2]
- bl GetBankSide
- lsls r0, 24
- ldr r4, =gEnemyParty
- str r4, [sp, 0x20]
- cmp r0, 0
- bne _08063BE0
- ldr r0, =gPlayerParty
- str r0, [sp, 0x20]
-_08063BE0:
- movs r1, 0
- mov r9, r1
-_08063BE4:
- movs r2, 0
- str r2, [sp, 0x8]
- movs r4, 0x6
- str r4, [sp, 0xC]
- ldr r7, [sp, 0x18]
- ldr r0, [sp, 0x1C]
- cmp r7, r0
- blt _08063BF6
- b _08063CF2
-_08063BF6:
- lsls r0, r7, 2
- ldr r1, =gBitTable
- adds r0, r1
- mov r8, r0
- mov r10, sp
-_08063C00:
- movs r0, 0x64
- muls r0, r7
- ldr r2, [sp, 0x20]
- adds r4, r2, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- beq _08063CD8
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08063CD8
- mov r4, r8
- ldr r0, [r4]
- mov r1, r9
- ands r0, r1
- cmp r0, 0
- bne _08063CD8
- ldr r1, =gBattlePartyID
- ldr r2, [sp, 0x10]
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- beq _08063CD8
- ldr r4, [sp, 0x14]
- lsls r0, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- beq _08063CD8
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r0, r2, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r7, r0
- beq _08063CD8
- adds r0, r4, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r7, r0
- beq _08063CD8
- ldr r1, =gBaseStats
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- ldrb r5, [r0, 0x6]
- ldrb r6, [r0, 0x7]
- movs r0, 0xA
- mov r1, r10
- strb r0, [r1]
- movs r0, 0x58
- ldr r2, [sp, 0x4]
- adds r4, r2, 0
- muls r4, r0
- ldr r0, =gBattleMons
- adds r4, r0
- adds r0, r4, 0
- adds r0, 0x21
- ldrb r0, [r0]
- adds r1, r5, 0
- adds r2, r6, 0
- mov r3, sp
- bl sub_8063A08
- adds r4, 0x22
- ldrb r0, [r4]
- adds r1, r5, 0
- adds r2, r6, 0
- mov r3, sp
- bl sub_8063A08
- ldr r2, [sp, 0x8]
- mov r1, r10
- ldrb r1, [r1]
- cmp r2, r1
- bcs _08063CE6
- mov r2, r10
- ldrb r2, [r2]
- str r2, [sp, 0x8]
- lsls r0, r7, 24
- lsrs r0, 24
- str r0, [sp, 0xC]
- b _08063CE6
- .pool
-_08063CD8:
- mov r4, r8
- ldr r0, [r4]
- mov r1, r9
- orrs r1, r0
- lsls r0, r1, 24
- lsrs r0, 24
- mov r9, r0
-_08063CE6:
- movs r2, 0x4
- add r8, r2
- adds r7, 0x1
- ldr r4, [sp, 0x1C]
- cmp r7, r4
- blt _08063C00
-_08063CF2:
- ldr r0, [sp, 0xC]
- cmp r0, 0x6
- beq _08063D54
- movs r7, 0
- movs r0, 0x64
- ldr r1, [sp, 0xC]
- adds r5, r1, 0
- muls r5, r0
-_08063D02:
- adds r1, r7, 0
- adds r1, 0xD
- ldr r2, [sp, 0x20]
- adds r0, r2, r5
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- beq _08063D2A
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- adds r0, r4, 0
- ldr r2, [sp, 0x4]
- bl TypeCalc
- movs r1, 0x2
- ands r1, r0
- cmp r1, 0
- bne _08063D30
-_08063D2A:
- adds r7, 0x1
- cmp r7, 0x3
- ble _08063D02
-_08063D30:
- cmp r7, 0x4
- beq _08063D36
- b _08063E4E
-_08063D36:
- ldr r4, [sp, 0xC]
- lsls r0, r4, 2
- ldr r1, =gBitTable
- adds r0, r1
- ldr r0, [r0]
- mov r2, r9
- orrs r2, r0
- lsls r0, r2, 24
- lsrs r0, 24
- mov r9, r0
- b _08063D58
- .pool
-_08063D54:
- movs r4, 0x3F
- mov r9, r4
-_08063D58:
- mov r0, r9
- cmp r0, 0x3F
- beq _08063D60
- b _08063BE4
-_08063D60:
- ldr r0, =gDynamicBasePower
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- strb r1, [r0, 0x13]
- ldr r0, =gBattleScripting
- movs r2, 0x1
- strb r2, [r0, 0xE]
- ldr r0, =gBattleMoveFlags
- strb r1, [r0]
- ldr r0, =gCritMultiplier
- strb r2, [r0]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r2, 0x6
- str r2, [sp, 0xC]
- ldr r7, [sp, 0x18]
- ldr r4, [sp, 0x1C]
- cmp r7, r4
- bge _08063E4E
-_08063D8A:
- movs r0, 0x64
- adds r6, r7, 0
- muls r6, r0
- ldr r0, [sp, 0x20]
- adds r4, r0, r6
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- adds r1, r7, 0x1
- mov r10, r1
- cmp r0, 0
- beq _08063E46
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08063E46
- ldr r1, =gBattlePartyID
- ldr r2, [sp, 0x10]
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- beq _08063E46
- ldr r4, [sp, 0x14]
- lsls r0, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- beq _08063E46
- ldr r0, =gBattleStruct
- ldr r1, [r0]
- adds r0, r2, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r7, r0
- beq _08063E46
- adds r0, r4, r1
- adds r0, 0x5C
- ldrb r0, [r0]
- cmp r7, r0
- beq _08063E46
- movs r5, 0
- mov r9, r6
- ldr r0, =gBattleMoveDamage
- mov r8, r0
- ldr r6, =gActiveBank
-_08063DEE:
- adds r1, r5, 0
- adds r1, 0xD
- ldr r0, [sp, 0x20]
- add r0, r9
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- movs r0, 0
- mov r1, r8
- str r0, [r1]
- cmp r4, 0
- beq _08063E2A
- ldr r0, =gBattleMoves
- lsls r1, r4, 1
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- cmp r0, 0x1
- beq _08063E2A
- ldrb r0, [r6]
- ldr r1, [sp, 0x4]
- bl AI_CalcDmg
- ldrb r1, [r6]
- adds r0, r4, 0
- ldr r2, [sp, 0x4]
- bl TypeCalc
-_08063E2A:
- mov r2, r8
- ldr r0, [r2]
- ldr r4, [sp, 0x8]
- cmp r4, r0
- bge _08063E40
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
- lsls r0, r7, 24
- lsrs r0, 24
- str r0, [sp, 0xC]
-_08063E40:
- adds r5, 0x1
- cmp r5, 0x3
- ble _08063DEE
-_08063E46:
- mov r7, r10
- ldr r0, [sp, 0x1C]
- cmp r7, r0
- blt _08063D8A
-_08063E4E:
- ldr r0, [sp, 0xC]
-_08063E50:
- add sp, 0x24
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8063A90
-
- thumb_func_start ai_identify_item_effect
-ai_identify_item_effect: @ 8063E84
- push {r4,lr}
- adds r2, r1, 0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bne _08063E94
- movs r0, 0x1
- b _08063EDA
-_08063E94:
- ldrb r1, [r2, 0x4]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08063EA2
- movs r0, 0x2
- b _08063EDA
-_08063EA2:
- ldrb r4, [r2, 0x3]
- movs r3, 0x3F
- adds r0, r3, 0
- ands r0, r4
- cmp r0, 0
- beq _08063EB2
- movs r0, 0x3
- b _08063EDA
-_08063EB2:
- ldrb r1, [r2]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _08063EC8
- ldrb r0, [r2, 0x1]
- cmp r0, 0
- bne _08063EC8
- ldrb r0, [r2, 0x2]
- cmp r0, 0
- beq _08063ECC
-_08063EC8:
- movs r0, 0x4
- b _08063EDA
-_08063ECC:
- movs r0, 0x80
- ands r0, r4
- cmp r0, 0
- bne _08063ED8
- movs r0, 0x6
- b _08063EDA
-_08063ED8:
- movs r0, 0x5
-_08063EDA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end ai_identify_item_effect
-
- thumb_func_start sub_8063EE0
-sub_8063EE0: @ 8063EE0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r0, 0
- mov r10, r0
- movs r7, 0
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _08063F12
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _08063F12
- b _0806437C
-_08063F12:
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- ldr r5, =gEnemyParty
- cmp r0, 0
- bne _08063F24
- ldr r5, =gPlayerParty
-_08063F24:
- movs r1, 0
- mov r8, r1
-_08063F28:
- movs r0, 0x64
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- adds r4, r5, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08063F64
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _08063F64
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _08063F64
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
-_08063F64:
- movs r0, 0x1
- add r8, r0
- mov r1, r8
- cmp r1, 0x5
- ble _08063F28
- movs r2, 0
- mov r8, r2
-_08063F72:
- ldr r1, =gBattleResources
- mov r0, r8
- cmp r0, 0
- beq _08063F8E
- ldr r0, [r1]
- ldr r0, [r0, 0x18]
- adds r0, 0x50
- ldrb r0, [r0]
- mov r2, r8
- subs r0, r2
- adds r0, 0x1
- cmp r10, r0
- ble _08063F8E
- b _08064370
-_08063F8E:
- ldr r0, [r1]
- ldr r0, [r0, 0x18]
- mov r2, r8
- lsls r1, r2, 1
- adds r0, 0x48
- adds r0, r1
- ldrh r0, [r0]
- mov r9, r0
- str r1, [sp]
- cmp r0, 0
- bne _08063FA6
- b _08064370
-_08063FA6:
- ldr r1, =gItemEffectTable
- subs r0, 0xD
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- cmp r1, 0
- bne _08063FB6
- b _08064370
-_08063FB6:
- mov r0, r9
- cmp r0, 0xAF
- bne _08063FE8
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003214
- adds r5, r0, r1
- b _08063FEA
- .pool
-_08063FE8:
- adds r5, r1, 0
-_08063FEA:
- mov r2, r9
- lsls r0, r2, 24
- lsrs r0, 24
- adds r1, r5, 0
- bl ai_identify_item_effect
- ldr r4, =gActiveBank
- ldrb r1, [r4]
- lsrs r1, 1
- ldr r3, =gBattleStruct
- ldr r2, [r3]
- adds r1, r2
- adds r1, 0xC4
- strb r0, [r1]
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0xC4
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r0, 0x5
- bls _0806401A
- b _08064324
-_0806401A:
- lsls r0, 2
- ldr r1, =_08064030
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08064030:
- .4byte _08064048
- .4byte _08064074
- .4byte _080640BC
- .4byte _08064214
- .4byte _080642F4
- .4byte _0806437C
-_08064048:
- ldr r2, =gBattleMons
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r1, [r0, 0x2C]
- ldrh r0, [r0, 0x28]
- lsrs r1, 2
- cmp r0, r1
- bcc _08064060
- b _08064324
-_08064060:
- cmp r0, 0
- bne _08064066
- b _08064324
-_08064066:
- movs r7, 0x1
- b _08064328
- .pool
-_08064074:
- mov r0, r9
- movs r1, 0x4
- movs r2, 0x4
- bl GetItemEffectParamOffset
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08064088
- b _08064324
-_08064088:
- ldr r2, =gBattleMons
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r1, r0, r2
- ldrh r2, [r1, 0x28]
- cmp r2, 0
- bne _0806409C
- b _08064324
-_0806409C:
- ldrh r3, [r1, 0x2C]
- lsrs r0, r3, 2
- cmp r2, r0
- bcc _08064066
- adds r0, r2, 0
- subs r0, r3, r0
- adds r1, r5, r4
- ldrb r1, [r1]
- cmp r0, r1
- bgt _080640B2
- b _08064324
-_080640B2:
- b _08064066
- .pool
-_080640BC:
- ldr r3, =gActiveBank
- ldrb r0, [r3]
- lsrs r0, 1
- ldr r2, =gBattleStruct
- ldr r1, [r2]
- adds r0, r1
- adds r0, 0xC6
- movs r1, 0
- strb r1, [r0]
- ldrb r1, [r5, 0x3]
- movs r6, 0x20
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08064100
- ldr r1, =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- beq _08064100
- lsrs r1, r4, 1
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0xC6
- ldrb r0, [r1]
- orrs r0, r6
- strb r0, [r1]
- movs r7, 0x1
-_08064100:
- ldrb r1, [r5, 0x3]
- movs r6, 0x10
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0806413A
- ldr r1, =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- bne _0806412A
- movs r0, 0x80
- ands r1, r0
- cmp r1, 0
- beq _0806413A
-_0806412A:
- lsrs r1, r4, 1
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0xC6
- ldrb r0, [r1]
- orrs r0, r6
- strb r0, [r1]
- movs r7, 0x1
-_0806413A:
- ldrb r1, [r5, 0x3]
- movs r6, 0x8
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0806416C
- ldr r1, =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0806416C
- lsrs r1, r4, 1
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0xC6
- ldrb r0, [r1]
- orrs r0, r6
- strb r0, [r1]
- movs r7, 0x1
-_0806416C:
- ldrb r1, [r5, 0x3]
- movs r6, 0x4
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0806419E
- ldr r1, =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0806419E
- lsrs r1, r4, 1
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0xC6
- ldrb r0, [r1]
- orrs r0, r6
- strb r0, [r1]
- movs r7, 0x1
-_0806419E:
- ldrb r1, [r5, 0x3]
- movs r6, 0x2
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080641D0
- ldr r1, =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080641D0
- lsrs r1, r4, 1
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0xC6
- ldrb r0, [r1]
- orrs r0, r6
- strb r0, [r1]
- movs r7, 0x1
-_080641D0:
- ldrb r1, [r5, 0x3]
- movs r4, 0x1
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080641DE
- b _08064324
-_080641DE:
- ldr r1, =gBattleMons
- ldrb r3, [r3]
- movs r0, 0x58
- muls r0, r3
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- bne _080641F6
- b _08064324
-_080641F6:
- lsrs r1, r3, 1
- ldr r0, [r2]
- adds r1, r0
- adds r1, 0xC6
- ldrb r0, [r1]
- orrs r0, r4
- strb r0, [r1]
- b _08064066
- .pool
-_08064214:
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r3, =gBattleStruct
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0xC6
- movs r1, 0
- strb r1, [r0]
- ldr r1, =gDisableStructs
- ldrb r2, [r4]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x16]
- cmp r0, 0
- beq _08064324
- ldrb r1, [r5]
- movs r6, 0xF
- adds r0, r6, 0
- ands r0, r1
- cmp r0, 0
- beq _08064254
- lsrs r2, 1
- ldr r0, [r3]
- adds r2, r0
- adds r2, 0xC6
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
-_08064254:
- ldrb r1, [r5, 0x1]
- movs r7, 0xF0
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- beq _08064272
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0xC6
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0]
-_08064272:
- ldrb r1, [r5, 0x1]
- adds r0, r6, 0
- ands r0, r1
- cmp r0, 0
- beq _0806428E
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0xC6
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_0806428E:
- ldrb r1, [r5, 0x2]
- adds r0, r6, 0
- ands r0, r1
- cmp r0, 0
- beq _080642AA
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0xC6
- ldrb r1, [r0]
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0]
-_080642AA:
- ldrb r1, [r5, 0x2]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- beq _080642C6
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0xC6
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
-_080642C6:
- ldrb r1, [r5]
- movs r0, 0x30
- ands r0, r1
- cmp r0, 0
- bne _080642D2
- b _08064066
-_080642D2:
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r1, [r3]
- adds r0, r1
- adds r0, 0xC6
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
- b _08064066
- .pool
-_080642F4:
- ldr r4, =gActiveBank
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r2, =gDisableStructs
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x16]
- cmp r0, 0
- beq _08064324
- ldr r0, =gSideTimers
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x4]
- cmp r0, 0
- bne _08064324
- b _08064066
-_08064324:
- cmp r7, 0
- beq _08064370
-_08064328:
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- lsrs r0, 1
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- lsls r0, 1
- adds r0, r1
- adds r0, 0xC0
- mov r1, r9
- strb r1, [r0]
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r0, [r0, 0x18]
- adds r0, 0x48
- ldr r2, [sp]
- adds r0, r2
- movs r1, 0
- strh r1, [r0]
- adds r0, r7, 0
- b _0806437E
- .pool
-_08064370:
- movs r0, 0x1
- add r8, r0
- mov r1, r8
- cmp r1, 0x3
- bgt _0806437C
- b _08063F72
-_0806437C:
- movs r0, 0
-_0806437E:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8063EE0
-
- .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 639be6b7d..000000000
--- a/asm/battle_anim.s
+++ /dev/null
@@ -1,4205 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80A3934
-sub_80A3934: @ 80A3934
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, =gAnimFramesToWait
- movs r1, 0
- strb r1, [r0]
- ldr r0, =gAnimScriptActive
- strb r1, [r0]
- ldr r0, =gAnimVisualTaskCount
- strb r1, [r0]
- ldr r0, =gAnimSoundTaskCount
- strb r1, [r0]
- ldr r0, =gDisableStructMoveAnim
- movs r1, 0
- str r1, [r0]
- ldr r0, =gMoveDmgMoveAnim
- str r1, [r0]
- ldr r0, =gMovePowerMoveAnim
- movs r2, 0
- strh r1, [r0]
- ldr r0, =gHappinessMoveAnim
- strb r2, [r0]
- ldr r4, =gUnknown_02038430
- ldr r5, =gUnknown_02038432
- ldr r6, =gUnknown_02038433
- ldr r7, =gAnimMoveIndex
- ldr r0, =gAnimationBankAttacker
- mov r12, r0
- ldr r1, =gAnimationBankTarget
- mov r8, r1
- ldr r0, =gUnknown_02038440
- mov r9, r0
- ldr r1, =0x0000ffff
- adds r3, r1, 0
- ldr r1, =gAnimSpriteIndexArray
- movs r2, 0x7
-_080A397E:
- ldrh r0, [r1]
- orrs r0, r3
- strh r0, [r1]
- adds r1, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _080A397E
- ldr r1, =gBattleAnimArgs
- movs r2, 0
- adds r0, r1, 0
- adds r0, 0xE
-_080A3994:
- strh r2, [r0]
- subs r0, 0x2
- cmp r0, r1
- bge _080A3994
- 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
- .pool
- thumb_func_end sub_80A3934
-
- thumb_func_start move_anim_start_t1
-move_anim_start_t1: @ 80A3A10
- push {lr}
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r2, =gAnimationBankAttacker
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r2, =gAnimationBankTarget
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r0, =gUnknown_082C8D6C
- movs r2, 0x1
- bl move_something
- pop {r0}
- bx r0
- .pool
- thumb_func_end move_anim_start_t1
-
- thumb_func_start move_something
-move_something: @ 80A3A48
- 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 IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A3AE8
- bl sub_80A8278
- movs r0, 0
- bl sub_8072A88
- movs r4, 0
- mov r0, r8
- lsls r0, 2
- mov r10, r0
- ldr r6, =gBattlePartyID
- movs r7, 0x64
- ldr r5, =gUnknown_02038438
-_080A3A84:
- lsls r0, r4, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080A3AA8
- ldrh r0, [r6]
- muls r0, r7
- ldr r1, =gEnemyParty
- b _080A3AAE
- .pool
-_080A3AA8:
- ldrh r0, [r6]
- muls r0, r7
- ldr r1, =gPlayerParty
-_080A3AAE:
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- strh r0, [r5]
- adds r6, 0x2
- adds r5, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- ble _080A3A84
- ldr r3, =gAnimMoveIndex
- ldr r5, =gUnknown_02038430
- ldr r1, =gAnimScriptActive
- mov r12, r1
- ldr r7, =gAnimScriptCallback
- ldr r6, =move_anim_execute
- b _080A3B10
- .pool
-_080A3AE8:
- ldr r3, =gAnimMoveIndex
- ldr r5, =gUnknown_02038430
- mov r0, r8
- lsls r0, 2
- mov r10, r0
- ldr r1, =gAnimScriptActive
- mov r12, r1
- ldr r7, =gAnimScriptCallback
- ldr r6, =move_anim_execute
- ldr r2, =gUnknown_02039F34
- ldr r1, =gUnknown_02038438
- movs r4, 0x3
-_080A3B00:
- ldr r0, [r2]
- ldr r0, [r0, 0x18]
- ldrh r0, [r0]
- strh r0, [r1]
- adds r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bge _080A3B00
-_080A3B10:
- mov r0, r9
- cmp r0, 0
- bne _080A3B38
- strh r0, [r3]
- b _080A3B3C
- .pool
-_080A3B38:
- mov r1, r8
- strh r1, [r3]
-_080A3B3C:
- ldr r1, =gBattleAnimArgs
- movs r2, 0
- adds r0, r1, 0
- adds r0, 0xE
-_080A3B44:
- strh r2, [r0]
- subs r0, 0x2
- cmp r0, r1
- bge _080A3B44
- 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, =gBattleAnimScriptPtr
- str r0, [r1]
- movs r0, 0x1
- mov r1, r12
- strb r0, [r1]
- movs r0, 0
- ldr r1, =gAnimFramesToWait
- strb r0, [r1]
- str r6, [r7]
- ldr r0, =0x0000ffff
- adds r2, r0, 0
- ldr r1, =gAnimSpriteIndexArray
- movs r4, 0x7
-_080A3B76:
- ldrh r0, [r1]
- orrs r0, r2
- strh r0, [r1]
- adds r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bge _080A3B76
- mov r1, r9
- cmp r1, 0
- beq _080A3BC2
- movs r4, 0
- ldr r2, =gUnknown_082C8D64
- b _080A3BAA
- .pool
-_080A3BA8:
- adds r4, 0x1
-_080A3BAA:
- lsls r0, r4, 1
- adds r0, r2
- ldrh r0, [r0]
- ldr r1, =0x0000ffff
- cmp r0, r1
- beq _080A3BC2
- cmp r8, r0
- bne _080A3BA8
- ldr r0, =gMPlay_BGM
- movs r2, 0x80
- bl m4aMPlayVolumeControl
-_080A3BC2:
- ldr r0, =gUnknown_02022E24
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E26
- strh r1, [r0]
- ldr r0, =gUnknown_02022E28
- strh r1, [r0]
- ldr r0, =gUnknown_02022E2A
- 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
- .pool
- thumb_func_end move_something
-
- thumb_func_start move_anim_8072740
-move_anim_8072740: @ 80A3BFC
- push {r4,lr}
- adds r4, r0, 0
- bl FreeSpriteOamMatrix
- adds r0, r4, 0
- bl DestroySprite
- ldr r1, =gAnimVisualTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end move_anim_8072740
-
- thumb_func_start move_anim_task_del
-move_anim_task_del: @ 80A3C1C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- ldr r1, =gAnimVisualTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end move_anim_task_del
-
- thumb_func_start move_anim_related_task_del
-move_anim_related_task_del: @ 80A3C38
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- ldr r1, =gAnimSoundTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end move_anim_related_task_del
-
- thumb_func_start sub_80A3C54
-sub_80A3C54: @ 80A3C54
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- movs r2, 0
- ldr r4, =0x0000ffff
- ldr r1, =gAnimSpriteIndexArray
-_080A3C60:
- ldrh r0, [r1]
- cmp r0, r4
- bne _080A3C74
- strh r3, [r1]
- b _080A3C7C
- .pool
-_080A3C74:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, 0x7
- ble _080A3C60
-_080A3C7C:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A3C54
-
- thumb_func_start sub_80A3C84
-sub_80A3C84: @ 80A3C84
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- movs r2, 0
- ldr r0, =0x0000ffff
- adds r4, r0, 0
- ldr r1, =gAnimSpriteIndexArray
-_080A3C92:
- ldrh r0, [r1]
- cmp r0, r3
- bne _080A3CA8
- orrs r0, r4
- strh r0, [r1]
- b _080A3CB0
- .pool
-_080A3CA8:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, 0x7
- ble _080A3C92
-_080A3CB0:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A3C84
-
- thumb_func_start move_anim_waiter
-move_anim_waiter: @ 80A3CB8
- push {lr}
- ldr r2, =gAnimFramesToWait
- ldrb r1, [r2]
- movs r0, 0
- ldrsb r0, [r2, r0]
- cmp r0, 0
- bgt _080A3CDC
- ldr r0, =gAnimScriptCallback
- ldr r1, =move_anim_execute
- str r1, [r0]
- movs r0, 0
- b _080A3CDE
- .pool
-_080A3CDC:
- subs r0, r1, 0x1
-_080A3CDE:
- strb r0, [r2]
- pop {r0}
- bx r0
- thumb_func_end move_anim_waiter
-
- thumb_func_start move_anim_execute
-move_anim_execute: @ 80A3CE4
- push {r4,lr}
- ldr r4, =gUnknown_08525E98
-_080A3CE8:
- ldr r0, =gBattleAnimScriptPtr
- ldr r0, [r0]
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, =gAnimFramesToWait
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- bne _080A3D0C
- ldr r0, =gAnimScriptActive
- ldrb r0, [r0]
- cmp r0, 0
- bne _080A3CE8
-_080A3D0C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end move_anim_execute
-
- thumb_func_start ma00_load_graphics
-ma00_load_graphics: @ 80A3D24
- push {r4-r6,lr}
- ldr r6, =gBattleAnimScriptPtr
- 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, =gUnknown_085112C4
- adds r0, r5, r0
- bl LoadCompressedObjectPicUsingHeap
- ldr r0, =gUnknown_08511BCC
- adds r5, r0
- adds r0, r5, 0
- bl LoadCompressedObjectPaletteUsingHeap
- ldr r0, [r6]
- adds r0, 0x2
- str r0, [r6]
- ldr r0, =0xffffd8f0
- adds r4, r0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- bl sub_80A3C54
- ldr r1, =gAnimFramesToWait
- movs r0, 0x1
- strb r0, [r1]
- ldr r1, =gAnimScriptCallback
- ldr r0, =move_anim_waiter
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma00_load_graphics
-
- thumb_func_start ma01_080728D0
-@ void ma01_080728D0()
-ma01_080728D0: @ 80A3D8C
- push {r4-r6,lr}
- ldr r6, =gBattleAnimScriptPtr
- 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, =gUnknown_08524B44
- ldr r0, =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_80A3C84
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma01_080728D0
-
- thumb_func_start ma02_instanciate_template
-ma02_instanciate_template: @ 80A3DD8
- push {r4-r7,lr}
- ldr r5, =gBattleAnimScriptPtr
- 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 _080A3E28
- adds r6, r5, 0
- ldr r5, =gBattleAnimArgs
- adds r3, r0, 0
-_080A3E10:
- 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 _080A3E10
-_080A3E28:
- movs r0, 0x80
- ands r0, r4
- cmp r0, 0
- beq _080A3E58
- movs r0, 0x80
- eors r4, r0
- cmp r4, 0x3F
- bls _080A3E48
- adds r0, r4, 0
- subs r0, 0x40
- b _080A3E4A
- .pool
-_080A3E48:
- negs r0, r4
-_080A3E4A:
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gAnimationBankTarget
- b _080A3E6A
- .pool
-_080A3E58:
- cmp r4, 0x3F
- bls _080A3E62
- adds r0, r4, 0
- subs r0, 0x40
- b _080A3E64
-_080A3E62:
- negs r0, r4
-_080A3E64:
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gAnimationBankAttacker
-_080A3E6A:
- ldrb r0, [r0]
- bl sub_80A82E4
- 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 _080A3E88
- movs r6, 0x3
-_080A3E88:
- ldr r5, =gAnimationBankTarget
- ldrb r0, [r5]
- movs r1, 0x2
- bl sub_80A5C6C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldrb r0, [r5]
- movs r1, 0x3
- bl sub_80A5C6C
- 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, =gAnimVisualTaskCount
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma02_instanciate_template
-
- thumb_func_start sub_80A3ECC
-sub_80A3ECC: @ 80A3ECC
- push {r4-r7,lr}
- ldr r4, =gBattleAnimScriptPtr
- 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 _080A3F1C
- adds r5, r4, 0
- ldr r4, =gBattleAnimArgs
- adds r3, r0, 0
-_080A3F04:
- 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 _080A3F04
-_080A3F1C:
- adds r0, r6, 0
- adds r1, r7, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- bl _call_via_r6
- ldr r1, =gAnimVisualTaskCount
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A3ECC
-
- thumb_func_start ma04_wait_countdown
-ma04_wait_countdown: @ 80A3F48
- push {r4,lr}
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r2, r0, 0x1
- str r2, [r1]
- ldr r3, =gAnimFramesToWait
- ldrb r0, [r0, 0x1]
- strb r0, [r3]
- lsls r0, 24
- cmp r0, 0
- bne _080A3F66
- movs r4, 0x1
- negs r4, r4
- adds r0, r4, 0
- strb r0, [r3]
-_080A3F66:
- adds r0, r2, 0x1
- str r0, [r1]
- ldr r1, =gAnimScriptCallback
- ldr r0, =move_anim_waiter
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma04_wait_countdown
-
- thumb_func_start sub_80A3F88
-sub_80A3F88: @ 80A3F88
- push {lr}
- ldr r0, =gAnimVisualTaskCount
- ldrb r2, [r0]
- cmp r2, 0
- bne _080A3FAC
- ldr r0, =gBattleAnimScriptPtr
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- ldr r0, =gAnimFramesToWait
- strb r2, [r0]
- b _080A3FB2
- .pool
-_080A3FAC:
- ldr r1, =gAnimFramesToWait
- movs r0, 0x1
- strb r0, [r1]
-_080A3FB2:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A3F88
-
- thumb_func_start nullsub_6
-nullsub_6: @ 80A3FBC
- bx lr
- thumb_func_end nullsub_6
-
- thumb_func_start nullsub_7
-nullsub_7: @ 80A3FC0
- bx lr
- thumb_func_end nullsub_7
-
- thumb_func_start sub_80A3FC4
-sub_80A3FC4: @ 80A3FC4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r0, 0
- mov r8, r0
- ldr r0, =gAnimVisualTaskCount
- ldrb r0, [r0]
- cmp r0, 0
- bne _080A3FEC
- ldr r0, =gAnimSoundTaskCount
- ldrb r0, [r0]
- cmp r0, 0
- bne _080A3FEC
- ldr r1, =gUnknown_02038430
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _080A3FEC
- ldrb r0, [r1, 0x1]
- cmp r0, 0xFF
- beq _080A4004
-_080A3FEC:
- ldr r1, =gSoundAnimFramesToWait
- movs r0, 0
- strh r0, [r1]
- b _080A401E
- .pool
-_080A4004:
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- beq _080A403C
- ldr r1, =gSoundAnimFramesToWait
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5A
- bhi _080A4030
-_080A401E:
- ldr r1, =gAnimFramesToWait
- movs r0, 0x1
- strb r0, [r1]
- b _080A40A2
- .pool
-_080A4030:
- ldr r0, =gMPlay_SE1
- bl m4aMPlayStop
- ldr r0, =gMPlay_SE2
- bl m4aMPlayStop
-_080A403C:
- ldr r1, =gSoundAnimFramesToWait
- movs r0, 0
- strh r0, [r1]
- movs r5, 0
- ldr r7, =0x0000ffff
- ldr r6, =gUnknown_08524B44
- ldr r4, =gAnimSpriteIndexArray
-_080A404A:
- ldrh r0, [r4]
- cmp r0, r7
- beq _080A406E
- 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]
-_080A406E:
- adds r4, 0x2
- adds r5, 0x1
- cmp r5, 0x7
- ble _080A404A
- mov r1, r8
- cmp r1, 0
- bne _080A40A2
- ldr r0, =gMPlay_BGM
- ldr r1, =0x0000ffff
- movs r2, 0x80
- lsls r2, 1
- bl m4aMPlayVolumeControl
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A409C
- bl sub_80A8278
- movs r0, 0x1
- bl sub_8072A88
-_080A409C:
- ldr r0, =gAnimScriptActive
- mov r1, r8
- strb r1, [r0]
-_080A40A2:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A3FC4
-
- thumb_func_start ma09_play_sound
-ma09_play_sound: @ 80A40CC
- push {r4,lr}
- ldr r4, =gBattleAnimScriptPtr
- 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
- .pool
- thumb_func_end ma09_play_sound
-
- thumb_func_start sub_80A40F4
-sub_80A40F4: @ 80A40F4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- mov r8, r1
- adds r6, r0, r1
- ldr r1, =gBankSpriteIds
- movs r2, 0
- ldrsh r0, [r6, r2]
- adds r0, r1
- ldrb r5, [r0]
- ldr r1, =gSprites
- lsls r0, r5, 4
- adds r0, r5
- lsls r0, 2
- adds r4, r0, r1
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- movs r3, 0x4
- ldrsh r0, [r6, r3]
- cmp r0, 0
- bne _080A4148
- adds r0, r7, 0
- bl move_anim_task_del
- b _080A41BE
- .pool
-_080A4148:
- ldr r0, =task_pA_ma0A_obj_to_bg_pal
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r2, r0, 24
- mov r1, r8
- subs r1, 0x8
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r1, r0, r1
- strh r5, [r1, 0x8]
- ldrh r0, [r4, 0x24]
- ldrh r3, [r4, 0x20]
- adds r0, r3
- strh r0, [r1, 0xA]
- ldrh r0, [r4, 0x26]
- ldrh r4, [r4, 0x22]
- adds r0, r4
- strh r0, [r1, 0xC]
- movs r3, 0x2
- ldrsh r0, [r6, r3]
- cmp r0, 0
- bne _080A4190
- ldr r0, =gUnknown_02022E18
- ldrh r0, [r0]
- strh r0, [r1, 0xE]
- ldr r0, =gUnknown_02022E1A
- b _080A4198
- .pool
-_080A4190:
- ldr r0, =gUnknown_02022E1C
- ldrh r0, [r0]
- strh r0, [r1, 0xE]
- ldr r0, =gUnknown_02022E1E
-_080A4198:
- ldrh r0, [r0]
- strh r0, [r1, 0x10]
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r6, 0x2]
- strh r1, [r0, 0x12]
- ldrh r1, [r6]
- strh r1, [r0, 0x14]
- ldr r1, =gUnknown_02038430
- movs r3, 0x6
- ldrsh r0, [r6, r3]
- adds r0, r1
- strb r2, [r0]
- adds r0, r7, 0
- bl move_anim_task_del
-_080A41BE:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A40F4
-
- thumb_func_start sub_80A41D8
-sub_80A41D8: @ 80A41D8
- push {r4,r5,lr}
- ldr r1, =gBattleAnimScriptPtr
- ldr r2, [r1]
- adds r0, r2, 0x1
- str r0, [r1]
- ldrb r0, [r2, 0x1]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A41F8
- ldr r0, =gAnimationBankTarget
- b _080A41FA
- .pool
-_080A41F8:
- ldr r0, =gAnimationBankAttacker
-_080A41FA:
- ldrb r4, [r0]
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _080A4266
- adds r0, r4, 0
- bl GetBankIdentity
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _080A4226
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A4230
-_080A4226:
- movs r5, 0
- b _080A4232
- .pool
-_080A4230:
- movs r5, 0x1
-_080A4232:
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0
- bl sub_80A438C
- ldr r0, =sub_80A40F4
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gAnimVisualTaskCount
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- strh r4, [r0, 0x8]
- strh r5, [r0, 0xA]
- movs r1, 0x1
- strh r1, [r0, 0xC]
- strh r2, [r0, 0xE]
-_080A4266:
- movs r0, 0x2
- eors r4, r0
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _080A42D8
- adds r0, r4, 0
- bl GetBankIdentity
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _080A4294
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A42A4
-_080A4294:
- movs r5, 0
- b _080A42A6
- .pool
-_080A42A4:
- movs r5, 0x1
-_080A42A6:
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0
- bl sub_80A438C
- ldr r0, =sub_80A40F4
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gAnimVisualTaskCount
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- strh r4, [r0, 0x8]
- strh r5, [r0, 0xA]
- movs r1, 0x1
- strh r1, [r0, 0xC]
- strh r1, [r0, 0xE]
-_080A42D8:
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r1, =gAnimFramesToWait
- movs r0, 0x1
- strb r0, [r1]
- ldr r1, =gAnimScriptCallback
- ldr r0, =move_anim_waiter
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A41D8
-
- thumb_func_start b_side_obj__get_some_boolean
-b_side_obj__get_some_boolean: @ 80A4310
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A4330
- ldr r0, =gAnimationBankAttacker
- ldrb r0, [r0]
- cmp r4, r0
- beq _080A4374
- b _080A4384
- .pool
-_080A4330:
- adds r0, r4, 0
- bl sub_80A6A90
- lsls r0, 24
- cmp r0, 0
- beq _080A4384
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A4374
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r5, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A4374
- ldr r2, =gSprites
- ldr r0, =gBankSpriteIds
- 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 _080A4384
-_080A4374:
- movs r0, 0x1
- b _080A4386
- .pool
-_080A4384:
- movs r0, 0
-_080A4386:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end b_side_obj__get_some_boolean
-
- thumb_func_start sub_80A438C
-sub_80A438C: @ 80A438C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x28
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- lsls r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r9, r2
- cmp r1, 0
- beq _080A43AA
- b _080A455E
-_080A43AA:
- bl IsContest
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A43DC
- ldr r1, =0x06008000
- movs r2, 0x80
- lsls r2, 6
- movs r0, 0
- movs r3, 0x1
- bl RequestDma3Fill
- ldr r1, =0x0600f000
- movs r2, 0x80
- lsls r2, 5
- movs r0, 0xFF
- movs r3, 0
- bl RequestDma3Fill
- b _080A43F8
- .pool
-_080A43DC:
- ldr r1, =0x06004000
- movs r2, 0x80
- lsls r2, 6
- movs r0, 0
- movs r3, 0x1
- bl RequestDma3Fill
- ldr r1, =0x0600e000
- movs r2, 0x80
- lsls r2, 5
- movs r0, 0xFF
- movs r3, 0
- bl RequestDma3Fill
-_080A43F8:
- add r0, sp, 0x10
- bl sub_80A6B30
- add r0, sp, 0x20
- movs r1, 0
- strh r1, [r0]
- ldr r1, [sp, 0x10]
- ldr r2, =0x01000800
- bl CpuSet
- mov r0, sp
- adds r0, 0x22
- movs r1, 0xFF
- strh r1, [r0]
- ldr r1, [sp, 0x14]
- ldr r2, =0x01000400
- bl CpuSet
- movs r0, 0x1
- movs r1, 0x4
- movs r2, 0x2
- bl lcd_bg_operations
- movs r0, 0x1
- movs r1, 0
- movs r2, 0x1
- bl lcd_bg_operations
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0
- bl lcd_bg_operations
- ldr r0, =gBankSpriteIds
- adds r0, r6, r0
- ldrb r4, [r0]
- ldr r5, =gUnknown_02022E18
- ldr r0, =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 IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A447A
- ldr r0, =gUnknown_02039F34
- ldr r0, [r0]
- ldr r0, [r0, 0x18]
- ldrh r0, [r0]
- bl sub_80DB2A8
- lsls r0, 24
- cmp r0, 0
- beq _080A447A
- ldrh r0, [r5]
- subs r0, 0x1
- strh r0, [r5]
-_080A447A:
- ldr r5, =gUnknown_02022E1A
- ldr r2, =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, [r5]
- mov r0, r9
- cmp r0, 0
- beq _080A44B0
- ldr r0, =gBankSpriteIds
- adds r0, r6, r0
- 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]
-_080A44B0:
- ldr r0, =gUnknown_02022E18
- ldrh r1, [r0]
- movs r0, 0x14
- bl SetGpuReg
- ldrh r1, [r5]
- movs r0, 0x16
- bl SetGpuReg
- lsls r4, r6, 5
- ldr r0, =gPlttBufferUnfaded + 0x200
- adds r4, r0
- add r0, sp, 0x10
- ldrb r1, [r0, 0x8]
- lsls r1, 4
- adds r0, r4, 0
- movs r2, 0x20
- bl LoadPalette
- add r0, sp, 0x10
- ldrb r1, [r0, 0x8]
- lsls r1, 5
- movs r0, 0xA0
- lsls r0, 19
- adds r1, r0
- ldr r2, =0x04000008
- adds r0, r4, 0
- bl CpuSet
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A4524
- movs r3, 0
- b _080A452E
- .pool
-_080A4524:
- adds r0, r6, 0
- bl GetBankIdentity
- lsls r0, 24
- lsrs r3, r0, 24
-_080A452E:
- add r0, sp, 0x10
- ldrb r0, [r0, 0x8]
- str r0, [sp]
- ldr r0, [sp, 0x10]
- str r0, [sp, 0x4]
- ldr r0, [sp, 0x14]
- str r0, [sp, 0x8]
- add r0, sp, 0x10
- ldrh r0, [r0, 0xA]
- str r0, [sp, 0xC]
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl sub_8118FBC
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A4558
- b _080A4666
-_080A4558:
- bl sub_80A46A0
- b _080A4666
-_080A455E:
- ldr r1, =0x06006000
- movs r2, 0x80
- lsls r2, 6
- movs r0, 0
- movs r3, 0x1
- bl RequestDma3Fill
- ldr r1, =0x0600f000
- movs r7, 0x80
- lsls r7, 5
- movs r0, 0
- adds r2, r7, 0
- movs r3, 0x1
- bl RequestDma3Fill
- add r0, sp, 0x10
- movs r1, 0x2
- bl sub_80A6B90
- add r0, sp, 0x24
- movs r4, 0
- strh r4, [r0]
- ldr r1, [sp, 0x10]
- adds r1, r7
- ldr r2, =0x01000800
- bl CpuSet
- mov r0, sp
- adds r0, 0x26
- strh r4, [r0]
- ldr r1, [sp, 0x14]
- movs r2, 0x80
- lsls r2, 4
- mov r8, r2
- add r1, r8
- ldr r2, =0x01000400
- bl CpuSet
- movs r0, 0x2
- movs r1, 0x4
- movs r2, 0x2
- bl lcd_bg_operations
- movs r0, 0x2
- movs r1, 0
- movs r2, 0x1
- bl lcd_bg_operations
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0
- bl lcd_bg_operations
- ldr r0, =gBankSpriteIds
- adds r2, r5, r0
- ldrb r4, [r2]
- ldr r5, =gUnknown_02022E1C
- ldr r3, =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r3
- ldrh r0, [r1, 0x24]
- ldrh r4, [r1, 0x20]
- adds r0, r4
- negs r0, r0
- adds r0, 0x20
- strh r0, [r5]
- ldr r4, =gUnknown_02022E1E
- ldrh r0, [r1, 0x26]
- ldrh r1, [r1, 0x22]
- adds r0, r1
- negs r0, r0
- adds r0, 0x20
- strh r0, [r4]
- mov r0, r9
- cmp r0, 0
- beq _080A460E
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080A460E:
- ldrh r1, [r5]
- movs r0, 0x18
- bl SetGpuReg
- ldrh r1, [r4]
- movs r0, 0x1A
- bl SetGpuReg
- lsls r4, r6, 5
- ldr r0, =gPlttBufferUnfaded + 0x200
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x90
- movs r2, 0x20
- bl LoadPalette
- ldr r1, =0x05000120
- ldr r2, =0x04000008
- adds r0, r4, 0
- bl CpuSet
- adds r0, r6, 0
- bl GetBankIdentity
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- add r0, sp, 0x10
- ldrb r0, [r0, 0x8]
- str r0, [sp]
- ldr r0, [sp, 0x10]
- adds r0, r7
- str r0, [sp, 0x4]
- ldr r0, [sp, 0x14]
- add r0, r8
- str r0, [sp, 0x8]
- add r0, sp, 0x10
- ldrh r0, [r0, 0xA]
- str r0, [sp, 0xC]
- movs r0, 0x2
- movs r1, 0
- movs r2, 0
- bl sub_8118FBC
-_080A4666:
- add sp, 0x28
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A438C
-
- thumb_func_start sub_80A46A0
-sub_80A46A0: @ 80A46A0
- push {r4-r7,lr}
- sub sp, 0x10
- ldr r0, =gUnknown_02039F34
- ldr r0, [r0]
- ldr r0, [r0, 0x18]
- ldrh r0, [r0]
- bl sub_80DB2A8
- lsls r0, 24
- cmp r0, 0
- beq _080A4712
- mov r0, sp
- bl sub_80A6B30
- ldr r6, [sp, 0x4]
- movs r5, 0
- movs r0, 0x7
- mov r12, r0
- movs r7, 0
-_080A46C6:
- movs r4, 0
- adds r3, r7, r6
- mov r1, r12
- lsls r0, r1, 1
- adds r2, r0, r6
-_080A46D0:
- 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 _080A46D0
- movs r0, 0x20
- add r12, r0
- adds r7, 0x40
- adds r5, 0x1
- cmp r5, 0x7
- ble _080A46C6
- movs r5, 0
- movs r1, 0x80
- lsls r1, 3
- adds r3, r1, 0
-_080A46F6:
- adds r2, r5, 0x1
- lsls r0, r5, 6
- adds r1, r0, r6
- movs r4, 0x7
-_080A46FE:
- ldrh r0, [r1]
- eors r0, r3
- strh r0, [r1]
- adds r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bge _080A46FE
- adds r5, r2, 0
- cmp r5, 0x7
- ble _080A46F6
-_080A4712:
- add sp, 0x10
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A46A0
-
- thumb_func_start sub_80A4720
-sub_80A4720: @ 80A4720
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r1
- adds r6, r2, 0
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r3, 24
- movs r0, 0x40
- mov r12, r0
- cmp r3, 0
- bne _080A473C
- movs r1, 0x20
- mov r12, r1
-_080A473C:
- lsls r0, r5, 28
- lsrs r5, r0, 16
- movs r0, 0
- cmp r0, r12
- bge _080A476C
- ldr r7, =0x00000fff
-_080A4748:
- adds r4, r0, 0x1
- lsls r0, 6
- mov r1, r8
- adds r3, r0, r1
- movs r2, 0x1F
-_080A4752:
- ldrh r1, [r3]
- adds r0, r7, 0
- ands r0, r1
- orrs r0, r5
- adds r0, r6
- strh r0, [r3]
- adds r3, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _080A4752
- adds r0, r4, 0
- cmp r0, r12
- blt _080A4748
-_080A476C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A4720
-
- thumb_func_start sub_80A477C
-sub_80A477C: @ 80A477C
- push {r4,lr}
- sub sp, 0x10
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- mov r0, sp
- bl sub_80A6B30
- cmp r4, 0
- beq _080A479C
- bl IsContest
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _080A47B8
-_080A479C:
- movs r0, 0x1
- bl sub_80A6C68
- ldr r0, =gUnknown_02022E18
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
- strh r1, [r0]
- b _080A47C6
- .pool
-_080A47B8:
- movs r0, 0x2
- bl sub_80A6C68
- ldr r0, =gUnknown_02022E1C
- strh r4, [r0]
- ldr r0, =gUnknown_02022E1E
- strh r4, [r0]
-_080A47C6:
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A477C
-
- thumb_func_start task_pA_ma0A_obj_to_bg_pal
-@ void task_pA_ma0A_obj_to_bg_pal(int task_id)
-task_pA_ma0A_obj_to_bg_pal: @ 80A47D8
- push {r4-r6,lr}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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_80A6B30
- ldr r0, =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 _080A4870
- ldr r1, =gUnknown_02022E18
- lsls r0, r3, 16
- asrs r0, 16
- ldrh r3, [r5, 0xE]
- adds r0, r3
- strh r0, [r1]
- ldr r1, =gUnknown_02022E1A
- lsls r0, r2, 16
- asrs r0, 16
- ldrh r5, [r5, 0x10]
- adds r0, r5
- strh r0, [r1]
- lsls r0, r6, 5
- ldr r2, =gPlttBufferFaded + 0x200
- adds r0, r2
- mov r1, sp
- ldrb r1, [r1, 0x8]
- lsls r1, 5
- ldr r3, =0xfffffe00
- adds r2, r3
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- b _080A4896
- .pool
-_080A4870:
- ldr r1, =gUnknown_02022E1C
- lsls r0, r3, 16
- asrs r0, 16
- ldrh r3, [r5, 0xE]
- adds r0, r3
- strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
- lsls r0, r2, 16
- asrs r0, 16
- ldrh r5, [r5, 0x10]
- adds r0, r5
- strh r0, [r1]
- lsls r0, r6, 5
- ldr r1, =gPlttBufferFaded + 0x200
- adds r0, r1
- subs r1, 0xE0
- ldr r2, =0x04000008
- bl CpuSet
-_080A4896:
- add sp, 0x10
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task_pA_ma0A_obj_to_bg_pal
-
- thumb_func_start ma0B_0807324C
-ma0B_0807324C: @ 80A48B0
- push {r4,r5,lr}
- ldr r0, =gBattleAnimScriptPtr
- ldr r2, [r0]
- adds r1, r2, 0x1
- str r1, [r0]
- ldrb r4, [r2, 0x1]
- cmp r4, 0
- bne _080A48C8
- movs r4, 0x2
- b _080A48D2
- .pool
-_080A48C8:
- cmp r4, 0x1
- bne _080A48CE
- movs r4, 0x3
-_080A48CE:
- cmp r4, 0
- beq _080A48D6
-_080A48D2:
- cmp r4, 0x2
- bne _080A48E0
-_080A48D6:
- ldr r0, =gAnimationBankAttacker
- b _080A48E2
- .pool
-_080A48E0:
- ldr r0, =gAnimationBankTarget
-_080A48E2:
- ldrb r5, [r0]
- ldr r3, =gUnknown_02038430
- ldrb r0, [r3]
- cmp r0, 0xFF
- beq _080A4908
- ldr r2, =gSprites
- ldr r0, =gBankSpriteIds
- 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]
-_080A4908:
- cmp r4, 0x1
- bls _080A4948
- ldrb r0, [r3, 0x1]
- cmp r0, 0xFF
- beq _080A4948
- ldr r3, =gSprites
- ldr r2, =gBankSpriteIds
- 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 _080A494A
- .pool
-_080A4948:
- movs r4, 0
-_080A494A:
- ldr r0, =sub_80A4980
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- strh r5, [r1, 0xC]
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma0B_0807324C
-
- thumb_func_start sub_80A4980
-sub_80A4980: @ 80A4980
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =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 _080A4A0A
- ldrb r0, [r1, 0xC]
- bl GetBankIdentity
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _080A49BC
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A49C4
-_080A49BC:
- movs r4, 0
- b _080A49C6
- .pool
-_080A49C4:
- movs r4, 0x1
-_080A49C6:
- ldr r6, =gUnknown_02038430
- ldrb r0, [r6]
- cmp r0, 0xFF
- beq _080A49DE
- adds r0, r4, 0
- bl sub_80A477C
- ldrb r0, [r6]
- bl DestroyTask
- movs r0, 0xFF
- strb r0, [r6]
-_080A49DE:
- ldr r0, =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 _080A4A04
- movs r0, 0x1
- eors r4, r0
- adds r0, r4, 0
- bl sub_80A477C
- ldrb r0, [r6, 0x1]
- bl DestroyTask
- movs r0, 0xFF
- strb r0, [r6, 0x1]
-_080A4A04:
- adds r0, r5, 0
- bl DestroyTask
-_080A4A0A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A4980
-
- thumb_func_start sub_80A4A18
-sub_80A4A18: @ 80A4A18
- push {r4,r5,lr}
- ldr r0, =gBattleAnimScriptPtr
- ldr r2, [r0]
- adds r1, r2, 0x1
- str r1, [r0]
- ldrb r5, [r2, 0x1]
- cmp r5, 0
- bne _080A4A30
- movs r5, 0x2
- b _080A4A3A
- .pool
-_080A4A30:
- cmp r5, 0x1
- bne _080A4A36
- movs r5, 0x3
-_080A4A36:
- cmp r5, 0
- beq _080A4A3E
-_080A4A3A:
- cmp r5, 0x2
- bne _080A4A48
-_080A4A3E:
- ldr r0, =gAnimationBankAttacker
- b _080A4A4A
- .pool
-_080A4A48:
- ldr r0, =gAnimationBankTarget
-_080A4A4A:
- ldrb r4, [r0]
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _080A4A8A
- adds r0, r4, 0
- bl GetBankIdentity
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _080A4A76
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A4A80
-_080A4A76:
- movs r1, 0
- b _080A4A82
- .pool
-_080A4A80:
- movs r1, 0x1
-_080A4A82:
- adds r0, r4, 0
- movs r2, 0
- bl sub_80A438C
-_080A4A8A:
- movs r0, 0x2
- eors r4, r0
- cmp r5, 0x1
- bls _080A4ACA
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _080A4ACA
- adds r0, r4, 0
- bl GetBankIdentity
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _080A4ABC
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A4AC0
-_080A4ABC:
- movs r1, 0
- b _080A4AC2
-_080A4AC0:
- movs r1, 0x1
-_080A4AC2:
- adds r0, r4, 0
- movs r2, 0
- bl sub_80A438C
-_080A4ACA:
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A4A18
-
- thumb_func_start ma23_8073484
-ma23_8073484: @ 80A4ADC
- push {r4-r6,lr}
- ldr r0, =gBattleAnimScriptPtr
- ldr r2, [r0]
- adds r1, r2, 0x1
- str r1, [r0]
- ldrb r5, [r2, 0x1]
- cmp r5, 0
- bne _080A4AF4
- movs r5, 0x2
- b _080A4AFE
- .pool
-_080A4AF4:
- cmp r5, 0x1
- bne _080A4AFA
- movs r5, 0x3
-_080A4AFA:
- cmp r5, 0
- beq _080A4B02
-_080A4AFE:
- cmp r5, 0x2
- bne _080A4B0C
-_080A4B02:
- ldr r0, =gAnimationBankAttacker
- b _080A4B0E
- .pool
-_080A4B0C:
- ldr r0, =gAnimationBankTarget
-_080A4B0E:
- ldrb r6, [r0]
- adds r0, r6, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _080A4B38
- ldr r2, =gSprites
- ldr r0, =gBankSpriteIds
- 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]
-_080A4B38:
- cmp r5, 0x1
- bls _080A4B78
- 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 _080A4B78
- ldr r2, =gSprites
- ldr r0, =gBankSpriteIds
- 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 _080A4B7A
- .pool
-_080A4B78:
- movs r5, 0
-_080A4B7A:
- ldr r0, =sub_80A4BB0
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r5, [r1, 0x8]
- strh r6, [r1, 0xC]
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma23_8073484
-
- thumb_func_start sub_80A4BB0
-sub_80A4BB0: @ 80A4BB0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =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 _080A4C3E
- ldrb r4, [r1, 0xC]
- adds r0, r4, 0
- bl GetBankIdentity
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _080A4BEE
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A4BF8
-_080A4BEE:
- movs r5, 0
- b _080A4BFA
- .pool
-_080A4BF8:
- movs r5, 0x1
-_080A4BFA:
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _080A4C0C
- adds r0, r5, 0
- bl sub_80A477C
-_080A4C0C:
- ldr r0, =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 _080A4C38
- movs r0, 0x2
- eors r4, r0
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _080A4C38
- movs r0, 0x1
- eors r5, r0
- adds r0, r5, 0
- bl sub_80A477C
-_080A4C38:
- adds r0, r6, 0
- bl DestroyTask
-_080A4C3E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A4BB0
-
- thumb_func_start ma0C_set_BLDCNT_to_x3F40_and_BLDALPHA_to_argument
-ma0C_set_BLDCNT_to_x3F40_and_BLDALPHA_to_argument: @ 80A4C48
- push {r4,r5,lr}
- ldr r2, =gBattleAnimScriptPtr
- ldr r0, [r2]
- adds r1, r0, 0x1
- str r1, [r2]
- ldrb r5, [r0, 0x1]
- adds r0, r1, 0x1
- str r0, [r2]
- ldrb r4, [r1, 0x1]
- lsls r4, 8
- adds r0, 0x1
- str r0, [r2]
- movs r1, 0xFD
- lsls r1, 6
- movs r0, 0x50
- bl SetGpuReg
- orrs r5, r4
- movs r0, 0x52
- adds r1, r5, 0
- bl SetGpuReg
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma0C_set_BLDCNT_to_x3F40_and_BLDALPHA_to_argument
-
- thumb_func_start ma1E_set_BLDCNT
-ma1E_set_BLDCNT: @ 80A4C80
- push {lr}
- ldr r3, =gBattleAnimScriptPtr
- ldr r0, [r3]
- adds r2, r0, 0x1
- str r2, [r3]
- ldrb r1, [r0, 0x1]
- adds r0, r2, 0x1
- str r0, [r3]
- ldrb r2, [r2, 0x1]
- lsls r2, 8
- adds r0, 0x1
- str r0, [r3]
- orrs r1, r2
- movs r0, 0x50
- bl SetGpuReg
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma1E_set_BLDCNT
-
- thumb_func_start ma0D_reset_BLDCNT_and_BLDALPHA
-ma0D_reset_BLDCNT_and_BLDALPHA: @ 80A4CA8
- push {lr}
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma0D_reset_BLDCNT_and_BLDALPHA
-
- thumb_func_start ma0E_call
-ma0E_call: @ 80A4CCC
- push {r4,lr}
- ldr r4, =gBattleAnimScriptPtr
- ldr r1, [r4]
- adds r3, r1, 0x1
- str r3, [r4]
- ldr r2, =gBattleAnimScriptRetAddr
- 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
- .pool
- thumb_func_end ma0E_call
-
- thumb_func_start sub_80A4D00
-sub_80A4D00: @ 80A4D00
- ldr r0, =gBattleAnimScriptPtr
- ldr r1, =gBattleAnimScriptRetAddr
- ldr r1, [r1]
- str r1, [r0]
- bx lr
- .pool
- thumb_func_end sub_80A4D00
-
- thumb_func_start ma10_080736AC
-ma10_080736AC: @ 80A4D14
- push {r4,r5,lr}
- ldr r5, =gBattleAnimScriptPtr
- 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, =gBattleAnimArgs
- lsls r2, 1
- adds r2, r0
- strh r4, [r2]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma10_080736AC
-
- thumb_func_start ma11_if_else
-ma11_if_else: @ 80A4D48
- push {lr}
- ldr r3, =gBattleAnimScriptPtr
- ldr r2, [r3]
- adds r0, r2, 0x1
- str r0, [r3]
- ldr r0, =gUnknown_02038432
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080A4D62
- adds r0, r2, 0x5
- str r0, [r3]
-_080A4D62:
- 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
- .pool
- thumb_func_end ma11_if_else
-
- thumb_func_start ma12_cond_if
-ma12_cond_if: @ 80A4D88
- push {r4,r5,lr}
- ldr r5, =gBattleAnimScriptPtr
- ldr r4, [r5]
- adds r2, r4, 0x1
- str r2, [r5]
- ldrb r1, [r4, 0x1]
- adds r3, r2, 0x1
- str r3, [r5]
- ldr r0, =gUnknown_02038432
- ldrb r0, [r0]
- cmp r1, r0
- bne _080A4DC0
- 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 _080A4DC4
- .pool
-_080A4DC0:
- adds r0, r4, 0x6
- str r0, [r5]
-_080A4DC4:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end ma12_cond_if
-
- thumb_func_start ma13_goto
-ma13_goto: @ 80A4DCC
- ldr r3, =gBattleAnimScriptPtr
- 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
- .pool
- thumb_func_end ma13_goto
-
- thumb_func_start IsContest
-IsContest: @ 80A4DF0
- push {lr}
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080A4E10
- movs r0, 0
- b _080A4E12
- .pool
-_080A4E10:
- movs r0, 0x1
-_080A4E12:
- pop {r1}
- bx r1
- thumb_func_end IsContest
-
- thumb_func_start ma14_load_background
-ma14_load_background: @ 80A4E18
- push {r4,lr}
- ldr r1, =gBattleAnimScriptPtr
- ldr r2, [r1]
- adds r0, r2, 0x1
- str r0, [r1]
- ldrb r4, [r2, 0x1]
- adds r0, 0x1
- str r0, [r1]
- ldr r0, =task_p5_load_battle_screen_elements
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- ldr r1, =gUnknown_02038433
- movs r0, 0x1
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma14_load_background
-
- thumb_func_start sub_80A4E5C
-sub_80A4E5C: @ 80A4E5C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r2, =gBattleAnimScriptPtr
- 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, =task_p5_load_battle_screen_elements
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A4EA8
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r6, [r0, 0x8]
- b _080A4EDA
- .pool
-_080A4EA8:
- ldr r0, =gAnimationBankTarget
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080A4ECC
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r7, [r0, 0x8]
- b _080A4EDA
- .pool
-_080A4ECC:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- mov r1, r8
- strh r1, [r0, 0x8]
-_080A4EDA:
- ldr r1, =gUnknown_02038433
- movs r0, 0x1
- strb r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A4E5C
-
- thumb_func_start task_p5_load_battle_screen_elements
-task_p5_load_battle_screen_elements: @ 80A4EF4
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =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 _080A4F2C
- 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 _080A4FBC
- .pool
-_080A4F2C:
- ldr r2, =gPaletteFade
- ldrb r1, [r2, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080A4FBC
- cmp r3, 0x1
- bne _080A4F50
- adds r0, r6, 0x1
- strh r0, [r4, 0x1C]
- ldr r1, =gUnknown_02038433
- movs r0, 0x2
- strb r0, [r1]
- b _080A4F94
- .pool
-_080A4F50:
- cmp r3, 0x2
- bne _080A4F94
- ldrh r0, [r4, 0x8]
- lsls r2, r0, 16
- asrs r1, r2, 16
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- bne _080A4F68
- bl dp01t_11_3_message_for_player_only
- b _080A4F6E
-_080A4F68:
- lsrs r0, r2, 16
- bl sub_80A4FC8
-_080A4F6E:
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0xE8
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginHardwarePaletteFade
- ldr r1, =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 _080A4FBC
- .pool
-_080A4F94:
- ldrb r1, [r2, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _080A4FBC
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r7
- movs r1, 0x1C
- ldrsh r0, [r0, r1]
- cmp r0, 0x3
- bne _080A4FBC
- adds r0, r5, 0
- bl DestroyTask
- ldr r0, =gUnknown_02038433
- strb r4, [r0]
-_080A4FBC:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task_p5_load_battle_screen_elements
-
- thumb_func_start sub_80A4FC8
-sub_80A4FC8: @ 80A4FC8
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r7, r0, 16
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A5050
- ldr r6, =gUnknown_08525D54
- lsls r4, r7, 1
- adds r4, r7
- lsls r4, 2
- adds r0, r6, 0
- adds r0, 0x8
- adds r0, r4, r0
- ldr r0, [r0]
- ldr r5, =0x0201c000
- adds r1, r5, 0
- bl LZDecompressWram
- bl sub_80A6D94
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x80
- lsls r2, 1
- adds r1, r5, 0
- movs r3, 0
- bl sub_80A4720
- ldr r1, =0x0600d000
- ldr r0, =0x040000d4
- str r5, [r0]
- str r1, [r0, 0x4]
- ldr r1, =0x84000200
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- adds r0, r4, r6
- ldr r0, [r0]
- ldr r1, =0x06002000
- bl LZDecompressVram
- adds r6, 0x4
- adds r4, r6
- ldr r4, [r4]
- bl sub_80A6D94
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 20
- adds r0, r4, 0
- movs r2, 0x20
- bl LoadCompressedPalette
- b _080A507E
- .pool
-_080A5050:
- ldr r5, =gUnknown_08525D54
- lsls r4, r7, 1
- adds r4, r7
- lsls r4, 2
- adds r0, r5, 0
- adds r0, 0x8
- adds r0, r4, r0
- ldr r0, [r0]
- ldr r1, =0x0600d000
- bl LZDecompressVram
- adds r0, r4, r5
- ldr r0, [r0]
- ldr r1, =0x06008000
- bl LZDecompressVram
- adds r5, 0x4
- adds r4, r5
- ldr r0, [r4]
- movs r1, 0x20
- movs r2, 0x20
- bl LoadCompressedPalette
-_080A507E:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A4FC8
-
- thumb_func_start dp01t_11_3_message_for_player_only
-dp01t_11_3_message_for_player_only: @ 80A5090
- push {lr}
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A50A2
- bl sub_80D7724
- b _080A50A6
-_080A50A2:
- bl load_battle_oval_graphics
-_080A50A6:
- 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: @ 80A50AC
- push {lr}
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r0, =task_p5_load_battle_screen_elements
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, =0x0000ffff
- strh r0, [r1, 0x8]
- ldr r1, =gUnknown_02038433
- movs r0, 0x1
- strb r0, [r1]
- pop {r0}
- bx r0
- .pool
- 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: @ 80A50F0
- push {lr}
- ldr r0, =gUnknown_02038433
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _080A5114
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r1, =gAnimFramesToWait
- movs r0, 0
- b _080A5118
- .pool
-_080A5114:
- ldr r1, =gAnimFramesToWait
- movs r0, 0x1
-_080A5118:
- strb r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma16_wait_for_battle_screen_elements_s2
-
- thumb_func_start sub_80A5124
-sub_80A5124: @ 80A5124
- push {lr}
- ldr r0, =gUnknown_02038433
- ldrb r2, [r0]
- cmp r2, 0
- bne _080A5148
- ldr r0, =gBattleAnimScriptPtr
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- ldr r0, =gAnimFramesToWait
- strb r2, [r0]
- b _080A514E
- .pool
-_080A5148:
- ldr r1, =gAnimFramesToWait
- movs r0, 0x1
- strb r0, [r1]
-_080A514E:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A5124
-
- thumb_func_start ma18_load_background_probably
-ma18_load_background_probably: @ 80A5158
- push {r4,lr}
- ldr r4, =gBattleAnimScriptPtr
- ldr r1, [r4]
- adds r0, r1, 0x1
- str r0, [r4]
- ldrb r0, [r1, 0x1]
- bl sub_80A4FC8
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma18_load_background_probably
-
- thumb_func_start BattleAnimGetPanControl
-BattleAnimGetPanControl: @ 80A5178
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A51C0
- ldr r0, =gUnknown_020244D0
- ldr r1, [r0]
- ldr r0, =gAnimationBankAttacker
- ldrb r2, [r0]
- ldr r1, [r1, 0x4]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080A51C0
- adds r0, r2, 0
- bl GetBankSide
- lsls r0, 24
- movs r4, 0xC0
- cmp r0, 0
- beq _080A5252
- movs r4, 0x3F
- b _080A5252
- .pool
-_080A51C0:
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A51E8
- ldr r0, =gAnimationBankAttacker
- ldr r1, =gAnimationBankTarget
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bne _080A524C
- cmp r0, 0x2
- bne _080A524C
- cmp r4, 0x3F
- beq _080A525E
- b _080A524C
- .pool
-_080A51E8:
- ldr r0, =gAnimationBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080A5226
- ldr r0, =gAnimationBankTarget
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080A5252
- lsls r0, r4, 24
- asrs r1, r0, 24
- cmp r1, 0x3F
- bne _080A5218
- movs r4, 0xC0
- b _080A5252
- .pool
-_080A5218:
- movs r0, 0x40
- negs r0, r0
- cmp r1, r0
- beq _080A5252
- negs r0, r1
- lsls r0, 24
- b _080A5250
-_080A5226:
- ldr r0, =gAnimationBankTarget
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A524C
- lsls r0, r4, 24
- asrs r0, 24
- movs r1, 0x40
- negs r1, r1
- cmp r0, r1
- bne _080A5252
- movs r4, 0x3F
- b _080A5252
- .pool
-_080A524C:
- lsls r0, r4, 24
- negs r0, r0
-_080A5250:
- lsrs r4, r0, 24
-_080A5252:
- lsls r0, r4, 24
- asrs r0, 24
- cmp r0, 0x3F
- ble _080A525E
- movs r4, 0x3F
- b _080A526C
-_080A525E:
- lsls r0, r4, 24
- asrs r0, 24
- movs r1, 0x40
- negs r1, r1
- cmp r0, r1
- bge _080A526C
- movs r4, 0xC0
-_080A526C:
- lsls r0, r4, 24
- asrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end BattleAnimGetPanControl
-
- thumb_func_start sub_80A5278
-sub_80A5278: @ 80A5278
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A52C0
- ldr r0, =gUnknown_020244D0
- ldr r1, [r0]
- ldr r0, =gAnimationBankAttacker
- ldrb r2, [r0]
- ldr r1, [r1, 0x4]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080A52C0
- adds r0, r2, 0
- bl GetBankSide
- lsls r0, 24
- movs r4, 0xC0
- cmp r0, 0
- beq _080A52DE
- movs r4, 0x3F
- b _080A52DE
- .pool
-_080A52C0:
- ldr r0, =gAnimationBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080A52D8
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A52DE
-_080A52D8:
- lsls r0, r4, 24
- negs r0, r0
- lsrs r4, r0, 24
-_080A52DE:
- lsls r0, r4, 24
- asrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A5278
-
- thumb_func_start sub_80A52EC
-sub_80A52EC: @ 80A52EC
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- asrs r2, r0, 16
- cmp r2, 0x3F
- ble _080A52FC
- movs r1, 0x3F
- b _080A5306
-_080A52FC:
- movs r0, 0x40
- negs r0, r0
- cmp r2, r0
- bge _080A5306
- ldr r1, =0x0000ffc0
-_080A5306:
- lsls r0, r1, 16
- asrs r0, 16
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A52EC
-
- thumb_func_start sub_80A5314
-sub_80A5314: @ 80A5314
- 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 _080A5332
- lsls r0, r2, 16
- asrs r0, 16
- cmp r0, 0
- bge _080A5342
- b _080A5340
-_080A5332:
- cmp r0, r1
- ble _080A5348
- lsls r0, r3, 16
- asrs r0, 16
- cmp r0, 0
- bge _080A5340
- negs r0, r0
-_080A5340:
- negs r0, r0
-_080A5342:
- lsls r0, 16
- lsrs r0, 16
- b _080A534A
-_080A5348:
- movs r0, 0
-_080A534A:
- lsls r0, 16
- asrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_80A5314
-
- thumb_func_start ma19_08073BC8
-ma19_08073BC8: @ 80A5354
- push {r4,r5,lr}
- ldr r5, =gBattleAnimScriptPtr
- 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 BattleAnimGetPanControl
- 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
- .pool
- thumb_func_end ma19_08073BC8
-
- thumb_func_start ma1A_8073C00
-ma1A_8073C00: @ 80A538C
- push {r4,lr}
- ldr r4, =gBattleAnimScriptPtr
- ldr r1, [r4]
- adds r0, r1, 0x1
- str r0, [r4]
- movs r0, 0x1
- ldrsb r0, [r1, r0]
- bl BattleAnimGetPanControl
- lsls r0, 24
- asrs r0, 24
- bl SE12PanpotControl
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma1A_8073C00
-
- thumb_func_start ma1B_8073C2C
-ma1B_8073C2C: @ 80A53B8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gBattleAnimScriptPtr
- 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 BattleAnimGetPanControl
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, 24
- asrs r4, 24
- adds r0, r4, 0
- bl BattleAnimGetPanControl
- 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_80A5314
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =c3_08073CEC
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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, =gAnimSoundTaskCount
- 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
- .pool
- thumb_func_end ma1B_8073C2C
-
- thumb_func_start c3_08073CEC
-c3_08073CEC: @ 80A5478
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r7, 0
- ldr r1, =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 _080A54FC
- 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 _080A54C0
- lsls r2, r3, 16
- b _080A54E4
- .pool
-_080A54C0:
- lsls r1, r6, 16
- lsls r0, r3, 16
- asrs r3, r0, 16
- adds r2, r0, 0
- cmp r1, r2
- bge _080A54D6
- lsls r0, r4, 16
- asrs r0, 16
- cmp r0, r3
- blt _080A54E0
- b _080A54E4
-_080A54D6:
- lsls r0, r4, 16
- asrs r0, 16
- cmp r0, r3
- bgt _080A54E0
- movs r7, 0x1
-_080A54E0:
- cmp r7, 0
- beq _080A54F4
-_080A54E4:
- lsrs r4, r2, 16
- adds r0, r5, 0
- bl DestroyTask
- ldr r1, =gAnimSoundTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
-_080A54F4:
- lsls r0, r4, 24
- asrs r0, 24
- bl SE12PanpotControl
-_080A54FC:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c3_08073CEC
-
- thumb_func_start sub_80A5508
-sub_80A5508: @ 80A5508
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- ldr r0, =gBattleAnimScriptPtr
- 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, =c3_08073CEC
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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, =gAnimSoundTaskCount
- 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
- .pool
- thumb_func_end sub_80A5508
-
- thumb_func_start sub_80A559C
-sub_80A559C: @ 80A559C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gBattleAnimScriptPtr
- 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_80A5278
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- lsls r4, 24
- asrs r4, 24
- adds r0, r4, 0
- bl sub_80A5278
- 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_80A5278
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =c3_08073CEC
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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, =gAnimSoundTaskCount
- 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
- .pool
- thumb_func_end sub_80A559C
-
- thumb_func_start ma1C_8073ED0
-ma1C_8073ED0: @ 80A565C
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- ldr r6, =gBattleAnimScriptPtr
- 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 BattleAnimGetPanControl
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =sub_80A56E4
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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, =gAnimSoundTaskCount
- 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
- .pool
- thumb_func_end ma1C_8073ED0
-
- thumb_func_start sub_80A56E4
-sub_80A56E4: @ 80A56E4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =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 _080A5732
- 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 _080A5732
- adds r0, r5, 0
- bl DestroyTask
- ldr r1, =gAnimSoundTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
-_080A5732:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A56E4
-
- thumb_func_start ma1D_08073FB4
-ma1D_08073FB4: @ 80A5740
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- ldr r6, =gBattleAnimScriptPtr
- 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 BattleAnimGetPanControl
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =sub_80A57B4
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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, =gAnimSoundTaskCount
- 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
- .pool
- thumb_func_end ma1D_08073FB4
-
- thumb_func_start sub_80A57B4
-sub_80A57B4: @ 80A57B4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =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 _080A57E8
- ldrh r0, [r2, 0x8]
- movs r1, 0xA
- ldrsb r1, [r2, r1]
- bl PlaySE12WithPanning
- adds r0, r4, 0
- bl DestroyTask
- ldr r1, =gAnimSoundTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
-_080A57E8:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A57B4
-
- thumb_func_start sub_80A57F8
-sub_80A57F8: @ 80A57F8
- push {r4-r6,lr}
- ldr r4, =gBattleAnimScriptPtr
- 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 _080A5842
- adds r5, r4, 0
- ldr r4, =gBattleAnimArgs
- adds r3, r0, 0
-_080A582A:
- 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 _080A582A
-_080A5842:
- adds r0, r6, 0
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- bl _call_via_r6
- ldr r1, =gAnimSoundTaskCount
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A57F8
-
- thumb_func_start ma20_wait_for_something
-ma20_wait_for_something: @ 80A586C
- push {r4,r5,lr}
- ldr r0, =gAnimSoundTaskCount
- ldrb r5, [r0]
- cmp r5, 0
- bne _080A58B4
- bl IsSEPlaying
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _080A58CC
- ldr r4, =gSoundAnimFramesToWait
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5A
- bls _080A58BA
- ldr r0, =gMPlay_SE1
- bl m4aMPlayStop
- ldr r0, =gMPlay_SE2
- bl m4aMPlayStop
- strh r5, [r4]
- b _080A58DE
- .pool
-_080A58B4:
- ldr r1, =gSoundAnimFramesToWait
- movs r0, 0
- strh r0, [r1]
-_080A58BA:
- ldr r1, =gAnimFramesToWait
- movs r0, 0x1
- strb r0, [r1]
- b _080A58DE
- .pool
-_080A58CC:
- ldr r0, =gSoundAnimFramesToWait
- movs r2, 0
- strh r1, [r0]
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r0, =gAnimFramesToWait
- strb r2, [r0]
-_080A58DE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma20_wait_for_something
-
- thumb_func_start ma21_08074164
-ma21_08074164: @ 80A58F0
- push {r4-r6,lr}
- ldr r5, =gBattleAnimScriptPtr
- 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, =gBattleAnimArgs
- lsls r2, 1
- adds r2, r0
- lsls r1, 16
- asrs r1, 16
- movs r6, 0
- ldrsh r0, [r2, r6]
- cmp r1, r0
- bne _080A5938
- 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 _080A593E
- .pool
-_080A5938:
- adds r0, r4, 0
- adds r0, 0x8
- str r0, [r5]
-_080A593E:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end ma21_08074164
-
- thumb_func_start sub_80A5944
-sub_80A5944: @ 80A5944
- push {r4,lr}
- ldr r4, =gBattleAnimScriptPtr
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080A5978
- 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 _080A597E
- .pool
-_080A5978:
- ldr r0, [r4]
- adds r0, 0x4
- str r0, [r4]
-_080A597E:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A5944
-
- thumb_func_start sub_80A5984
-sub_80A5984: @ 80A5984
- push {r4,lr}
- ldr r0, =gBattleAnimScriptPtr
- ldr r1, [r0]
- ldrb r2, [r1, 0x1]
- adds r1, 0x2
- str r1, [r0]
- cmp r2, 0
- beq _080A59A0
- ldr r0, =gAnimationBankTarget
- b _080A59A2
- .pool
-_080A59A0:
- ldr r0, =gAnimationBankAttacker
-_080A59A2:
- ldrb r0, [r0]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A59D2
- cmp r4, 0
- beq _080A59BE
- cmp r4, 0x3
- bne _080A59D2
-_080A59BE:
- movs r0, 0x1
- movs r1, 0x4
- movs r2, 0x1
- bl lcd_bg_operations
- movs r0, 0x2
- movs r1, 0x4
- movs r2, 0x2
- bl lcd_bg_operations
-_080A59D2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A5984
-
- thumb_func_start sub_80A59DC
-sub_80A59DC: @ 80A59DC
- push {lr}
- ldr r0, =gBattleAnimScriptPtr
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A5A04
- movs r0, 0x1
- movs r1, 0x4
- movs r2, 0x1
- bl lcd_bg_operations
- movs r0, 0x2
- movs r1, 0x4
- movs r2, 0x2
- bl lcd_bg_operations
-_080A5A04:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A59DC
-
- thumb_func_start sub_80A5A0C
-sub_80A5A0C: @ 80A5A0C
- push {r4-r7,lr}
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- ldrb r6, [r0, 0x1]
- adds r0, 0x2
- str r0, [r1]
- ldr r7, =gAnimationBankAttacker
- ldrb r0, [r7]
- bl GetBankSide
- adds r4, r0, 0
- ldr r5, =gAnimationBankTarget
- ldrb r0, [r5]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _080A5A78
- cmp r6, 0
- beq _080A5A48
- ldrb r0, [r5]
- b _080A5A4A
- .pool
-_080A5A48:
- ldrb r0, [r7]
-_080A5A4A:
- bl GetBankIdentity
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A5A78
- cmp r4, 0
- beq _080A5A64
- cmp r4, 0x3
- bne _080A5A78
-_080A5A64:
- movs r0, 0x1
- movs r1, 0x4
- movs r2, 0x1
- bl lcd_bg_operations
- movs r0, 0x2
- movs r1, 0x4
- movs r2, 0x2
- bl lcd_bg_operations
-_080A5A78:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80A5A0C
-
- thumb_func_start ma2B_make_side_invisible
-ma2B_make_side_invisible: @ 80A5A80
- push {r4,lr}
- ldr r4, =gBattleAnimScriptPtr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _080A5AA8
- ldr r1, =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]
-_080A5AA8:
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma2B_make_side_invisible
-
- thumb_func_start ma2C_make_side_visible
-ma2C_make_side_visible: @ 80A5ABC
- push {r4,lr}
- ldr r4, =gBattleAnimScriptPtr
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _080A5AE6
- ldr r1, =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]
-_080A5AE6:
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma2C_make_side_visible
-
- thumb_func_start sub_80A5AFC
-sub_80A5AFC: @ 80A5AFC
- push {r4-r7,lr}
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- ldrb r7, [r0, 0x1]
- adds r0, 0x2
- str r0, [r1]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A5BA6
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- beq _080A5BA6
- ldr r6, =gAnimationBankAttacker
- ldrb r0, [r6]
- bl GetBankSide
- adds r4, r0, 0
- ldr r5, =gAnimationBankTarget
- ldrb r0, [r5]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _080A5BA6
- cmp r7, 0
- bne _080A5B54
- ldrb r0, [r6]
- bl GetBankIdentity_permutated
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- b _080A5B60
- .pool
-_080A5B54:
- ldrb r0, [r5]
- bl GetBankIdentity_permutated
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x1
-_080A5B60:
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _080A5BA6
- ldr r1, =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 _080A5B90
- ldrb r0, [r2, 0x5]
- movs r1, 0xC
- orrs r0, r1
- strb r0, [r2, 0x5]
-_080A5B90:
- cmp r4, 0x1
- bne _080A5BA0
- movs r0, 0
- bl sub_80A477C
- b _080A5BA6
- .pool
-_080A5BA0:
- movs r0, 0x1
- bl sub_80A477C
-_080A5BA6:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80A5AFC
-
- thumb_func_start sub_80A5BAC
-sub_80A5BAC: @ 80A5BAC
- push {r4-r7,lr}
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- ldrb r7, [r0, 0x1]
- adds r0, 0x2
- str r0, [r1]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _080A5C38
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- beq _080A5C38
- ldr r6, =gAnimationBankAttacker
- ldrb r0, [r6]
- bl GetBankSide
- adds r4, r0, 0
- ldr r5, =gAnimationBankTarget
- ldrb r0, [r5]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _080A5C38
- cmp r7, 0
- bne _080A5C04
- ldrb r0, [r6]
- bl GetBankIdentity_permutated
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- b _080A5C10
- .pool
-_080A5C04:
- ldrb r0, [r5]
- bl GetBankIdentity_permutated
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x1
-_080A5C10:
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _080A5C38
- cmp r4, 0x2
- bne _080A5C38
- ldr r1, =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]
-_080A5C38:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A5BAC
-
- thumb_func_start ma2F_stop_music
-ma2F_stop_music: @ 80A5C44
- push {lr}
- ldr r0, =gMPlay_SE1
- bl m4aMPlayStop
- ldr r0, =gMPlay_SE2
- bl m4aMPlayStop
- ldr r1, =gBattleAnimScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end ma2F_stop_music
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_anim_80A9C70.s b/asm/battle_anim_80A9C70.s
index 16366988e..9b2939673 100644
--- a/asm/battle_anim_80A9C70.s
+++ b/asm/battle_anim_80A9C70.s
@@ -26,9 +26,9 @@ sub_80A9C70: @ 80A9C70
lsls r0, 24
lsrs r0, 24
mov r8, r0
- ldr r0, =gUnknown_08524F84
+ ldr r0, =gBattleAnimPicTable + 0x440
bl LoadCompressedObjectPicUsingHeap
- ldr r0, =gUnknown_0852588C
+ ldr r0, =gBattleAnimPaletteTable + 0x440
bl LoadCompressedObjectPaletteUsingHeap
ldr r1, =gTasks
mov r2, r8
@@ -331,7 +331,7 @@ sub_80A9EF4: @ 80A9EF4
push {r4-r6,lr}
lsls r0, 24
lsrs r6, r0, 24
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -616,7 +616,7 @@ _080AA16C:
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080AA186:
pop {r4}
pop {r0}
@@ -629,7 +629,7 @@ sub_80AA18C: @ 80AA18C
lsls r0, 24
lsrs r4, r0, 24
movs r3, 0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrh r0, [r0]
@@ -829,7 +829,7 @@ _080AA322:
b _080AA330
_080AA328:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080AA352
_080AA330:
ldr r0, =gBattleAnimArgs
@@ -863,13 +863,13 @@ move_anim_start_t2: @ 80AA364
lsrs r4, 24
lsls r1, 24
lsrs r1, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
strb r4, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
strb r4, [r0]
ldr r0, =gUnknown_082C92FC
movs r2, 0
- bl move_something
+ bl DoBattleAnim
ldr r0, =task0A_80788BC
movs r1, 0xA
bl CreateTask
@@ -899,7 +899,7 @@ task0A_80788BC: @ 80AA3B4
ldrb r0, [r0]
cmp r0, 0
bne _080AA3F6
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r1, =gTasks
lsls r0, r4, 2
diff --git a/asm/battle_anim_80D51AC.s b/asm/battle_anim_80D51AC.s
index c2ea27485..3ee1786ad 100755
--- a/asm/battle_anim_80D51AC.s
+++ b/asm/battle_anim_80D51AC.s
@@ -18,7 +18,7 @@ sub_80D51AC: @ 80D51AC
cmp r2, 0xFF
bne _080D51D0
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080D520C
.pool
_080D51D0:
@@ -140,7 +140,7 @@ _080D5288:
adds r0, r6
strh r3, [r0, 0x26]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080D52CA
_080D52C6:
subs r0, 0x1
@@ -200,11 +200,11 @@ _080D5320:
_080D5324:
movs r0, 0x3
_080D5326:
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
bne _080D533C
@@ -216,7 +216,7 @@ _080D533C:
.pool
_080D5348:
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
_080D5350:
@@ -226,7 +226,7 @@ _080D5352:
beq _080D5368
_080D5356:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080D53A6
.pool
_080D5368:
@@ -359,7 +359,7 @@ _080D5436:
adds r0, r7
strh r2, [r0, 0x26]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080D5478
_080D5474:
subs r0, r2, 0x1
@@ -385,7 +385,7 @@ sub_80D5484: @ 80D5484
cmp r3, 0xFF
bne _080D54A8
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080D54F6
.pool
_080D54A8:
@@ -584,7 +584,7 @@ _080D55F8:
strh r0, [r2, 0x26]
_080D5630:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080D563C
_080D5638:
subs r0, r2, 0x1
@@ -705,7 +705,7 @@ _080D56F6:
cmp r0, 0
bne _080D5728
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080D5728:
pop {r4-r7}
pop {r0}
@@ -829,7 +829,7 @@ _080D5810:
strh r0, [r4, 0x24]
strh r0, [r4, 0x26]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080D5822:
pop {r4-r6}
pop {r0}
@@ -842,7 +842,7 @@ sub_80D5830: @ 80D5830
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -871,7 +871,7 @@ sub_80D5860: @ 80D5860
movs r1, 0x4
orrs r0, r1
strb r0, [r2]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -892,7 +892,7 @@ _080D5894:
strh r2, [r4, 0x2E]
strh r0, [r4, 0x32]
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
@@ -919,7 +919,7 @@ sub_80D58D4: @ 80D58D4
strh r1, [r0, 0x30]
ldr r1, =sub_80A6630
str r1, [r0, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
bl StoreSpriteCallbackInData6
pop {r0}
bx r0
@@ -970,7 +970,7 @@ sub_80D5944: @ 80D5944
strh r1, [r0, 0x32]
ldr r1, =sub_80A6630
str r1, [r0, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
bl StoreSpriteCallbackInData6
pop {r0}
bx r0
@@ -988,12 +988,12 @@ sub_80D5968: @ 80D5968
cmp r0, 0
bne _080D598C
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _080D5990
.pool
_080D598C:
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_080D5990:
ldrb r0, [r0]
adds r0, r1
@@ -1093,7 +1093,7 @@ _080D5A56:
strh r1, [r3, 0x26]
_080D5A58:
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _080D5A8E
.pool
_080D5A64:
@@ -1133,11 +1133,11 @@ sub_80D5A94: @ 80D5A94
ldrsh r0, [r0, r1]
cmp r0, 0
bne _080D5AB0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _080D5AB2
.pool
_080D5AB0:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_080D5AB2:
ldrb r2, [r0]
ldr r0, =gBankSpriteIds
@@ -1192,7 +1192,7 @@ _080D5ADC:
movs r1, 0x4
orrs r0, r1
strb r0, [r2]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A6680
@@ -1218,11 +1218,11 @@ sub_80D5B48: @ 80D5B48
ldrsh r0, [r0, r1]
cmp r0, 0
bne _080D5B70
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _080D5B72
.pool
_080D5B70:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_080D5B72:
ldrb r1, [r0]
ldr r0, =gBankSpriteIds
@@ -1281,7 +1281,7 @@ _080D5B9C:
lsls r0, 16
cmp r0, 0
bne _080D5C04
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r6, 0
bl StoreSpriteCallbackInData6
b _080D5C0C
@@ -1318,7 +1318,7 @@ sub_80D5C20: @ 80D5C20
lsls r1, 2
adds r1, r4
strh r3, [r1, 0x26]
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -1338,7 +1338,7 @@ sub_80D5C50: @ 80D5C50
bl __divsi3
lsls r0, 16
lsrs r7, r0, 16
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -1485,7 +1485,7 @@ _080D5D70:
cmp r0, 0
bne _080D5DA4
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080D5DA4:
pop {r4,r5}
pop {r0}
@@ -1518,16 +1518,16 @@ _080D5DD8:
beq _080D5DE8
b _080D5E10
_080D5DDE:
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
b _080D5DEA
.pool
_080D5DE8:
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
_080D5DEA:
ldrb r0, [r5]
movs r4, 0x2
eors r0, r4
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080D5E10
@@ -1540,7 +1540,7 @@ _080D5DEA:
.pool
_080D5E10:
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080D5E58
_080D5E18:
ldr r1, =gTasks
@@ -1549,7 +1549,7 @@ _080D5E18:
lsls r0, 3
adds r5, r0, r1
strh r2, [r5, 0x8]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -1609,7 +1609,7 @@ sub_80D5E6C: @ 80D5E6C
cmp r1, r0
bls _080D5EAA
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080D5EAA:
pop {r4}
pop {r0}
@@ -1622,7 +1622,7 @@ sub_80D5EB8: @ 80D5EB8
push {r4-r6,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
bl GetBankSide
lsls r0, 24
@@ -1660,7 +1660,7 @@ _080D5ED4:
b _080D5F18
.pool
_080D5F14:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
_080D5F18:
strh r0, [r2, 0x12]
@@ -1817,7 +1817,7 @@ _080D601E:
strh r3, [r0, 0x24]
strh r3, [r0, 0x26]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080D6050:
pop {r3,r4}
mov r8, r3
@@ -1923,7 +1923,7 @@ _080D6120:
adds r0, r6, 0
bl sub_80A7344
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080D612C:
pop {r4-r6}
pop {r0}
@@ -1995,11 +1995,11 @@ _080D61B8:
ldrsh r0, [r6, r1]
cmp r0, 0
bne _080D61C8
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _080D61CA
.pool
_080D61C8:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_080D61CA:
ldrb r0, [r0]
bl GetBankSide
@@ -2076,11 +2076,11 @@ sub_80D622C: @ 80D622C
ldrsh r0, [r4, r1]
cmp r0, 0
bne _080D6274
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _080D6276
.pool
_080D6274:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_080D6276:
ldrb r0, [r0]
bl GetBankSide
@@ -2201,7 +2201,7 @@ _080D6364:
bl sub_80A7344
_080D636A:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080D6382
_080D6372:
movs r0, 0
@@ -2236,7 +2236,7 @@ sub_80D6388: @ 80D6388
adds r0, r5, r7
lsls r0, 3
adds r6, r0, r4
- ldr r0, =gMovePowerMoveAnim
+ ldr r0, =gAnimMovePower
ldrh r0, [r0]
movs r1, 0xC
bl __udivsi3
@@ -2248,7 +2248,7 @@ _080D63C0:
adds r0, r5, r7
lsls r0, 3
adds r6, r0, r4
- ldr r0, =gMoveDmgMoveAnim
+ ldr r0, =gAnimMoveDmg
ldr r0, [r0]
movs r1, 0xC
bl __divsi3
@@ -2435,7 +2435,7 @@ _080D6518:
adds r0, r2
strh r4, [r0, 0x26]
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080D654A:
pop {r4,r5}
pop {r0}
diff --git a/asm/battle_anim_80FE840.s b/asm/battle_anim_80FE840.s
index f35b2f7da..dc927cacc 100644
--- a/asm/battle_anim_80FE840.s
+++ b/asm/battle_anim_80FE840.s
@@ -22,7 +22,7 @@ sub_80FE840: @ 80FE840
strh r0, [r4, 0x2E]
ldrh r0, [r5, 0x6]
strh r0, [r4, 0x30]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -80,7 +80,7 @@ sub_80FE898: @ 80FE898
b _080FE8DA
_080FE8D4:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FE8DA:
pop {r4}
pop {r0}
@@ -96,7 +96,7 @@ sub_80FE8E0: @ 80FE8E0
ldr r0, =gBattleAnimArgs
ldrh r0, [r0, 0x4]
strh r0, [r4, 0x2E]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -132,7 +132,7 @@ sub_80FE930: @ 80FE930
bl StartSpriteAnim
ldrh r0, [r5, 0x4]
strh r0, [r4, 0x2E]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -147,7 +147,7 @@ sub_80FE930: @ 80FE930
strh r0, [r4, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -167,7 +167,7 @@ sub_80FE988: @ 80FE988
strh r0, [r4, 0x2E]
ldrh r0, [r4, 0x20]
strh r0, [r4, 0x30]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -212,14 +212,14 @@ _080FE9FA:
ldrsh r0, [r4, r1]
cmp r0, 0x7F
ble _080FEA14
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A82E4
adds r0, 0x1
b _080FEA1E
.pool
_080FEA14:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A82E4
adds r0, 0x6
@@ -287,7 +287,7 @@ sub_80FEA58: @ 80FEA58
strh r0, [r1, 0x4]
strh r2, [r1, 0x6]
ldr r4, =gUnknown_08592210
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A82E4
adds r3, r0, 0
@@ -304,7 +304,7 @@ _080FEAB2:
cmp r0, 0xF
bne _080FEAC0
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080FEAC0:
pop {r4-r6}
pop {r0}
@@ -321,7 +321,7 @@ sub_80FEAD8: @ 80FEAD8
ldr r6, =gBattleAnimArgs
ldrh r0, [r6, 0x6]
strh r0, [r4, 0x2E]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -355,7 +355,7 @@ sub_80FEB28: @ 80FEB28
cmp r0, 0
beq _080FEB3C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FEB3C:
pop {r4}
pop {r0}
@@ -374,7 +374,7 @@ sub_80FEB44: @ 80FEB44
ands r1, r0
adds r0, r5, 0
bl StartSpriteAnim
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -410,7 +410,7 @@ _080FEB94:
strh r0, [r5, 0x2E]
ldrh r0, [r5, 0x20]
strh r0, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -454,7 +454,7 @@ sub_80FEBFC: @ 80FEBFC
cmp r0, 0
beq _080FEC12
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _080FEC42
_080FEC12:
movs r1, 0x38
@@ -494,7 +494,7 @@ sub_80FEC48: @ 80FEC48
adds r6, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -508,7 +508,7 @@ _080FEC68:
ldr r4, =gBattleAnimArgs
ldrh r0, [r4, 0x8]
strh r0, [r6, 0x2E]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0
bl sub_80A5C6C
@@ -583,7 +583,7 @@ sub_80FECF0: @ 80FECF0
strh r0, [r4, 0x2E]
ldr r0, =sub_80A64B0
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
@@ -655,7 +655,7 @@ sub_80FED74: @ 80FED74
lsrs r0, 16
cmp r0, 0x7F
bhi _080FEDC8
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
movs r1, 0x3
@@ -669,7 +669,7 @@ sub_80FED74: @ 80FED74
b _080FEDEC
.pool
_080FEDC8:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
adds r0, 0x1
@@ -704,7 +704,7 @@ _080FEDEC:
cmp r0, r1
bne _080FEE10
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FEE10:
pop {r4}
pop {r0}
@@ -721,18 +721,18 @@ sub_80FEE1C: @ 80FEE1C
lsls r0, 24
cmp r0, 0
bne _080FEE36
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _080FEE3E
_080FEE36:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080FEE70
_080FEE3E:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -740,17 +740,17 @@ _080FEE3E:
movs r0, 0x2
movs r1, 0x4
movs r2, 0x3
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
b _080FEE6A
.pool
_080FEE60:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_080FEE6A:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080FEE70:
pop {r4}
pop {r0}
@@ -771,7 +771,7 @@ sub_80FEE78: @ 80FEE78
strh r0, [r4, 0x32]
ldrh r0, [r4, 0x22]
strh r0, [r4, 0x34]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
movs r1, 0x3
bl sub_80A5C6C
@@ -823,14 +823,14 @@ sub_80FEECC: @ 80FEECC
lsrs r0, 16
cmp r0, 0x7F
bhi _080FEF18
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A82E4
subs r0, 0x1
b _080FEF22
.pool
_080FEF18:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A82E4
adds r0, 0x1
@@ -847,7 +847,7 @@ _080FEF22:
.pool
_080FEF38:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FEF3E:
pop {r4}
pop {r0}
@@ -868,7 +868,7 @@ sub_80FEF44: @ 80FEF44
strh r0, [r4, 0x32]
ldrh r0, [r4, 0x22]
strh r0, [r4, 0x34]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
movs r1, 0x3
bl sub_80A5C6C
@@ -939,7 +939,7 @@ _080FEFE4:
b _080FEFF6
_080FEFF0:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FEFF6:
pop {r4}
pop {r0}
@@ -950,7 +950,7 @@ _080FEFF6:
sub_80FEFFC: @ 80FEFFC
push {r4,r5,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -1026,7 +1026,7 @@ _080FF08C:
sub_80FF090: @ 80FF090
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -1067,7 +1067,7 @@ _080FF0DE:
cmp r0, 0x50
ble _080FF0EC
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FF0EC:
pop {r4}
pop {r0}
@@ -1080,7 +1080,7 @@ sub_80FF0F4: @ 80FF0F4
adds r5, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -1098,7 +1098,7 @@ _080FF114:
ldrsh r0, [r6, r1]
cmp r0, 0
bne _080FF154
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -1117,7 +1117,7 @@ _080FF114:
b _080FF174
.pool
_080FF154:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r5, 0
adds r2, 0x32
@@ -1139,11 +1139,11 @@ _080FF174:
strh r0, [r5, 0x38]
adds r0, r5, 0
bl sub_80A68D4
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r4, 24
@@ -1249,7 +1249,7 @@ _080FF256:
cmp r7, 0
beq _080FF260
adds r0, r6, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FF260:
pop {r4-r7}
pop {r0}
@@ -1260,12 +1260,12 @@ _080FF260:
sub_80FF268: @ 80FF268
push {r4,lr}
adds r4, r0, 0
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _080FF28A
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
@@ -1350,7 +1350,7 @@ _080FF2F8:
ldrsh r0, [r4, r1]
cmp r0, 0x7F
bgt _080FF338
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
lsls r0, 24
@@ -1359,7 +1359,7 @@ _080FF2F8:
b _080FF346
.pool
_080FF338:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
lsls r0, 24
@@ -1382,7 +1382,7 @@ _080FF346:
cmp r0, 0
bne _080FF36A
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FF36A:
pop {r4,r5}
pop {r0}
@@ -1500,7 +1500,7 @@ _080FF424:
b _080FF452
_080FF44C:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FF452:
pop {r4}
pop {r0}
@@ -1534,7 +1534,7 @@ sub_80FF458: @ 80FF458
cmp r0, 0
bge _080FF498
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080FF51C
.pool
_080FF498:
@@ -1550,7 +1550,7 @@ _080FF498:
lsls r0, 28
lsrs r0, 30
strh r0, [r6, 0x24]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
mov r9, r0
ldrb r0, [r0]
bl sub_80A8328
@@ -1639,7 +1639,7 @@ sub_80FF53C: @ 80FF53C
lsls r1, 16
asrs r1, 24
strh r1, [r5, 0x24]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -1765,7 +1765,7 @@ _080FF674:
cmp r0, 0x3
bne _080FF68E
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080FF68E:
pop {r4-r7}
pop {r0}
@@ -1785,7 +1785,7 @@ sub_80FF698: @ 80FF698
beq _080FF704
b _080FF756
_080FF6AA:
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
bl GetBankSide
lsls r0, 24
@@ -1845,7 +1845,7 @@ _080FF704:
bl ChangeSpriteAffineAnim
movs r0, 0x19
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -1860,7 +1860,7 @@ _080FF704:
strh r0, [r5, 0x36]
ldr r0, =sub_80A70C0
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
_080FF756:
@@ -1878,7 +1878,7 @@ sub_80FF768: @ 80FF768
ldrsh r0, [r5, r1]
cmp r0, 0
bne _080FF7D4
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -1941,7 +1941,7 @@ sub_80FF7EC: @ 80FF7EC
push {r4-r6}
sub sp, 0x4
mov r9, r0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -1956,7 +1956,7 @@ sub_80FF7EC: @ 80FF7EC
lsls r0, 24
lsrs r0, 24
mov r8, r0
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0x2
bl sub_80A5C6C
@@ -2081,7 +2081,7 @@ _080FF91C:
cmp r1, r0
ble _080FF92E
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FF92E:
pop {r0}
bx r0
@@ -2095,7 +2095,7 @@ sub_80FF934: @ 80FF934
ldrsh r0, [r6, r1]
cmp r0, 0
bne _080FF974
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -2144,7 +2144,7 @@ _080FF974:
cmp r1, r0
ble _080FF9AA
adds r0, r6, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FF9AA:
pop {r4-r6}
pop {r0}
@@ -2284,7 +2284,7 @@ _080FFA98:
cmp r0, 0x32
ble _080FFAAC
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FFAAC:
pop {r4}
pop {r0}
@@ -2349,7 +2349,7 @@ sub_80FFB18: @ 80FFB18
adds r5, r0, 0
movs r1, 0
bl sub_80A69CC
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -2360,7 +2360,7 @@ sub_80FFB18: @ 80FFB18
bl sub_80A5C6C
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r1, [r0]
movs r0, 0x2
eors r0, r1
@@ -2442,7 +2442,7 @@ _080FFBBA:
strh r5, [r4, 0x26]
strh r5, [r4, 0x2E]
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FFBEC:
pop {r4,r5}
pop {r0}
@@ -2453,7 +2453,7 @@ _080FFBEC:
sub_80FFBF4: @ 80FFBF4
push {r4-r6,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x1
bl sub_80A5C6C
@@ -2537,7 +2537,7 @@ _080FFC8A:
cmp r0, 0
beq _080FFCAA
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FFCAA:
pop {r4}
pop {r0}
@@ -2551,7 +2551,7 @@ sub_80FFCB4: @ 80FFCB4
adds r5, r0, 0
movs r1, 0
bl sub_80A6980
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -2562,7 +2562,7 @@ sub_80FFCB4: @ 80FFCB4
bl sub_80A5C6C
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r1, [r0]
movs r0, 0x2
eors r0, r1
@@ -2640,7 +2640,7 @@ _080FFD56:
cmp r0, 0
bne _080FFD8A
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -2658,7 +2658,7 @@ _080FFD8A:
str r0, [r4, 0x1C]
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -2915,7 +2915,7 @@ sub_80FFF7C: @ 80FFF7C
cmp r0, 0x14
ble _080FFF8E
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080FFF8E:
movs r0, 0x2E
ldrsh r1, [r4, r0]
@@ -2954,7 +2954,7 @@ sub_80FFFC0: @ 80FFFC0
lsls r0, 3
ldr r1, =gTasks
adds r5, r0, r1
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
bl sub_80A82E4
lsls r0, 24
@@ -3017,7 +3017,7 @@ _08100028:
cmp r0, 0x40
bne _08100060
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08100060:
ldr r4, =gSprites
movs r0, 0xC
@@ -3581,7 +3581,7 @@ _081004D6:
cmp r0, 0
bne _081004FC
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _081004FC
_081004E6:
ldrh r0, [r6, 0xA]
@@ -3772,11 +3772,11 @@ sub_8100640: @ 8100640
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0810065C
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0810065E
.pool
_0810065C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0810065E:
ldrb r6, [r0]
adds r0, r6, 0
@@ -3857,7 +3857,7 @@ _081006E4:
strb r0, [r4, 0x5]
b _08100738
_08100700:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x3
bl sub_80A5C6C
@@ -4047,7 +4047,7 @@ _08100876:
cmp r1, r0
bne _0810088A
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810088A:
pop {r4-r7}
pop {r0}
@@ -4066,7 +4066,7 @@ sub_8100898: @ 8100898
cmp r0, 0
bne _081008B4
adds r0, r6, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _0810098E
.pool
_081008B4:
@@ -4074,11 +4074,11 @@ _081008B4:
ldrsh r0, [r1, r3]
cmp r0, 0
bne _081008C4
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _081008C6
.pool
_081008C4:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_081008C6:
ldrb r0, [r4]
movs r1, 0x2
@@ -4227,7 +4227,7 @@ sub_81009DC: @ 81009DC
cmp r0, 0
beq _081009F2
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081009F2:
pop {r0}
bx r0
@@ -4237,7 +4237,7 @@ _081009F2:
sub_81009F8: @ 81009F8
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -4264,7 +4264,7 @@ _08100A2C:
strh r0, [r4, 0x22]
ldr r0, =sub_80A67D8
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
@@ -4277,7 +4277,7 @@ _08100A2C:
sub_8100A50: @ 8100A50
push {r4,r5,lr}
adds r5, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -4343,7 +4343,7 @@ sub_8100A94: @ 8100A94
sub_8100AE0: @ 8100AE0
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -4439,7 +4439,7 @@ sub_8100B88: @ 8100B88
b _08100C24
.pool
_08100BA8:
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r4, 0x2
eors r0, r4
@@ -4453,7 +4453,7 @@ _08100BA8:
b _08100C34
.pool
_08100BC8:
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0
bl sub_80A5C6C
@@ -4469,7 +4469,7 @@ _08100BC8:
mov r8, r2
mov r1, r8
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _08100C3E
@@ -4494,7 +4494,7 @@ _08100BC8:
b _08100C3E
.pool
_08100C24:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -4509,7 +4509,7 @@ _08100C34:
_08100C3E:
strh r7, [r6, 0x20]
strh r4, [r6, 0x22]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -4619,7 +4619,7 @@ _08100CF2:
asrs r0, 16
cmp r0, 0x14
bne _08100D28
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
movs r0, 0x3
@@ -4739,7 +4739,7 @@ _08100DE0:
adds r0, r4
bl DestroySprite
adds r0, r5, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08100E10:
pop {r4,r5}
pop {r0}
@@ -4754,7 +4754,7 @@ sub_8100E1C: @ 8100E1C
ldr r4, =gBattleAnimArgs
ldrh r0, [r4, 0x4]
strh r0, [r5, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -4846,7 +4846,7 @@ _08100EB2:
cmp r0, r1
bne _08100EE8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08100EE8:
pop {r4}
pop {r0}
@@ -4866,7 +4866,7 @@ sub_8100EF0: @ 8100EF0
adds r0, 0x8
strh r0, [r1, 0x2]
_08100F06:
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
movs r1, 0
bl sub_80A60AC
@@ -5090,7 +5090,7 @@ _081010C2:
sub_81010CC: @ 81010CC
push {r4-r6,lr}
adds r4, r0, 0
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0x2
bl sub_80A5C6C
@@ -5309,7 +5309,7 @@ _0810127A:
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08101290:
pop {r4}
pop {r0}
@@ -5406,7 +5406,7 @@ _08101320:
strh r0, [r4, 0x30]
ldrh r0, [r5, 0x8]
strh r0, [r4, 0x32]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A656C
@@ -5426,21 +5426,21 @@ sub_810135C: @ 810135C
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08101378
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0810137A
.pool
_08101378:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0810137A:
ldrb r6, [r0]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _081013C4
movs r1, 0x2
adds r0, r6, 0
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _081013C4
@@ -5507,7 +5507,7 @@ _08101414:
strh r0, [r5, 0x30]
ldrh r0, [r1, 0x8]
strh r0, [r5, 0x32]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A656C
@@ -5523,7 +5523,7 @@ sub_8101440: @ 8101440
push {r4,lr}
adds r4, r0, 0
bl sub_80A6838
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -5599,7 +5599,7 @@ _081014D8:
cmp r0, 0
beq _081014EC
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081014EC:
pop {r4}
pop {r0}
@@ -5611,7 +5611,7 @@ sub_81014F4: @ 81014F4
push {r4,lr}
adds r4, r0, 0
bl sub_80A6838
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -5778,7 +5778,7 @@ _08101604:
adds r0, r1
strh r0, [r5, 0x38]
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -5885,7 +5885,7 @@ _08101718:
strh r1, [r5, 0x24]
movs r0, 0x6
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -5975,7 +5975,7 @@ _081017A4:
movs r2, 0x4
bl LoadPalette
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -6052,7 +6052,7 @@ _0810187C:
cmp r0, 0x8
bne _08101890
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08101890:
pop {r4}
pop {r0}
@@ -6199,7 +6199,7 @@ sub_8101998: @ 8101998
adds r4, r0, 0
movs r0, 0x6
strh r0, [r4, 0x2E]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
bl GetBankSide
lsls r0, 24
@@ -6238,7 +6238,7 @@ sub_81019E8: @ 81019E8
cmp r6, 0
bne _08101A24
ldr r1, =gBankSpriteIds
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
adds r0, r1
ldrb r0, [r0]
@@ -6301,7 +6301,7 @@ sub_8101A74: @ 8101A74
adds r4, r0, 0
movs r0, 0x4
strh r0, [r4, 0x2E]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
bl GetBankSide
lsls r0, 24
@@ -6361,7 +6361,7 @@ sub_8101AE8: @ 8101AE8
cmp r0, 0
bne _08101B38
ldr r1, =gBankSpriteIds
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
adds r0, r1
ldrb r0, [r0]
@@ -6431,7 +6431,7 @@ _08101B78:
thumb_func_start sub_8101B84
sub_8101B84: @ 8101B84
push {lr}
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r0}
bx r0
thumb_func_end sub_8101B84
@@ -6466,7 +6466,7 @@ _08101BB6:
_08101BBC:
strh r5, [r4, 0x30]
ldr r1, =gBankSpriteIds
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldrb r0, [r2]
adds r0, r1
ldrb r0, [r0]
@@ -6558,7 +6558,7 @@ _08101C4C:
lsrs r0, 24
bl sub_80A7344
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08101C8E:
pop {r4,r5}
pop {r0}
@@ -6576,7 +6576,7 @@ sub_8101C94: @ 8101C94
lsls r0, 3
adds r5, r0, r1
ldr r1, =gBankSpriteIds
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldrb r0, [r2]
adds r0, r1
ldrb r0, [r0]
@@ -6596,7 +6596,7 @@ sub_8101C94: @ 8101C94
cmp r1, 0x1
beq _08101D04
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08101D22
.pool
_08101CE8:
@@ -6864,7 +6864,7 @@ _08101ED4:
.pool
_08101EE0:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08101EE6:
pop {r4}
pop {r0}
@@ -6906,7 +6906,7 @@ _08101F2C:
ldrb r0, [r4, 0x8]
bl sub_80A7344
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08101F38:
pop {r4,r5}
pop {r0}
@@ -6922,11 +6922,11 @@ sub_8101F40: @ 8101F40
ldrsh r0, [r6, r1]
cmp r0, 0
bne _08101F5C
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _08101F5E
.pool
_08101F5C:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_08101F5E:
ldrb r0, [r4]
movs r1, 0x2
@@ -6962,7 +6962,7 @@ _08101F5E:
sub_8101FA8: @ 8101FA8
push {r4,r5,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -6992,7 +6992,7 @@ sub_8101FA8: @ 8101FA8
sub_8101FF0: @ 8101FF0
push {r4-r6,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -7100,7 +7100,7 @@ sub_810208C: @ 810208C
cmp r0, 0x8
ble _081020D4
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081020D4:
pop {r0}
bx r0
@@ -7115,11 +7115,11 @@ sub_81020D8: @ 81020D8
ldrsh r0, [r6, r1]
cmp r0, 0
bne _081020F4
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _081020F6
.pool
_081020F4:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_081020F6:
ldrb r0, [r4]
movs r1, 0
@@ -7181,7 +7181,7 @@ _0810215C:
cmp r0, 0
beq _08102178
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08102178:
pop {r0}
bx r0
@@ -7191,7 +7191,7 @@ _08102178:
sub_810217C: @ 810217C
push {r4-r6,lr}
adds r4, r0, 0
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
movs r1, 0x2
bl sub_80A5C6C
@@ -7213,7 +7213,7 @@ sub_810217C: @ 810217C
strh r5, [r4, 0x34]
strh r5, [r4, 0x36]
subs r0, 0x42
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
lsls r0, 24
asrs r0, 24
strh r0, [r4, 0x38]
@@ -7301,7 +7301,7 @@ _08102238:
cmp r0, 0
beq _08102262
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08102262:
pop {r4}
pop {r0}
@@ -7316,7 +7316,7 @@ sub_8102268: @ 8102268
ldrsh r0, [r6, r1]
cmp r0, 0
bne _081022B2
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -7352,7 +7352,7 @@ _081022B2:
cmp r1, r0
bne _081022C2
adds r0, r6, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081022C2:
pop {r4-r6}
pop {r0}
@@ -7383,7 +7383,7 @@ _08102300:
cmp r0, 0x2
bne _0810230C
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08102344
_0810230C:
ldrh r0, [r4, 0x8]
@@ -7465,7 +7465,7 @@ _08102390:
strb r0, [r2]
movs r0, 0x1E
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -7480,7 +7480,7 @@ _08102390:
strh r0, [r5, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
_081023CC:
@@ -7525,7 +7525,7 @@ sub_81023E0: @ 81023E0
cmp r0, 0x10
bne _08102428
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08102428:
pop {r4,r5}
pop {r0}
@@ -7557,7 +7557,7 @@ _08102448:
bne _08102464
adds r0, r4, r5
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
_08102464:
movs r1, 0x2
ldrsh r0, [r6, r1]
@@ -7571,7 +7571,7 @@ _08102464:
bne _08102482
adds r0, r4, r5
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
_08102482:
adds r0, r4, 0x1
lsls r0, 24
@@ -7582,7 +7582,7 @@ _08102482:
bcc _08102448
_08102490:
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r7}
pop {r0}
bx r0
@@ -7600,7 +7600,7 @@ _081024B2:
ldr r0, =gHealthBoxesIds
adds r0, r4, r0
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
@@ -7610,7 +7610,7 @@ _081024C2:
cmp r4, r0
bcc _081024B2
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -7663,7 +7663,7 @@ sub_8102528: @ 8102528
cmp r0, 0
beq _0810253A
adds r0, r1, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810253A:
pop {r0}
bx r0
@@ -7673,7 +7673,7 @@ _0810253A:
sub_8102540: @ 8102540
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
movs r1, 0x2
bl sub_80A5C6C
@@ -7729,7 +7729,7 @@ _081025AE:
cmp r0, 0
beq _081025BC
adds r0, r1, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081025BC:
pop {r0}
bx r0
@@ -8034,7 +8034,7 @@ _08102820:
cmp r0, 0
bne _08102832
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08102832:
add sp, 0x4
pop {r3}
@@ -8068,7 +8068,7 @@ _08102862:
strh r0, [r5, 0x2E]
ldrh r0, [r6, 0x4]
strh r0, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -8113,7 +8113,7 @@ _08102862:
b _081028FA
.pool
_081028D4:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -8216,7 +8216,7 @@ _081029A2:
cmp r0, 0
bne _081029B0
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081029B0:
pop {r0}
bx r0
@@ -8333,9 +8333,9 @@ _08102A88:
_08102A9A:
ldr r0, =sub_8102AE0
str r0, [r6]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -8374,9 +8374,9 @@ sub_8102AE0: @ 8102AE0
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08102B32
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -8396,7 +8396,7 @@ _08102B26:
ldr r0, =0x00002771
bl FreeSpritePaletteByTag
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08102B32:
pop {r4}
pop {r0}
@@ -8481,7 +8481,7 @@ _08102BC2:
sub_8102BCC: @ 8102BCC
push {r4,lr}
adds r4, r0, 0
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A67D8
str r0, [r4, 0x1C]
@@ -8575,7 +8575,7 @@ _08102C7A:
cmp r4, 0x3
bls _08102C32
mov r0, r9
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r3,r4}
mov r8, r3
mov r9, r4
@@ -8605,7 +8605,7 @@ _08102CAA:
cmp r4, 0x3
bls _08102CAA
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r6}
pop {r0}
bx r0
@@ -8657,7 +8657,7 @@ _08102D10:
b _08102D4E
.pool
_08102D34:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -8855,7 +8855,7 @@ _08102EA6:
sub_8102EB0: @ 8102EB0
push {r4-r7,lr}
adds r6, r0, 0
- ldr r7, =gAnimationBankAttacker
+ ldr r7, =gAnimBankAttacker
ldrb r0, [r7]
bl GetBankSide
lsls r0, 24
@@ -9002,7 +9002,7 @@ sub_8102FB8: @ 8102FB8
_08102FDC:
ldr r6, =0x0000fff0
_08102FDE:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -9021,7 +9021,7 @@ _08102FDE:
strh r0, [r5, 0x2E]
ldr r0, =sub_80A64B0
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
pop {r4-r6}
@@ -9135,7 +9135,7 @@ _081030DC:
b _08103106
_08103100:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08103106:
pop {r4}
pop {r0}
@@ -9197,11 +9197,11 @@ sub_8103164: @ 8103164
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08103180
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08103182
.pool
_08103180:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08103182:
ldrb r4, [r0]
adds r0, r4, 0
@@ -9242,7 +9242,7 @@ sub_81031D0: @ 81031D0
lsls r0, 16
cmp r0, 0
bne _081031F8
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldrh r1, [r4, 0x30]
@@ -9268,11 +9268,11 @@ sub_8103208: @ 8103208
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08103224
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08103226
.pool
_08103224:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08103226:
ldrb r0, [r0]
adds r1, r4, 0
@@ -9325,11 +9325,11 @@ sub_8103284: @ 8103284
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081032A0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _081032A2
.pool
_081032A0:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_081032A2:
ldrb r5, [r0]
adds r0, r5, 0
@@ -9463,11 +9463,11 @@ sub_8103390: @ 8103390
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081033AC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _081033AE
.pool
_081033AC:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_081033AE:
ldrb r4, [r0]
adds r0, r4, 0
@@ -9541,7 +9541,7 @@ sub_810342C: @ 810342C
cmp r0, 0x5
ble _08103444
adds r0, r1, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08103444:
pop {r0}
bx r0
@@ -9591,11 +9591,11 @@ sub_8103498: @ 8103498
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081034B4
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _081034B6
.pool
_081034B4:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_081034B6:
ldrb r0, [r0]
adds r1, r4, 0
@@ -9664,7 +9664,7 @@ _08103524:
cmp r0, 0x40
bne _08103538
adds r0, r1, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08103538:
pop {r0}
bx r0
@@ -9716,7 +9716,7 @@ _0810357A:
sub_810358C: @ 810358C
push {r4-r6,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -9730,7 +9730,7 @@ sub_810358C: @ 810358C
lsrs r0, 24
strh r0, [r5, 0x22]
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r0, r1
ldrb r6, [r0]
@@ -9830,7 +9830,7 @@ sub_8103680: @ 8103680
cmp r0, 0
bne _08103696
adds r0, r1, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _0810369A
_08103696:
subs r0, r2, 0x1
@@ -9847,7 +9847,7 @@ sub_81036A0: @ 81036A0
lsls r4, 24
lsrs r4, 24
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
@@ -9872,7 +9872,7 @@ sub_81036DC: @ 81036DC
lsls r0, 24
lsrs r5, r0, 24
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r1, r0, r1
ldrb r4, [r1]
@@ -9974,7 +9974,7 @@ _081037AA:
adds r0, r4, 0
bl sub_80A7344
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _081037D0
.pool
_081037CC:
@@ -9992,7 +9992,7 @@ sub_81037D8: @ 81037D8
push {r4,r5,lr}
adds r4, r0, 0
bl sub_80A6838
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -10018,7 +10018,7 @@ _08103810:
ldrh r1, [r4, 0x22]
adds r0, r1
strh r0, [r4, 0x22]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -10054,7 +10054,7 @@ _0810384C:
_08103860:
ldr r0, =sub_80A67D8
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -10092,7 +10092,7 @@ sub_81038A0: @ 81038A0
strh r1, [r0, 0x36]
ldr r1, =sub_80A6EEC
str r1, [r0, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
bl StoreSpriteCallbackInData6
pop {r0}
bx r0
@@ -10117,7 +10117,7 @@ sub_81038C8: @ 81038C8
b _0810390E
.pool
_081038EC:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -10137,7 +10137,7 @@ _0810390E:
adds r0, r5, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -10201,7 +10201,7 @@ _08103980:
strh r7, [r5, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
add sp, 0x4
@@ -10507,7 +10507,7 @@ sub_8103BE4: @ 8103BE4
cmp r0, 0
bne _08103C02
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08103C02:
pop {r0}
bx r0
@@ -10604,7 +10604,7 @@ _08103C90:
strh r0, [r4, 0xA]
movs r0, 0x3F
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -10676,8 +10676,8 @@ _08103D54:
strh r0, [r3, 0x4]
b _08103DB6
_08103D5C:
- ldr r1, =gBanksBySide
- ldr r0, =gAnimationBankTarget
+ ldr r1, =gBanksByIdentity
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r0, r1
ldrb r1, [r0]
@@ -10716,7 +10716,7 @@ _08103DB0:
_08103DB4:
strh r0, [r2, 0x4]
_08103DB6:
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0
bl sub_80A5C6C
@@ -10742,11 +10742,11 @@ _08103DB6:
ands r0, r1
cmp r0, 0
beq _08103E20
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r1, [r4]
movs r0, 0x2
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _08103E20
@@ -10759,7 +10759,7 @@ _08103DB6:
.pool
_08103E20:
mov r5, sp
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -10897,7 +10897,7 @@ _08103F28:
asrs r0, 16
cmp r0, 0x3F
ble _08103FA0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A82E4
lsls r0, 24
@@ -10914,7 +10914,7 @@ _08103F78:
asrs r0, 16
cmp r0, 0x3F
ble _08103FA0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A82E4
lsls r0, 24
@@ -10927,7 +10927,7 @@ _08103F78:
b _08103FB0
.pool
_08103FA0:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A82E4
lsls r0, 24
@@ -11035,7 +11035,7 @@ _08104050:
cmp r0, 0x18
bne _0810407C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810407C:
pop {r4-r7}
pop {r0}
@@ -11050,7 +11050,7 @@ sub_8104088: @ 8104088
adds r5, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -11066,7 +11066,7 @@ sub_8104088: @ 8104088
adds r0, r1
lsls r0, 16
lsrs r7, r0, 16
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11112,7 +11112,7 @@ _081040CC:
strh r7, [r5, 0x36]
ldr r0, =sub_80A7000
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
add sp, 0x4
@@ -11145,7 +11145,7 @@ sub_8104154: @ 8104154
lsls r0, 16
asrs r0, 24
strh r0, [r4, 0x24]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11184,7 +11184,7 @@ _08104178:
cmp r0, 0x2
bne _081041B8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081041B8:
pop {r4}
pop {r0}
@@ -11200,7 +11200,7 @@ sub_81041C4: @ 81041C4
bl sub_80A69CC
movs r0, 0x14
strh r0, [r4, 0x2E]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -11235,7 +11235,7 @@ sub_810421C: @ 810421C
push {r4,lr}
adds r4, r0, 0
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -11339,7 +11339,7 @@ _081042BE:
cmp r0, 0x1
bne _081042FE
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081042FE:
pop {r4}
pop {r0}
@@ -11352,7 +11352,7 @@ sub_8104304: @ 8104304
adds r4, r0, 0
movs r1, 0
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11375,7 +11375,7 @@ _08104322:
strh r0, [r4, 0x36]
ldr r0, =sub_80A62EC
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r1, [r4, 0x1C]
@@ -11423,7 +11423,7 @@ _08104390:
strh r0, [r5, 0x22]
movs r0, 0x6
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -11462,7 +11462,7 @@ sub_81043F8: @ 81043F8
cmp r0, 0
beq _0810440E
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810440E:
pop {r0}
bx r0
@@ -11510,7 +11510,7 @@ _08104448:
movs r0, 0x6
strh r0, [r5, 0x2E]
strh r1, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -11664,7 +11664,7 @@ sub_8104594: @ 8104594
cmp r0, 0
beq _081045A8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081045A8:
pop {r4}
pop {r0}
@@ -11752,7 +11752,7 @@ sub_8104614: @ 8104614
movs r1, 0x1
bl sub_80A750C
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08104664:
pop {r4,r5}
pop {r0}
@@ -11786,7 +11786,7 @@ sub_8104674: @ 8104674
strh r0, [r4, 0x10]
strh r5, [r4, 0x12]
strh r5, [r4, 0x14]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A82E4
lsls r0, 24
@@ -11946,7 +11946,7 @@ _081047D8:
movs r1, 0
strh r1, [r0, 0x26]
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081047F6:
pop {r4,r5}
pop {r0}
@@ -12124,7 +12124,7 @@ sub_8104938: @ 8104938
cmp r0, 0
bne _08104964
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _0810498A
.pool
_08104964:
@@ -12276,7 +12276,7 @@ _08104A64:
adds r0, r2
strh r5, [r0, 0x26]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08104AA8
.pool
_08104A9C:
@@ -12333,7 +12333,7 @@ sub_8104AF0: @ 8104AF0
cmp r0, 0
bne _08104B10
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08104B10:
pop {r4}
pop {r0}
@@ -12345,7 +12345,7 @@ _08104B10:
sub_8104B1C: @ 8104B1C
push {r4,r5,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
bl GetBankSide
lsls r0, 24
@@ -12378,7 +12378,7 @@ _08104B50:
ldr r0, =0x0000ffc0
_08104B6A:
strh r0, [r4, 0x30]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
movs r1, 0x3
bl sub_80A5C6C
@@ -12391,7 +12391,7 @@ _08104B6A:
strh r1, [r4, 0x32]
strh r1, [r4, 0x34]
strh r1, [r4, 0x36]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A656C
@@ -12411,11 +12411,11 @@ sub_8104BAC: @ 8104BAC
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08104BC8
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08104BCA
.pool
_08104BC8:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08104BCA:
ldrb r5, [r0]
adds r0, r5, 0
@@ -12509,7 +12509,7 @@ sub_8104C78: @ 8104C78
cmp r0, 0
bne _08104C98
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08104C98:
pop {r4}
pop {r0}
@@ -12559,7 +12559,7 @@ sub_8104CA4: @ 8104CA4
strh r2, [r4, 0x18]
movs r0, 0x2
strh r0, [r4, 0x1A]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -12741,7 +12741,7 @@ _08104E48:
strh r1, [r0, 0x22]
_08104E66:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08104E6C:
pop {r4,r5}
pop {r0}
@@ -12759,7 +12759,7 @@ sub_8104E74: @ 8104E74
lsls r1, 3
ldr r0, =gTasks
adds r5, r1, r0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
bl sub_80A6190
lsls r0, 24
@@ -12777,19 +12777,19 @@ sub_8104E74: @ 8104E74
bl sub_80A861C
strh r0, [r5, 0x26]
ldrb r0, [r4]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _08104ED4
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r0, [r0]
strh r0, [r5, 0x14]
ldr r0, =0x04000014
b _08104EDC
.pool
_08104ED4:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r0, [r0]
strh r0, [r5, 0x14]
ldr r0, =0x04000018
@@ -12947,7 +12947,7 @@ _08104FF0:
movs r0, 0x3
strb r0, [r1, 0x15]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810500E:
pop {r4}
pop {r0}
@@ -12959,7 +12959,7 @@ _0810500E:
sub_810501C: @ 810501C
push {r4-r6,lr}
adds r4, r0, 0
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0
bl sub_80A5C6C
@@ -12986,7 +12986,7 @@ sub_810501C: @ 810501C
adds r0, 0x2
strh r0, [r4, 0x38]
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
lsls r0, 24
asrs r0, 24
strh r0, [r4, 0x3A]
@@ -13169,7 +13169,7 @@ _0810519A:
ands r0, r1
strb r0, [r2]
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081051BC:
pop {r4}
pop {r0}
@@ -13194,25 +13194,25 @@ sub_81051C4: @ 81051C4
adds r1, r0, 0
cmp r2, 0
bne _081051F0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _081051F2
.pool
_081051F0:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_081051F2:
ldrb r5, [r0]
ldrb r1, [r1, 0x6]
movs r0, 0x1
adds r4, r0, 0
eors r4, r1
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0810526A
movs r1, 0x2
adds r0, r5, 0
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810526A
@@ -13278,7 +13278,7 @@ sub_8105284: @ 8105284
adds r0, r4, 0
bl FreeSpriteOamMatrix
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810529E:
pop {r4}
pop {r0}
@@ -13305,15 +13305,15 @@ sub_81052A4: @ 81052A4
ldrsh r0, [r0, r2]
cmp r0, 0
bne _081052DC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r7, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
b _081052E2
.pool
_081052DC:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r7, [r0]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
_081052E2:
ldrb r0, [r0]
mov r8, r0
@@ -13354,7 +13354,7 @@ _08105310:
mov r4, r8
eors r4, r0
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810535C
@@ -13389,7 +13389,7 @@ _0810536C:
adds r4, r7, 0
eors r4, r0
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _081053E4
@@ -13457,7 +13457,7 @@ _081053FA:
movs r1, 0x2
mov r0, r8
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810544C
@@ -13581,7 +13581,7 @@ sub_8105538: @ 8105538
adds r4, r0, 0
movs r1, 0
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -13622,7 +13622,7 @@ sub_810557C: @ 810557C
strh r0, [r4, 0x24]
subs r2, 0x20
strh r2, [r4, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -13836,7 +13836,7 @@ sub_810571C: @ 810571C
b _08105752
.pool
_08105750:
- ldr r0, =move_anim_8072740
+ ldr r0, =DestroyAnimSprite
_08105752:
str r0, [r3, 0x1C]
_08105754:
@@ -13856,7 +13856,7 @@ sub_810575C: @ 810575C
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -13925,7 +13925,7 @@ sub_81057B8: @ 81057B8
orrs r1, r2
strb r1, [r0]
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08105802:
pop {r4,r5}
pop {r0}
@@ -13950,7 +13950,7 @@ sub_8105810: @ 8105810
strh r0, [r4, 0xE]
movs r0, 0x3
strh r0, [r4, 0x20]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -14124,7 +14124,7 @@ _08105962:
cmp r0, 0
bne _08105992
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08105992:
pop {r4,r5}
pop {r0}
@@ -14263,7 +14263,7 @@ _08105A88:
ands r1, r2
strb r1, [r0]
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08105AA6:
pop {r4-r6}
pop {r0}
@@ -14292,7 +14292,7 @@ sub_8105AAC: @ 8105AAC
strh r0, [r4, 0x16]
strh r0, [r4, 0x18]
strh r0, [r4, 0x22]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0
bl sub_80A5C6C
@@ -14469,7 +14469,7 @@ _08105C34:
cmp r0, 0
bne _08105C42
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08105C42:
pop {r4-r6}
pop {r0}
@@ -14561,7 +14561,7 @@ _08105CCC:
lsls r0, 6
bl AllocZeroed
adds r1, r0, 0
- ldr r0, =gBattleSpritesGfx
+ ldr r0, =gMonSpritesGfxPtr
ldr r0, [r0]
movs r2, 0xBE
lsls r2, 1
@@ -14571,7 +14571,7 @@ _08105CCC:
bl LZDecompressWram
movs r4, 0
_08105D00:
- ldr r5, =gBattleSpritesGfx
+ ldr r5, =gMonSpritesGfxPtr
ldr r0, [r5]
movs r1, 0xBE
lsls r1, 1
@@ -14603,7 +14603,7 @@ _08105D00:
movs r1, 0
str r1, [r0]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
add sp, 0x4
pop {r4-r6}
pop {r0}
@@ -14626,7 +14626,7 @@ _08105D6A:
cmp r4, 0
bge _08105D6A
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r6}
pop {r0}
bx r0
@@ -14684,7 +14684,7 @@ sub_8105DE8: @ 8105DE8
adds r5, r0, 0
movs r1, 0
bl sub_80A69CC
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
bl GetBankSide
lsls r0, 24
@@ -14716,7 +14716,7 @@ _08105E08:
strh r0, [r5, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldrb r1, [r4, 0xA]
@@ -14765,7 +14765,7 @@ _08105E7A:
cmp r0, 0x3C
bne _08105EAA
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08105EAA:
pop {r4}
pop {r0}
@@ -14785,9 +14785,9 @@ sub_8105EB0: @ 8105EB0
movs r6, 0x98
_08105EC4:
movs r5, 0
- ldr r1, =gUnknown_02022E24
+ ldr r1, =gBattle_WIN0H
strh r6, [r1]
- ldr r4, =gUnknown_02022E26
+ ldr r4, =gBattle_WIN0V
movs r0, 0xA0
strh r0, [r4]
ldrh r1, [r1]
@@ -14845,7 +14845,7 @@ sub_8105F30: @ 8105F30
lsls r0, r2, 16
cmp r1, r0
blt _08105F70
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
ldr r0, =sub_8105F84
@@ -14853,7 +14853,7 @@ sub_8105F30: @ 8105F30
b _08105F78
.pool
_08105F70:
- ldr r1, =gUnknown_02022E24
+ ldr r1, =gBattle_WIN0H
lsls r0, r4, 8
orrs r2, r0
strh r2, [r1]
@@ -14905,9 +14905,9 @@ sub_8105F84: @ 8105F84
_08105FD8:
cmp r0, 0x4
ble _0810600C
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r4, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r4, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -14923,7 +14923,7 @@ _08105FD8:
movs r1, 0
bl SetGpuReg
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810600C:
add sp, 0xC
pop {r4,r5}
@@ -14989,7 +14989,7 @@ _0810607C:
strh r0, [r4, 0x24]
strh r0, [r4, 0x26]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081060A4:
pop {r4-r6}
pop {r0}
@@ -15054,7 +15054,7 @@ _0810610C:
strh r0, [r4, 0x24]
strh r0, [r4, 0x26]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08106134:
pop {r4-r6}
pop {r0}
@@ -15072,7 +15072,7 @@ sub_8106140: @ 8106140
strh r0, [r4, 0x2E]
ldrh r0, [r4, 0x20]
strh r0, [r4, 0x30]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -15120,7 +15120,7 @@ sub_810618C: @ 810618C
b _081061BC
_081061B6:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081061BC:
pop {r4}
pop {r0}
@@ -15190,7 +15190,7 @@ _08106236:
cmp r0, 0x78
ble _08106244
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106244:
pop {r4}
pop {r0}
@@ -15268,7 +15268,7 @@ sub_810627C: @ 810627C
cmp r5, 0x40
bgt _081062E2
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081062E2:
pop {r4,r5}
pop {r0}
@@ -15291,11 +15291,11 @@ sub_81062E8: @ 81062E8
movs r0, 0x1
movs r1, 0x4
movs r2, 0x3
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -15303,12 +15303,12 @@ sub_81062E8: @ 81062E8
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0810632A:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r4, =gUnknown_02022E1A
+ ldr r4, =gBattle_BG1_Y
strh r1, [r4]
movs r0, 0x14
movs r1, 0
@@ -15489,7 +15489,7 @@ _081064BC:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_081064D0:
movs r0, 0x50
movs r1, 0
@@ -15500,9 +15500,9 @@ _081064D0:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081064F0:
add sp, 0x10
pop {r4,r5}
@@ -15526,11 +15526,11 @@ sub_81064F8: @ 81064F8
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -15538,12 +15538,12 @@ sub_81064F8: @ 81064F8
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0810653A:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r4, =gUnknown_02022E1A
+ ldr r4, =gBattle_BG1_Y
strh r1, [r4]
movs r0, 0x14
movs r1, 0
@@ -15561,7 +15561,7 @@ _0810653A:
b _0810658A
.pool
_08106578:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -15747,7 +15747,7 @@ _081066FC:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_08106710:
movs r0, 0x50
movs r1, 0
@@ -15758,9 +15758,9 @@ _08106710:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08106730:
add sp, 0x10
pop {r4,r5}
@@ -15773,7 +15773,7 @@ _08106730:
sub_810673C: @ 810673C
push {r4,r5,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -15912,7 +15912,7 @@ _08106858:
cmp r1, r0
bne _08106868
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106868:
pop {r4}
pop {r0}
@@ -15924,7 +15924,7 @@ _08106868:
sub_8106878: @ 8106878
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -15991,7 +15991,7 @@ sub_81068CC: @ 81068CC
bge _08106910
_0810690A:
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106910:
pop {r0}
bx r0
@@ -16019,7 +16019,7 @@ sub_8106914: @ 8106914
cmp r0, r1
blt _08106940
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106940:
pop {r0}
bx r0
@@ -16029,7 +16029,7 @@ _08106940:
sub_8106944: @ 8106944
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -16074,7 +16074,7 @@ sub_810699C: @ 810699C
cmp r0, 0
beq _081069B2
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081069B2:
pop {r0}
bx r0
@@ -16164,7 +16164,7 @@ _08106A50:
cmp r2, 0x64
ble _08106A5A
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106A5A:
pop {r4,r5}
pop {r0}
@@ -16222,7 +16222,7 @@ _08106ABA:
cmp r0, 0x1E
ble _08106AC8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106AC8:
pop {r4}
pop {r0}
@@ -16314,7 +16314,7 @@ sub_8106B54: @ 8106B54
adds r0, r4, 0
movs r1, 0
bl StartSpriteAnim
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A82E4
subs r0, 0x1
@@ -16439,7 +16439,7 @@ _08106C6A:
cmp r0, 0x5A
ble _08106C78
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106C78:
pop {r4}
pop {r0}
@@ -16480,7 +16480,7 @@ _08106CB4:
cmp r0, 0
beq _08106CC8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106CC8:
pop {r4}
pop {r0}
@@ -16497,7 +16497,7 @@ sub_8106CD0: @ 8106CD0
cmp r0, 0
bne _08106CEC
adds r0, r5, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _08106D50
.pool
_08106CEC:
@@ -16505,11 +16505,11 @@ _08106CEC:
ldrsh r0, [r1, r2]
cmp r0, 0
bne _08106CFC
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _08106CFE
.pool
_08106CFC:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_08106CFE:
ldrb r0, [r4]
movs r1, 0x2
@@ -16579,7 +16579,7 @@ sub_8106D5C: @ 8106D5C
b _08106D8C
_08106D86:
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106D8C:
pop {r0}
bx r0
@@ -16628,7 +16628,7 @@ sub_8106DD4: @ 8106DD4
cmp r0, 0
bne _08106DF4
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08106DF4:
pop {r4}
pop {r0}
@@ -16645,11 +16645,11 @@ sub_8106E00: @ 8106E00
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08106E1C
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08106E1E
.pool
_08106E1C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08106E1E:
ldrb r6, [r0]
adds r0, r6, 0
@@ -16754,7 +16754,7 @@ sub_8106EC8: @ 8106EC8
cmp r0, 0x10
ble _08106EFC
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106EFC:
pop {r0}
bx r0
@@ -16803,7 +16803,7 @@ _08106F40:
cmp r1, r0
bne _08106F54
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08106F54:
pop {r4}
pop {r0}
@@ -16968,14 +16968,14 @@ _08107066:
orrs r0, r1
strb r0, [r3]
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08107098:
movs r1, 0x36
ldrsh r0, [r4, r1]
cmp r0, 0x4
bne _081070A6
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081070A6:
pop {r4}
pop {r0}
@@ -16992,11 +16992,11 @@ sub_81070AC: @ 81070AC
ands r0, r1
cmp r0, 0
beq _081070F8
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r1, [r4]
movs r0, 0x2
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _081070F8
@@ -17016,7 +17016,7 @@ sub_81070AC: @ 81070AC
b _08107118
.pool
_081070F8:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -17040,7 +17040,7 @@ _08107118:
strh r0, [r5, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -17055,13 +17055,13 @@ sub_8107144: @ 8107144
lsls r0, 24
lsrs r0, 24
ldr r3, =gBattleAnimArgs
- ldr r1, =gDisableStructMoveAnim
+ ldr r1, =gAnimDisableStructPtr
ldr r1, [r1]
ldrb r2, [r1, 0x10]
movs r1, 0x1
ands r1, r2
strh r1, [r3, 0xE]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -17073,11 +17073,11 @@ update_fury_cutter_counter_copy: @ 8107168
lsls r0, 24
lsrs r0, 24
ldr r2, =gBattleAnimArgs
- ldr r1, =gDisableStructMoveAnim
+ ldr r1, =gAnimDisableStructPtr
ldr r1, [r1]
ldrb r1, [r1, 0x10]
strh r1, [r2, 0xE]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -17144,7 +17144,7 @@ _081071F8:
cmp r1, r0
bne _0810720A
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810720A:
pop {r4-r6}
pop {r0}
@@ -17196,7 +17196,7 @@ _0810725A:
sub_8107260: @ 8107260
push {r4-r6,lr}
adds r6, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
bl GetBankSide
lsls r0, 24
@@ -17237,7 +17237,7 @@ _081072A2:
movs r1, 0x40
orrs r0, r1
strb r0, [r2]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -17253,7 +17253,7 @@ _081072D8:
strh r0, [r6, 0x2E]
ldrh r0, [r6, 0x20]
strh r0, [r6, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -17422,7 +17422,7 @@ sub_810744C: @ 810744C
adds r5, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -17445,7 +17445,7 @@ _08107482:
strh r0, [r5, 0x2E]
ldrh r0, [r5, 0x20]
strh r0, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -17507,7 +17507,7 @@ _08107506:
cmp r0, 0
beq _08107518
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08107518:
pop {r4}
pop {r0}
@@ -17603,7 +17603,7 @@ _081075BE:
cmp r1, r0
bne _081075DE
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081075DE:
pop {r4-r7}
pop {r0}
@@ -17621,7 +17621,7 @@ sub_81075EC: @ 81075EC
strh r0, [r5, 0x2E]
ldrh r0, [r5, 0x20]
strh r0, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -17683,7 +17683,7 @@ sub_8107674: @ 8107674
cmp r0, 0
beq _08107688
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08107688:
ldrh r0, [r4, 0x3A]
lsls r0, 16
@@ -17762,7 +17762,7 @@ sub_81076F4: @ 81076F4
cmp r1, 0
bne _08107722
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08107722:
pop {r0}
bx r0
@@ -17773,7 +17773,7 @@ _08107722:
sub_8107730: @ 8107730
push {r4-r7,lr}
adds r4, r0, 0
- ldr r7, =gAnimationBankAttacker
+ ldr r7, =gAnimBankAttacker
ldrb r0, [r7]
movs r1, 0
bl sub_80A5C6C
@@ -17836,7 +17836,7 @@ sub_81077A4: @ 81077A4
cmp r0, 0
beq _081077BA
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081077BA:
pop {r0}
bx r0
@@ -17846,11 +17846,11 @@ _081077BA:
sub_81077C0: @ 81077C0
push {r4-r7,lr}
adds r6, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
bl GetBankSide
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r4, 24
@@ -17898,7 +17898,7 @@ _0810781E:
_08107828:
adds r0, r6, 0
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -17910,7 +17910,7 @@ _08107828:
_08107842:
ldrh r0, [r5, 0x8]
strh r0, [r6, 0x2E]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -17929,7 +17929,7 @@ _08107842:
strh r0, [r6, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r6, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r6, 0
bl StoreSpriteCallbackInData6
pop {r4-r7}
@@ -17956,7 +17956,7 @@ sub_8107894: @ 8107894
strh r1, [r4, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
@@ -18026,7 +18026,7 @@ sub_810790C: @ 810790C
cmp r0, r1
bne _0810794C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810794C:
pop {r4}
pop {r0}
@@ -18054,11 +18054,11 @@ sub_8107954: @ 8107954
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
mov r0, sp
bl sub_80A6B30
bl IsContest
@@ -18068,8 +18068,8 @@ sub_8107954: @ 8107954
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
- ldr r0, =gAnimationBankAttacker
+ bl SetAnimBgAttribute
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -18159,11 +18159,11 @@ _08107A32:
beq _08107AB4
ldr r1, =0x0000ffb0
adds r0, r1, 0
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
strh r0, [r2]
adds r1, 0x20
adds r0, r1, 0
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
strh r0, [r2]
movs r0, 0x2
strh r0, [r6, 0x8]
@@ -18174,7 +18174,7 @@ _08107A32:
b _08107B0E
.pool
_08107AB4:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -18183,12 +18183,12 @@ _08107AB4:
bne _08107AF8
ldr r2, =0x0000ff20
adds r0, r2, 0
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
strh r0, [r2]
movs r2, 0x80
lsls r2, 1
adds r0, r2, 0
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
strh r0, [r2]
movs r0, 0x2
strh r0, [r6, 0x8]
@@ -18198,11 +18198,11 @@ _08107AB4:
b _08107B0E
.pool
_08107AF8:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r4, [r0]
ldr r1, =0x0000ffd0
adds r0, r1, 0
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
strh r0, [r2]
ldr r0, =0x0000fffe
strh r0, [r6, 0x8]
@@ -18210,11 +18210,11 @@ _08107AF8:
strh r0, [r6, 0xA]
strh r4, [r7, 0xE]
_08107B0E:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r1, [r0]
movs r0, 0x14
bl SetGpuReg
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
ldrh r1, [r2]
movs r0, 0x16
bl SetGpuReg
@@ -18264,8 +18264,8 @@ sub_8107B84: @ 8107B84
sub sp, 0x10
lsls r0, 24
lsrs r5, r0, 24
- ldr r1, =gUnknown_02022E18
- ldr r2, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_X
+ ldr r2, =gBattle_BG1_Y
ldr r0, =gTasks
lsls r4, r5, 2
adds r4, r5
@@ -18425,8 +18425,8 @@ sub_8107CC4: @ 8107CC4
lsls r0, 24
lsrs r0, 24
adds r5, r0, 0
- ldr r7, =gUnknown_02022E18
- ldr r0, =gUnknown_02022E1A
+ ldr r7, =gBattle_BG1_X
+ ldr r0, =gBattle_BG1_Y
mov r8, r0
ldr r6, =gTasks
lsls r0, r5, 2
@@ -18454,7 +18454,7 @@ _08107D08:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_08107D1C:
movs r0, 0
strh r0, [r7]
@@ -18475,7 +18475,7 @@ _08107D1C:
ldr r1, =0x0000ffff
strh r1, [r0, 0x26]
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08107D4A:
pop {r3}
mov r8, r3
@@ -18945,7 +18945,7 @@ _081080C0:
cmp r0, 0x15
bne _081080DE
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081080DE:
pop {r4}
pop {r0}
@@ -19267,7 +19267,7 @@ _0810836C:
cmp r0, 0
bne _0810837A
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810837A:
add sp, 0xC
pop {r4-r6}
@@ -19278,7 +19278,7 @@ _0810837A:
thumb_func_start sub_8108384
sub_8108384: @ 8108384
push {r4,r5,lr}
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
bl GetBankSide
lsls r0, 24
@@ -19350,7 +19350,7 @@ sub_8108408: @ 8108408
lsls r1, 24
lsrs r1, 24
str r1, [sp]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -19576,7 +19576,7 @@ sub_81085C8: @ 81085C8
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0xA]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -19721,7 +19721,7 @@ _08108704:
cmp r0, 0
bne _08108712
adds r0, r1, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08108712:
pop {r3}
mov r8, r3
@@ -19956,7 +19956,7 @@ sub_81088E4: @ 81088E4
lsls r1, 3
ldr r0, =gTasks
adds r5, r1, r0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -20171,7 +20171,7 @@ _08108AAA:
b _08108AB8
_08108AB2:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08108AB8:
pop {r4}
pop {r0}
@@ -20371,7 +20371,7 @@ sub_8108C08: @ 8108C08
cmp r0, 0
bne _08108C4C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08108C4C:
pop {r4}
pop {r0}
@@ -20418,7 +20418,7 @@ sub_8108C94: @ 8108C94
adds r4, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -20495,7 +20495,7 @@ _08108D34:
cmp r1, r0
bne _08108D46
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08108D46:
ldrh r0, [r4, 0x2E]
adds r0, 0x1
@@ -20593,7 +20593,7 @@ _08108DE2:
strh r0, [r4, 0x2E]
mov r0, r9
strh r0, [r4, 0x30]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A82E4
subs r0, 0x1
@@ -20648,7 +20648,7 @@ _08108E58:
strh r0, [r4, 0x2E]
mov r0, r9
strh r0, [r4, 0x30]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A82E4
subs r0, 0x1
@@ -20698,7 +20698,7 @@ sub_8108EC8: @ 8108EC8
movs r0, 0xFE
lsls r0, 8
strh r0, [r4, 0x36]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r1, =sub_80A634C
@@ -20732,7 +20732,7 @@ sub_8108F08: @ 8108F08
strh r0, [r4, 0x32]
ldr r0, =sub_80A656C
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -20746,7 +20746,7 @@ sub_8108F4C: @ 8108F4C
push {r4,lr}
adds r4, r0, 0
bl sub_80A6838
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -20798,7 +20798,7 @@ _08108F9E:
sub_8108FBC: @ 8108FBC
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -20886,7 +20886,7 @@ sub_8109064: @ 8109064
push {r4,lr}
adds r4, r0, 0
bl sub_80A6838
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -21026,7 +21026,7 @@ sub_810916C: @ 810916C
strh r1, [r0, 0x36]
ldr r1, =sub_80A6EEC
str r1, [r0, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
bl StoreSpriteCallbackInData6
pop {r0}
bx r0
@@ -21037,11 +21037,11 @@ sub_810916C: @ 810916C
sub_8109198: @ 8109198
push {r4-r6,lr}
adds r6, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
bl GetBankSide
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r4, 24
@@ -21049,14 +21049,14 @@ sub_8109198: @ 8109198
cmp r4, r0
bne _081091DE
movs r0, 0x2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldrb r1, [r5]
lsls r0, 24
lsrs r0, 24
cmp r1, r0
beq _081091D6
movs r0, 0x3
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldrb r1, [r5]
lsls r0, 24
lsrs r0, 24
@@ -21128,7 +21128,7 @@ sub_8109244: @ 8109244
strh r0, [r5, 0x2E]
ldrh r0, [r5, 0x20]
strh r0, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -21164,7 +21164,7 @@ sub_810929C: @ 810929C
beq _081092E4
movs r4, 0
strh r4, [r6, 0x2E]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -21224,7 +21224,7 @@ sub_8109314: @ 8109314
cmp r0, 0x1F
bne _08109330
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08109330:
pop {r4}
pop {r0}
@@ -21274,7 +21274,7 @@ sub_8109364: @ 8109364
strh r0, [r4, 0x30]
ldrh r0, [r1, 0x8]
strh r0, [r4, 0x32]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A653C
@@ -21371,7 +21371,7 @@ sub_810940C: @ 810940C
cmp r0, r1
bne _08109458
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08109458:
pop {r4}
pop {r0}
@@ -21407,7 +21407,7 @@ sub_8109460: @ 8109460
adds r0, r2
ldrh r0, [r0, 0x22]
strh r0, [r4, 0x10]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -21785,7 +21785,7 @@ _0810979C:
cmp r0, 0
bne _081097AA
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081097AA:
add sp, 0xC
pop {r4,r5}
@@ -21820,7 +21820,7 @@ sub_81097B4: @ 81097B4
lsls r0, 2
adds r0, r1
ldrh r4, [r0, 0x20]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -21902,7 +21902,7 @@ _0810987E:
muls r1, r3
lsls r1, 16
asrs r1, 16
- ldr r0, =gUnknown_085955CE
+ ldr r0, =gUnknown_085955CC+2
adds r2, r0
movs r3, 0
ldrsh r2, [r2, r3]
@@ -21992,7 +21992,7 @@ sub_8109930: @ 8109930
adds r0, r2
lsls r0, 16
lsrs r4, r0, 16
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -22214,7 +22214,7 @@ _08109AE0:
cmp r0, 0x10
ble _08109AF4
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08109AF4:
pop {r4}
pop {r0}
@@ -22248,7 +22248,7 @@ _08109B18:
bl StartSpriteAnim
ldrh r0, [r4, 0x4]
strh r0, [r5, 0x3C]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -22261,7 +22261,7 @@ _08109B48:
ldr r0, =0x0000fffc
_08109B4A:
strh r0, [r5, 0x36]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
movs r1, 0x3
@@ -22279,7 +22279,7 @@ _08109B70:
ldrh r0, [r5, 0x30]
adds r0, 0xC0
strh r0, [r5, 0x30]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -22356,7 +22356,7 @@ _08109BCE:
lsls r0, 1
strh r0, [r5, 0x2E]
strh r1, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -22426,7 +22426,7 @@ _08109C82:
.pool
_08109CA4:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08109CAA:
pop {r4}
pop {r0}
@@ -22485,7 +22485,7 @@ _08109CC8:
lsrs r0, 16
cmp r0, 0x83
bls _08109D3C
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
movs r1, 0x3
@@ -22500,7 +22500,7 @@ _08109CC8:
b _08109D80
.pool
_08109D3C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
lsls r0, 24
@@ -22561,7 +22561,7 @@ _08109DA8:
cmp r0, 0x1E
bne _08109DB6
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08109DB6:
pop {r4}
pop {r0}
@@ -22578,7 +22578,7 @@ sub_8109DBC: @ 8109DBC
lsls r1, 3
ldr r0, =gTasks
adds r4, r1, r0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -22590,11 +22590,11 @@ sub_8109DBC: @ 8109DBC
movs r1, 0x1
_08109DE2:
strh r1, [r4, 0x20]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r1, [r0]
movs r0, 0x2
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
lsrs r0, 24
adds r0, 0x1
@@ -22906,7 +22906,7 @@ _0810A024:
blt _0810A024
_0810A04E:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810A054:
pop {r4-r7}
pop {r0}
@@ -22932,7 +22932,7 @@ sub_810A060: @ 810A060
movs r1, 0x10
bl BlendPalette
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
add sp, 0x10
pop {r4}
pop {r0}
@@ -22974,7 +22974,7 @@ _0810A0CA:
adds r0, 0x1
strh r0, [r2, 0x8]
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r0, r1
ldrb r6, [r0]
@@ -23059,7 +23059,7 @@ _0810A16E:
strh r1, [r0, 0x24]
strh r1, [r0, 0x26]
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810A194:
pop {r3-r5}
mov r8, r3
@@ -23075,7 +23075,7 @@ _0810A194:
sub_810A1A8: @ 810A1A8
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -23119,7 +23119,7 @@ sub_810A1F8: @ 810A1F8
cmp r0, 0
beq _0810A20E
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810A20E:
pop {r0}
bx r0
@@ -23129,7 +23129,7 @@ _0810A20E:
sub_810A214: @ 810A214
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -23178,7 +23178,7 @@ _0810A26E:
sub_810A274: @ 810A274
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -23191,7 +23191,7 @@ sub_810A274: @ 810A274
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -23261,15 +23261,15 @@ _0810A324:
beq _0810A35C
b _0810A380
_0810A32E:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0810A382
.pool
_0810A338:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r6, 0x2
eors r0, r6
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
bne _0810A354
@@ -23282,21 +23282,21 @@ _0810A354:
eors r4, r0
b _0810A384
_0810A35C:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
movs r4, 0x2
eors r0, r4
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810A380
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
eors r4, r0
b _0810A384
.pool
_0810A380:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0810A382:
ldrb r4, [r0]
_0810A384:
@@ -23417,7 +23417,7 @@ sub_810A46C: @ 810A46C
strh r0, [r4, 0x2E]
ldrh r0, [r4, 0x20]
strh r0, [r4, 0x30]
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0x2
bl sub_80A5C6C
@@ -23517,7 +23517,7 @@ sub_810A4F4: @ 810A4F4
b _0810A564
_0810A55E:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810A564:
pop {r4}
pop {r0}
@@ -23562,7 +23562,7 @@ _0810A5A4:
cmp r0, 0
bgt _0810A5B6
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810A5B6:
pop {r0}
bx r0
@@ -23576,7 +23576,7 @@ sub_810A5BC: @ 810A5BC
lsls r0, 24
cmp r0, 0
bne _0810A5D8
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -23588,7 +23588,7 @@ _0810A5D8:
negs r0, r0
strh r0, [r1, 0x2]
_0810A5E0:
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -23633,11 +23633,11 @@ sub_810A628: @ 810A628
ands r0, r1
cmp r0, 0
beq _0810A64C
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
b _0810A64E
.pool
_0810A64C:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
_0810A64E:
ldrb r6, [r0]
bl IsContest
@@ -23756,7 +23756,7 @@ _0810A742:
cmp r0, 0
bgt _0810A754
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810A754:
pop {r4}
pop {r0}
@@ -23812,7 +23812,7 @@ _0810A7B6:
strh r0, [r4, 0x2E]
ldr r0, =sub_80A64B0
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -23827,7 +23827,7 @@ sub_810A7DC: @ 810A7DC
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0
bl sub_80A5C6C
@@ -24012,7 +24012,7 @@ _0810A952:
.pool
_0810A970:
mov r0, r9
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _0810A9BC
_0810A978:
cmp r7, 0
@@ -24199,7 +24199,7 @@ _0810AAE4:
cmp r0, 0x33
bne _0810AAF8
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810AAF8:
pop {r0}
bx r0
@@ -24220,11 +24220,11 @@ sub_810AAFC: @ 810AAFC
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0810AB28
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0810AB2A
.pool
_0810AB28:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0810AB2A:
ldrb r0, [r4]
movs r1, 0x2
@@ -24383,7 +24383,7 @@ _0810AC78:
cmp r0, 0
bne _0810AC86
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810AC86:
pop {r4-r7}
pop {r0}
@@ -24440,11 +24440,11 @@ sub_810ACD8: @ 810ACD8
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0810ACF4
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0810ACF6
.pool
_0810ACF4:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0810ACF6:
ldrb r0, [r4]
movs r1, 0x2
@@ -24478,11 +24478,11 @@ sub_810AD30: @ 810AD30
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0810AD4C
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0810AD4E
.pool
_0810AD4C:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0810AD4E:
ldrb r0, [r4]
movs r1, 0x2
@@ -24501,7 +24501,7 @@ _0810AD4E:
strh r0, [r5, 0x24]
ldrh r0, [r1, 0x4]
strh r0, [r5, 0x26]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A67D8
@@ -24518,7 +24518,7 @@ sub_810AD98: @ 810AD98
adds r5, r0, 0
movs r1, 0x1
bl StartSpriteAffineAnim
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -24646,7 +24646,7 @@ _0810AE90:
lsrs r0, 24
movs r6, 0
strh r0, [r5, 0x26]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -24783,7 +24783,7 @@ _0810AFA0:
ands r1, r2
strb r1, [r0]
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810AFC0:
pop {r4-r6}
pop {r0}
@@ -24820,7 +24820,7 @@ _0810AFF4:
_0810AFFA:
b _0810B14E
_0810AFFC:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
bl GetBankSide
lsls r0, 24
@@ -24878,7 +24878,7 @@ _0810B070:
movs r0, 0x78
subs r0, r1
strh r0, [r5, 0xE]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x3
bl sub_80A5C6C
@@ -24981,7 +24981,7 @@ _0810B140:
cmp r0, 0
bne _0810B14E
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810B14E:
pop {r4-r6}
pop {r0}
@@ -25124,7 +25124,7 @@ sub_810B23C: @ 810B23C
beq _0810B280
b _0810B294
_0810B24E:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -25191,7 +25191,7 @@ _0810B2C8:
.4byte _0810B404
.4byte _0810B414
_0810B2DC:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -25206,7 +25206,7 @@ _0810B2DC:
strh r0, [r5, 0x16]
movs r0, 0x4
strh r0, [r5, 0x18]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x2
bl sub_80A5C6C
@@ -25228,12 +25228,12 @@ _0810B2DC:
movs r0, 0xC
strh r0, [r5, 0x1E]
subs r0, 0x4C
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
lsls r0, 24
asrs r0, 24
strh r0, [r5, 0x20]
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
lsls r0, 24
asrs r0, 24
strh r0, [r5, 0x22]
@@ -25338,7 +25338,7 @@ _0810B404:
cmp r0, 0
bne _0810B428
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _0810B428
_0810B414:
ldrh r1, [r5, 0x1E]
@@ -25539,7 +25539,7 @@ _0810B584:
beq _0810B600
b _0810B60E
_0810B58A:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x1
bl sub_80A5C6C
@@ -25561,7 +25561,7 @@ _0810B5A4:
bgt _0810B5A4
strh r1, [r5, 0x24]
_0810B5B4:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -25603,7 +25603,7 @@ _0810B600:
cmp r0, 0
bne _0810B60E
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810B60E:
pop {r4,r5}
pop {r0}
@@ -25721,7 +25721,7 @@ sub_810B6C4: @ 810B6C4
ands r0, r2
orrs r0, r1
strh r0, [r5, 0x4]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -25734,7 +25734,7 @@ sub_810B6C4: @ 810B6C4
lsls r0, 24
lsrs r0, 24
mov r8, r0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -25934,7 +25934,7 @@ sub_810B848: @ 810B848
b _0810B8A6
_0810B8A0:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810B8A6:
pop {r4}
pop {r0}
@@ -25957,7 +25957,7 @@ sub_810B8AC: @ 810B8AC
movs r0, 0xFE
lsls r0, 8
strh r0, [r4, 0x36]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r1, =sub_80A634C
@@ -25976,14 +25976,14 @@ sub_810B8EC: @ 810B8EC
adds r4, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x2
bl sub_80A5C6C
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x32]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -26003,7 +26003,7 @@ _0810B92C:
adds r0, r1
strh r0, [r4, 0x32]
_0810B936:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x3
bl sub_80A5C6C
@@ -26015,7 +26015,7 @@ _0810B936:
strh r0, [r4, 0x36]
ldrh r0, [r1, 0x8]
strh r0, [r4, 0x2E]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A6EEC
@@ -26041,7 +26041,7 @@ sub_810B974: @ 810B974
b _0810B9C6
.pool
_0810B990:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
@@ -26049,7 +26049,7 @@ _0810B990:
adds r3, 0x22
movs r1, 0x1
bl sub_80A8924
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -26130,7 +26130,7 @@ sub_810BA24: @ 810BA24
ldrsh r0, [r6, r1]
cmp r0, 0
bne _0810BA74
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -26148,7 +26148,7 @@ sub_810BA24: @ 810BA24
b _0810BA86
.pool
_0810BA74:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r5, 0
adds r2, 0x32
@@ -26157,7 +26157,7 @@ _0810BA74:
movs r1, 0x1
bl sub_80A8924
_0810BA86:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -26277,7 +26277,7 @@ sub_810BB60: @ 810BB60
strh r5, [r4, 0x24]
movs r0, 0x80
strh r0, [r4, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -26312,7 +26312,7 @@ _0810BB90:
sub_810BBC8: @ 810BBC8
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -26406,7 +26406,7 @@ sub_810BC4C: @ 810BC4C
bge _0810BC8E
_0810BC88:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810BC8E:
pop {r4}
pop {r0}
@@ -26431,7 +26431,7 @@ sub_810BC94: @ 810BC94
ldrsh r0, [r1, r2]
cmp r0, 0
bne _0810BCE0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -26447,7 +26447,7 @@ sub_810BC94: @ 810BC94
b _0810BCF2
.pool
_0810BCE0:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r5, 0
adds r2, 0x32
@@ -26456,7 +26456,7 @@ _0810BCE0:
movs r1, 0x1
bl sub_80A8924
_0810BCF2:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -26619,7 +26619,7 @@ _0810BDEC:
bge _0810BE42
_0810BE3C:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810BE42:
pop {r4}
pop {r0}
@@ -26645,7 +26645,7 @@ sub_810BE48: @ 810BE48
b _0810BEA2
.pool
_0810BE6C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
@@ -26653,7 +26653,7 @@ _0810BE6C:
adds r3, 0x22
movs r1, 0
bl sub_80A8924
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -26686,7 +26686,7 @@ _0810BEB4:
cmp r0, 0
beq _0810BEC8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810BEC8:
pop {r4,r5}
pop {r0}
@@ -26712,7 +26712,7 @@ sub_810BED0: @ 810BED0
b _0810BF32
.pool
_0810BEF4:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
adds r2, r5, 0
adds r2, 0x20
@@ -26742,7 +26742,7 @@ _0810BF26:
adds r0, r1
strh r0, [r5, 0x22]
_0810BF32:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0810BF90
.pool
_0810BF40:
@@ -26755,7 +26755,7 @@ _0810BF40:
bl sub_80A6980
b _0810BF8E
_0810BF52:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
adds r2, r5, 0
adds r2, 0x20
@@ -26785,7 +26785,7 @@ _0810BF82:
adds r0, r1
strh r0, [r5, 0x22]
_0810BF8E:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0810BF90:
ldrb r0, [r0]
strh r0, [r5, 0x3C]
@@ -26794,7 +26794,7 @@ _0810BF90:
ldrsh r0, [r0, r1]
cmp r0, 0
beq _0810BFA8
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _0810BFB4
@@ -26806,7 +26806,7 @@ _0810BFB4:
movs r0, 0x40
_0810BFB6:
strh r0, [r5, 0x3A]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -26911,7 +26911,7 @@ _0810C086:
b _0810C098
_0810C092:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810C098:
pop {r4}
pop {r0}
@@ -26934,11 +26934,11 @@ sub_810C0A0: @ 810C0A0
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -26946,12 +26946,12 @@ sub_810C0A0: @ 810C0A0
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0810C0E2:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r4, =gUnknown_02022E1A
+ ldr r4, =gBattle_BG1_Y
strh r1, [r4]
movs r0, 0x14
movs r1, 0
@@ -26999,7 +26999,7 @@ sub_810C164: @ 810C164
sub sp, 0x10
lsls r0, 24
lsrs r4, r0, 24
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r2, =0x0000ffff
adds r0, r2, 0
ldrh r2, [r1]
@@ -27148,12 +27148,12 @@ _0810C29C:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0810C2B0:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
movs r0, 0x50
movs r1, 0
@@ -27164,9 +27164,9 @@ _0810C2B0:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810C2DA:
add sp, 0x10
pop {r4,r5}
@@ -27179,7 +27179,7 @@ _0810C2DA:
sub_810C2F0: @ 810C2F0
push {r4,r5,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -27216,11 +27216,11 @@ sub_810C324: @ 810C324
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -27228,12 +27228,12 @@ sub_810C324: @ 810C324
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0810C366:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r4, =gUnknown_02022E1A
+ ldr r4, =gBattle_BG1_Y
strh r1, [r4]
movs r0, 0x14
movs r1, 0
@@ -27283,7 +27283,7 @@ sub_810C3F0: @ 810C3F0
sub sp, 0x10
lsls r0, 24
lsrs r4, r0, 24
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
ldr r3, =gTasks
lsls r1, r4, 2
adds r1, r4
@@ -27420,12 +27420,12 @@ _0810C50C:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0810C520:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
movs r0, 0x50
movs r1, 0
@@ -27436,9 +27436,9 @@ _0810C520:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810C54A:
add sp, 0x10
pop {r4,r5}
@@ -27456,13 +27456,13 @@ sub_810C560: @ 810C560
ldr r6, =gBattleAnimArgs
ldrh r0, [r6]
strh r0, [r5, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
mov r8, r0
ldrb r0, [r0]
movs r1, 0x2
bl sub_80A5C6C
adds r4, r0, 0
- ldr r7, =gAnimationBankTarget
+ ldr r7, =gAnimBankTarget
ldrb r0, [r7]
movs r1, 0x2
bl sub_80A5C6C
@@ -27474,7 +27474,7 @@ sub_810C560: @ 810C560
lsls r0, 8
strh r0, [r5, 0x3C]
_0810C594:
- ldr r3, =gBanksBySide
+ ldr r3, =gBanksByIdentity
ldrb r0, [r7]
adds r0, r3
ldrb r1, [r0]
@@ -27523,7 +27523,7 @@ _0810C5F0:
movs r0, 0x1
strh r0, [r5, 0x3A]
_0810C5F4:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -27545,7 +27545,7 @@ _0810C5F4:
ldrh r1, [r5, 0x20]
adds r0, r1
strh r0, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -27567,7 +27567,7 @@ _0810C65C:
ldrh r1, [r5, 0x20]
adds r0, r1
strh r0, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -27676,7 +27676,7 @@ _0810C728:
_0810C736:
movs r5, 0x50
strh r5, [r4, 0x2E]
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0
bl sub_80A5C6C
@@ -27699,7 +27699,7 @@ _0810C736:
lsls r0, 24
cmp r0, 0
bne _0810C78C
- ldr r1, =gBanksBySide
+ ldr r1, =gBanksByIdentity
ldrb r0, [r6]
adds r0, r1
ldrb r1, [r0]
@@ -27843,8 +27843,8 @@ _0810C85A:
lsls r0, 24
cmp r0, 0
bne _0810C8B4
- ldr r1, =gBanksBySide
- ldr r0, =gAnimationBankTarget
+ ldr r1, =gBanksByIdentity
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r0, r1
ldrb r1, [r0]
@@ -28011,7 +28011,7 @@ _0810C9CE:
cmp r0, 0
bne _0810C9DC
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810C9DC:
pop {r4,r5}
pop {r0}
@@ -28050,11 +28050,11 @@ sub_810C9E4: @ 810C9E4
ldrh r0, [r4, 0x2]
lsls r0, 20
lsrs r0, 24
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r5, r0, 24
adds r0, r5, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810CAD0
@@ -28349,7 +28349,7 @@ _0810CC7C:
unc_080B06FC: @ 810CC88
push {r4-r6,lr}
adds r5, r0, 0
- ldr r0, =gDisableStructMoveAnim
+ ldr r0, =gAnimDisableStructPtr
ldr r0, [r0]
ldrb r1, [r0, 0x11]
lsrs r0, r1, 4
@@ -28371,7 +28371,7 @@ _0810CCA6:
ldr r6, =gBattleAnimArgs
ldrh r0, [r6, 0x8]
strh r0, [r5, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -28381,7 +28381,7 @@ _0810CCA6:
negs r0, r0
strh r0, [r6, 0x4]
_0810CCCE:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -28423,7 +28423,7 @@ sub_810CD1C: @ 810CD1C
bl StartSpriteAnim
ldr r0, =sub_80A67D8
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
_0810CD3E:
@@ -28515,7 +28515,7 @@ _0810CDD8:
cmp r0, 0x15
bne _0810CDF6
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810CDF6:
pop {r4}
pop {r0}
@@ -28531,7 +28531,7 @@ sub_810CDFC: @ 810CDFC
ldrb r3, [r1]
lsls r3, 1
adds r3, r1
- ldr r1, =gDisableStructMoveAnim
+ ldr r1, =gAnimDisableStructPtr
ldr r1, [r1]
ldrb r1, [r1, 0x11]
lsrs r2, r1, 4
@@ -28540,7 +28540,7 @@ sub_810CDFC: @ 810CDFC
subs r2, r1
subs r2, 0x1
strh r2, [r3]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -28563,7 +28563,7 @@ unc_080B08A0: @ 810CE2C
strh r0, [r4, 0x2E]
ldr r0, =sub_80A64B0
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -28581,7 +28581,7 @@ sub_810CE68: @ 810CE68
ldrsh r0, [r4, r1]
cmp r0, 0x1
bne _0810CE90
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -28658,7 +28658,7 @@ _0810CF0C:
strh r0, [r5, 0x2E]
ldr r0, =sub_80A64B0
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -28680,11 +28680,11 @@ sub_810CF30: @ 810CF30
mov r9, r0
cmp r1, 0
bne _0810CF54
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0810CF56
.pool
_0810CF54:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0810CF56:
ldrb r0, [r0]
mov r8, r0
@@ -28771,7 +28771,7 @@ _0810D000:
negs r0, r0
lsrs r4, r0, 16
_0810D012:
- ldr r0, =gBanksBySide
+ ldr r0, =gBanksByIdentity
add r0, r8
ldrb r1, [r0]
adds r0, r7, 0
@@ -28875,7 +28875,7 @@ sub_810D0B8: @ 810D0B8
bl DestroySprite
_0810D0F4:
adds r0, r5, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _0810D104
.pool
_0810D100:
@@ -28960,7 +28960,7 @@ sub_810D164: @ 810D164
strh r6, [r5, 0x24]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
_0810D1A4:
@@ -28974,10 +28974,10 @@ _0810D1A4:
sub_810D1B4: @ 810D1B4
push {r4-r6,lr}
adds r6, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r1, [r0]
movs r0, 0x2
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
eors r0, r1
ldrb r1, [r2]
cmp r0, r1
@@ -28997,7 +28997,7 @@ _0810D1E0:
adds r0, r6, 0
movs r1, 0x1
bl sub_80A6980
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -29059,7 +29059,7 @@ sub_810D240: @ 810D240
b _0810D272
_0810D26C:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810D272:
pop {r4}
pop {r0}
@@ -29105,7 +29105,7 @@ sub_810D2B0: @ 810D2B0
strh r0, [r4, 0x2E]
ldr r0, =sub_80A64B0
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
@@ -29146,7 +29146,7 @@ sub_810D308: @ 810D308
bne _0810D34C
movs r0, 0x6
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -29178,7 +29178,7 @@ sub_810D360: @ 810D360
strh r1, [r0, 0x2E]
ldr r1, =sub_80A64B0
str r1, [r0, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
bl StoreSpriteCallbackInData6
pop {r0}
bx r0
@@ -29251,7 +29251,7 @@ _0810D3F6:
cmp r0, 0x78
ble _0810D404
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810D404:
pop {r4}
pop {r0}
@@ -29267,11 +29267,11 @@ sub_810D40C: @ 810D40C
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0810D428
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0810D42A
.pool
_0810D428:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0810D42A:
ldrb r0, [r4]
movs r1, 0
@@ -29332,7 +29332,7 @@ _0810D48E:
cmp r0, 0
bne _0810D4AA
adds r0, r1, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _0810D4EC
_0810D4AA:
ldrh r0, [r1, 0x2E]
@@ -29370,7 +29370,7 @@ _0810D4DA:
cmp r0, 0
bne _0810D4EC
adds r0, r1, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810D4EC:
pop {r0}
bx r0
@@ -29386,7 +29386,7 @@ sub_810D4F4: @ 810D4F4
ldrsh r0, [r6, r1]
cmp r0, 0
bne _0810D520
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -29397,7 +29397,7 @@ sub_810D4F4: @ 810D4F4
b _0810D532
.pool
_0810D520:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -29473,7 +29473,7 @@ _0810D5C0:
b _0810D5CE
_0810D5C6:
adds r0, r5, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _0810D5D2
_0810D5CE:
ldr r0, =sub_810D5DC
@@ -29505,7 +29505,7 @@ sub_810D5DC: @ 810D5DC
cmp r0, 0x28
ble _0810D604
adds r0, r1, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810D604:
pop {r0}
bx r0
@@ -29533,7 +29533,7 @@ sub_810D608: @ 810D608
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A8328
movs r1, 0x3
@@ -29545,11 +29545,11 @@ sub_810D608: @ 810D608
ands r0, r2
orrs r0, r1
strb r0, [r5, 0x5]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
b _0810D680
.pool
_0810D664:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
movs r1, 0x3
@@ -29561,7 +29561,7 @@ _0810D664:
ands r0, r2
orrs r0, r1
strb r0, [r5, 0x5]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
_0810D680:
ldrb r0, [r0]
strh r0, [r5, 0x3C]
@@ -29704,7 +29704,7 @@ sub_810D770: @ 810D770
cmp r4, r0
bge _0810D7BA
adds r0, r7, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _0810D818
_0810D7BA:
ldrh r0, [r7, 0x2E]
@@ -29712,7 +29712,7 @@ _0810D7BA:
strh r0, [r7, 0x2E]
b _0810D818
_0810D7C2:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -29725,7 +29725,7 @@ _0810D7C2:
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
mov r8, r2
ldrb r0, [r2]
movs r1, 0x2
@@ -29793,7 +29793,7 @@ sub_810D830: @ 810D830
ble _0810D870
_0810D86A:
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810D870:
pop {r0}
bx r0
@@ -29821,15 +29821,15 @@ sub_810D874: @ 810D874
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r4, [r0]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0810D8BE
.pool
_0810D8B8:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r4, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0810D8BE:
ldrb r0, [r0]
bl sub_80A8328
@@ -29893,7 +29893,7 @@ _0810D918:
strh r0, [r5, 0x36]
adds r0, r5, 0
bl obj_translate_based_on_private_1_2_3_4
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A6F98
@@ -29915,7 +29915,7 @@ sub_810D960: @ 810D960
cmp r1, r0
bne _0810D976
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810D976:
ldrh r0, [r4, 0x2E]
adds r0, 0x1
@@ -29929,7 +29929,7 @@ _0810D976:
sub_810D984: @ 810D984
push {r4-r6,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -29951,7 +29951,7 @@ sub_810D984: @ 810D984
strh r0, [r5, 0x34]
ldrh r0, [r1, 0x4]
strh r0, [r5, 0x36]
- ldr r0, =gUnknown_02038432
+ ldr r0, =gAnimMoveTurn
ldrb r6, [r0]
ldrb r0, [r4]
bl GetBankSide
@@ -30018,7 +30018,7 @@ _0810DA34:
bl StartSpriteAnim
b _0810DA5E
_0810DA48:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -30030,7 +30030,7 @@ _0810DA48:
_0810DA5E:
ldr r0, =sub_80A67D8
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
@@ -30067,7 +30067,7 @@ sub_810DA7C: @ 810DA7C
cmp r0, 0x28
ble _0810DAB6
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810DAB6:
pop {r4}
pop {r0}
@@ -30128,13 +30128,13 @@ _0810DB1A:
ldrh r1, [r4, 0x1C]
adds r0, r1
strh r0, [r4, 0x1C]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
cmp r0, 0
bne _0810DB50
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
ldrh r0, [r4, 0x1A]
lsls r0, 16
asrs r0, 24
@@ -30145,7 +30145,7 @@ _0810DB1A:
b _0810DB60
.pool
_0810DB50:
- ldr r2, =gUnknown_02022E20
+ ldr r2, =gBattle_BG3_X
ldrh r1, [r4, 0x1A]
lsls r1, 16
asrs r1, 24
@@ -30154,7 +30154,7 @@ _0810DB50:
strh r0, [r2]
adds r7, r2, 0
_0810DB60:
- ldr r3, =gUnknown_02022E22
+ ldr r3, =gBattle_BG3_Y
ldrh r2, [r4, 0x1C]
lsls r0, r2, 16
asrs r0, 24
@@ -30179,7 +30179,7 @@ _0810DB60:
movs r0, 0x1
bl sub_80A6DAC
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810DB98:
pop {r4-r7}
pop {r0}
@@ -30205,7 +30205,7 @@ _0810DBC2:
bl sub_80A69CC
ldrh r0, [r4, 0x4]
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -30239,7 +30239,7 @@ sub_810DC10: @ 810DC10
cmp r0, 0
beq _0810DC24
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810DC24:
pop {r4}
pop {r0}
@@ -30263,7 +30263,7 @@ _0810DC44:
adds r0, r4, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
mov r6, sp
adds r6, 0x2
@@ -30271,7 +30271,7 @@ _0810DC44:
mov r2, sp
adds r3, r6, 0
bl sub_80A8924
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -30314,7 +30314,7 @@ sub_810DCB4: @ 810DCB4
cmp r0, 0
beq _0810DCC8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810DCC8:
pop {r4}
pop {r0}
@@ -30378,7 +30378,7 @@ sub_810DD24: @ 810DD24
cmp r0, 0
bne _0810DD4A
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810DD4A:
pop {r4}
pop {r0}
@@ -30389,7 +30389,7 @@ _0810DD4A:
sub_810DD50: @ 810DD50
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
@@ -30397,7 +30397,7 @@ sub_810DD50: @ 810DD50
adds r3, 0x22
movs r1, 0x1
bl sub_80A8924
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -30426,7 +30426,7 @@ _0810DD7C:
strh r1, [r4, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
@@ -30450,7 +30450,7 @@ sub_810DDC4: @ 810DDC4
b _0810DE16
.pool
_0810DDE0:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
@@ -30458,7 +30458,7 @@ _0810DDE0:
adds r3, 0x22
movs r1, 0x1
bl sub_80A8924
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -30514,7 +30514,7 @@ sub_810DE2C: @ 810DE2C
cmp r0, 0
beq _0810DE68
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810DE68:
pop {r4}
pop {r0}
@@ -30569,7 +30569,7 @@ sub_810DE98: @ 810DE98
cmp r0, 0x47
bne _0810DED2
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810DED2:
pop {r4}
pop {r0}
@@ -30666,7 +30666,7 @@ _0810DF76:
cmp r1, 0
bne _0810DF90
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810DF90:
pop {r4-r7}
pop {r0}
@@ -30680,7 +30680,7 @@ sub_810DFA8: @ 810DFA8
adds r6, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -30696,7 +30696,7 @@ _0810DFC8:
strh r0, [r6, 0x2E]
ldrh r0, [r6, 0x20]
strh r0, [r6, 0x30]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -30737,7 +30737,7 @@ sub_810E028: @ 810E028
cmp r0, 0
beq _0810E03C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810E03C:
pop {r4}
pop {r0}
@@ -30748,7 +30748,7 @@ _0810E03C:
sub_810E044: @ 810E044
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
bl GetBankSide
lsls r0, 24
@@ -30805,7 +30805,7 @@ _0810E088:
ldrsh r0, [r2, r3]
cmp r0, 0
bne _0810E0EC
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -30821,7 +30821,7 @@ _0810E088:
b _0810E0FE
.pool
_0810E0EC:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r5, 0
adds r2, 0x32
@@ -30841,7 +30841,7 @@ _0810E0FE:
strh r0, [r5, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldrb r1, [r4, 0xA]
@@ -30919,7 +30919,7 @@ _0810E1AA:
cmp r0, r1
bge _0810E1C2
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810E1C2:
pop {r0}
bx r0
@@ -30929,7 +30929,7 @@ _0810E1C2:
sub_810E1C8: @ 810E1C8
push {r4,r5,lr}
adds r5, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -30955,7 +30955,7 @@ _0810E1FE:
strh r0, [r5, 0x2E]
ldrh r0, [r5, 0x20]
strh r0, [r5, 0x30]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -31036,7 +31036,7 @@ _0810E296:
ands r0, r2
strb r0, [r1]
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810E2BC:
pop {r4}
pop {r0}
@@ -31099,11 +31099,11 @@ sub_810E314: @ 810E314
ands r0, r1
cmp r0, 0
beq _0810E33C
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0810E33E
.pool
_0810E33C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0810E33E:
ldrb r6, [r0]
adds r0, r6, 0
@@ -32049,7 +32049,7 @@ _0810EA36:
sub_810EA4C: @ 810EA4C
push {r4,r5,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A8328
movs r1, 0x3
@@ -32061,7 +32061,7 @@ sub_810EA4C: @ 810EA4C
ands r0, r2
orrs r0, r1
strb r0, [r4, 0x5]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -32106,7 +32106,7 @@ _0810EAC4:
ldrsh r0, [r4, r2]
cmp r0, 0
bne _0810EADC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -32117,7 +32117,7 @@ _0810EADC:
ldrsh r0, [r4, r1]
cmp r0, 0x1
bne _0810EAF8
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -32189,7 +32189,7 @@ _0810EB6A:
cmp r0, r1
bne _0810EB82
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810EB82:
pop {r4}
pop {r0}
@@ -32237,7 +32237,7 @@ sub_810EB88: @ 810EB88
strh r0, [r4, 0x6]
ldr r0, =gUnknown_085973E8
mov r8, r0
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -32263,7 +32263,7 @@ _0810EC02:
cmp r0, 0xFF
ble _0810EC16
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810EC16:
pop {r3}
mov r8, r3
@@ -32316,7 +32316,7 @@ _0810EC78:
cmp r0, 0
beq _0810EC8C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810EC8C:
pop {r4}
pop {r0}
@@ -32341,7 +32341,7 @@ _0810ECAA:
beq _0810ECE0
b _0810ED1E
_0810ECB0:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x1
bl sub_80A5C6C
@@ -32394,7 +32394,7 @@ _0810ECE0:
ands r0, r2
strb r0, [r1]
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810ED1E:
pop {r4}
pop {r0}
@@ -32521,7 +32521,7 @@ _0810EE00:
cmp r0, 0
ble _0810EE0E
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810EE0E:
pop {r0}
bx r0
@@ -32545,11 +32545,11 @@ _0810EE28:
ldrsh r0, [r0, r2]
cmp r0, 0
bne _0810EE40
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0810EE42
.pool
_0810EE40:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0810EE42:
ldrb r0, [r4]
movs r1, 0
@@ -32631,7 +32631,7 @@ _0810EECC:
adds r0, r5, 0
bl sub_80A749C
adds r0, r5, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810EEEC:
add sp, 0x4
pop {r4,r5}
@@ -32700,11 +32700,11 @@ _0810EF60:
ldrsh r0, [r2, r1]
cmp r0, 0
bne _0810EF74
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0810EF76
.pool
_0810EF74:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0810EF76:
ldrb r0, [r4]
movs r1, 0
@@ -32773,7 +32773,7 @@ _0810EFEA:
cmp r0, 0x1F
bne _0810EFFE
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810EFFE:
pop {r4}
pop {r0}
@@ -32845,7 +32845,7 @@ _0810F02A:
b _0810F07E
_0810F078:
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810F07E:
pop {r0}
bx r0
@@ -32861,7 +32861,7 @@ sub_810F084: @ 810F084
mov r8, r0
ldrh r4, [r0, 0x20]
ldrh r5, [r0, 0x22]
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
movs r1, 0x2
bl sub_80A5C6C
@@ -33021,7 +33021,7 @@ _0810F1BC:
_0810F1DA:
strb r0, [r1]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -33038,7 +33038,7 @@ sub_810F1EC: @ 810F1EC
lsls r0, 24
lsrs r0, 24
mov r8, r0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -33064,12 +33064,12 @@ _0810F212:
bne _0810F2B8
_0810F22E:
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
adds r7, r4, 0
adds r0, r4, 0
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
@@ -33078,7 +33078,7 @@ _0810F22E:
orrs r1, r0
lsrs r6, r1, 31
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810F264
@@ -33091,7 +33091,7 @@ _0810F264:
adds r4, r0, 0
eors r4, r7
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810F284
@@ -33105,11 +33105,11 @@ _0810F284:
mov r0, r8
cmp r0, 0
bne _0810F2B8
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0810F2B8
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -33126,7 +33126,7 @@ _0810F2B0:
movs r0, 0x28
b _0810F2F2
_0810F2B8:
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
bl GetBankSide
lsls r0, 24
@@ -33193,7 +33193,7 @@ sub_810F340: @ 810F340
push {r4,r5,lr}
adds r5, r0, 0
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
movs r1, 0x3C
@@ -33205,7 +33205,7 @@ sub_810F340: @ 810F340
b _0810F3B6
_0810F35C:
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810F382
@@ -33226,7 +33226,7 @@ _0810F382:
movs r0, 0x2
eors r4, r0
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810F3AC
@@ -33370,12 +33370,12 @@ sub_810F46C: @ 810F46C
cmp r0, 0
bne _0810F502
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
adds r6, r4, 0
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810F4D4
@@ -33398,7 +33398,7 @@ _0810F4D4:
adds r4, r0, 0
eors r4, r6
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810F502
@@ -33441,11 +33441,11 @@ sub_810F524: @ 810F524
cmp r0, 0
bne _0810F57C
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
adds r4, r0, 0
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
@@ -33454,7 +33454,7 @@ sub_810F524: @ 810F524
orrs r1, r0
lsrs r5, r1, 31
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810F562
@@ -33464,7 +33464,7 @@ _0810F562:
movs r0, 0x2
eors r4, r0
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0810F57C
@@ -33473,7 +33473,7 @@ _0810F562:
adds r0, r5, 0
bl sub_80A477C
_0810F57C:
- ldr r0, =move_anim_8072740
+ ldr r0, =DestroyAnimSprite
str r0, [r6, 0x1C]
pop {r4-r6}
pop {r0}
@@ -33501,11 +33501,11 @@ _0810F5A6:
lsls r0, 24
cmp r0, 0
bne _0810F5EE
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0810F5EE
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -33568,7 +33568,7 @@ _0810F62C:
sub_810F634: @ 810F634
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -33608,7 +33608,7 @@ _0810F684:
movs r0, 0x1
_0810F692:
strh r0, [r5, 0x30]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A67D8
@@ -33623,7 +33623,7 @@ _0810F692:
sub_810F6B0: @ 810F6B0
push {r4-r7,lr}
adds r5, r0, 0
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
movs r1, 0x1
bl sub_80A861C
@@ -33756,7 +33756,7 @@ _0810F7B4:
cmp r0, r1
bne _0810F7CC
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810F7CC:
pop {r4}
pop {r0}
@@ -33805,7 +33805,7 @@ sub_810F810: @ 810F810
cmp r0, 0
bne _0810F830
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810F830:
pop {r4}
pop {r0}
@@ -33831,7 +33831,7 @@ sub_810F83C: @ 810F83C
strh r0, [r4, 0x8]
strh r1, [r4, 0xA]
strh r1, [r4, 0xC]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -33930,7 +33930,7 @@ _0810F900:
ldrb r0, [r4, 0x8]
bl sub_80A7344
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810F936:
pop {r4,r5}
pop {r0}
@@ -33952,7 +33952,7 @@ sub_810F940: @ 810F940
movs r0, 0x10
strh r0, [r5, 0xE]
strh r1, [r5, 0x10]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -34203,7 +34203,7 @@ _0810FB44:
movs r1, 0
bl SetGpuReg
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810FB5A:
pop {r4-r6}
pop {r0}
@@ -34241,7 +34241,7 @@ _0810FB8A:
cmp r1, r0
bne _0810FB9C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0810FB9C:
ldrh r0, [r4, 0x30]
adds r0, 0x1
@@ -34260,7 +34260,7 @@ sub_810FBA8: @ 810FBA8
ldrsh r0, [r6, r1]
cmp r0, 0
bne _0810FBD4
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -34305,7 +34305,7 @@ sub_810FBF0: @ 810FBF0
bne _0810FC60
ldr r0, =0x0000fff6
strh r0, [r5, 0x1C]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x5
bl sub_80A861C
@@ -34316,7 +34316,7 @@ sub_810FBF0: @ 810FBF0
bl sub_80A861C
adds r0, 0x8
strh r0, [r5, 0x20]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x5
bl sub_80A861C
@@ -34331,7 +34331,7 @@ sub_810FBF0: @ 810FBF0
_0810FC60:
movs r0, 0xA
strh r0, [r5, 0x1C]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x4
bl sub_80A861C
@@ -34342,7 +34342,7 @@ _0810FC60:
bl sub_80A861C
subs r0, 0x8
strh r0, [r5, 0x20]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x4
bl sub_80A861C
@@ -34357,7 +34357,7 @@ _0810FC94:
bne _0810FCE8
ldr r0, =0x0000fff6
strh r0, [r5, 0x1C]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x4
bl sub_80A861C
@@ -34368,7 +34368,7 @@ _0810FC94:
bl sub_80A861C
adds r0, 0x8
strh r0, [r5, 0x20]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x4
bl sub_80A861C
@@ -34383,7 +34383,7 @@ _0810FC94:
_0810FCE8:
movs r0, 0xA
strh r0, [r5, 0x1C]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x5
bl sub_80A861C
@@ -34394,7 +34394,7 @@ _0810FCE8:
bl sub_80A861C
subs r0, 0x8
strh r0, [r5, 0x20]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x5
bl sub_80A861C
@@ -34497,7 +34497,7 @@ _0810FDD4:
cmp r0, 0x11
ble _0810FDE8
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0810FDE8:
pop {r4,r5}
pop {r0}
@@ -34535,7 +34535,7 @@ sub_810FE14: @ 810FE14
lsls r1, 3
ldr r0, =gTasks
adds r4, r1, r0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl sub_80A6190
lsls r0, 24
@@ -34590,21 +34590,21 @@ _0810FE86:
movs r0, 0
strh r0, [r4, 0x24]
_0810FE92:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0810FEB8
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r0, [r0]
strh r0, [r4, 0x1C]
ldr r0, =0x04000014
b _0810FEC0
.pool
_0810FEB8:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r0, [r0]
strh r0, [r4, 0x1C]
ldr r0, =0x04000018
@@ -34786,7 +34786,7 @@ _08110014:
.pool
_08110020:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08110026:
pop {r3,r4}
mov r8, r3
@@ -34819,7 +34819,7 @@ sub_8110034: @ 8110034
cmp r6, 0xFF
bne _0811006C
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08110116
.pool
_0811006C:
@@ -34835,7 +34835,7 @@ _0811006C:
adds r0, r5, 0
bl FreeOamMatrix
mov r0, r8
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08110116
.pool
_08110094:
@@ -35035,7 +35035,7 @@ _08110228:
lsrs r0, 24
bl FreeOamMatrix
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08110238:
pop {r4,r5}
pop {r0}
@@ -35062,7 +35062,7 @@ _08110256:
beq _0811034A
b _08110360
_08110260:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -35110,7 +35110,7 @@ _081102B8:
beq _08110360
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -35181,7 +35181,7 @@ _0811034A:
movs r1, 0
bl SetGpuReg
adds r0, r5, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08110360:
pop {r4,r5}
pop {r0}
@@ -35209,7 +35209,7 @@ sub_8110368: @ 8110368
b _081103C4
.pool
_08110394:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -35232,7 +35232,7 @@ _08110394:
negs r0, r0
strh r0, [r1]
_081103C4:
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A60AC
@@ -35270,7 +35270,7 @@ _081103C4:
strh r0, [r6, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r6, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r6, 0
bl StoreSpriteCallbackInData6
pop {r4-r6}
@@ -35297,7 +35297,7 @@ sub_8110438: @ 8110438
b _08110478
.pool
_0811045C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -35311,7 +35311,7 @@ _0811045C:
negs r1, r1
strh r1, [r0]
_08110478:
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A60AC
@@ -35345,7 +35345,7 @@ _08110478:
strh r0, [r6, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r6, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r6, 0
bl StoreSpriteCallbackInData6
pop {r4-r6}
@@ -35384,7 +35384,7 @@ _08110500:
ldrsh r0, [r1, r2]
cmp r0, 0
bne _08110548
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -35400,7 +35400,7 @@ _08110500:
b _0811055A
.pool
_08110548:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r5, 0
adds r2, 0x32
@@ -35431,7 +35431,7 @@ sub_811057C: @ 811057C
cmp r0, 0
beq _08110592
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _081105AE
_08110592:
movs r1, 0x3A
@@ -35457,7 +35457,7 @@ _081105AE:
sub_81105B4: @ 81105B4
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r4, 0
adds r2, 0x20
@@ -35465,7 +35465,7 @@ sub_81105B4: @ 81105B4
adds r3, 0x22
movs r1, 0
bl sub_80A8924
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -35490,7 +35490,7 @@ _081105FC:
ldrh r1, [r4, 0x22]
adds r0, r1
strh r0, [r4, 0x22]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -35545,7 +35545,7 @@ _08110664:
cmp r0, 0x33
bne _08110678
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08110678:
pop {r0}
bx r0
@@ -35633,7 +35633,7 @@ sub_8110700: @ 8110700
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -35655,7 +35655,7 @@ sub_8110720: @ 8110720
b _08110762
.pool
_08110740:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -35676,11 +35676,11 @@ _08110762:
lsls r0, 24
cmp r0, 0
bne _081107B2
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
adds r4, r0, 0
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
bl GetBankSide
lsls r4, 24
@@ -35712,7 +35712,7 @@ _081107B2:
adds r0, r7, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -35764,7 +35764,7 @@ _081107B2:
strh r5, [r7, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r7, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r7, 0
bl StoreSpriteCallbackInData6
add sp, 0x4
@@ -35780,7 +35780,7 @@ sub_8110850: @ 8110850
adds r6, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -35794,7 +35794,7 @@ _08110870:
ldr r4, =gBattleAnimArgs
ldrh r0, [r4, 0x8]
strh r0, [r6, 0x2E]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -35849,7 +35849,7 @@ sub_81108CC: @ 81108CC
cmp r0, 0
beq _081108F8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _08110988
_081108F8:
movs r0, 0x2E
@@ -35941,11 +35941,11 @@ sub_8110994: @ 8110994
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081109B0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _081109B2
.pool
_081109B0:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_081109B2:
ldrb r0, [r4]
movs r1, 0x2
@@ -35980,7 +35980,7 @@ sub_81109F0: @ 81109F0
ldrsh r0, [r6, r1]
cmp r0, 0
beq _08110A10
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r2, r5, 0
adds r2, 0x20
@@ -36064,7 +36064,7 @@ sub_8110AB4: @ 8110AB4
bl StartSpriteAnim
adds r0, r5, 0
bl AnimateSprite
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -36183,7 +36183,7 @@ sub_8110B80: @ 8110B80
cmp r0, r1
bne _08110BC6
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08110BC6:
pop {r4}
pop {r0}
@@ -36207,11 +36207,11 @@ sub_8110BCC: @ 8110BCC
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -36219,11 +36219,11 @@ sub_8110BCC: @ 8110BCC
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_08110C10:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r5, [r0]
- ldr r4, =gUnknown_02022E1A
+ ldr r4, =gBattle_BG1_Y
strh r5, [r4]
movs r0, 0x14
movs r1, 0
@@ -36254,7 +36254,7 @@ _08110C10:
ldrsh r0, [r0, r1]
cmp r0, 0
beq _08110C6E
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -36293,7 +36293,7 @@ sub_8110CB0: @ 8110CB0
adds r2, r1, 0
cmp r0, 0
bne _08110CE4
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r3, =0x0000fffa
adds r0, r3, 0
ldrh r3, [r1]
@@ -36301,12 +36301,12 @@ sub_8110CB0: @ 8110CB0
b _08110CEA
.pool
_08110CE4:
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r1]
adds r0, 0x6
_08110CEA:
strh r0, [r1]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldr r3, =0x0000ffff
adds r0, r3, 0
ldrh r3, [r1]
@@ -36440,12 +36440,12 @@ _08110DFC:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_08110E10:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
movs r0, 0x50
movs r1, 0
@@ -36456,9 +36456,9 @@ _08110E10:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08110E3A:
add sp, 0x10
pop {r4,r5}
@@ -36480,7 +36480,7 @@ sub_8110E4C: @ 8110E4C
ldrsh r0, [r4, r2]
cmp r0, 0
beq _08110E98
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -36568,7 +36568,7 @@ _08110F0E:
cmp r0, r1
bge _08110F24
_08110F20:
- ldr r0, =move_anim_8072740
+ ldr r0, =DestroyAnimSprite
str r0, [r5, 0x1C]
_08110F24:
pop {r4,r5}
@@ -36597,7 +36597,7 @@ sub_8110F30: @ 8110F30
strh r0, [r4, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -36620,7 +36620,7 @@ sub_8110F74: @ 8110F74
lsls r1, 3
ldr r0, =gTasks
adds r6, r1, r0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -36636,7 +36636,7 @@ sub_8110F74: @ 8110F74
lsls r1, 13
adds r0, r1
lsrs r7, r0, 16
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -36713,13 +36713,13 @@ _0811101E:
strh r4, [r6, 0x16]
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r4, r0, 0
lsls r4, 24
asrs r4, 8
lsrs r4, 16
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
lsls r0, 24
strh r4, [r6, 0x22]
asrs r0, 24
@@ -36926,7 +36926,7 @@ _081111FE:
cmp r0, 0
bne _0811120C
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0811120C:
pop {r4}
pop {r0}
@@ -37090,7 +37090,7 @@ _0811134E:
thumb_func_start sub_811135C
sub_811135C: @ 811135C
push {lr}
- ldr r0, =gDisableStructMoveAnim
+ ldr r0, =gAnimDisableStructPtr
ldr r0, [r0]
ldrb r1, [r0, 0x11]
lsrs r0, r1, 4
@@ -37183,7 +37183,7 @@ _08111400:
cmp r0, 0
bne _08111412
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08111412:
pop {r0}
bx r0
@@ -37193,7 +37193,7 @@ _08111412:
sub_8111418: @ 8111418
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -37216,7 +37216,7 @@ _08111434:
sub_8111444: @ 8111444
push {r4,r5,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0
bl sub_80A5C6C
@@ -37286,7 +37286,7 @@ sub_811149C: @ 811149C
cmp r0, 0x8C
ble _081114E6
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081114E6:
pop {r4}
pop {r0}
@@ -37298,7 +37298,7 @@ sub_81114EC: @ 81114EC
push {lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r2, =gMoveDmgMoveAnim
+ ldr r2, =gAnimMoveDmg
ldr r0, [r2]
cmp r0, 0x20
bgt _08111500
@@ -37322,7 +37322,7 @@ _08111510:
strh r0, [r1, 0xE]
_0811151A:
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -37347,7 +37347,7 @@ sub_811152C: @ 811152C
movs r0, 0xC8
strh r0, [r5, 0xA]
_0811154E:
- ldr r4, =gUnknown_02022E22
+ ldr r4, =gBattle_BG3_Y
movs r1, 0xA
ldrsh r0, [r5, r1]
movs r1, 0xA
@@ -37365,7 +37365,7 @@ _0811154E:
movs r0, 0x1
bl sub_80A6DAC
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0811157A:
ldrh r0, [r5, 0x8]
adds r0, 0x1
@@ -37396,7 +37396,7 @@ sub_8111590: @ 8111590
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
ldrh r0, [r0]
strh r0, [r4, 0xC]
_081115BC:
@@ -37405,7 +37405,7 @@ _081115BC:
movs r1, 0xFF
ands r0, r1
strh r0, [r4, 0xA]
- ldr r6, =gUnknown_02022E22
+ ldr r6, =gBattle_BG3_Y
movs r2, 0xA
ldrsh r1, [r4, r2]
movs r0, 0x4
@@ -37424,7 +37424,7 @@ _081115BC:
movs r0, 0x1
bl sub_80A6DAC
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081115F4:
pop {r4-r6}
pop {r0}
@@ -37443,7 +37443,7 @@ sub_811160C: @ 811160C
strh r0, [r4, 0x2E]
ldrh r0, [r4, 0x20]
strh r0, [r4, 0x30]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -37748,7 +37748,7 @@ _08111852:
cmp r0, 0x3D
bne _08111884
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08111884:
pop {r4}
pop {r0}
@@ -37902,7 +37902,7 @@ _081119BC:
adds r0, r1, 0
bl sub_80A7344
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
movs r0, 0x50
movs r1, 0
bl SetGpuReg
@@ -37925,7 +37925,7 @@ sub_81119E0: @ 81119E0
adds r4, r0, 0
ldrh r5, [r4, 0x20]
ldrh r6, [r4, 0x22]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
mov r8, r0
ldrb r0, [r0]
movs r1, 0x2
@@ -38042,7 +38042,7 @@ _08111AD2:
lsls r0, 16
cmp r0, 0
bgt _08111B96
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -38104,7 +38104,7 @@ _08111B3C:
lsls r0, 16
cmp r0, 0
bgt _08111B96
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -38223,7 +38223,7 @@ _08111C38:
cmp r6, 0
beq _08111C44
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _08111C4A
_08111C44:
ldrh r0, [r3, 0x30]
@@ -38254,7 +38254,7 @@ sub_8111C50: @ 8111C50
cmp r0, 0
bge _08111C80
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08111D5C
.pool
_08111C80:
@@ -38285,7 +38285,7 @@ _08111C80:
adds r0, r4
movs r1, 0x50
strh r1, [r0, 0x2E]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -38470,7 +38470,7 @@ _08111E1C:
b _08111E48
_08111E42:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08111E48:
pop {r4}
pop {r0}
@@ -38510,9 +38510,9 @@ sub_8111E78: @ 8111E78
lsls r0, 3
ldr r1, =gTasks
adds r5, r0, r1
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r6, r0, 24
movs r1, 0x26
@@ -38557,7 +38557,7 @@ _08111ED0:
bl FreeSpritePaletteByTag
_08111EFE:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _081120CC
.pool
_08111F0C:
@@ -38602,9 +38602,9 @@ _08111F0C:
adds r2, r0
lsls r2, 2
adds r2, r4
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
ldr r1, [r1]
lsls r0, 2
@@ -38864,9 +38864,9 @@ sub_8112170: @ 8112170
lsls r0, 3
ldr r1, =gTasks
adds r4, r0, r1
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r6, r0, 24
movs r1, 0x26
@@ -38956,7 +38956,7 @@ _08112248:
bl SetGpuRegBits
_08112252:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08112258:
ldrh r0, [r4, 0x26]
adds r0, 0x1
@@ -38979,7 +38979,7 @@ sub_8112264: @ 8112264
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081122AC
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -38994,11 +38994,11 @@ sub_8112264: @ 8112264
lsls r2, 13
adds r0, r2
lsrs r5, r0, 16
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
b _081122D0
.pool
_081122AC:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -39013,7 +39013,7 @@ _081122AC:
lsls r2, 13
adds r0, r2
lsrs r5, r0, 16
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
_081122D0:
ldrb r0, [r4]
movs r1, 0
@@ -39166,7 +39166,7 @@ sub_81123C4: @ 81123C4
ldr r2, =gBattleAnimArgs
ldrh r0, [r2]
strh r0, [r1, 0x1C]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -39189,7 +39189,7 @@ _08112434:
_08112436:
lsls r1, r4, 16
asrs r3, r1, 16
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r2, [r0]
str r1, [sp, 0x10]
cmp r3, r2
@@ -39201,7 +39201,7 @@ _08112436:
lsls r0, r4, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _08112502
@@ -39565,7 +39565,7 @@ _0811273C:
movs r1, 0
bl SetGpuReg
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08112752:
pop {r4,r5}
pop {r0}
@@ -39577,10 +39577,10 @@ sub_8112758: @ 8112758
push {r4-r7,lr}
lsls r0, 24
lsrs r7, r0, 24
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r1, =0x00003f3f
movs r0, 0x48
@@ -39594,7 +39594,7 @@ sub_8112758: @ 8112758
movs r0, 0x54
movs r1, 0x10
bl SetGpuReg
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -39611,13 +39611,13 @@ _081127A0:
_081127B8:
movs r6, 0xC8
_081127BA:
- ldr r1, =gUnknown_02022E24
+ ldr r1, =gBattle_WIN0H
lsls r3, r6, 16
asrs r2, r3, 16
lsls r0, r2, 8
orrs r0, r2
strh r0, [r1]
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
movs r5, 0x28
ldr r0, =0x00002828
strh r0, [r1]
@@ -39798,12 +39798,12 @@ _08112938:
ldr r0, _08112988 @=sub_8112994
str r0, [r4]
_08112966:
- ldr r1, _0811298C @=gUnknown_02022E24
+ ldr r1, _0811298C @=gBattle_WIN0H
mov r2, r9
lsls r0, r2, 8
orrs r7, r0
strh r7, [r1]
- ldr r1, _08112990 @=gUnknown_02022E26
+ ldr r1, _08112990 @=gBattle_WIN0V
lsls r0, r6, 8
orrs r5, r0
strh r5, [r1]
@@ -39819,9 +39819,9 @@ _08112966:
_08112988:
.4byte sub_8112994
_0811298C:
- .4byte gUnknown_02022E24
+ .4byte gBattle_WIN0H
_08112990:
- .4byte gUnknown_02022E26
+ .4byte gBattle_WIN0V
thumb_func_end sub_811280C
thumb_func_start sub_8112994
@@ -39837,9 +39837,9 @@ sub_8112994: @ 8112994
lsrs r1, r0, 24
cmp r1, 0
bne _081129DA
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -39855,7 +39855,7 @@ sub_8112994: @ 8112994
movs r1, 0
bl SetGpuReg
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081129DA:
pop {r4,r5}
pop {r0}
@@ -39869,7 +39869,7 @@ sub_81129F0: @ 81129F0
adds r4, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -40042,13 +40042,13 @@ sub_8112B44: @ 8112B44
movs r0, 0x52
movs r1, 0
bl SetGpuReg
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -40064,7 +40064,7 @@ sub_8112B78: @ 8112B78
movs r1, 0xC
bl Sin
strh r0, [r5, 0x24]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -40171,7 +40171,7 @@ sub_8112C4C: @ 8112C4C
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -40195,7 +40195,7 @@ sub_8112C6C: @ 8112C6C
mov r8, r0
mov r0, r8
strh r0, [r4, 0xA]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -40301,7 +40301,7 @@ _08112D56:
lsls r0, 2
adds r5, r0, r1
strh r7, [r5, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
movs r1, 0
@@ -40445,7 +40445,7 @@ _08112E80:
movs r1, 0
bl SetGpuReg
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08112E96:
pop {r4-r7}
pop {r0}
@@ -40562,7 +40562,7 @@ sub_8112F60: @ 8112F60
orrs r1, r2
strb r1, [r3]
ldr r2, =gBankSpriteIds
- ldr r1, =gAnimationBankAttacker
+ ldr r1, =gAnimBankAttacker
ldrb r1, [r1]
adds r1, r2
ldrb r1, [r1]
@@ -40679,7 +40679,7 @@ _08113054:
sub_8113064: @ 8113064
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -40752,7 +40752,7 @@ sub_8113100: @ 8113100
push {r4,r5,lr}
adds r5, r0, 0
bl sub_80A6838
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -40765,7 +40765,7 @@ sub_8113100: @ 8113100
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x36]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -40834,11 +40834,11 @@ sub_81131B4: @ 81131B4
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081131D0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _081131D2
.pool
_081131D0:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_081131D2:
ldrb r0, [r4]
movs r1, 0
@@ -40876,7 +40876,7 @@ _081131D2:
sub_8113224: @ 8113224
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -40898,7 +40898,7 @@ _0811323E:
sub_8113250: @ 8113250
push {r4-r7,lr}
adds r6, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -41088,7 +41088,7 @@ _081133CE:
cmp r0, 0x14
ble _081133E2
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081133E2:
pop {r4,r5}
pop {r0}
@@ -41106,22 +41106,22 @@ sub_81133E8: @ 81133E8
lsls r1, 3
ldr r0, =gTasks
adds r4, r1, r0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _08113424
ldr r0, =0x04000014
str r0, [sp]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
b _0811342A
.pool
_08113424:
ldr r0, =0x04000018
str r0, [sp]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
_0811342A:
ldrh r0, [r0]
strh r0, [r4, 0xC]
@@ -41133,7 +41133,7 @@ _0811342A:
strb r0, [r1, 0x8]
mov r0, sp
strb r5, [r0, 0x9]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A6190
lsls r0, 24
@@ -41274,7 +41274,7 @@ _08113556:
.pool
_08113568:
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0811356E:
pop {r0}
bx r0
@@ -41354,7 +41354,7 @@ sub_81135EC: @ 81135EC
movs r1, 0x5
bl __divsi3
adds r6, r0, 0
- ldr r1, =gAnimationBankAttacker
+ ldr r1, =gAnimBankAttacker
mov r8, r1
ldrb r0, [r1]
movs r1, 0x2
@@ -41453,7 +41453,7 @@ sub_811369C: @ 811369C
cmp r0, r1
ble _081136E0
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081136E0:
pop {r4}
pop {r0}
@@ -41473,14 +41473,14 @@ sub_81136E8: @ 81136E8
ldr r1, =gBattleAnimArgs
ldrh r1, [r1]
strh r1, [r0, 0x8]
- ldr r1, =gAnimationBankAttacker
+ ldr r1, =gAnimBankAttacker
ldrb r4, [r1]
movs r1, 0x10
strh r1, [r0, 0xA]
movs r0, 0x52
bl SetGpuReg
adds r0, r4, 0
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -41545,7 +41545,7 @@ sub_811375C: @ 811375C
bne _081137DE
ldr r2, =gSprites
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r1, [r0]
@@ -41559,7 +41559,7 @@ sub_811375C: @ 811375C
orrs r1, r2
strb r1, [r0]
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _081137DE
.pool
_081137D8:
@@ -41639,7 +41639,7 @@ sub_811381C: @ 811381C
movs r1, 0
bl SetGpuReg
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08113882
.pool
_0811387C:
@@ -41661,9 +41661,9 @@ sub_8113888: @ 8113888
lsls r1, 5
movs r0, 0x52
bl SetGpuReg
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -41679,7 +41679,7 @@ _081138BC:
bl SetGpuReg
_081138C4:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -41690,14 +41690,14 @@ _081138C4:
sub_81138D4: @ 81138D4
push {r4-r6,lr}
adds r4, r0, 0
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0x2
bl sub_80A5C6C
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x30]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -41805,7 +41805,7 @@ _081139C2:
cmp r0, 0
bne _081139D4
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081139D4:
pop {r4-r6}
pop {r0}
@@ -41918,11 +41918,11 @@ sub_8113A90: @ 8113A90
adds r3, r0, 0
cmp r1, 0
bne _08113AAC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08113AAE
.pool
_08113AAC:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08113AAE:
ldrb r5, [r0]
movs r6, 0x14
@@ -42054,7 +42054,7 @@ sub_8113BAC: @ 8113BAC
lsls r1, 3
ldr r0, =gTasks
adds r5, r1, r0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x1
bl sub_80A5C6C
@@ -42096,9 +42096,9 @@ _08113C1C:
ldr r0, =0x0000ffc0
_08113C1E:
strh r0, [r5, 0x18]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0xE]
@@ -42107,7 +42107,7 @@ _08113C1E:
add r4, sp, 0xC
adds r0, r4, 0
bl sub_80A6B30
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r0, [r0]
strh r0, [r5, 0x1C]
ldr r1, =0x00003f42
@@ -42125,11 +42125,11 @@ _08113C1E:
lsls r0, 24
cmp r0, 0
bne _08113CB0
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
b _08113CAA
.pool
_08113C80:
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
ldrh r0, [r0]
strh r0, [r5, 0x1C]
ldr r1, =0x00003f44
@@ -42146,7 +42146,7 @@ _08113C80:
lsls r0, 24
cmp r0, 0
bne _08113CB0
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
_08113CAA:
ldrh r0, [r1]
adds r0, 0xF0
@@ -42202,13 +42202,13 @@ _08113CDC:
ldr r1, =0x00003f3f
movs r0, 0x48
bl SetGpuReg
- ldr r2, =gUnknown_02022E24
+ ldr r2, =gBattle_WIN0H
ldrh r0, [r5, 0x24]
lsls r0, 8
ldrh r1, [r5, 0x26]
orrs r0, r1
strh r0, [r2]
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
movs r0, 0xA0
strh r0, [r1]
ldr r0, =sub_8113D60
@@ -42331,7 +42331,7 @@ _08113E1C:
blt _08113E3E
strh r2, [r4, 0x24]
_08113E3E:
- ldr r3, =gUnknown_02022E24
+ ldr r3, =gBattle_WIN0H
ldrh r2, [r4, 0x24]
lsls r0, r2, 8
ldrh r1, [r4, 0x26]
@@ -42355,7 +42355,7 @@ _08113E5E:
.pool
_08113E6C:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08113E72:
pop {r4}
pop {r0}
@@ -42398,10 +42398,10 @@ _08113EBC:
lsrs r0, 24
cmp r0, 0x1
bne _08113EF8
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -42411,13 +42411,13 @@ _08113EBC:
adds r1, r4, 0
bl SetGpuReg
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _081140A6
.pool
_08113EF8:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0xE]
@@ -42426,14 +42426,14 @@ _08113EF8:
ldr r1, =0x00003f42
movs r0, 0x50
bl SetGpuReg
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
b _08113F2E
.pool
_08113F24:
ldr r1, =0x00003f44
movs r0, 0x50
bl SetGpuReg
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
_08113F2E:
ldrh r0, [r1]
adds r0, 0xF0
@@ -42447,7 +42447,7 @@ _08113F40:
bne _08113F68
mov r0, sp
bl sub_80A6B30
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r0, [r0]
strh r0, [r5, 0x1C]
mov r0, sp
@@ -42459,7 +42459,7 @@ _08113F40:
b _08113F78
.pool
_08113F68:
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
ldrh r0, [r0]
strh r0, [r5, 0x1C]
movs r0, 0
@@ -42472,7 +42472,7 @@ _08113F78:
b _08114044
.pool
_08113F84:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x1
bl sub_80A5C6C
@@ -42588,13 +42588,13 @@ _08114078:
ldr r1, =0x00003f3f
movs r0, 0x48
bl SetGpuReg
- ldr r2, =gUnknown_02022E24
+ ldr r2, =gBattle_WIN0H
ldrh r0, [r5, 0x24]
lsls r0, 8
ldrh r1, [r5, 0x26]
orrs r0, r1
strh r0, [r2]
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
movs r0, 0xA0
strh r0, [r1]
movs r0, 0
@@ -42686,7 +42686,7 @@ _08114150:
movs r0, 0x1
strh r0, [r4, 0xA]
_08114154:
- ldr r2, =gUnknown_02022E24
+ ldr r2, =gBattle_WIN0H
ldrh r0, [r4, 0x24]
lsls r0, 8
ldrh r1, [r4, 0x26]
@@ -42782,10 +42782,10 @@ _08114204:
b _08114232
.pool
_08114210:
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -42795,7 +42795,7 @@ _08114210:
adds r1, r4, 0
bl SetGpuReg
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08114232:
pop {r4,r5}
pop {r0}
@@ -43014,9 +43014,9 @@ sub_81143C0: @ 81143C0
lsls r0, 24
lsrs r0, 24
mov r10, r0
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
@@ -43049,7 +43049,7 @@ sub_81143C0: @ 81143C0
ldrb r0, [r6]
movs r5, 0x2
eors r0, r5
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0811444E
@@ -43075,7 +43075,7 @@ sub_81143C0: @ 81143C0
strb r1, [r0]
_0811444E:
mov r0, r10
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r3-r5}
mov r8, r3
mov r9, r4
@@ -43091,9 +43091,9 @@ sub_8114470: @ 8114470
push {r4-r6,lr}
lsls r0, 24
lsrs r6, r0, 24
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
@@ -43106,7 +43106,7 @@ sub_8114470: @ 8114470
ldrb r1, [r4]
movs r0, 0x2
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _081144AC
@@ -43116,7 +43116,7 @@ sub_8114470: @ 8114470
bl sub_80A477C
_081144AC:
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r6}
pop {r0}
bx r0
@@ -43141,7 +43141,7 @@ sub_81144BC: @ 81144BC
bl StartSpriteAnim
ldr r0, =sub_80A67D8
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
@@ -43157,9 +43157,9 @@ sub_81144F8: @ 81144F8
lsls r0, 24
lsrs r7, r0, 24
movs r6, 0
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r6, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r6, [r0]
ldr r1, =0x00003f3f
movs r0, 0x48
@@ -43180,11 +43180,11 @@ sub_81144F8: @ 81144F8
movs r0, 0x1
movs r1, 0x4
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -43192,9 +43192,9 @@ sub_81144F8: @ 81144F8
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0811455C:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _081145D6
@@ -43202,7 +43202,7 @@ _0811455C:
lsls r0, 24
cmp r0, 0
bne _081145D6
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
bl GetBankIdentity
lsls r0, 24
@@ -43218,7 +43218,7 @@ _0811458C:
ldrb r0, [r4]
movs r5, 0x2
eors r0, r5
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -43248,21 +43248,21 @@ _0811458C:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r6, 0x1
_081145D6:
bl IsContest
lsls r0, 24
cmp r0, 0
beq _08114614
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldrh r5, [r0]
b _0811465C
.pool
_08114614:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
bl GetBankSide
lsls r0, 24
@@ -43299,7 +43299,7 @@ _0811465C:
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r1, r4, 0
adds r2, r5, 0
@@ -43324,7 +43324,7 @@ _0811465C:
lsls r1, 4
movs r2, 0x20
bl LoadCompressedPalette
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
ldr r0, =gSprites
lsls r1, r4, 4
adds r1, r4
@@ -43334,7 +43334,7 @@ _0811465C:
negs r0, r0
adds r0, 0x60
strh r0, [r2]
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
ldrh r0, [r1, 0x22]
negs r0, r0
adds r0, 0x20
@@ -43399,7 +43399,7 @@ sub_8114748: @ 8114748
adds r0, 0x4
movs r5, 0
strh r0, [r4, 0x1C]
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
ldrh r3, [r2]
subs r1, r3, 0x4
strh r1, [r2]
@@ -43458,7 +43458,7 @@ _081147B8:
cmp r0, 0x1
bne _08114886
ldr r2, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r1, [r0]
movs r0, 0x2
eors r0, r1
@@ -43485,9 +43485,9 @@ _081147B8:
_08114824:
cmp r0, 0x3
bne _08114886
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r5, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r5, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -43503,7 +43503,7 @@ _08114824:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_08114856:
movs r0, 0
bl GetGpuReg
@@ -43523,7 +43523,7 @@ _08114856:
movs r1, 0
bl SetGpuReg
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08114886:
add sp, 0x10
pop {r4-r6}
@@ -43586,11 +43586,11 @@ _08114902:
beq _0811492E
_08114908:
adds r0, r4, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0811492C
@@ -43617,7 +43617,7 @@ _0811492E:
bl sub_80A750C
_0811494A:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -43629,7 +43629,7 @@ sub_8114960: @ 8114960
push {lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r2, =gUnknown_02038432
+ ldr r2, =gAnimMoveTurn
ldrb r0, [r2]
cmp r0, 0x1
bhi _08114974
@@ -43645,7 +43645,7 @@ _08114974:
strh r0, [r1, 0xE]
_08114980:
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -43655,7 +43655,7 @@ _08114980:
sub_8114994: @ 8114994
push {r4,r5,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -43670,7 +43670,7 @@ sub_8114994: @ 8114994
strh r0, [r4, 0x22]
movs r0, 0x14
strh r0, [r4, 0x2E]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -43716,7 +43716,7 @@ sub_81149FC: @ 81149FC
strh r1, [r5, 0x24]
movs r0, 0x14
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -43751,7 +43751,7 @@ sub_8114A60: @ 8114A60
cmp r0, 0
beq _08114A74
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08114A74:
pop {r4}
pop {r0}
@@ -43764,7 +43764,7 @@ sub_8114A7C: @ 8114A7C
adds r6, r0, 0
movs r1, 0x1
bl sub_80A6980
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -43778,7 +43778,7 @@ _08114A9C:
ldr r4, =gBattleAnimArgs
ldrh r0, [r4, 0x8]
strh r0, [r6, 0x2E]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -43797,7 +43797,7 @@ _08114A9C:
strh r0, [r6, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r6, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r6, 0
bl StoreSpriteCallbackInData6
pop {r4-r6}
@@ -43814,7 +43814,7 @@ sub_8114AF0: @ 8114AF0
adds r6, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A60AC
@@ -43890,7 +43890,7 @@ sub_8114B80: @ 8114B80
ldrsh r0, [r6, r1]
cmp r0, 0
bne _08114BF4
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -43964,7 +43964,7 @@ _08114C2E:
cmp r0, r1
bge _08114C46
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08114C46:
pop {r0}
bx r0
@@ -44025,7 +44025,7 @@ _08114C74:
cmp r0, 0xA
bne _08114CB6
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08114CB6:
pop {r0}
bx r0
@@ -44096,29 +44096,29 @@ _08114D3C:
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1C]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1E]
cmp r0, 0x1
bne _08114D70
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r0, [r0]
strh r0, [r4, 0x20]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
b _08114D78
.pool
_08114D70:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r0, [r0]
strh r0, [r4, 0x20]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
_08114D78:
ldrh r0, [r0]
strh r0, [r4, 0x22]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A6190
lsls r0, 24
@@ -44189,11 +44189,11 @@ _08114DF6:
ldrsh r0, [r4, r1]
cmp r0, 0x1
bne _08114E20
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
b _08114E22
.pool
_08114E20:
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
_08114E22:
ldrh r0, [r4, 0x22]
subs r0, r2
@@ -44210,11 +44210,11 @@ _08114E22:
ldrsh r0, [r4, r3]
cmp r0, 0x1
bne _08114E4C
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
b _08114E4E
.pool
_08114E4C:
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
_08114E4E:
ldrh r0, [r4, 0x22]
subs r0, r2
@@ -44246,7 +44246,7 @@ _08114E7E:
.pool
_08114E8C:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
ldr r2, =gSprites
movs r0, 0x1C
ldrsh r1, [r4, r0]
@@ -44289,22 +44289,22 @@ sub_8114EB4: @ 8114EB4
movs r4, 0
strh r4, [r1, 0x24]
strh r4, [r1, 0x26]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _08114F00
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
b _08114F02
.pool
_08114F00:
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
_08114F02:
strh r4, [r0]
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -44402,7 +44402,7 @@ _08114F78:
.pool
_08114FCC:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08114FD2:
pop {r4,r5}
pop {r0}
@@ -44442,23 +44442,23 @@ _08115018:
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1C]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1E]
cmp r0, 0x1
bne _08115044
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
b _08115046
.pool
_08115044:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
_08115046:
ldrh r0, [r0]
strh r0, [r4, 0x20]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A6190
lsls r0, 24
@@ -44521,7 +44521,7 @@ _081150C2:
.pool
_081150D4:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081150DA:
pop {r4}
pop {r0}
@@ -44540,13 +44540,13 @@ sub_81150E0: @ 81150E0
lsrs r4, r2, 16
cmp r0, 0x1
bne _08115104
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r3, [r0]
ldr r0, =0x04000014
b _0811510A
.pool
_08115104:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r3, [r0]
ldr r0, =0x04000018
_0811510A:
@@ -44634,11 +44634,11 @@ sub_81151A0: @ 81151A0
adds r7, r0, 0
cmp r1, 0
bne _081151BC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _081151BE
.pool
_081151BC:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_081151BE:
ldrb r4, [r0]
movs r6, 0x18
@@ -44698,7 +44698,7 @@ sub_8115228: @ 8115228
cmp r0, 0
beq _0811523C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0811523C:
pop {r4}
pop {r0}
@@ -44714,11 +44714,11 @@ sub_8115244: @ 8115244
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08115260
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08115262
.pool
_08115260:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08115262:
ldrb r5, [r0]
adds r0, r5, 0
@@ -44754,7 +44754,7 @@ _08115262:
ands r0, r2
orrs r0, r1
strh r0, [r6, 0x4]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r6, 0
bl StoreSpriteCallbackInData6
ldrh r0, [r4, 0x4]
@@ -44788,7 +44788,7 @@ sub_81152DC: @ 81152DC
b _08115314
.pool
_08115308:
- ldr r0, =gMovePowerMoveAnim
+ ldr r0, =gAnimMovePower
ldrh r0, [r0]
movs r1, 0xA
bl __udivsi3
@@ -44805,7 +44805,7 @@ _08115314:
beq _08115340
cmp r0, 0x5
bne _08115380
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
ldrh r0, [r0]
strh r0, [r4, 0x22]
ldr r0, =sub_81153AC
@@ -44818,7 +44818,7 @@ _08115340:
_08115346:
lsls r0, r5, 24
lsrs r0, 24
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _08115370
@@ -44853,7 +44853,7 @@ _08115380:
cmp r0, 0xFF
bne _08115398
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _081153A0
_08115398:
movs r0, 0x1
@@ -44907,7 +44907,7 @@ _081153DA:
ands r0, r1
cmp r0, 0
bne _08115404
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
ldrh r0, [r3, 0x26]
ldrh r2, [r3, 0x22]
adds r0, r2
@@ -44915,7 +44915,7 @@ _081153DA:
b _0811540E
.pool
_08115404:
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
ldrh r1, [r3, 0x22]
ldrh r2, [r3, 0x26]
subs r1, r2
@@ -44951,7 +44951,7 @@ _08115430:
ands r1, r0
cmp r1, 0
bne _0811545C
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
ldrh r0, [r3, 0x24]
ldrh r2, [r3, 0x22]
adds r0, r2
@@ -44959,7 +44959,7 @@ _08115430:
b _08115466
.pool
_0811545C:
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
ldrh r1, [r3, 0x22]
ldrh r2, [r3, 0x24]
subs r1, r2
@@ -44987,11 +44987,11 @@ _08115484:
b _0811549C
.pool
_08115490:
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
ldrh r0, [r3, 0x22]
strh r0, [r1]
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0811549C:
pop {r0}
bx r0
@@ -45110,7 +45110,7 @@ _08115554:
blt _08115554
_08115578:
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0811557E:
pop {r4-r7}
pop {r0}
@@ -45191,7 +45191,7 @@ sub_8115600: @ 8115600
lsrs r1, r0, 24
ldr r3, =gBattleAnimArgs
movs r2, 0
- ldr r0, =gMovePowerMoveAnim
+ ldr r0, =gAnimMovePower
ldrh r0, [r0]
cmp r0, 0x63
bls _08115614
@@ -45199,7 +45199,7 @@ sub_8115600: @ 8115600
_08115614:
strh r2, [r3, 0x1E]
adds r0, r1, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -45217,11 +45217,11 @@ sub_8115628: @ 8115628
adds r6, r2, 0
cmp r0, 0
beq _08115648
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
b _0811564A
.pool
_08115648:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
_0811564A:
ldrb r0, [r0]
adds r5, r0, 0
@@ -45263,15 +45263,15 @@ _0811565A:
movs r0, 0xFF
ands r1, r0
strh r1, [r4, 0xC]
- ldr r2, =gUnknown_02022E20
+ ldr r2, =gBattle_BG3_X
ldrh r0, [r4, 0xA]
strh r0, [r2]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
strh r1, [r0]
ldrh r0, [r6, 0x4]
strh r0, [r4, 0xE]
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r7}
pop {r0}
bx r0
@@ -45295,20 +45295,20 @@ sub_81156D0: @ 81156D0
ldrsh r0, [r2, r4]
cmp r1, r0
bne _08115710
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
strh r1, [r0]
adds r0, r3, 0
bl DestroyTask
b _0811571C
.pool
_08115710:
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
ldrh r0, [r2, 0xA]
strh r0, [r1]
- ldr r1, =gUnknown_02022E22
+ ldr r1, =gBattle_BG3_Y
ldrh r0, [r2, 0xC]
strh r0, [r1]
_0811571C:
@@ -45333,7 +45333,7 @@ sub_811572C: @ 811572C
strh r0, [r4, 0x22]
ldrh r0, [r5, 0x4]
strh r0, [r4, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -45415,7 +45415,7 @@ _081157D2:
cmp r0, r1
bne _081157F6
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081157F6:
pop {r4}
pop {r0}
@@ -45503,7 +45503,7 @@ sub_8115884: @ 8115884
cmp r0, 0
bne _0811589A
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0811589A:
pop {r0}
bx r0
@@ -45638,7 +45638,7 @@ sub_8115984: @ 8115984
movs r2, 0
bl BlendPalettes
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081159AA:
pop {r4}
pop {r0}
@@ -45810,7 +45810,7 @@ _08115AF8:
b _08115B06
_08115B00:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08115B06:
pop {r4-r6}
pop {r0}
@@ -45852,9 +45852,9 @@ sub_8115B0C: @ 8115B0C
mov r8, r2
cmp r5, r1
bge _08115B74
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r3, [r0]
- ldr r7, =gAnimationBankTarget
+ ldr r7, =gAnimBankTarget
movs r0, 0x1
mov r12, r0
adds r2, r1, 0
@@ -45996,7 +45996,7 @@ _08115C6C:
b _08115C7A
_08115C74:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08115C7A:
pop {r4-r6}
pop {r0}
@@ -46135,7 +46135,7 @@ _08115D80:
b _08115D8E
_08115D88:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08115D8E:
pop {r4-r6}
pop {r0}
@@ -46317,7 +46317,7 @@ sub_8115EB8: @ 8115EB8
movs r3, 0
bl BeginNormalPaletteFade
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08115EFE:
add sp, 0x4
pop {r4,r5}
@@ -46336,9 +46336,9 @@ sub_8115F10: @ 8115F10
lsrs r0, 24
mov r8, r0
movs r2, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r6, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r7, [r0]
ldr r4, =gBattleAnimArgs
ldrh r1, [r4]
@@ -46380,7 +46380,7 @@ _08115F6E:
adds r0, r2, 0
bl InvertPlttBuffer
mov r0, r8
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
add sp, 0xC
pop {r3}
mov r8, r3
@@ -46429,10 +46429,10 @@ _08115FD6:
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
mov r9, r0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
mov r10, r0
ldrh r1, [r4, 0xC]
@@ -46507,7 +46507,7 @@ _08116050:
adds r0, r5, 0
bl UnfadePlttBuffer
mov r0, r8
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0811607A:
pop {r3-r5}
mov r8, r3
@@ -46553,11 +46553,11 @@ _081160DC:
beq _081160F4
b _08116104
_081160E2:
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
b _081160F6
.pool
_081160EC:
- ldr r1, =gUnknown_02022E22
+ ldr r1, =gBattle_BG3_Y
b _081160F6
.pool
_081160F4:
@@ -46679,7 +46679,7 @@ _081161BA:
bcc _081161BA
_081161DC:
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_081161E2:
pop {r4-r7}
pop {r0}
@@ -46692,7 +46692,7 @@ sub_81161F4: @ 81161F4
push {r4-r6,lr}
ldr r6, =gSprites
ldr r4, =gBankSpriteIds
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
adds r0, r4
ldrb r0, [r0]
@@ -46707,7 +46707,7 @@ sub_81161F4: @ 81161F4
adds r0, r2, 0
ands r0, r3
strb r0, [r1]
- ldr r3, =gAnimationBankTarget
+ ldr r3, =gAnimBankTarget
ldrb r0, [r3]
adds r0, r4
ldrb r1, [r0]
@@ -46793,10 +46793,10 @@ sub_81162A4: @ 81162A4
strh r1, [r2, 0xE]
ldrh r1, [r3, 0x6]
strh r1, [r2, 0x18]
- ldr r4, =gUnknown_02022E20
+ ldr r4, =gBattle_BG3_X
ldrh r1, [r3]
strh r1, [r4]
- ldr r4, =gUnknown_02022E22
+ ldr r4, =gBattle_BG3_Y
ldrh r1, [r3, 0x2]
strh r1, [r4]
ldr r1, =sub_81162F8
@@ -46824,7 +46824,7 @@ sub_81162F8: @ 81162F8
mov r12, r1
cmp r0, 0
bne _0811637E
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
ldrh r2, [r0]
movs r7, 0x8
ldrsh r1, [r3, r7]
@@ -46839,7 +46839,7 @@ _08116330:
ldrh r0, [r3, 0x8]
_08116332:
strh r0, [r6]
- ldr r2, =gUnknown_02022E22
+ ldr r2, =gBattle_BG3_Y
ldrh r3, [r2]
lsls r1, r5, 2
adds r0, r1, r5
@@ -46873,7 +46873,7 @@ _08116358:
strh r1, [r6]
strh r1, [r2]
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08116382
_0811637E:
subs r0, r2, 0x1
@@ -46907,7 +46907,7 @@ _081163AC:
_081163B4:
ldr r0, =sub_80A67BC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -46955,7 +46955,7 @@ _081163FC:
sub_8116420: @ 8116420
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -47113,7 +47113,7 @@ _08116584:
ldr r0, =gBattleAnimArgs
ldrh r0, [r0, 0x6]
strh r0, [r4, 0x2E]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A64B0
@@ -47180,7 +47180,7 @@ sub_81165E4: @ 81165E4
cmp r0, 0xC
ble _0811661A
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0811661A:
pop {r0}
bx r0
@@ -47256,14 +47256,14 @@ _081166B8:
movs r5, 0
_081166BA:
mov r0, sp
- ldr r1, =gAnimationBankAttacker
+ ldr r1, =gAnimBankAttacker
b _081166CA
.pool
_081166C4:
movs r5, 0
_081166C6:
mov r0, sp
- ldr r1, =gAnimationBankTarget
+ ldr r1, =gAnimBankTarget
_081166CA:
ldrb r1, [r1]
strb r1, [r0]
@@ -47271,10 +47271,10 @@ _081166CA:
.pool
_081166D4:
mov r1, sp
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
strb r0, [r1]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
strb r0, [r1, 0x1]
b _0811670E
@@ -47287,13 +47287,13 @@ _081166EC:
_081166F4:
movs r5, 0
mov r2, sp
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08116706
.pool
_08116700:
movs r5, 0
mov r2, sp
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08116706:
ldrb r0, [r0]
movs r1, 0x2
@@ -47310,7 +47310,7 @@ _08116712:
cmp r4, r0
beq _0811673C
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0811673C
@@ -47348,7 +47348,7 @@ sub_811675C: @ 811675C
ldrsh r0, [r0, r1]
bl sub_811583C
adds r2, r0, 0
- ldr r0, =gUnknown_02022FF0
+ ldr r0, =gBattleTerrain
ldrb r0, [r0]
cmp r0, 0x9
bhi _08116832
@@ -47558,7 +47558,7 @@ _0811693C:
b _08116954
_08116946:
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08116954
_0811694E:
mov r0, r8
@@ -47614,7 +47614,7 @@ sub_81169A0: @ 81169A0
cmp r0, 0
bne _081169B8
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081169B8:
pop {r0}
bx r0
@@ -47750,7 +47750,7 @@ _08116ABC:
cmp r0, 0
bne _08116ACA
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08116ACA:
pop {r4-r6}
pop {r0}
@@ -47805,9 +47805,9 @@ sub_8116B14: @ 8116B14
lsrs r0, 24
mov r9, r0
movs r7, 0
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r7, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r7, [r0]
ldr r1, =0x00003f3f
movs r0, 0x48
@@ -47859,7 +47859,7 @@ sub_8116B14: @ 8116B14
movs r0, 0xA
bl SetGpuReg
_08116BA2:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08116C26
@@ -47867,7 +47867,7 @@ _08116BA2:
lsls r0, 24
cmp r0, 0
bne _08116C26
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
bl GetBankIdentity
lsls r0, 24
@@ -47883,7 +47883,7 @@ _08116BD2:
ldrb r0, [r5]
movs r6, 0x2
eors r0, r6
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -47925,14 +47925,14 @@ _08116C26:
lsls r0, 24
cmp r0, 0
beq _08116C64
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldrh r5, [r0]
b _08116CAC
.pool
_08116C64:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
bl GetBankSide
lsls r0, 24
@@ -47969,7 +47969,7 @@ _08116CAC:
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r1, r4, 0
adds r2, r5, 0
@@ -47996,7 +47996,7 @@ _08116CAC:
adds r1, 0x1
movs r2, 0x2
bl LoadPalette
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
ldr r0, =gSprites
lsls r1, r4, 4
adds r1, r4
@@ -48006,7 +48006,7 @@ _08116CAC:
negs r0, r0
adds r0, 0x20
strh r0, [r2]
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
ldrh r0, [r1, 0x22]
negs r0, r0
adds r0, 0x20
@@ -48050,7 +48050,7 @@ sub_8116D64: @ 8116D64
movs r1, 0
mov r8, r1
strh r0, [r5, 0x1C]
- ldr r7, =gUnknown_02022E1A
+ ldr r7, =gBattle_BG1_Y
ldrh r2, [r7]
subs r1, r2, 0x4
strh r1, [r7]
@@ -48072,10 +48072,10 @@ sub_8116D64: @ 8116D64
bne _08116E86
movs r0, 0
bl sub_80A477C
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
mov r1, r8
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -48138,7 +48138,7 @@ _08116DF6:
cmp r0, 0x1
bne _08116E7C
ldr r2, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r1, [r0]
movs r0, 0x2
eors r0, r1
@@ -48164,7 +48164,7 @@ _08116E7C:
mov r2, r8
strh r2, [r7]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08116E86:
add sp, 0x14
pop {r3}
@@ -48223,11 +48223,11 @@ sub_8116F04: @ 8116F04
ldrsh r0, [r1, r2]
cmp r0, 0
bne _08116F24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08116F26
.pool
_08116F24:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08116F26:
ldrb r0, [r0]
strb r0, [r1]
@@ -48247,7 +48247,7 @@ _08116F26:
cmp r0, 0
beq _08116F5C
ldrb r0, [r1, 0x1]
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
bne _08116F5C
@@ -48256,10 +48256,10 @@ _08116F56:
movs r0, 0
strh r0, [r1, 0xA]
_08116F5C:
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r1, =0x00003f3f
movs r0, 0x48
@@ -48281,11 +48281,11 @@ _08116F5C:
movs r0, 0x1
movs r1, 0x4
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -48293,9 +48293,9 @@ _08116F5C:
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_08116FBA:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08117036
@@ -48320,7 +48320,7 @@ _08116FBA:
_08116FEC:
ldr r0, [r4]
ldrb r0, [r0, 0x1]
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
lsrs r5, r0, 24
cmp r5, 0x1
@@ -48350,7 +48350,7 @@ _08116FEC:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
ldr r0, [r4]
strb r5, [r0, 0x2]
_08117036:
@@ -48360,7 +48360,7 @@ _08117036:
beq _08117078
ldr r0, =gUnknown_0203A110
ldr r1, [r0]
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldrh r0, [r0]
@@ -48537,10 +48537,10 @@ _081171F8:
movs r2, 0x20
bl LoadCompressedPalette
_08117206:
- ldr r3, =gUnknown_02022E18
+ ldr r3, =gBattle_BG1_X
movs r2, 0
strh r2, [r3]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r2, [r0]
ldr r1, =gUnknown_0203A110
ldr r0, [r1]
@@ -48614,7 +48614,7 @@ _08117280:
bne _081172CC
movs r0, 0x40
negs r0, r0
- bl sub_80A5278
+ bl BattleAnimAdjustPanning2
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -48625,7 +48625,7 @@ _08117280:
_081172CC:
movs r0, 0x40
negs r0, r0
- bl sub_80A5278
+ bl BattleAnimAdjustPanning2
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -48645,7 +48645,7 @@ sub_81172EC: @ 81172EC
push {r4-r6,lr}
lsls r0, 24
lsrs r6, r0, 24
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
ldr r1, =gTasks
lsls r0, r6, 2
adds r0, r6
@@ -48746,10 +48746,10 @@ _081173AE:
strh r0, [r5, 0x26]
b _08117478
_081173B6:
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -48765,7 +48765,7 @@ _081173B6:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_081173E6:
movs r0, 0
bl GetGpuReg
@@ -48833,7 +48833,7 @@ _08117466:
movs r0, 0
str r0, [r4]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08117478:
pop {r4-r6}
pop {r0}
@@ -48987,7 +48987,7 @@ _081175AC:
.pool
_081175B8:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081175BE:
pop {r4-r6}
pop {r0}
@@ -49044,7 +49044,7 @@ sub_8117610: @ 8117610
lsrs r6, r0, 24
movs r4, 0
movs r2, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r3, [r0]
movs r5, 0x1
_08117620:
@@ -49096,7 +49096,7 @@ sub_8117660: @ 8117660
ldrsh r0, [r4, r1]
cmp r0, 0
beq _0811769C
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -49125,7 +49125,7 @@ _0811769C:
adds r0, 0x1
strh r0, [r1, 0x8]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r6}
pop {r0}
bx r0
@@ -49152,13 +49152,13 @@ sub_81176D8: @ 81176D8
ldrh r7, [r1, 0x1E]
adds r2, r7
strh r2, [r1, 0x1E]
- ldr r6, =gUnknown_02022E20
+ ldr r6, =gBattle_BG3_X
lsls r0, r3, 16
asrs r0, 24
ldrh r4, [r6]
adds r0, r4
strh r0, [r6]
- ldr r4, =gUnknown_02022E22
+ ldr r4, =gBattle_BG3_Y
lsls r0, r2, 16
asrs r0, 24
ldrh r7, [r4]
@@ -49196,7 +49196,7 @@ sub_8117754: @ 8117754
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
ldr r1, =gBattleAnimArgs
@@ -49204,7 +49204,7 @@ sub_8117754: @ 8117754
lsrs r0, 24
strh r0, [r1, 0xE]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -49217,7 +49217,7 @@ sub_8117780: @ 8117780
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
ldr r1, =gBattleAnimArgs
@@ -49225,7 +49225,7 @@ sub_8117780: @ 8117780
lsrs r0, 24
strh r0, [r1, 0xE]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -49239,10 +49239,10 @@ sub_81177AC: @ 81177AC
lsrs r3, r0, 24
ldr r5, =gBattleAnimArgs
movs r4, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r2, [r0]
movs r0, 0x2
- ldr r1, =gAnimationBankTarget
+ ldr r1, =gAnimBankTarget
eors r0, r2
ldrb r1, [r1]
cmp r0, r1
@@ -49251,7 +49251,7 @@ sub_81177AC: @ 81177AC
_081177C8:
strh r4, [r5, 0xE]
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -49266,13 +49266,13 @@ sub_81177E4: @ 81177E4
movs r4, 0
ldr r6, =gSprites
_081177EE:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
cmp r4, r0
beq _0811782C
lsls r0, r4, 24
lsrs r0, 24
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _0811782C
@@ -49303,7 +49303,7 @@ _0811782C:
cmp r4, 0x3
bls _081177EE
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r7}
pop {r0}
bx r0
@@ -49355,7 +49355,7 @@ sub_8117854: @ 8117854
cmp r1, 0
beq _081178BA
adds r0, r6, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
bne _081178BA
@@ -49363,10 +49363,10 @@ _081178B6:
movs r2, 0
mov r8, r2
_081178BA:
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r1, =0x00003f3f
movs r0, 0x48
@@ -49423,7 +49423,7 @@ _08117930:
lsls r0, 24
cmp r0, 0
beq _08117964
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldrh r4, [r0]
@@ -49497,10 +49497,10 @@ _081179CC:
ldr r0, [sp, 0x5C]
movs r2, 0x20
bl LoadCompressedPalette
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
ldr r1, =gTasks
mov r2, r9
@@ -49563,7 +49563,7 @@ _08117A7E:
ldrsh r0, [r3, r1]
cmp r0, 0
bge _08117AA4
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
lsls r1, r4, 16
asrs r1, 24
ldrh r0, [r2]
@@ -49572,7 +49572,7 @@ _08117A7E:
b _08117AB0
.pool
_08117AA4:
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
lsls r0, r4, 16
asrs r0, 24
ldrh r2, [r1]
@@ -49676,9 +49676,9 @@ _08117B34:
bne _08117C0C
movs r0, 0
bl sub_80A477C
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r4, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r4, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -49744,7 +49744,7 @@ _08117BB2:
bl DestroySprite
_08117C06:
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08117C0C:
add sp, 0x4
pop {r4-r6}
@@ -49759,10 +49759,10 @@ sub_8117C24: @ 8117C24
lsls r0, 24
lsrs r0, 24
ldr r2, =gBattleAnimArgs
- ldr r1, =gUnknown_02022FF0
+ ldr r1, =gBattleTerrain
ldrb r1, [r1]
strh r1, [r2]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -49777,14 +49777,14 @@ sub_8117C44: @ 8117C44
movs r0, 0x80
lsls r0, 6
bl AllocZeroed
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
movs r2, 0xBE
lsls r2, 1
adds r1, r2
str r0, [r1]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -49797,7 +49797,7 @@ sub_8117C70: @ 8117C70
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r6, =gBattleSpritesGfx
+ ldr r6, =gMonSpritesGfxPtr
ldr r0, [r6]
movs r5, 0xBE
lsls r5, 1
@@ -49809,7 +49809,7 @@ sub_8117C70: @ 8117C70
movs r1, 0
str r1, [r0]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r6}
pop {r0}
bx r0
@@ -49854,19 +49854,19 @@ _08117CD2:
_08117CE4:
cmp r0, 0x1
bne _08117CF0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08117CF6
.pool
_08117CF0:
cmp r0, 0x2
bne _08117CFC
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08117CF6:
ldrb r0, [r0]
adds r4, r0, 0
adds r4, 0x10
_08117CFC:
- ldr r0, =gBattleSpritesGfx
+ ldr r0, =gMonSpritesGfxPtr
ldr r1, [r0]
ldr r0, =gBattleAnimArgs
movs r2, 0x2
@@ -49883,7 +49883,7 @@ _08117CFC:
movs r2, 0x20
bl memcpy
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
add sp, 0xC
pop {r4,r5}
pop {r0}
@@ -49929,13 +49929,13 @@ _08117D6E:
_08117D80:
cmp r0, 0x1
bne _08117D8C
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08117D92
.pool
_08117D8C:
cmp r0, 0x2
bne _08117D98
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08117D92:
ldrb r0, [r0]
adds r4, r0, 0
@@ -49944,7 +49944,7 @@ _08117D98:
lsls r0, r4, 5
ldr r1, =gPlttBufferUnfaded
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r2, [r1]
ldr r1, =gBattleAnimArgs
movs r3, 0x2
@@ -49958,7 +49958,7 @@ _08117D98:
movs r2, 0x20
bl memcpy
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
add sp, 0xC
pop {r4,r5}
pop {r0}
@@ -50004,13 +50004,13 @@ _08117E0A:
_08117E1C:
cmp r0, 0x1
bne _08117E28
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08117E2E
.pool
_08117E28:
cmp r0, 0x2
bne _08117E34
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08117E2E:
ldrb r0, [r0]
adds r4, r0, 0
@@ -50024,7 +50024,7 @@ _08117E34:
movs r2, 0x20
bl memcpy
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
add sp, 0xC
pop {r4,r5}
pop {r0}
@@ -50052,7 +50052,7 @@ _08117E80:
strh r1, [r0, 0xE]
_08117E84:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -50064,15 +50064,15 @@ sub_8117E94: @ 8117E94
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldr r1, =gBankTarget
ldrb r1, [r1]
strb r1, [r2]
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
ldr r1, =gEffectBank
ldrb r1, [r1]
strb r1, [r2]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -50083,11 +50083,11 @@ sub_8117EC4: @ 8117EC4
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r4, 24
@@ -50104,7 +50104,7 @@ _08117EF8:
_08117EFC:
strh r0, [r1, 0xE]
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -50116,11 +50116,11 @@ sub_8117F10: @ 8117F10
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
ldr r1, =gBankTarget
ldrb r1, [r1]
strb r1, [r2]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -50131,15 +50131,15 @@ sub_8117F30: @ 8117F30
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldr r1, =gBankAttacker
ldrb r1, [r1]
strb r1, [r2]
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
ldr r1, =gEffectBank
ldrb r1, [r1]
strb r1, [r2]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -50155,7 +50155,7 @@ sub_8117F60: @ 8117F60
cmp r0, 0
beq _08117F78
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08117FB4
_08117F78:
ldr r0, =gTasks
@@ -50163,9 +50163,9 @@ _08117F78:
adds r3, r4
lsls r3, 3
adds r3, r0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r4, [r0]
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldrb r0, [r2]
ldr r1, [r4]
lsls r0, 2
@@ -50207,9 +50207,9 @@ sub_8117FD0: @ 8117FD0
lsls r0, 5
cmp r1, r0
bne _08118014
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r3, [r0]
ldr r0, [r1]
lsls r3, 2
@@ -50237,8 +50237,8 @@ _08118014:
.pool
thumb_func_end sub_8117FD0
- thumb_func_start lcd_bg_operations
-lcd_bg_operations: @ 811802C
+ thumb_func_start SetAnimBgAttribute
+SetAnimBgAttribute: @ 811802C
push {r4-r6,lr}
lsls r0, 24
lsrs r6, r0, 24
@@ -50364,7 +50364,7 @@ _08118132:
pop {r0}
bx r0
.pool
- thumb_func_end lcd_bg_operations
+ thumb_func_end SetAnimBgAttribute
thumb_func_start sub_8118140
sub_8118140: @ 8118140
@@ -50529,14 +50529,14 @@ sub_811828C: @ 811828C
lsls r0, 24
lsrs r0, 24
bl DestroyTask
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
movs r0, 0x50
movs r1, 0
@@ -50569,7 +50569,7 @@ task_battle_intro_80BC47C: @ 81182EC
sub sp, 0x4
lsls r0, 24
lsrs r4, r0, 24
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r1]
adds r0, 0x6
strh r0, [r1]
@@ -50646,7 +50646,7 @@ _0811838C:
bl SetGpuReg
b _0811852A
_0811839C:
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
ldrh r0, [r1]
subs r0, 0xFF
strh r0, [r1]
@@ -50697,7 +50697,7 @@ _08118400:
ldrsh r0, [r2, r1]
cmp r0, 0x1
bne _08118420
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
ldrh r1, [r2]
ldr r0, =0x0000ffb0
cmp r1, r0
@@ -50706,7 +50706,7 @@ _08118400:
b _0811842C
.pool
_08118420:
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
ldrh r1, [r2]
ldr r0, =0x0000ffc8
cmp r1, r0
@@ -50715,7 +50715,7 @@ _08118420:
_0811842C:
strh r0, [r2]
_0811842E:
- ldr r2, =gUnknown_02022E26
+ ldr r2, =gBattle_WIN0V
ldrh r1, [r2]
movs r0, 0xFF
lsls r0, 8
@@ -50861,13 +50861,13 @@ _08118568:
cmp r0, 0x4
bne _08118580
_0811856C:
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r1]
adds r0, 0x8
b _0811857E
.pool
_08118578:
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r1]
adds r0, 0x6
_0811857E:
@@ -50882,7 +50882,7 @@ _08118580:
adds r6, r0, 0
cmp r1, 0x4
bne _081185E4
- ldr r7, =gUnknown_02022E1A
+ ldr r7, =gBattle_BG1_Y
ldrh r0, [r4, 0x14]
bl Cos2
lsls r0, 16
@@ -50988,7 +50988,7 @@ _08118662:
b _0811881A
.pool
_08118678:
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
ldrh r0, [r1]
subs r0, 0xFF
strh r0, [r1]
@@ -51065,7 +51065,7 @@ _08118708:
movs r0, 0x4
strh r0, [r1, 0x12]
_08118728:
- ldr r2, =gUnknown_02022E26
+ ldr r2, =gBattle_WIN0V
ldrh r1, [r2]
movs r0, 0xFF
lsls r0, 8
@@ -51202,7 +51202,7 @@ task_battle_intro_anim: @ 8118844
sub sp, 0x4
lsls r0, 24
lsrs r5, r0, 24
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r1]
adds r0, 0x8
strh r0, [r1]
@@ -51288,7 +51288,7 @@ _08118908:
b _08118A96
.pool
_0811891C:
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
ldrh r0, [r1]
subs r0, 0xFF
strh r0, [r1]
@@ -51354,7 +51354,7 @@ _08118986:
movs r0, 0x6
strh r0, [r2, 0x12]
_081189A6:
- ldr r2, =gUnknown_02022E26
+ ldr r2, =gBattle_WIN0V
ldrh r1, [r2]
movs r0, 0xFF
lsls r0, 8
@@ -51505,7 +51505,7 @@ task00_battle_intro_wireless: @ 8118AC0
ldrsh r0, [r7, r2]
cmp r0, 0
bne _08118B36
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
ldrh r1, [r2]
movs r0, 0x80
lsls r0, 8
@@ -51519,7 +51519,7 @@ task00_battle_intro_wireless: @ 8118AC0
_08118AFE:
adds r0, r1, 0x3
strh r0, [r2]
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
ldrh r0, [r1]
subs r0, 0x3
strh r0, [r1]
@@ -51652,7 +51652,7 @@ _08118BA8:
b _08118D5A
.pool
_08118C38:
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
ldrh r0, [r1]
subs r0, 0xFF
strh r0, [r1]
@@ -51683,7 +51683,7 @@ _08118C50:
b _08118D5A
.pool
_08118C7C:
- ldr r2, =gUnknown_02022E26
+ ldr r2, =gBattle_WIN0V
ldrh r1, [r2]
movs r0, 0xFF
lsls r0, 8
@@ -51874,21 +51874,21 @@ _08118DD4:
ldr r1, =0x00003f3f
movs r0, 0x4A
bl SetGpuReg
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
ldr r2, =0x0000ffd0
adds r0, r2, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
movs r0, 0xF0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
subs r2, 0xC0
adds r0, r2, 0
strh r0, [r1]
b _08118FB2
.pool
_08118E4C:
- ldr r2, =gUnknown_02022E26
+ ldr r2, =gBattle_WIN0V
ldrh r3, [r2]
movs r1, 0x80
lsls r1, 1
@@ -51932,7 +51932,7 @@ _08118E7E:
b _08118FB2
.pool
_08118EA8:
- ldr r3, =gUnknown_02022E26
+ ldr r3, =gBattle_WIN0V
ldrh r2, [r3]
movs r0, 0xFF
lsls r0, 8
@@ -51958,10 +51958,10 @@ _08118EC2:
subs r0, r1, 0x2
strh r0, [r3, 0xC]
_08118ED8:
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r3, 0xC]
strh r0, [r1]
- ldr r2, =gUnknown_02022E1C
+ ldr r2, =gBattle_BG2_X
negs r1, r0
strh r1, [r2]
lsls r0, 16
@@ -51973,15 +51973,15 @@ _08118ED8:
b _08118FB2
.pool
_08118F00:
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
ldrh r0, [r1]
adds r3, r0, 0x2
strh r3, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
ldrh r0, [r1]
adds r0, 0x2
strh r0, [r1]
- ldr r5, =gUnknown_02022E26
+ ldr r5, =gBattle_WIN0V
ldrh r2, [r5]
movs r0, 0xFF
lsls r0, 8
@@ -52078,10 +52078,10 @@ sub_8118FBC: @ 8118FBC
lsls r5, 16
lsrs r5, 16
adds r0, r4, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r2, [r1]
lsls r4, 2
adds r2, 0x4
@@ -52189,7 +52189,7 @@ sub_8119094: @ 8119094
lsls r0, 24
mov r9, r0
ldr r4, =0x040000d4
- ldr r0, =gBattleSpritesGfx
+ ldr r0, =gMonSpritesGfxPtr
ldr r0, [r0]
lsrs r2, 22
adds r0, 0x4
diff --git a/asm/battle_anim_815A0D4.s b/asm/battle_anim_815A0D4.s
index 46b09081d..69835bf4e 100755
--- a/asm/battle_anim_815A0D4.s
+++ b/asm/battle_anim_815A0D4.s
@@ -75,7 +75,7 @@ sub_815A114: @ 815A114
b _0815A15A
_0815A154:
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815A15A:
pop {r0}
bx r0
@@ -87,7 +87,7 @@ sub_815A160: @ 815A160
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0x2
bl sub_80A5C6C
@@ -112,7 +112,7 @@ sub_815A160: @ 815A160
movs r2, 0
bl sub_807521C
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4-r6}
pop {r0}
bx r0
@@ -196,7 +196,7 @@ sub_815A234: @ 815A234
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -207,7 +207,7 @@ sub_815A254: @ 815A254
push {r4-r7,lr}
sub sp, 0x4
adds r5, r0, 0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -261,7 +261,7 @@ _0815A2B2:
strh r6, [r5, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
add sp, 0x4
@@ -537,7 +537,7 @@ _0815A4E0:
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815A4FE:
pop {r4}
pop {r0}
@@ -768,7 +768,7 @@ sub_815A6C4: @ 815A6C4
adds r4, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
mov r5, sp
adds r5, 0x2
@@ -776,7 +776,7 @@ sub_815A6C4: @ 815A6C4
mov r2, sp
adds r3, r5, 0
bl sub_80A8924
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -869,7 +869,7 @@ _0815A798:
cmp r0, 0x10
bne _0815A7AC
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815A7AC:
pop {r0}
bx r0
@@ -891,7 +891,7 @@ sub_815A7B0: @ 815A7B0
strh r0, [r4, 0x22]
ldr r0, =sub_80A67D8
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
@@ -919,7 +919,7 @@ sub_815A7EC: @ 815A7EC
lsls r0, 24
cmp r0, 0
bne _0815A840
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -988,7 +988,7 @@ _0815A84C:
cmp r0, 0xF0
bls _0815A8A4
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815A8A4:
pop {r4,r5}
pop {r0}
@@ -1006,7 +1006,7 @@ sub_815A8AC: @ 815A8AC
cmp r0, 0
beq _0815A8C2
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815A8C2:
pop {r0}
bx r0
@@ -1017,7 +1017,7 @@ sub_815A8C8: @ 815A8C8
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -1034,7 +1034,7 @@ _0815A8EC:
_0815A8F0:
strh r0, [r1, 0xE]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -1046,7 +1046,7 @@ sub_815A904: @ 815A904
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gMoveDmgMoveAnim
+ ldr r0, =gAnimMoveDmg
ldr r0, [r0]
cmp r0, 0
ble _0815A920
@@ -1060,7 +1060,7 @@ _0815A920:
_0815A924:
strh r0, [r1, 0xE]
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -1077,10 +1077,10 @@ sub_815A934: @ 815A934
lsls r1, 8
movs r0, 0
bl SetGpuRegBits
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r4, =gUnknown_02022E26
+ ldr r4, =gBattle_WIN0V
strh r1, [r4]
movs r0, 0x40
movs r1, 0
@@ -1235,7 +1235,7 @@ sub_815AA6C: @ 815AA6C
movs r0, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -1251,7 +1251,7 @@ sub_815AAA4: @ 815AAA4
ldrsh r0, [r6, r1]
cmp r0, 0
bne _0815AAD0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -1349,7 +1349,7 @@ sub_815AB5C: @ 815AB5C
bne _0815ABBA
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -1380,7 +1380,7 @@ _0815ABBA:
cmp r0, 0
bne _0815ABC8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815ABC8:
pop {r4}
pop {r0}
@@ -1416,18 +1416,18 @@ sub_815ABEC: @ 815ABEC
ldr r1, =0x00001f3f
movs r0, 0x48
bl SetGpuReg
- ldr r1, =gUnknown_02022E28
+ ldr r1, =gBattle_WIN1H
ldr r2, =0x000098f0
adds r0, r2, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E2A
+ ldr r1, =gBattle_WIN1V
movs r0, 0xA0
strh r0, [r1]
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
ldrh r1, [r0]
movs r0, 0x42
bl SetGpuReg
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
ldrh r1, [r0]
movs r0, 0x46
bl SetGpuReg
@@ -1437,10 +1437,10 @@ _0815AC40:
ldr r1, =0x00001f3f
movs r0, 0x48
bl SetGpuReg
- ldr r1, =gUnknown_02022E28
+ ldr r1, =gBattle_WIN1H
movs r0, 0xF0
strh r0, [r1]
- ldr r4, =gUnknown_02022E2A
+ ldr r4, =gBattle_WIN1V
ldr r1, =0x000078a0
adds r0, r1, 0
strh r0, [r4]
@@ -1456,7 +1456,7 @@ _0815AC40:
bl SetGpuRegBits
_0815AC70:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -1471,10 +1471,10 @@ sub_815AC8C: @ 815AC8C
ldr r1, =0x00003f3f
movs r0, 0x48
bl SetGpuReg
- ldr r0, =gUnknown_02022E28
+ ldr r0, =gBattle_WIN1H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E2A
+ ldr r0, =gBattle_WIN1V
strh r1, [r0]
bl IsContest
lsls r0, 24
@@ -1486,7 +1486,7 @@ sub_815AC8C: @ 815AC8C
bl ClearGpuRegBits
_0815ACB8:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -1502,11 +1502,11 @@ sub_815ACD0: @ 815ACD0
ldrsh r0, [r6, r1]
cmp r0, 0
bne _0815ACEC
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0815ACEE
.pool
_0815ACEC:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0815ACEE:
ldrb r0, [r4]
movs r1, 0
@@ -1585,7 +1585,7 @@ sub_815AD4C: @ 815AD4C
cmp r0, r1
bge _0815ADAA
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
b _0815ADAA
.pool
_0815AD98:
@@ -1596,7 +1596,7 @@ _0815AD98:
cmp r0, r1
ble _0815ADAA
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815ADAA:
pop {r0}
bx r0
@@ -1618,18 +1618,18 @@ sub_815ADB0: @ 815ADB0
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0815ADDC
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0815ADDE
.pool
_0815ADDC:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0815ADDE:
ldrb r0, [r4]
bl sub_80A6190
lsls r0, 24
lsrs r6, r0, 24
ldrb r0, [r4]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r7, r0, 24
adds r0, r6, 0
@@ -1655,11 +1655,11 @@ _0815AE08:
strh r2, [r5, 0x16]
cmp r7, 0x1
bne _0815AE30
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
b _0815AE32
.pool
_0815AE30:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
_0815AE32:
ldrh r2, [r0]
strh r2, [r5, 0x18]
@@ -1882,7 +1882,7 @@ _0815AFC4:
strb r0, [r1, 0x15]
_0815AFDA:
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815AFE0:
pop {r4-r7}
pop {r0}
@@ -1903,7 +1903,7 @@ sub_815AFF0: @ 815AFF0
movs r5, 0
strh r5, [r4, 0x8]
strh r5, [r4, 0xA]
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
movs r1, 0x2
bl sub_80A5C6C
@@ -2004,7 +2004,7 @@ _0815B0BC:
lsrs r4, r0, 24
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -2162,7 +2162,7 @@ _0815B220:
cmp r0, 0
bne _0815B22E
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815B22E:
add sp, 0x8
pop {r3}
@@ -2262,7 +2262,7 @@ _0815B2D8:
ldrsh r0, [r5, r1]
cmp r0, 0x3D
bne _0815B324
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
ldrh r0, [r5, 0x24]
@@ -2278,7 +2278,7 @@ _0815B2D8:
strh r1, [r5, 0x26]
movs r0, 0x14
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -2339,7 +2339,7 @@ _0815B37C:
cmp r0, 0
bne _0815B38E
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815B38E:
pop {r4,r5}
pop {r0}
@@ -2370,7 +2370,7 @@ _0815B3B4:
beq _0815B478
b _0815B496
_0815B3BE:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -2471,7 +2471,7 @@ _0815B478:
cmp r0, r1
bge _0815B496
adds r0, r5, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815B496:
pop {r4-r6}
pop {r0}
@@ -2482,7 +2482,7 @@ _0815B496:
sub_815B49C: @ 815B49C
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -2513,7 +2513,7 @@ sub_815B4D4: @ 815B4D4
ldrh r0, [r4, 0x2E]
adds r0, 0x48
strh r0, [r4, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -2578,7 +2578,7 @@ _0815B54C:
cmp r0, r1
bls _0815B566
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815B566:
pop {r4,r5}
pop {r0}
@@ -2747,7 +2747,7 @@ _0815B69C:
cmp r0, 0
bne _0815B6AE
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815B6AE:
pop {r4,r5}
pop {r0}
@@ -2789,7 +2789,7 @@ _0815B6F4:
cmp r0, 0
bne _0815B706
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815B706:
pop {r4,r5}
pop {r0}
@@ -2814,7 +2814,7 @@ _0815B71E:
movs r0, 0x90
lsls r0, 4
strh r0, [r4, 0x30]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
movs r1, 0x3
bl sub_80A5C6C
@@ -2845,7 +2845,7 @@ _0815B748:
cmp r0, r1
ble _0815B770
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815B770:
pop {r4}
pop {r0}
@@ -2887,7 +2887,7 @@ _0815B7B8:
cmp r0, 0
bne _0815B7CA
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815B7CA:
pop {r4,r5}
pop {r0}
@@ -2933,9 +2933,9 @@ _0815B81C:
movs r0, 0x4C
movs r1, 0
bl SetGpuReg
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2943,14 +2943,14 @@ _0815B81C:
movs r0, 0x1
movs r1, 0x2
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
b _0815B84E
.pool
_0815B844:
movs r0, 0x2
movs r1, 0x2
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0815B84E:
ldr r0, =gTasks
mov r6, r8
@@ -2996,9 +2996,9 @@ _0815B886:
_0815B8A6:
b _0815BA7A
_0815B8A8:
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
- ldr r1, =gAnimationBankTarget
+ ldr r1, =gAnimBankTarget
ldrb r1, [r1]
mov r2, r8
lsls r4, r2, 2
@@ -3024,13 +3024,13 @@ _0815B8E0:
lsls r0, 24
lsrs r1, r0, 24
_0815B8EA:
- ldr r0, =gBattleSpritesGfx
+ ldr r0, =gMonSpritesGfxPtr
ldr r2, [r0]
lsls r0, r1, 2
adds r2, 0x4
adds r2, r0
ldr r1, =gBattleMonForms
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r1, [r0]
@@ -3051,16 +3051,16 @@ _0815B8EA:
lsls r0, 24
cmp r0, 0
beq _0815BA1C
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r0, [r0, 0x18]
ldrh r0, [r0]
- bl sub_80DB2A8
+ bl IsSpeciesNotUnown
adds r4, r0, 0
ldr r0, [r5]
ldr r0, [r0, 0x18]
ldrh r0, [r0, 0x2]
- bl sub_80DB2A8
+ bl IsSpeciesNotUnown
lsls r4, 24
lsls r0, 24
cmp r4, r0
@@ -3113,17 +3113,17 @@ _0815B988:
cmp r5, 0x7
ble _0815B980
_0815B99C:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldrh r0, [r0, 0x2]
- bl sub_80DB2A8
+ bl IsSpeciesNotUnown
lsls r0, 24
cmp r0, 0
beq _0815B9EC
ldr r3, =gSprites
ldr r4, =gBankSpriteIds
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldrb r0, [r2]
adds r0, r4
ldrb r1, [r0]
@@ -3139,7 +3139,7 @@ _0815B99C:
_0815B9EC:
ldr r3, =gSprites
ldr r4, =gBankSpriteIds
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldrb r0, [r2]
adds r0, r4
ldrb r1, [r0]
@@ -3209,9 +3209,9 @@ _0815BA82:
movs r0, 0x4C
movs r1, 0
bl SetGpuReg
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3219,20 +3219,20 @@ _0815BA82:
movs r0, 0x1
movs r1, 0x2
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
b _0815BAB6
.pool
_0815BAAC:
movs r0, 0x2
movs r1, 0x2
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0815BAB6:
bl IsContest
lsls r0, 24
cmp r0, 0
bne _0815BAF6
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
bl GetBankSide
lsls r0, 24
@@ -3250,16 +3250,16 @@ _0815BAB6:
cmp r0, 0
bne _0815BAF6
ldrb r0, [r4]
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
ldr r1, [r1]
ldr r2, [r1]
lsls r1, r0, 2
adds r1, r2
ldrh r1, [r1, 0x2]
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
_0815BAF6:
mov r0, r8
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815BAFC:
add sp, 0x10
pop {r3,r4}
@@ -3279,7 +3279,7 @@ c3_80DFBE4: @ 815BB18
ldr r4, =gBattleAnimArgs
ldr r3, =gSprites
ldr r2, =gBankSpriteIds
- ldr r1, =gAnimationBankAttacker
+ ldr r1, =gAnimBankAttacker
ldrb r1, [r1]
adds r1, r2
ldrb r2, [r1]
@@ -3292,7 +3292,7 @@ c3_80DFBE4: @ 815BB18
lsls r1, 29
lsrs r1, 31
strh r1, [r4, 0xE]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -3305,14 +3305,14 @@ sub_815BB58: @ 815BB58
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- ldr r1, =gAnimationBankTarget
+ ldr r1, =gAnimBankTarget
ldrb r1, [r1]
movs r2, 0x1
bl sub_805E448
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -3361,11 +3361,11 @@ _0815BBC8:
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -3373,7 +3373,7 @@ _0815BBC8:
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0815BC02:
mov r0, sp
bl sub_80A6B30
@@ -3385,30 +3385,30 @@ _0815BC02:
lsls r0, 24
cmp r0, 0
beq _0815BC34
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r3, =0x0000ffc8
b _0815BC5C
.pool
_0815BC34:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
cmp r0, 0
beq _0815BC58
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r2, =0x0000ff79
adds r0, r2, 0
b _0815BC5E
.pool
_0815BC58:
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r3, =0x0000fff6
_0815BC5C:
adds r0, r3, 0
_0815BC5E:
strh r0, [r1]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
movs r0, 0
strh r0, [r1]
mov r0, sp
@@ -3428,10 +3428,10 @@ _0815BC5E:
adds r1, r4
lsls r1, 3
adds r1, r0
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r0, [r0]
strh r0, [r1, 0x1C]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r0, [r0]
strh r0, [r1, 0x1E]
ldrh r0, [r1, 0x8]
@@ -3507,7 +3507,7 @@ _0815BD20:
ldrsh r0, [r4, r2]
cmp r0, 0
bne _0815BDF2
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
ldr r1, =gUnknown_085CE460
movs r3, 0xC
ldrsh r0, [r4, r3]
@@ -3551,7 +3551,7 @@ _0815BD8E:
strh r0, [r1, 0x8]
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -3571,16 +3571,16 @@ _0815BDA6:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0815BDC8:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
- ldr r0, =gUnknown_02022E18
+ bl SetAnimBgAttribute
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
movs r0, 0x50
movs r1, 0
@@ -3589,7 +3589,7 @@ _0815BDC8:
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815BDF2:
add sp, 0x10
pop {r4}
@@ -3621,7 +3621,7 @@ sub_815BE04: @ 815BE04
lsls r0, 16
lsrs r5, r0, 16
_0815BE2E:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A5C6C
@@ -3870,7 +3870,7 @@ sub_815BFF4: @ 815BFF4
adds r0, r5
bl DestroySprite
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815C040:
pop {r4-r6}
pop {r0}
@@ -3966,11 +3966,11 @@ _0815C0EC:
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -3978,7 +3978,7 @@ _0815C0EC:
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0815C124:
mov r0, sp
bl sub_80A6B30
@@ -3990,66 +3990,66 @@ _0815C124:
lsls r0, 24
cmp r0, 0
beq _0815C15C
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r3, =0x0000ffc8
adds r0, r3, 0
b _0815C1CA
.pool
_0815C15C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankIdentity
lsls r0, 24
lsrs r4, r0, 24
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0815C1B4
cmp r4, 0x1
bne _0815C180
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r2, =0x0000ff65
adds r0, r2, 0
strh r0, [r1]
_0815C180:
cmp r4, 0x3
bne _0815C18C
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r3, =0x0000ff8d
adds r0, r3, 0
strh r0, [r1]
_0815C18C:
cmp r4, 0
bne _0815C196
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
movs r0, 0xE
strh r0, [r1]
_0815C196:
cmp r4, 0x2
bne _0815C1CC
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r2, =0x0000ffec
b _0815C1C8
.pool
_0815C1B4:
cmp r4, 0x1
bne _0815C1C0
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r3, =0x0000ff79
adds r0, r3, 0
strh r0, [r1]
_0815C1C0:
cmp r4, 0
bne _0815C1CC
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldr r2, =0x0000fff6
_0815C1C8:
adds r0, r2, 0
_0815C1CA:
strh r0, [r1]
_0815C1CC:
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
movs r0, 0
strh r0, [r1]
mov r0, sp
@@ -4069,10 +4069,10 @@ _0815C1CC:
adds r1, r6
lsls r1, 3
adds r1, r0
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r0, [r0]
strh r0, [r1, 0x1C]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r0, [r0]
strh r0, [r1, 0x1E]
b _0815C2A4
@@ -4085,14 +4085,14 @@ _0815C224:
adds r5, r0, r1
movs r0, 0
strh r0, [r5, 0xE]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0815C268
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
ldr r1, =gUnknown_085CE4A4
movs r3, 0xC
ldrsh r0, [r5, r3]
@@ -4105,7 +4105,7 @@ _0815C224:
b _0815C27A
.pool
_0815C268:
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
ldr r1, =gUnknown_085CE4A4
movs r3, 0xC
ldrsh r0, [r5, r3]
@@ -4229,16 +4229,16 @@ _0815C34A:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0815C36C:
movs r0, 0x1
movs r1, 0x4
movs r2, 0x1
- bl lcd_bg_operations
- ldr r0, =gUnknown_02022E18
+ bl SetAnimBgAttribute
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
movs r0, 0x50
movs r1, 0
@@ -4247,7 +4247,7 @@ _0815C36C:
movs r1, 0
bl SetGpuReg
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815C396:
add sp, 0x10
pop {r4-r6}
@@ -4291,7 +4291,7 @@ _0815C3E8:
cmp r0, 0
bne _0815C3FA
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815C3FA:
pop {r4,r5}
pop {r0}
@@ -4325,7 +4325,7 @@ _0815C41E:
ldrh r0, [r4, 0x32]
adds r0, 0x80
strh r0, [r4, 0x32]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -4354,7 +4354,7 @@ _0815C456:
cmp r0, 0x40
ble _0815C472
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815C472:
pop {r4}
pop {r0}
@@ -4377,7 +4377,7 @@ sub_815C478: @ 815C478
cmp r0, 0
bne _0815C4A4
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _0815C538
.pool
_0815C4A4:
@@ -4427,11 +4427,11 @@ _0815C4BC:
ldrsh r0, [r5, r1]
cmp r0, 0
bne _0815C508
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0815C50A
.pool
_0815C508:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0815C50A:
ldrb r0, [r0]
bl GetBankSide
@@ -4632,7 +4632,7 @@ _0815C698:
lsrs r0, 24
bl sub_80A7344
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815C6A8:
pop {r4-r6}
pop {r0}
@@ -4643,7 +4643,7 @@ _0815C6A8:
sub_815C6B0: @ 815C6B0
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -4683,7 +4683,7 @@ sub_815C700: @ 815C700
ldrh r0, [r4, 0x2E]
adds r0, 0x3
strh r0, [r4, 0x2E]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -4700,7 +4700,7 @@ sub_815C700: @ 815C700
cmp r1, 0xF0
ble _0815C732
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815C732:
ldrh r1, [r4, 0x2E]
movs r0, 0xFF
@@ -4720,7 +4720,7 @@ _0815C744:
cmp r1, 0
bge _0815C75C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815C75C:
ldrh r1, [r4, 0x2E]
movs r0, 0xFF
@@ -4909,7 +4909,7 @@ _0815C8C8:
lsrs r0, 24
bl sub_80A7344
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _0815C950
_0815C8DA:
ldrh r0, [r7, 0x26]
@@ -4991,7 +4991,7 @@ sub_815C95C: @ 815C95C
ldrsh r0, [r6, r2]
cmp r0, 0
bne _0815C990
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -5070,7 +5070,7 @@ _0815C9FA:
cmp r0, 0
beq _0815CA1A
adds r0, r5, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815CA1A:
pop {r4-r6}
pop {r0}
@@ -5100,11 +5100,11 @@ sub_815CA20: @ 815CA20
mov r8, r0
cmp r1, 0
bne _0815CA5C
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0815CA5E
.pool
_0815CA5C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0815CA5E:
ldrb r0, [r0]
strh r0, [r2, 0x1E]
@@ -5239,7 +5239,7 @@ _0815CB50:
strh r4, [r0, 0x24]
strh r4, [r0, 0x26]
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815CB78:
pop {r3}
mov r8, r3
@@ -5379,7 +5379,7 @@ _0815CC7A:
cmp r0, 0x1F
bne _0815CC8E
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815CC8E:
pop {r4}
pop {r0}
@@ -5397,10 +5397,10 @@ sub_815CC94: @ 815CC94
lsls r1, 8
movs r0, 0
bl SetGpuRegBits
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r4, =gUnknown_02022E26
+ ldr r4, =gBattle_WIN0V
strh r1, [r4]
movs r0, 0x40
movs r1, 0
@@ -5516,7 +5516,7 @@ _0815CD82:
movs r0, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815CDAA:
pop {r4}
pop {r0}
@@ -5528,7 +5528,7 @@ _0815CDAA:
sub_815CDB4: @ 815CDB4
push {r4,r5,lr}
adds r4, r0, 0
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -5586,14 +5586,14 @@ sub_815CDFC: @ 815CDFC
cmp r0, 0xC3
ble _0815CE48
_0815CE36:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A82E4
subs r0, 0x1
b _0815CE52
.pool
_0815CE48:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A82E4
adds r0, 0x1
@@ -5654,7 +5654,7 @@ _0815CE98:
cmp r0, r1
bne _0815CEC8
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815CEC8:
pop {r4}
pop {r0}
@@ -5681,7 +5681,7 @@ sub_815CED8: @ 815CED8
beq _0815CF18
movs r0, 0x1
str r0, [sp, 0x1C]
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldr r1, [r0, 0x10]
@@ -5693,7 +5693,7 @@ sub_815CED8: @ 815CED8
b _0815D058
.pool
_0815CF18:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -5702,7 +5702,7 @@ _0815CF18:
movs r0, 0
str r0, [sp, 0x1C]
ldr r6, =gBattlePartyID
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
lsls r0, 1
adds r0, r6
@@ -5723,7 +5723,7 @@ _0815CF18:
movs r1, 0x1
bl GetMonData
mov r8, r0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r2, [r4]
ldr r1, [r0]
@@ -5770,7 +5770,7 @@ _0815CFC4:
movs r2, 0x1
str r2, [sp, 0x1C]
ldr r6, =gBattlePartyID
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
lsls r0, 1
adds r0, r6
@@ -5791,7 +5791,7 @@ _0815CFC4:
movs r1, 0x1
bl GetMonData
mov r8, r0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r2, [r4]
ldr r1, [r0]
@@ -5834,12 +5834,12 @@ _0815D056:
_0815D058:
mov r10, r3
_0815D05A:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A8328
lsls r0, 24
lsrs r7, r0, 24
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0
bl sub_80A5C6C
@@ -5864,7 +5864,7 @@ _0815D05A:
str r3, [sp, 0x8]
mov r0, r8
str r0, [sp, 0xC]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
str r0, [sp, 0x10]
movs r0, 0x1
@@ -6072,11 +6072,11 @@ sub_815D240: @ 815D240
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0815D26C
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0815D26E
.pool
_0815D26C:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0815D26E:
ldrb r5, [r0]
movs r6, 0
@@ -6123,7 +6123,7 @@ _0815D2B4:
lsrs r0, 24
strh r0, [r4, 0x26]
adds r0, r5, 0
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -6133,9 +6133,9 @@ _0815D2B4:
ldr r1, =0x00003f42
movs r0, 0x50
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r5, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
b _0815D316
.pool
_0815D304:
@@ -6144,9 +6144,9 @@ _0815D304:
ldr r1, =0x00003f44
movs r0, 0x50
bl SetGpuReg
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r5, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
_0815D316:
ldrh r3, [r0]
movs r7, 0
@@ -6218,22 +6218,22 @@ sub_815D398: @ 815D398
ldr r1, =gTasks
adds r6, r0, r1
ldrb r0, [r6, 0x12]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0815D3D8
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r0, [r0]
str r0, [sp, 0x4]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
b _0815D3E0
.pool
_0815D3D8:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r0, [r0]
str r0, [sp, 0x4]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
_0815D3E0:
ldrh r0, [r0]
str r0, [sp, 0x8]
@@ -6536,7 +6536,7 @@ _0815D62E:
b _0815D63C
_0815D636:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815D63C:
add sp, 0x14
pop {r3-r5}
@@ -6643,7 +6643,7 @@ _0815D708:
cmp r0, 0
bne _0815D720
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815D720:
pop {r4-r6}
pop {r0}
@@ -6827,7 +6827,7 @@ sub_815D870: @ 815D870
ldrb r1, [r6]
adds r0, r5, 0
bl StartSpriteAffineAnim
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -6837,7 +6837,7 @@ sub_815D870: @ 815D870
negs r0, r0
strh r0, [r6, 0x2]
_0815D896:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -7238,7 +7238,7 @@ sub_815DB90: @ 815DB90
mov r1, r8
adds r4, r0, r1
ldr r1, =gBankSpriteIds
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldrb r0, [r2]
adds r0, r1
ldrb r0, [r0]
@@ -7361,7 +7361,7 @@ sub_815DCA4: @ 815DCA4
cmp r0, 0
bne _0815DCC4
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815DCC4:
movs r0, 0
strh r0, [r5, 0x8]
@@ -7373,11 +7373,11 @@ _0815DCC4:
ldrsh r0, [r4, r1]
cmp r0, 0
bne _0815DCE8
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0815DCEA
.pool
_0815DCE8:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0815DCEA:
ldrb r4, [r0]
adds r0, r4, 0
@@ -7485,7 +7485,7 @@ _0815DDCC:
cmp r0, 0
bne _0815DDDA
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815DDDA:
pop {r4,r5}
pop {r0}
@@ -7731,7 +7731,7 @@ _0815DFB4:
movs r3, 0
bl BlendPalette
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815DFC6:
pop {r4,r5}
pop {r0}
@@ -7746,7 +7746,7 @@ sub_815DFCC: @ 815DFCC
lsrs r0, 24
movs r2, 0xD0
lsls r2, 1
- ldr r1, =gAnimationBankAttacker
+ ldr r1, =gAnimBankAttacker
ldrb r3, [r1]
ldr r1, =gBattleAnimArgs
ldrb r1, [r1]
@@ -7775,7 +7775,7 @@ sub_815DFCC: @ 815DFCC
sub_815E01C: @ 815E01C
push {r4-r6,lr}
adds r5, r0, 0
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
bl GetBankSide
lsls r0, 24
@@ -7837,7 +7837,7 @@ _0815E09A:
lsls r0, 2
strh r0, [r5, 0x2E]
_0815E0A8:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -7887,7 +7887,7 @@ sub_815E0DC: @ 815E0DC
cmp r0, 0xE
bne _0815E110
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815E110:
pop {r0}
bx r0
@@ -7923,7 +7923,7 @@ _0815E144:
strh r0, [r6, 0x14]
strh r1, [r6, 0x16]
_0815E14E:
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
bl GetBankSide
lsls r0, 24
@@ -7968,7 +7968,7 @@ _0815E1A8:
subs r0, r4, r0
_0815E1AC:
strh r0, [r6, 0x1E]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x3
bl sub_80A5C6C
@@ -7987,7 +7987,7 @@ _0815E1D0:
asrs r0, 2
subs r0, r4, r0
strh r0, [r6, 0x20]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -8163,7 +8163,7 @@ _0815E330:
cmp r0, 0
bne _0815E33E
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815E33E:
add sp, 0x14
pop {r3}
@@ -8319,7 +8319,7 @@ sub_815E444: @ 815E444
strh r0, [r4, 0x36]
ldrh r0, [r1, 0x8]
strh r0, [r4, 0x2E]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
ldr r0, =sub_80A70C0
@@ -8345,7 +8345,7 @@ sub_815E47C: @ 815E47C
lsls r0, 3
ldr r1, =gTasks
adds r7, r0, r1
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
mov r10, r0
ldrb r0, [r0]
movs r1, 0x2
@@ -8360,7 +8360,7 @@ sub_815E47C: @ 815E47C
lsls r0, 24
lsrs r0, 24
strh r0, [r7, 0x20]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
mov r8, r0
ldrb r0, [r0]
movs r1, 0x2
@@ -8471,7 +8471,7 @@ _0815E596:
.pool
_0815E5B8:
mov r0, r9
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815E5BE:
pop {r3-r5}
mov r8, r3
@@ -8609,7 +8609,7 @@ _0815E6BE:
.pool
_0815E6CC:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815E6D2:
pop {r4,r5}
pop {r0}
@@ -8626,11 +8626,11 @@ sub_815E6D8: @ 815E6D8
adds r6, r0, 0
cmp r1, 0
bne _0815E6F4
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0815E6F6
.pool
_0815E6F4:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0815E6F6:
ldrb r5, [r0]
ldrh r2, [r4, 0x4]
@@ -8798,7 +8798,7 @@ _0815E802:
b _0815E83C
_0815E836:
adds r0, r2, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815E83C:
pop {r0}
bx r0
@@ -8815,7 +8815,7 @@ sub_815E840: @ 815E840
cmp r0, 0
bne _0815E85C
adds r0, r1, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _0815E884
.pool
_0815E85C:
@@ -8926,7 +8926,7 @@ _0815E8F2:
.pool
_0815E948:
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815E94E:
pop {r4-r6}
pop {r0}
@@ -8942,11 +8942,11 @@ sub_815E954: @ 815E954
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0815E970
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
b _0815E972
.pool
_0815E970:
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
_0815E972:
ldrb r0, [r4]
movs r1, 0x2
@@ -9023,7 +9023,7 @@ sub_815E9BC: @ 815E9BC
cmp r0, 0
bne _0815EA10
adds r0, r3, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815EA10:
pop {r0}
bx r0
@@ -9308,7 +9308,7 @@ _0815EC1E:
cmp r0, 0x5
bne _0815EC40
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815EC40:
pop {r4}
pop {r0}
@@ -9334,12 +9334,12 @@ sub_815EC48: @ 815EC48
lsls r0, 24
cmp r0, 0
bne _0815ECD0
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r7, r0, 24
cmp r7, 0x1
bne _0815ECB4
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0
bl sub_80A5C6C
@@ -9363,7 +9363,7 @@ _0815ECAC:
b _0815ECD2
.pool
_0815ECB4:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -9586,7 +9586,7 @@ _0815EE60:
movs r1, 0
strh r1, [r0, 0x24]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815EE78:
pop {r4}
pop {r0}
@@ -9606,11 +9606,11 @@ sub_815EE84: @ 815EE84
adds r0, r4, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _0815EEAA
.pool
_0815EEA8:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_0815EEAA:
ldrb r0, [r0]
strh r0, [r4, 0x3C]
@@ -9915,7 +9915,7 @@ _0815F0F8:
b _0815F106
_0815F100:
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815F106:
pop {r4,r5}
pop {r0}
@@ -9976,7 +9976,7 @@ _0815F16A:
cmp r1, r0
bne _0815F17C
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815F17C:
ldrh r0, [r4, 0x38]
adds r0, 0x1
@@ -9991,7 +9991,7 @@ _0815F17C:
sub_815F18C: @ 815F18C
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -10126,7 +10126,7 @@ _0815F2A0:
b _0815F310
.pool
_0815F2AC:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl refresh_graphics_maybe
@@ -10271,7 +10271,7 @@ _0815F3CE:
bne _0815F482
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -10341,14 +10341,14 @@ _0815F460:
bne _0815F482
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
movs r0, 0x7D
bl PlaySE12WithPanning
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815F482:
pop {r4-r6}
pop {r0}
@@ -10360,7 +10360,7 @@ _0815F482:
sub_815F48C: @ 815F48C
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
bl GetBankSide
lsls r0, 24
@@ -10384,7 +10384,7 @@ _0815F4B8:
strb r0, [r1]
ldr r4, =0x0000ffa0
_0815F4C8:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x3
bl sub_80A5C6C
@@ -10431,7 +10431,7 @@ _0815F520:
cmp r0, 0
blt _0815F61A
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -10460,7 +10460,7 @@ _0815F544:
cmp r1, 0x7F
ble _0815F61A
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -10502,7 +10502,7 @@ _0815F5B4:
cmp r0, 0x8
ble _0815F61A
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
@@ -10543,7 +10543,7 @@ _0815F5E0:
cmp r0, 0x7
bne _0815F61A
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815F61A:
pop {r4,r5}
pop {r0}
@@ -10589,7 +10589,7 @@ sub_815F620: @ 815F620
bl obj_delete_but_dont_free_vram
_0815F66E:
mov r0, r8
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _0815F780
.pool
_0815F67C:
@@ -10637,9 +10637,9 @@ _0815F67C:
adds r0, r2
movs r1, 0x2
strh r1, [r0, 0x8]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
ldr r1, [r1]
lsls r0, 2
@@ -10742,7 +10742,7 @@ sub_815F79C: @ 815F79C
cmp r0, 0
bne _0815F7BA
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815F7BA:
pop {r0}
bx r0
@@ -10762,9 +10762,9 @@ sub_815F7C4: @ 815F7C4
ble _0815F80E
movs r0, 0
strh r0, [r4, 0x30]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
ldr r1, [r1]
lsls r0, 2
@@ -10869,7 +10869,7 @@ sub_815F8A0: @ 815F8A0
ldr r3, =gBattleAnimArgs
movs r2, 0
strh r2, [r3, 0xE]
- ldr r1, =gHappinessMoveAnim
+ ldr r1, =gAnimFriendship
ldrb r0, [r1]
ldrb r1, [r1]
adds r0, r1, 0
@@ -10899,7 +10899,7 @@ _0815F8D4:
strh r0, [r3, 0xE]
_0815F8E0:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -10958,7 +10958,7 @@ _0815F940:
ldrh r1, [r6, 0xA]
adds r0, r1
strh r0, [r6, 0xA]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11028,7 +11028,7 @@ _0815F9F4:
lsls r0, 24
cmp r0, 0
beq _0815FA28
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldr r2, [r0, 0x8]
@@ -11036,7 +11036,7 @@ _0815F9F4:
ldr r3, [r0, 0xC]
mov r9, r3
ldrh r6, [r0]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_80A82E4
lsls r0, 24
@@ -11045,7 +11045,7 @@ _0815F9F4:
b _0815FB4E
.pool
_0815FA28:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
bl GetBankSide
lsls r0, 24
@@ -11072,7 +11072,7 @@ _0815FA28:
movs r1, 0x1
bl GetMonData
mov r9, r0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r2, [r4]
ldr r1, [r0]
@@ -11136,7 +11136,7 @@ _0815FAC8:
movs r1, 0x1
bl GetMonData
mov r9, r0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r2, [r4]
ldr r1, [r0]
@@ -11177,7 +11177,7 @@ _0815FB2E:
_0815FB4E:
ldr r5, =0x0000ffe0
_0815FB50:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x1
bl sub_80A5C6C
@@ -11191,7 +11191,7 @@ _0815FB50:
str r4, [sp, 0x8]
mov r0, r9
str r0, [sp, 0xC]
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
str r0, [sp, 0x10]
movs r0, 0
@@ -11202,7 +11202,7 @@ _0815FB50:
bl sub_80A8394
lsls r0, 24
lsrs r5, r0, 24
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldrb r0, [r4]
ldr r1, [r1]
@@ -11253,7 +11253,7 @@ _0815FBE8:
ldrh r2, [r6, 0xA]
adds r0, r2
strh r0, [r6, 0xA]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11307,7 +11307,7 @@ _0815FC56:
ldrsh r0, [r6, r1]
cmp r0, 0
bne _0815FCD6
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11315,7 +11315,7 @@ _0815FC56:
bne _0815FCB4
lsls r4, r5, 16
asrs r4, 16
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0
bl sub_80A5C6C
@@ -11328,7 +11328,7 @@ _0815FC56:
_0815FCB4:
lsls r4, r5, 16
asrs r4, 16
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0
bl sub_80A5C6C
@@ -11383,7 +11383,7 @@ _0815FD08:
ldr r5, =gSprites
adds r0, r5
bl sub_80A8610
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11440,7 +11440,7 @@ _0815FD8C:
ldrh r3, [r2, 0xA]
adds r0, r3
strh r0, [r2, 0xA]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
mov r10, r0
ldrb r0, [r0]
str r2, [sp, 0x18]
@@ -11524,7 +11524,7 @@ _0815FE44:
cmp r0, 0
bne _0815FE68
mov r0, r8
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815FE68:
add sp, 0x1C
pop {r3-r5}
@@ -11557,13 +11557,13 @@ _0815FE92:
cmp r1, r0
bne _0815FF2C
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
movs r0, 0x7A
bl PlaySE12WithPanning
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x1
bl sub_80A5C6C
@@ -11583,7 +11583,7 @@ _0815FE92:
negs r0, r0
ands r0, r1
strb r0, [r2]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11652,7 +11652,7 @@ _0815FF6E:
ldrh r1, [r4, 0x32]
adds r0, r1
strh r0, [r4, 0x32]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -11683,7 +11683,7 @@ _0815FFA8:
cmp r0, 0x2
bne _0815FFBC
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_0815FFBC:
pop {r4}
pop {r0}
@@ -11721,14 +11721,14 @@ _0815FFF4:
.4byte _081600CC
.4byte _08160132
_08160008:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
movs r1, 0
bl sub_80A5C6C
lsls r0, 24
lsrs r0, 24
adds r5, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0
bl sub_80A5C6C
@@ -11756,7 +11756,7 @@ _0816003E:
.pool
_08160058:
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r2, [r0]
@@ -11812,7 +11812,7 @@ _081600B4:
b _08160150
_081600CC:
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r2, [r0]
@@ -11862,7 +11862,7 @@ _0816012A:
b _08160150
_08160132:
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r2, [r0]
@@ -11874,7 +11874,7 @@ _08160132:
movs r1, 0
strh r1, [r0, 0x24]
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08160150:
pop {r4,r5}
pop {r0}
@@ -11898,7 +11898,7 @@ sub_8160164: @ 8160164
lsrs r0, 24
movs r5, 0
strh r0, [r4, 0xE]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -12061,7 +12061,7 @@ _081602C4:
.pool
_081602D4:
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081602DA:
pop {r4-r6}
pop {r0}
@@ -12072,7 +12072,7 @@ _081602DA:
sub_81602E0: @ 81602E0
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -12100,7 +12100,7 @@ sub_81602E0: @ 81602E0
cmp r0, 0
beq _08160326
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08160326:
ldrh r0, [r4, 0x32]
adds r0, 0x1
@@ -12115,7 +12115,7 @@ _08160326:
sub_8160338: @ 8160338
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -12166,7 +12166,7 @@ _08160396:
sub_81603A8: @ 81603A8
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -12377,7 +12377,7 @@ _08160536:
strh r0, [r2, 0xE]
_08160538:
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
thumb_func_end sub_81604F0
@@ -12477,7 +12477,7 @@ _08160600:
cmp r0, 0
bne _08160618
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08160618:
pop {r4-r6}
pop {r0}
diff --git a/asm/battle_anim_8170478.s b/asm/battle_anim_8170478.s
index abbca8ff7..8de82c629 100644
--- a/asm/battle_anim_8170478.s
+++ b/asm/battle_anim_8170478.s
@@ -16,12 +16,12 @@ sub_8170478: @ 8170478
lsls r0, 24
lsrs r0, 24
str r0, [sp, 0x10]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r4, [r0]
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
ldr r1, =0x00003f3f
movs r0, 0x48
@@ -43,19 +43,19 @@ sub_8170478: @ 8170478
movs r0, 0x1
movs r1, 0x4
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0x1
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x1
movs r1, 0x3
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
ldr r0, =gHealthBoxesIds
adds r4, r0
ldrb r0, [r4]
@@ -168,12 +168,12 @@ sub_8170478: @ 8170478
lsls r1, 4
movs r2, 0x20
bl LoadCompressedPalette
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r7, 0x20]
negs r0, r0
adds r0, 0x20
strh r0, [r1]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldrh r0, [r7, 0x22]
negs r0, r0
subs r0, 0x20
@@ -212,7 +212,7 @@ sub_8170660: @ 8170660
push {r7}
lsls r0, 24
lsrs r7, r0, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
mov r8, r0
ldr r1, =gTasks
@@ -225,7 +225,7 @@ sub_8170660: @ 8170660
adds r1, r0
movs r3, 0
strh r1, [r5, 0x22]
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
lsls r0, r1, 16
lsrs r0, 24
ldrh r4, [r2]
@@ -317,9 +317,9 @@ _08170708:
bne _08170814
movs r0, 0
bl sub_80A477C
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r4, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r4, [r0]
ldr r4, =0x00003f3f
movs r0, 0x48
@@ -335,7 +335,7 @@ _08170708:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_0817076C:
movs r0, 0
bl GetGpuReg
@@ -372,7 +372,7 @@ _0817076C:
movs r0, 0x1
movs r1, 0x1
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
ldr r0, =gHealthBoxesIds
add r0, r8
ldrb r0, [r0]
@@ -412,7 +412,7 @@ _0817076C:
orrs r2, r5
strb r2, [r0, 0x5]
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08170814:
pop {r3}
mov r8, r3
@@ -540,12 +540,12 @@ sub_8170920: @ 8170920
lsrs r4, 24
mov r1, sp
adds r1, 0x1
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r2, [r0]
mov r0, sp
bl sub_8170834
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
add sp, 0x4
pop {r4}
pop {r0}
@@ -628,11 +628,11 @@ sub_81709EC: @ 81709EC
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl sub_817094C
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -752,7 +752,7 @@ _08170AD6:
cmp r0, 0
bne _08170AF8
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08170AF8:
pop {r4-r6}
pop {r0}
@@ -766,7 +766,7 @@ sub_8170B04: @ 8170B04
lsls r0, 24
lsrs r6, r0, 24
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r5, [r0]
@@ -834,7 +834,7 @@ _08170B84:
orrs r1, r2
strb r1, [r0]
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08170BA4:
pop {r4-r6}
pop {r0}
@@ -852,7 +852,7 @@ sub_8170BB0: @ 8170BB0
lsls r0, 24
lsrs r5, r0, 24
ldr r1, =gBankSpriteIds
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
adds r1, r0, r1
ldrb r1, [r1]
@@ -904,7 +904,7 @@ _08170C08:
b _08170CEE
.pool
_08170C44:
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0
bl sub_80A5C6C
@@ -979,7 +979,7 @@ _08170CC4:
cmp r0, 0
bne _08170CEE
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08170CEE:
add sp, 0xC
pop {r3,r4}
@@ -1003,7 +1003,7 @@ sub_8170CFC: @ 8170CFC
lsrs r0, 24
bl sub_8076A78
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -1023,7 +1023,7 @@ sub_8170D24: @ 8170D24
lsrs r0, 24
bl sub_8076AE8
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -1035,7 +1035,7 @@ sub_8170D4C: @ 8170D4C
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x8]
@@ -1051,7 +1051,7 @@ _08170D70:
_08170D74:
strh r0, [r1, 0xE]
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -1162,7 +1162,7 @@ sub_8170E04: @ 8170E04
adds r6, r4, r1
movs r0, 0x22
strh r0, [r6, 0x2E]
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
mov r8, r2
ldrb r0, [r2]
movs r1, 0
@@ -1183,7 +1183,7 @@ sub_8170E04: @ 8170E04
adds r4, r0
ldr r0, =sub_8171104
str r0, [r4]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r3, [r0, 0x8]
ldr r1, =gBankSpriteIds
@@ -1246,7 +1246,7 @@ sub_8170EF0: @ 8170EF0
cmp r1, r0
bne _08170F1A
adds r0, r3, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08170F1A:
pop {r0}
bx r0
@@ -1283,7 +1283,7 @@ _08170F54:
lsls r4, 24
lsrs r4, 24
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
bl sub_80A82E4
@@ -1313,7 +1313,7 @@ _08170F54:
adds r6, r4, r0
movs r0, 0x22
strh r0, [r6, 0x2E]
- ldr r1, =gAnimationBankTarget
+ ldr r1, =gAnimBankTarget
mov r8, r1
ldrb r0, [r1]
movs r1, 0
@@ -1335,7 +1335,7 @@ _08170F54:
ldr r0, =SpriteCallbackDummy
str r0, [r4]
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r1, =gBankSpriteIds
lsls r0, 24
lsrs r0, 24
@@ -1371,7 +1371,7 @@ sub_8171030: @ 8171030
lsrs r5, r0, 24
ldr r6, =gSprites
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r1, =gBankSpriteIds
lsls r0, 24
lsrs r0, 24
@@ -1422,7 +1422,7 @@ sub_81710A8: @ 81710A8
lsrs r5, r0, 24
ldr r6, =gSprites
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r4, =gBankSpriteIds
lsls r0, 24
lsrs r0, 24
@@ -1438,7 +1438,7 @@ sub_81710A8: @ 81710A8
cmp r0, 0
bge _081710F4
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
adds r0, r4
@@ -1491,7 +1491,7 @@ sub_8171134: @ 8171134
lsls r0, 24
cmp r0, 0
beq _081711D2
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x8]
@@ -1550,7 +1550,7 @@ _08171188:
movs r2, 0x1
movs r3, 0x1C
bl sub_8171D98
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r1, [r0]
movs r0, 0
movs r2, 0xE
@@ -1585,7 +1585,7 @@ sub_81711E8: @ 81711E8
str r0, [r4, 0x1C]
ldr r2, =gSprites
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r0, r1
ldrb r1, [r0]
@@ -1607,7 +1607,7 @@ sub_8171240: @ 8171240
push {r4-r7,lr}
adds r7, r0, 0
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r0, r1
ldrb r4, [r0]
@@ -1894,7 +1894,7 @@ _08171486:
adds r0, r1
strh r0, [r4, 0x22]
strh r5, [r4, 0x26]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x8]
@@ -1940,7 +1940,7 @@ sub_81714D4: @ 81714D4
adds r0, r4, 0
movs r1, 0x1
bl StartSpriteAffineAnim
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
strh r5, [r0, 0xC]
@@ -1982,7 +1982,7 @@ _08171540:
.4byte _08171708
.4byte _08171768
_0817155C:
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
ldr r5, [r1]
ldr r2, [r5, 0x8]
ldrh r3, [r2, 0xC]
@@ -2060,7 +2060,7 @@ _081715EA:
bl ChangeSpriteAffineAnim
b _081717AE
_081715F4:
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
ldr r5, [r1]
ldr r2, [r5, 0x8]
ldrh r3, [r2, 0xC]
@@ -2152,7 +2152,7 @@ _0817169C:
movs r1, 0x1
bl ChangeSpriteAffineAnim
_081716A4:
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
ldr r5, [r1]
ldr r2, [r5, 0x8]
ldrh r3, [r2, 0xC]
@@ -2211,7 +2211,7 @@ _08171708:
strh r0, [r4, 0x34]
lsls r0, 16
asrs r1, r0, 24
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x8]
@@ -2333,7 +2333,7 @@ sub_81717F8: @ 81717F8
push {r7}
sub sp, 0x4
adds r6, r0, 0
- ldr r7, =gAnimationBankTarget
+ ldr r7, =gAnimBankTarget
ldrh r0, [r6, 0x36]
adds r0, 0x1
movs r1, 0
@@ -2379,7 +2379,7 @@ _0817185A:
movs r1, 0
strb r1, [r0]
movs r0, 0x1
- bl sub_8072A88
+ bl UpdateOamPriorityInAllHealthboxes
bl m4aMPlayAllStop
ldr r0, =0x00000213
bl PlaySE
@@ -2715,7 +2715,7 @@ sub_8171AE4: @ 8171AE4
movs r2, 0x1
movs r3, 0x1C
bl sub_8171D98
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r1, [r0]
movs r0, 0x1
movs r2, 0xE
@@ -2724,7 +2724,7 @@ sub_8171AE4: @ 8171AE4
_08171B36:
ldr r6, =gSprites
ldr r5, =gBankSpriteIds
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
adds r0, r5
ldrb r1, [r0]
@@ -2792,7 +2792,7 @@ sub_8171BAC: @ 8171BAC
_08171BCA:
ldr r4, =gSprites
ldr r3, =gBankSpriteIds
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
ldrb r0, [r2]
adds r0, r3
ldrb r1, [r0]
@@ -2841,7 +2841,7 @@ _08171C24:
beq _08171C8A
ldr r4, =gSprites
ldr r3, =gBankSpriteIds
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
ldrb r0, [r2]
adds r0, r3
ldrb r1, [r0]
@@ -2859,7 +2859,7 @@ _08171C24:
adds r2, r0
lsls r2, 2
adds r2, r4
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r1, [r0, 0x9]
@@ -2879,7 +2879,7 @@ _08171C24:
ldr r0, =gDoingBattleAnim
strb r6, [r0]
movs r0, 0x1
- bl sub_8072A88
+ bl UpdateOamPriorityInAllHealthboxes
_08171C8A:
pop {r4-r7}
pop {r0}
@@ -2974,7 +2974,7 @@ _08171D3E:
movs r0, 0
strb r0, [r1]
movs r0, 0x1
- bl sub_8072A88
+ bl UpdateOamPriorityInAllHealthboxes
_08171D52:
pop {r4}
pop {r0}
@@ -3083,7 +3083,7 @@ sub_8171E20: @ 8171E20
ands r0, r1
cmp r0, 0
beq _08171E3E
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x8]
ldrb r0, [r1, 0xA]
@@ -4419,7 +4419,7 @@ sub_8172944: @ 8172944
b _081729E2
.pool
_08172970:
- ldr r2, =gUnknown_020244D0
+ ldr r2, =gBattleSpritesDataPtr
ldr r0, [r2]
ldr r1, [r0, 0x8]
ldrb r0, [r1, 0xA]
@@ -4730,7 +4730,7 @@ sub_8172BF0: @ 8172BF0
movs r0, 0
mov r8, r0
ldr r0, =gBankSpriteIds
- ldr r3, =gAnimationBankAttacker
+ ldr r3, =gAnimBankAttacker
ldrb r2, [r3]
adds r0, r2, r0
ldrb r6, [r0]
@@ -4877,7 +4877,7 @@ _08172D28:
adds r0, r1
ldrb r1, [r0, 0x8]
strh r1, [r0, 0x8]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -4914,7 +4914,7 @@ _08172D7E:
beq _08172D8A
_08172D84:
adds r0, r7, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08172D8A:
pop {r3}
mov r8, r3
@@ -4949,9 +4949,9 @@ _08172DC0:
beq _08172E4E
b _08172E84
_08172DC6:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -5010,7 +5010,7 @@ _08172E14:
b _08172E84
_08172E4E:
ldr r1, =gBankSpriteIds
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
adds r0, r1
ldrb r1, [r0]
@@ -5032,7 +5032,7 @@ _08172E4E:
ldrb r0, [r4]
bl sub_805E974
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08172E84:
pop {r4,r5}
pop {r0}
@@ -5046,9 +5046,9 @@ sub_8172E9C: @ 8172E9C
lsls r0, 24
lsrs r0, 24
ldr r3, =gBattleAnimArgs
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
ldr r2, [r1]
- ldr r1, =gAnimationBankAttacker
+ ldr r1, =gAnimBankAttacker
ldrb r1, [r1]
ldr r2, [r2]
lsls r1, 2
@@ -5057,7 +5057,7 @@ sub_8172E9C: @ 8172E9C
lsls r1, 29
lsrs r1, 31
strh r1, [r3, 0xE]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -5068,11 +5068,11 @@ sub_8172ED0: @ 8172ED0
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r2, =gAnimationBankTarget
+ ldr r2, =gAnimBankTarget
ldr r1, =gEffectBank
ldrb r1, [r1]
strb r1, [r2]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -5088,7 +5088,7 @@ sub_8172EF0: @ 8172EF0
lsrs r6, r0, 24
movs r0, 0
mov r8, r0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r6, 1
@@ -5108,7 +5108,7 @@ sub_8172EF0: @ 8172EF0
bl GetMonData
adds r4, r0, 0
adds r0, r6, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _08172FC8
@@ -5134,9 +5134,9 @@ _08172F4E:
lsrs r0, 16
cmp r0, r7
bne _08172F6E
- ldr r0, =gUnknown_0852528C
+ ldr r0, =gBattleAnimPicTable + 0x748
bl LoadCompressedObjectPicUsingHeap
- ldr r0, =gUnknown_08525B94
+ ldr r0, =gBattleAnimPaletteTable + 0x748
bl LoadCompressedObjectPaletteUsingHeap
_08172F6E:
ldr r5, =sub_8172FEC
@@ -5169,7 +5169,7 @@ _08172F6E:
b _08172FDE
.pool
_08172FC8:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r6, 1
@@ -5212,7 +5212,7 @@ sub_8172FEC: @ 8172FEC
b _08173190
.pool
_08173018:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0xA]
@@ -5414,7 +5414,7 @@ sub_81731B0: @ 81731B0
cmp r0, 0x1
bne _081731EA
ldrb r1, [r1, 0x8]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r2, [r0, 0x4]
lsls r0, r1, 1
@@ -5533,14 +5533,14 @@ sub_81732B0: @ 81732B0
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gUnknown_085253AC
+ ldr r0, =gBattleAnimPicTable + 0x868
bl LoadCompressedObjectPicUsingHeap
- ldr r0, =gUnknown_08525CB4
+ ldr r0, =gBattleAnimPaletteTable + 0x868
bl LoadCompressedObjectPaletteUsingHeap
ldr r0, =0x0000281d
bl IndexOfSpritePaletteTag
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -5559,7 +5559,7 @@ sub_81732E4: @ 81732E4
adds r0, r5, 0
bl FreeSpritePaletteByTag
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -5575,7 +5575,7 @@ sub_817330C: @ 817330C
movs r0, 0x1E
strh r0, [r4, 0x2E]
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
movs r1, 0
@@ -5587,7 +5587,7 @@ sub_817330C: @ 817330C
adds r0, r1
strh r0, [r4, 0x32]
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
@@ -5603,7 +5603,7 @@ sub_817330C: @ 817330C
bl sub_80A68D4
ldr r2, =gSprites
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r1, [r0]
@@ -5628,7 +5628,7 @@ sub_817339C: @ 817339C
adds r3, r0, 0
ldr r2, =gSprites
ldr r1, =gBankSpriteIds
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r0, r1
ldrb r1, [r0]
@@ -5679,7 +5679,7 @@ sub_8173400: @ 8173400
adds r4, r0, 0
ldr r5, =gSprites
ldr r3, =gBankSpriteIds
- ldr r2, =gAnimationBankAttacker
+ ldr r2, =gAnimBankAttacker
ldrb r0, [r2]
adds r0, r3
ldrb r1, [r0]
@@ -5708,7 +5708,7 @@ sub_8173400: @ 8173400
movs r1, 0
bl StartSpriteAnim
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_08173448:
pop {r4,r5}
pop {r0}
@@ -5732,25 +5732,25 @@ sub_817345C: @ 817345C
.pool
_08173478:
movs r0, 0
- bl GetBankByPlayerAI
- ldr r1, =gAnimationBankAttacker
+ bl GetBankByIdentity
+ ldr r1, =gAnimBankAttacker
strb r0, [r1]
movs r0, 0x1
b _08173498
.pool
_0817348C:
movs r0, 0x1
- bl GetBankByPlayerAI
- ldr r1, =gAnimationBankAttacker
+ bl GetBankByIdentity
+ ldr r1, =gAnimBankAttacker
strb r0, [r1]
movs r0, 0
_08173498:
- bl GetBankByPlayerAI
- ldr r1, =gAnimationBankTarget
+ bl GetBankByIdentity
+ ldr r1, =gAnimBankTarget
strb r0, [r1]
_081734A0:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -5762,7 +5762,7 @@ sub_81734B4: @ 81734B4
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrh r1, [r0]
@@ -5801,7 +5801,7 @@ _08173508:
_0817350C:
strh r0, [r1]
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -5812,18 +5812,18 @@ sub_817351C: @ 817351C
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r3, =gAnimationBankAttacker
- ldr r1, =gUnknown_020244D0
+ ldr r3, =gAnimBankAttacker
+ ldr r1, =gBattleSpritesDataPtr
ldr r2, [r1]
ldr r1, [r2, 0x8]
ldrh r1, [r1]
strb r1, [r3]
- ldr r3, =gAnimationBankTarget
+ ldr r3, =gAnimBankTarget
ldr r1, [r2, 0x8]
ldrh r1, [r1]
lsrs r1, 8
strb r1, [r3]
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
diff --git a/asm/battle_anim_sound_tasks.s b/asm/battle_anim_sound_tasks.s
index 698230802..4bfd7ae68 100644
--- a/asm/battle_anim_sound_tasks.s
+++ b/asm/battle_anim_sound_tasks.s
@@ -22,12 +22,12 @@ sub_8158B30: @ 8158B30
strh r0, [r6, 0xA]
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r5, r0, 0
lsls r4, 24
asrs r4, 24
@@ -36,7 +36,7 @@ sub_8158B30: @ 8158B30
adds r0, r4, 0
adds r1, r5, 0
movs r2, 0x2
- bl sub_80A5314
+ bl CalculatePanIncrement
strh r4, [r6, 0xC]
strh r5, [r6, 0xE]
lsls r0, 24
@@ -128,7 +128,7 @@ sub_8158C04: @ 8158C04
movs r0, 0
strh r0, [r4, 0x1C]
movs r0, 0x3F
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
ldrh r0, [r4, 0xA]
lsls r1, 24
@@ -142,7 +142,7 @@ sub_8158C04: @ 8158C04
cmp r0, 0x2
bne _08158C4C
adds r0, r5, 0
- bl move_anim_related_task_del
+ bl DestroyAnimSoundTask
_08158C4C:
pop {r4,r5}
pop {r0}
@@ -175,14 +175,14 @@ mas_80DCF38: @ 8158C58
ldrb r0, [r0, 0x2]
lsls r0, 24
asrs r0, 24
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
lsls r5, 24
asrs r5, 24
adds r0, r5, 0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r5, r0, 0
lsls r4, 24
asrs r4, 24
@@ -193,7 +193,7 @@ mas_80DCF38: @ 8158C58
adds r0, r4, 0
adds r1, r5, 0
adds r2, r6, 0
- bl sub_80A5314
+ bl CalculatePanIncrement
ldr r2, =gTasks
mov r3, r8
lsls r1, r3, 2
@@ -264,7 +264,7 @@ sub_8158D08: @ 8158D08
cmp r0, 0
bne _08158D50
adds r0, r5, 0
- bl move_anim_related_task_del
+ bl DestroyAnimSoundTask
b _08158D82
.pool
_08158D50:
@@ -307,7 +307,7 @@ sub_8158D8C: @ 8158D8C
movs r4, 0
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
lsls r0, 24
lsrs r6, r0, 24
bl IsContest
@@ -319,7 +319,7 @@ sub_8158D8C: @ 8158D8C
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08158DC8
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldrh r4, [r0]
@@ -327,7 +327,7 @@ sub_8158D8C: @ 8158D8C
.pool
_08158DC8:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08158E76
_08158DD0:
ldr r0, =gBattleAnimArgs
@@ -336,25 +336,25 @@ _08158DD0:
adds r2, r0, 0
cmp r1, 0
bne _08158DEC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r4, [r0]
b _08158E12
.pool
_08158DEC:
cmp r1, 0x1
bne _08158DFC
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r4, [r0]
b _08158E12
.pool
_08158DFC:
cmp r1, 0x2
bne _08158E08
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08158E0A
.pool
_08158E08:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08158E0A:
ldrb r1, [r0]
movs r0, 0x2
@@ -369,12 +369,12 @@ _08158E12:
bne _08158E38
_08158E1E:
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
bne _08158E38
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08158E8C
.pool
_08158E38:
@@ -416,7 +416,7 @@ _08158E76:
bl PlayCry3
_08158E86:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08158E8C:
pop {r4-r6}
pop {r0}
@@ -432,7 +432,7 @@ sub_8158E9C: @ 8158E9C
movs r4, 0
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
lsls r0, 24
lsrs r5, r0, 24
bl IsContest
@@ -444,7 +444,7 @@ sub_8158E9C: @ 8158E9C
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08158ED8
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldrh r4, [r0]
@@ -452,7 +452,7 @@ sub_8158E9C: @ 8158E9C
.pool
_08158ED8:
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08158F86
_08158EE0:
ldr r0, =gBattleAnimArgs
@@ -461,25 +461,25 @@ _08158EE0:
adds r2, r0, 0
cmp r1, 0
bne _08158EFC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r4, [r0]
b _08158F22
.pool
_08158EFC:
cmp r1, 0x1
bne _08158F0C
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r4, [r0]
b _08158F22
.pool
_08158F0C:
cmp r1, 0x2
bne _08158F18
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _08158F1A
.pool
_08158F18:
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_08158F1A:
ldrb r1, [r0]
movs r0, 0x2
@@ -494,12 +494,12 @@ _08158F22:
bne _08158F48
_08158F2E:
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
bne _08158F48
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _08158FEE
.pool
_08158F48:
@@ -571,7 +571,7 @@ _08158FD0:
.pool
_08158FE8:
adds r0, r6, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08158FEE:
pop {r4-r6}
pop {r0}
@@ -620,7 +620,7 @@ _08159028:
movs r2, 0xA
bl PlayCry3
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _0815906A
_0815904E:
bl IsCryPlaying
@@ -633,7 +633,7 @@ _0815904E:
movs r2, 0x8
bl PlayCry3
mov r0, r9
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815906A:
pop {r3,r4}
mov r8, r3
@@ -669,7 +669,7 @@ _081590A0:
cmp r0, 0
bne _081590B0
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_081590B0:
pop {r4}
pop {r0}
@@ -691,21 +691,21 @@ sub_81590B8: @ 81590B8
strh r1, [r0, 0x1C]
movs r0, 0x40
negs r0, r0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
lsls r0, 24
lsrs r5, r0, 24
bl IsContest
lsls r0, 24
cmp r0, 0
beq _081590F8
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
b _08159102
.pool
_081590F8:
- ldr r1, =gUnknown_02038438
- ldr r0, =gAnimationBankAttacker
+ ldr r1, =gAnimSpeciesByBanks
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
lsls r0, 1
adds r0, r1
@@ -728,7 +728,7 @@ _08159102:
.pool
_08159130:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08159136:
pop {r4,r5}
pop {r0}
@@ -829,7 +829,7 @@ _081591F2:
bl PlayCry3
_081591FE:
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_08159204:
pop {r3}
mov r8, r3
@@ -849,14 +849,14 @@ sub_8159210: @ 8159210
ldrb r0, [r0, 0x2]
lsls r0, 24
asrs r0, 24
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
adds r0, r5, 0
bl PlaySE1WithPanning
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -874,14 +874,14 @@ sub_8159244: @ 8159244
ldrb r0, [r0, 0x2]
lsls r0, 24
asrs r0, 24
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r1, r0, 0
lsls r1, 24
asrs r1, 24
adds r0, r5, 0
bl PlaySE2WithPanning
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4,r5}
pop {r0}
bx r0
@@ -906,14 +906,14 @@ sub_8159278: @ 8159278
ldrb r0, [r0]
lsls r0, 24
asrs r0, 24
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
lsls r5, 24
asrs r5, 24
adds r0, r5, 0
- bl BattleAnimGetPanControl
+ bl BattleAnimAdjustPanning
adds r5, r0, 0
lsls r4, 24
asrs r4, 24
@@ -924,7 +924,7 @@ sub_8159278: @ 8159278
adds r0, r4, 0
adds r1, r5, 0
adds r2, r6, 0
- bl sub_80A5314
+ bl CalculatePanIncrement
ldr r2, =gTasks
mov r3, r8
lsls r1, r3, 2
@@ -995,7 +995,7 @@ _08159342:
cmp r1, r0
bne _0815935A
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_0815935A:
pop {r4,r5}
pop {r0}
diff --git a/asm/battle_controller_linkopponent.s b/asm/battle_controller_linkopponent.s
index d28823a8b..d4e248d8c 100644
--- a/asm/battle_controller_linkopponent.s
+++ b/asm/battle_controller_linkopponent.s
@@ -158,7 +158,7 @@ _080644C2:
thumb_func_start sub_80644D8
sub_80644D8: @ 80644D8
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r1, [r4]
ldr r3, =gActiveBank
ldrb r0, [r3]
@@ -199,11 +199,11 @@ sub_8064520: @ 8064520
movs r0, 0
mov r8, r0
movs r4, 0
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0806454C
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08064584
@@ -276,12 +276,12 @@ _080645CA:
ldrb r1, [r7]
movs r0, 0x2
eors r0, r1
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
bne _0806469C
_080645DE:
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
mov r12, r1
ldr r0, [r1]
ldr r7, =gActiveBank
@@ -364,7 +364,7 @@ _08064600:
b _080646F2
.pool
_0806469C:
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r1, [r7]
ldr r2, [r0, 0x4]
@@ -405,7 +405,7 @@ _0806469C:
adds r0, r4, 0
bl FreeSpritePaletteByTag
_080646F2:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -440,7 +440,7 @@ sub_8064734: @ 8064734
push {r5-r7}
movs r0, 0
mov r10, r0
- ldr r5, =gUnknown_020244D0
+ ldr r5, =gBattleSpritesDataPtr
ldr r0, [r5]
ldr r4, =gActiveBank
ldrb r2, [r4]
@@ -497,7 +497,7 @@ _08064776:
adds r0, r3, 0
bl sub_8172EF0
_080647B4:
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r2, =gActiveBank
ldrb r5, [r2]
@@ -531,7 +531,7 @@ _080647B4:
ands r0, r1
cmp r0, 0
bne _0806487A
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0806484A
@@ -557,7 +557,7 @@ _080647B4:
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
mov r1, r9
ldrb r0, [r1]
eors r0, r7
@@ -567,7 +567,7 @@ _080647B4:
eors r0, r7
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_0806484A:
ldr r5, =gHealthBoxesIds
ldr r4, =gActiveBank
@@ -583,15 +583,15 @@ _0806484A:
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_0806487A:
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -673,7 +673,7 @@ _08064930:
lsls r2, 1
bl m4aMPlayVolumeControl
_0806493C:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -735,7 +735,7 @@ _08064998:
lsrs r0, 24
cmp r0, 0x3
bne _080649E2
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r5]
ldr r0, [r0, 0x4]
@@ -760,7 +760,7 @@ _08064998:
movs r1, 0
strb r1, [r0, 0x9]
_080649E2:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08064A3A
@@ -799,7 +799,7 @@ _080649E2:
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
_08064A3A:
ldr r1, =gUnknown_03005D7C
ldr r4, =gActiveBank
@@ -827,8 +827,8 @@ _08064A3A:
lsls r1, 16
lsrs r1, 16
adds r0, r5, 0
- bl sub_805EE54
- ldr r3, =gUnknown_020244D0
+ bl SetBankEnemyShadowSpriteCallback
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r2, [r0, 0x8]
ldrb r1, [r2, 0x9]
@@ -900,7 +900,7 @@ sub_8064B04: @ 8064B04
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08064BB6
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r1, [r0, 0x4]
lsls r4, r3, 1
@@ -974,7 +974,7 @@ sub_8064BC0: @ 8064BC0
ldrb r0, [r6]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r1, r4, 16
movs r0, 0x1
@@ -985,7 +985,7 @@ sub_8064BC0: @ 8064BC0
adds r0, r5
ldrb r0, [r0]
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
b _08064C0C
.pool
_08064C08:
@@ -1017,7 +1017,7 @@ sub_8064C14: @ 8064C14
ldr r0, =gHealthBoxesIds
adds r0, r3, r0
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl LinkOpponentBufferExecCompleted
_08064C42:
pop {r0}
@@ -1028,7 +1028,7 @@ _08064C42:
thumb_func_start sub_8064C58
sub_8064C58: @ 8064C58
push {r4-r6,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r2, [r6]
@@ -1065,7 +1065,7 @@ sub_8064C58: @ 8064C58
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl LinkOpponentBufferExecCompleted
_08064CB2:
pop {r4-r6}
@@ -1166,7 +1166,7 @@ sub_8064D60: @ 8064D60
ldr r0, =SpriteCallbackDummy
cmp r1, r0
bne _08064DAC
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r3, 2
@@ -1198,7 +1198,7 @@ _08064DAC:
thumb_func_start sub_8064DD0
sub_8064DD0: @ 8064DD0
push {r4,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r4, =gActiveBank
ldrb r1, [r4]
@@ -1250,7 +1250,7 @@ _08064E2A:
thumb_func_start sub_8064E50
sub_8064E50: @ 8064E50
push {r4-r7,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -1321,13 +1321,13 @@ sub_8064E50: @ 8064E50
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r5]
bl sub_8076918
ldrb r0, [r5]
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
ldrb r0, [r5]
bl sub_805E408
ldr r1, =gBattleBankFunc
@@ -1346,7 +1346,7 @@ _08064F0C:
thumb_func_start sub_8064F40
sub_8064F40: @ 8064F40
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -1413,7 +1413,7 @@ _08064F72:
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
ldr r1, =gBattleBankFunc
ldrb r0, [r5]
lsls r0, 2
@@ -1430,7 +1430,7 @@ _08064FDC:
thumb_func_start sub_8065008
sub_8065008: @ 8065008
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1454,7 +1454,7 @@ _0806502A:
thumb_func_start sub_8065038
sub_8065038: @ 8065038
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1572,7 +1572,7 @@ _0806513A:
lsrs r1, 16
movs r0, 0x1
mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl LinkOpponentBufferExecCompleted
add sp, 0x100
pop {r4-r6}
@@ -3583,7 +3583,7 @@ sub_80662F8: @ 80662F8
muls r2, r0
adds r0, r2, 0
add r0, r9
- bl sub_805DC0C
+ bl BattleLoadOpponentMonSpriteGfx
ldrb r0, [r6]
bl GetBankIdentity
adds r1, r0, 0
@@ -3673,7 +3673,7 @@ sub_80662F8: @ 80662F8
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
ldr r1, =gBattleBankFunc
ldrb r0, [r6]
lsls r0, 2
@@ -3772,7 +3772,7 @@ sub_8066494: @ 8066494
adds r0, r1, 0
adds r0, r5
adds r1, r6, 0
- bl sub_805DC0C
+ bl BattleLoadOpponentMonSpriteGfx
adds r0, r6, 0
bl GetBankIdentity
adds r1, r0, 0
@@ -3907,7 +3907,7 @@ sub_8066624: @ 8066624
ldrb r3, [r0]
cmp r3, 0
bne _0806666C
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r2, 1
@@ -3947,7 +3947,7 @@ _0806666C:
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl LinkOpponentBufferExecCompleted
_080666A8:
pop {r4-r6}
@@ -3959,7 +3959,7 @@ _080666A8:
thumb_func_start sub_80666BC
sub_80666BC: @ 80666BC
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4283,7 +4283,7 @@ _0806694C:
bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r9, r7
- ldr r1, =gUnknown_083054E0
+ ldr r1, =gTrainerFrontPicCoords
mov r2, r8
lsls r0, r2, 2
adds r0, r1
@@ -4411,7 +4411,7 @@ _08066A76:
mov r0, r8
bl sub_806A12C
ldr r0, =gUnknown_0202499C
- ldr r2, =gUnknown_083054E0
+ ldr r2, =gTrainerFrontPicCoords
mov r3, r8
lsls r1, r3, 2
adds r1, r2
@@ -4589,7 +4589,7 @@ sub_8066B94: @ 8066B94
thumb_func_start sub_8066C40
sub_8066C40: @ 8066C40
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4721,7 +4721,7 @@ _08066D32:
ldrb r0, [r0]
lsls r0, 8
orrs r6, r0
- ldr r0, =gUnknown_02038432
+ ldr r0, =gAnimMoveTurn
mov r8, r0
mov r0, r12
adds r0, 0x3
@@ -4729,7 +4729,7 @@ _08066D32:
ldrb r0, [r1]
mov r1, r8
strb r0, [r1]
- ldr r3, =gMovePowerMoveAnim
+ ldr r3, =gAnimMovePower
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -4743,7 +4743,7 @@ _08066D32:
lsls r0, 8
orrs r2, r0
strh r2, [r3]
- ldr r3, =gMoveDmgMoveAnim
+ ldr r3, =gAnimMoveDmg
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -4769,7 +4769,7 @@ _08066D32:
lsls r0, 24
orrs r2, r0
str r2, [r3]
- ldr r2, =gHappinessMoveAnim
+ ldr r2, =gAnimFriendship
ldrb r0, [r5]
lsls r0, 9
mov r1, r12
@@ -4791,7 +4791,7 @@ _08066D32:
lsls r0, 8
orrs r2, r0
strh r2, [r4]
- ldr r7, =gDisableStructMoveAnim
+ ldr r7, =gAnimDisableStructPtr
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -4816,7 +4816,7 @@ _08066D32:
b _08066E58
.pool
_08066E30:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r1, [r5]
ldr r2, [r0, 0x4]
@@ -4869,7 +4869,7 @@ sub_8066E70: @ 8066E70
adds r1, r2
ldrb r1, [r1]
mov r8, r1
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r5, [r7]
ldr r1, [r5, 0x4]
lsls r0, r3, 1
@@ -4928,7 +4928,7 @@ _08066F08:
movs r0, 0
bl sub_805EB9C
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r0, [r7]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -4977,7 +4977,7 @@ _08066F32:
ands r0, r2
strb r0, [r1]
_08066F80:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -5031,10 +5031,10 @@ _08066FE4:
thumb_func_start sub_8066FF4
sub_8066FF4: @ 8066FF4
push {r4,r5,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r5, =gActiveBank
ldrb r4, [r5]
@@ -5045,7 +5045,7 @@ sub_8066FF4: @ 8066FF4
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r5]
lsls r0, 2
@@ -5124,7 +5124,7 @@ sub_80670A0: @ 80670A0
push {r6,r7}
sub sp, 0x4
movs r0, 0
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
ldr r3, =gBattleBufferA
ldr r0, =gActiveBank
mov r9, r0
@@ -5171,7 +5171,7 @@ sub_80670A0: @ 80670A0
ldrb r1, [r1]
str r7, [sp]
mov r2, r8
- bl sub_807294C
+ bl SetBattleBarStruct
b _0806715A
.pool
_08067130:
@@ -5193,7 +5193,7 @@ _08067130:
ldrb r1, [r1]
str r7, [sp]
movs r3, 0
- bl sub_807294C
+ bl SetBattleBarStruct
_0806715A:
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
@@ -5242,9 +5242,9 @@ sub_806719C: @ 806719C
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0x9
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r2, [r4]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
lsls r1, r2, 1
@@ -5565,7 +5565,7 @@ sub_806743C: @ 806743C
ldrb r0, [r0]
cmp r0, 0
beq _08067478
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -5718,7 +5718,7 @@ sub_8067508: @ 8067508
adds r1, r4
ldrb r0, [r6]
strh r0, [r1, 0x8]
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r6]
ldr r1, [r0, 0x4]
@@ -5779,7 +5779,7 @@ c3_08038DC4: @ 8067618
adds r0, r1
ldrh r0, [r0, 0x8]
strb r0, [r7]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08067652
@@ -5893,7 +5893,7 @@ sub_8067718: @ 8067718
b _08067812
.pool
_08067748:
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -5954,13 +5954,13 @@ _080677B4:
subs r4, 0x2
adds r3, r4
ldrb r3, [r3]
- bl sub_80735DC
+ bl CreatePartyStatusSummarySprites
ldr r2, =gUnknown_020244B4
ldrb r1, [r5]
adds r1, r2
movs r3, 0
strb r0, [r1]
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldrb r1, [r5]
ldr r2, [r0, 0x4]
@@ -6000,7 +6000,7 @@ _08067812:
thumb_func_start sub_806782C
sub_806782C: @ 806782C
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -6036,7 +6036,7 @@ _08067864:
thumb_func_start sub_8067874
sub_8067874: @ 8067874
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -6080,7 +6080,7 @@ sub_80678D0: @ 80678D0
push {r4,lr}
ldr r4, =gActiveBank
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _08067916
diff --git a/asm/battle_controller_linkpartner.s b/asm/battle_controller_linkpartner.s
index 881228279..adc5cdb84 100644
--- a/asm/battle_controller_linkpartner.s
+++ b/asm/battle_controller_linkpartner.s
@@ -131,7 +131,7 @@ _0814AFA4:
thumb_func_start sub_814AFBC
sub_814AFBC: @ 814AFBC
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r1, [r4]
ldr r3, =gActiveBank
ldrb r0, [r3]
@@ -168,11 +168,11 @@ _0814AFF4:
sub_814B004: @ 814B004
push {r4-r6,lr}
movs r6, 0
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0814B028
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0814B05C
@@ -239,7 +239,7 @@ _0814B094:
_0814B0A0:
cmp r6, 0
beq _0814B0C6
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -270,7 +270,7 @@ sub_814B0E8: @ 814B0E8
mov r6, r9
mov r5, r8
push {r5-r7}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
mov r12, r0
ldr r0, [r0]
ldr r7, =gActiveBank
@@ -348,7 +348,7 @@ _0814B136:
lsls r0, 2
adds r0, r2
strb r6, [r0, 0x9]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0814B1F0
@@ -383,7 +383,7 @@ _0814B136:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r7]
mov r1, r8
eors r0, r1
@@ -393,7 +393,7 @@ _0814B136:
eors r0, r1
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_0814B1F0:
ldr r1, =gUnknown_03005D7C
ldr r4, =gActiveBank
@@ -419,14 +419,14 @@ _0814B1F0:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
- ldr r0, =gUnknown_020244D0
+ bl SetHealthboxSpriteVisible
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r2, [r0, 0x8]
ldrb r1, [r2, 0x9]
@@ -498,7 +498,7 @@ bx_t4_healthbar_update: @ 814B2D0
ldrb r0, [r5]
adds r0, r6
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r1, r4, 16
movs r0, 0x1
@@ -509,7 +509,7 @@ bx_t4_healthbar_update: @ 814B2D0
adds r0, r6
ldrb r0, [r0]
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
b _0814B332
.pool
_0814B318:
@@ -587,7 +587,7 @@ sub_814B340: @ 814B340
ldrb r0, [r4]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl LinkPartnerBufferExecCompleted
_0814B3BC:
pop {r4-r6}
@@ -599,7 +599,7 @@ _0814B3BC:
thumb_func_start sub_814B3DC
sub_814B3DC: @ 814B3DC
push {r4-r6,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r2, [r6]
@@ -634,7 +634,7 @@ sub_814B3DC: @ 814B3DC
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl LinkPartnerBufferExecCompleted
_0814B430:
pop {r4-r6}
@@ -737,7 +737,7 @@ sub_814B4E0: @ 814B4E0
bne _0814B532
adds r0, r3, 0
bl sub_805E408
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r2, [r4]
ldr r1, [r0]
@@ -769,7 +769,7 @@ _0814B532:
thumb_func_start sub_814B554
sub_814B554: @ 814B554
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -808,7 +808,7 @@ sub_814B5A8: @ 814B5A8
push {r4-r7,lr}
mov r7, r8
push {r7}
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r7, =gActiveBank
ldrb r1, [r7]
@@ -878,13 +878,13 @@ sub_814B5A8: @ 814B5A8
muls r1, r6
adds r1, r5
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r7]
bl sub_8076918
ldrb r0, [r7]
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
ldr r1, =gBattleBankFunc
ldrb r0, [r7]
lsls r0, 2
@@ -903,7 +903,7 @@ _0814B664:
thumb_func_start sub_814B69C
sub_814B69C: @ 814B69C
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r4, =gActiveBank
ldrb r2, [r4]
@@ -1021,7 +1021,7 @@ _0814B7A6:
thumb_func_start sub_814B7B8
sub_814B7B8: @ 814B7B8
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1045,7 +1045,7 @@ _0814B7DA:
thumb_func_start sub_814B7E8
sub_814B7E8: @ 814B7E8
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1113,7 +1113,7 @@ _0814B872:
lsrs r1, 16
movs r0, 0x1
mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl LinkPartnerBufferExecCompleted
add sp, 0x100
pop {r4-r6}
@@ -3154,7 +3154,7 @@ sub_814CB0C: @ 814CB0C
muls r0, r5
ldr r4, =gPlayerParty
adds r0, r4
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r6]
lsls r0, 1
add r0, r8
@@ -3283,7 +3283,7 @@ sub_814CC28: @ 814CC28
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r5]
lsls r1, r0, 9
adds r1, r6
@@ -3476,7 +3476,7 @@ sub_814CE14: @ 814CE14
ldrb r3, [r0]
cmp r3, 0
bne _0814CE5C
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r2, 1
@@ -3514,7 +3514,7 @@ _0814CE5C:
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl LinkPartnerBufferExecCompleted
_0814CE92:
pop {r4-r6}
@@ -3526,7 +3526,7 @@ _0814CE92:
thumb_func_start sub_814CEA4
sub_814CEA4: @ 814CEA4
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -3696,7 +3696,7 @@ _0814D002:
ldr r5, =gActiveBank
ldrb r1, [r5]
adds r0, r4, 0
- bl sub_805DF84
+ bl LoadBackTrainerBankSpriteGfx
ldrb r0, [r5]
bl GetBankIdentity
adds r1, r0, 0
@@ -3706,7 +3706,7 @@ _0814D002:
bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r8, r7
- ldr r0, =gUnknown_08305D2C
+ ldr r0, =gTrainerBackPicCoords
lsls r4, 2
adds r4, r0
ldrb r0, [r4]
@@ -3870,7 +3870,7 @@ sub_814D0F0: @ 814D0F0
thumb_func_start sub_814D19C
sub_814D19C: @ 814D19C
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4030,7 +4030,7 @@ _0814D2CE:
ldrb r0, [r0]
lsls r0, 8
orrs r6, r0
- ldr r0, =gUnknown_02038432
+ ldr r0, =gAnimMoveTurn
mov r8, r0
mov r0, r12
adds r0, 0x3
@@ -4038,7 +4038,7 @@ _0814D2CE:
ldrb r0, [r1]
mov r1, r8
strb r0, [r1]
- ldr r3, =gMovePowerMoveAnim
+ ldr r3, =gAnimMovePower
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -4052,7 +4052,7 @@ _0814D2CE:
lsls r0, 8
orrs r2, r0
strh r2, [r3]
- ldr r3, =gMoveDmgMoveAnim
+ ldr r3, =gAnimMoveDmg
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -4078,7 +4078,7 @@ _0814D2CE:
lsls r0, 24
orrs r2, r0
str r2, [r3]
- ldr r2, =gHappinessMoveAnim
+ ldr r2, =gAnimFriendship
ldrb r0, [r5]
lsls r0, 9
mov r1, r12
@@ -4100,7 +4100,7 @@ _0814D2CE:
lsls r0, 8
orrs r2, r0
strh r2, [r4]
- ldr r7, =gDisableStructMoveAnim
+ ldr r7, =gAnimDisableStructPtr
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -4125,7 +4125,7 @@ _0814D2CE:
b _0814D3F4
.pool
_0814D3CC:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r1, [r5]
ldr r2, [r0, 0x4]
@@ -4178,7 +4178,7 @@ bx_move_anim_4: @ 814D40C
adds r1, r2
ldrb r1, [r1]
mov r8, r1
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r5, [r7]
ldr r1, [r5, 0x4]
lsls r0, r3, 1
@@ -4237,7 +4237,7 @@ _0814D4A4:
movs r0, 0
bl sub_805EB9C
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r0, [r7]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -4286,7 +4286,7 @@ _0814D4CE:
ands r0, r2
strb r0, [r1]
_0814D51C:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -4340,10 +4340,10 @@ _0814D580:
thumb_func_start sub_814D590
sub_814D590: @ 814D590
push {r4,r5,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r5, =gActiveBank
ldrb r4, [r5]
@@ -4354,7 +4354,7 @@ sub_814D590: @ 814D590
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r5]
lsls r0, 2
@@ -4433,7 +4433,7 @@ sub_814D63C: @ 814D63C
push {r6,r7}
sub sp, 0x4
movs r0, 0
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
ldr r3, =gBattleBufferA
ldr r0, =gActiveBank
mov r9, r0
@@ -4480,7 +4480,7 @@ sub_814D63C: @ 814D63C
ldrb r1, [r1]
str r7, [sp]
mov r2, r8
- bl sub_807294C
+ bl SetBattleBarStruct
b _0814D6F6
.pool
_0814D6CC:
@@ -4502,7 +4502,7 @@ _0814D6CC:
ldrb r1, [r1]
str r7, [sp]
movs r3, 0
- bl sub_807294C
+ bl SetBattleBarStruct
_0814D6F6:
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
@@ -4551,9 +4551,9 @@ sub_814D738: @ 814D738
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0x9
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r2, [r4]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
lsls r1, r2, 1
@@ -4874,7 +4874,7 @@ sub_814D9D8: @ 814D9D8
ldrb r0, [r0]
cmp r0, 0
beq _0814DA14
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -5147,7 +5147,7 @@ _0814DC06:
adds r1, r4
ldrb r0, [r5]
strh r0, [r1, 0x8]
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r5]
ldr r1, [r0, 0x4]
@@ -5217,7 +5217,7 @@ _0814DCF8:
mov r9, r0
ldrh r0, [r1, 0x8]
strb r0, [r7]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0814DD18
@@ -5276,7 +5276,7 @@ _0814DD48:
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r7]
movs r1, 0
bl sub_814CC98
@@ -5326,7 +5326,7 @@ sub_814DDD8: @ 814DDD8
b _0814DE7C
.pool
_0814DE08:
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r5, =gActiveBank
ldrb r1, [r5]
@@ -5349,7 +5349,7 @@ _0814DE08:
subs r4, 0x2
adds r3, r4
ldrb r3, [r3]
- bl sub_80735DC
+ bl CreatePartyStatusSummarySprites
ldr r2, =gUnknown_020244B4
ldrb r1, [r5]
adds r1, r2
@@ -5394,7 +5394,7 @@ _0814DE7C:
thumb_func_start sub_814DE9C
sub_814DE9C: @ 814DE9C
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -5430,7 +5430,7 @@ _0814DED4:
thumb_func_start sub_814DEE4
sub_814DEE4: @ 814DEE4
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -5474,7 +5474,7 @@ sub_814DF40: @ 814DF40
push {r4,lr}
ldr r4, =gActiveBank
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _0814DF86
diff --git a/asm/battle_controller_opponent.s b/asm/battle_controller_opponent.s
index 639ef0ce6..b66e373ca 100644
--- a/asm/battle_controller_opponent.s
+++ b/asm/battle_controller_opponent.s
@@ -158,7 +158,7 @@ _0805F292:
thumb_func_start sub_805F2A8
sub_805F2A8: @ 805F2A8
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r1, [r4]
ldr r3, =gActiveBank
ldrb r0, [r3]
@@ -200,11 +200,11 @@ sub_805F2F0: @ 805F2F0
push {r5-r7}
movs r0, 0
mov r10, r0
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805F32C
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805F31E
@@ -277,7 +277,7 @@ _0805F3A0:
movs r6, 0x1
_0805F3A2:
ldr r3, =gUnknown_020244D8
- ldr r1, =gUnknown_020244D0
+ ldr r1, =gBattleSpritesDataPtr
mov r8, r1
ldr r2, [r1]
ldr r7, =gActiveBank
@@ -449,7 +449,7 @@ _0805F4E4:
ands r0, r2
strb r0, [r1, 0x1]
_0805F51A:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -488,7 +488,7 @@ sub_805F560: @ 805F560
movs r0, 0
str r0, [sp]
mov r10, r0
- ldr r5, =gUnknown_020244D0
+ ldr r5, =gBattleSpritesDataPtr
ldr r0, [r5]
ldr r4, =gActiveBank
ldrb r2, [r4]
@@ -520,7 +520,7 @@ _0805F5A6:
ands r0, r1
cmp r0, 0
bne _0805F5EE
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805F5EE
@@ -549,7 +549,7 @@ _0805F5A6:
adds r0, r3, 0
bl sub_8172EF0
_0805F5EE:
- ldr r2, =gUnknown_020244D0
+ ldr r2, =gBattleSpritesDataPtr
ldr r0, [r2]
ldr r1, =gActiveBank
mov r8, r1
@@ -583,7 +583,7 @@ _0805F5EE:
ands r0, r1
cmp r0, 0
bne _0805F6B4
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805F684
@@ -609,7 +609,7 @@ _0805F5EE:
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
mov r1, r8
ldrb r0, [r1]
eors r0, r7
@@ -619,7 +619,7 @@ _0805F5EE:
eors r0, r7
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_0805F684:
ldr r5, =gHealthBoxesIds
ldr r4, =gActiveBank
@@ -635,15 +635,15 @@ _0805F684:
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_0805F6B4:
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r2, [r3]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -723,7 +723,7 @@ _0805F768:
lsls r2, 1
bl m4aMPlayVolumeControl
_0805F774:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -739,11 +739,11 @@ _0805F774:
movs r0, 0x1
str r0, [sp]
_0805F792:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805F7B2
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805F810
@@ -838,7 +838,7 @@ _0805F86E:
mov r0, r10
cmp r0, 0
beq _0805F958
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805F8D2
@@ -877,7 +877,7 @@ _0805F86E:
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
_0805F8D2:
ldr r1, =gUnknown_03005D7C
ldr r4, =gActiveBank
@@ -905,8 +905,8 @@ _0805F8D2:
lsls r1, 16
lsrs r1, 16
adds r0, r5, 0
- bl sub_805EE54
- ldr r3, =gUnknown_020244D0
+ bl SetBankEnemyShadowSpriteCallback
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r2, [r0, 0x8]
ldrb r1, [r2, 0x9]
@@ -972,7 +972,7 @@ sub_805F994: @ 805F994
ldrsh r0, [r0, r1]
cmp r0, 0
bne _0805F9E0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r2, r3, 1
@@ -1010,7 +1010,7 @@ _0805F9E0:
ldr r0, =SpriteCallbackDummy
cmp r1, r0
bne _0805FA48
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r1, [r0, 0x4]
lsls r0, r3, 1
@@ -1068,7 +1068,7 @@ sub_805FA70: @ 805FA70
ldrb r0, [r6]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r1, r4, 16
movs r0, 0x1
@@ -1079,7 +1079,7 @@ sub_805FA70: @ 805FA70
adds r0, r5
ldrb r0, [r0]
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
b _0805FABC
.pool
_0805FAB8:
@@ -1111,7 +1111,7 @@ sub_805FAC4: @ 805FAC4
ldr r0, =gHealthBoxesIds
adds r0, r3, r0
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl OpponentBufferExecCompleted
_0805FAF2:
pop {r0}
@@ -1122,7 +1122,7 @@ _0805FAF2:
thumb_func_start sub_805FB08
sub_805FB08: @ 805FB08
push {r4-r6,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r2, [r6]
@@ -1159,7 +1159,7 @@ sub_805FB08: @ 805FB08
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl OpponentBufferExecCompleted
_0805FB62:
pop {r4-r6}
@@ -1260,7 +1260,7 @@ sub_805FC10: @ 805FC10
ldr r0, =SpriteCallbackDummy
cmp r1, r0
bne _0805FC5C
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r3, 2
@@ -1292,7 +1292,7 @@ _0805FC5C:
thumb_func_start bx_803AEDC
bx_803AEDC: @ 805FC80
push {r4,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r4, =gActiveBank
ldrb r1, [r4]
@@ -1344,7 +1344,7 @@ _0805FCDA:
thumb_func_start sub_805FD00
sub_805FD00: @ 805FD00
push {r4-r7,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -1415,13 +1415,13 @@ sub_805FD00: @ 805FD00
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r5]
bl sub_8076918
ldrb r0, [r5]
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
ldrb r0, [r5]
bl sub_805E408
ldr r1, =gBattleBankFunc
@@ -1440,7 +1440,7 @@ _0805FDBC:
thumb_func_start sub_805FDF0
sub_805FDF0: @ 805FDF0
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -1507,7 +1507,7 @@ _0805FE22:
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
ldr r1, =gBattleBankFunc
ldrb r0, [r5]
lsls r0, 2
@@ -1524,7 +1524,7 @@ _0805FE8C:
thumb_func_start sub_805FEB8
sub_805FEB8: @ 805FEB8
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1548,7 +1548,7 @@ _0805FEDA:
thumb_func_start bx_803B0F4
bx_803B0F4: @ 805FEE8
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1666,7 +1666,7 @@ _0805FFEA:
lsrs r1, 16
movs r0, 0x1
mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl OpponentBufferExecCompleted
add sp, 0x100
pop {r4-r6}
@@ -2607,7 +2607,7 @@ _08060806:
ldrb r1, [r0]
movs r0, 0x1
adds r2, r4, 0
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl OpponentBufferExecCompleted
add sp, 0x58
pop {r4-r7}
@@ -3730,7 +3730,7 @@ sub_8061224: @ 8061224
ldrh r0, [r0]
muls r0, r7
add r0, r10
- bl sub_805DC0C
+ bl BattleLoadOpponentMonSpriteGfx
ldrb r0, [r6]
bl GetBankIdentity
adds r1, r0, 0
@@ -3828,7 +3828,7 @@ sub_8061224: @ 8061224
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
ldr r1, =gBattleBankFunc
ldrb r0, [r6]
lsls r0, 2
@@ -3934,7 +3934,7 @@ sub_80613DC: @ 80613DC
adds r0, r1, 0
adds r0, r5
adds r1, r6, 0
- bl sub_805DC0C
+ bl BattleLoadOpponentMonSpriteGfx
adds r0, r6, 0
bl GetBankIdentity
adds r1, r0, 0
@@ -4069,7 +4069,7 @@ sub_806156C: @ 806156C
ldrb r3, [r0]
cmp r3, 0
bne _080615B4
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r2, 1
@@ -4109,7 +4109,7 @@ _080615B4:
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl OpponentBufferExecCompleted
_080615F0:
pop {r4-r6}
@@ -4121,7 +4121,7 @@ _080615F0:
thumb_func_start sub_8061604
sub_8061604: @ 8061604
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4339,7 +4339,7 @@ _080617CA:
bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r9, r7
- ldr r1, =gUnknown_083054E0
+ ldr r1, =gTrainerFrontPicCoords
mov r2, r8
lsls r0, r2, 2
adds r0, r1
@@ -4564,7 +4564,7 @@ _080619DE:
mov r0, r8
bl sub_806A12C
ldr r0, =gUnknown_0202499C
- ldr r2, =gUnknown_083054E0
+ ldr r2, =gTrainerFrontPicCoords
mov r3, r8
lsls r1, r3, 2
adds r1, r2
@@ -4741,7 +4741,7 @@ sub_8061AF0: @ 8061AF0
thumb_func_start sub_8061B9C
sub_8061B9C: @ 8061B9C
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4871,13 +4871,13 @@ _08061C8A:
ldrb r1, [r1]
lsls r1, 8
orrs r0, r1
- ldr r5, =gUnknown_02038432
+ ldr r5, =gAnimMoveTurn
mov r1, r12
adds r1, 0x3
adds r2, r1
ldrb r1, [r2]
strb r1, [r5]
- ldr r4, =gMovePowerMoveAnim
+ ldr r4, =gAnimMovePower
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4891,7 +4891,7 @@ _08061C8A:
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r4, =gMoveDmgMoveAnim
+ ldr r4, =gAnimMoveDmg
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4917,7 +4917,7 @@ _08061C8A:
lsls r1, 24
orrs r3, r1
str r3, [r4]
- ldr r3, =gHappinessMoveAnim
+ ldr r3, =gAnimFriendship
ldrb r1, [r6]
lsls r1, 9
mov r2, r12
@@ -4939,7 +4939,7 @@ _08061C8A:
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r3, =gDisableStructMoveAnim
+ ldr r3, =gAnimDisableStructPtr
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4962,7 +4962,7 @@ _08061C8A:
b _08061D9E
.pool
_08061D80:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -5009,7 +5009,7 @@ bx_move_anim_7: @ 8061DB0
adds r1, r2
ldrb r1, [r1]
mov r8, r1
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r5, [r7]
ldr r1, [r5, 0x4]
lsls r0, r3, 1
@@ -5068,7 +5068,7 @@ _08061E48:
movs r0, 0
bl sub_805EB9C
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r0, [r7]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -5117,7 +5117,7 @@ _08061E72:
ands r0, r2
strb r0, [r1]
_08061EC0:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -5171,10 +5171,10 @@ _08061F24:
thumb_func_start sub_8061F34
sub_8061F34: @ 8061F34
push {r4,r5,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r5, =gActiveBank
ldrb r4, [r5]
@@ -5185,7 +5185,7 @@ sub_8061F34: @ 8061F34
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r5]
lsls r0, 2
@@ -5212,7 +5212,7 @@ sub_8061F90: @ 8061F90
thumb_func_start sub_8061F9C
sub_8061F9C: @ 8061F9C
push {lr}
- bl sub_8063880
+ bl AI_TrySwitchOrUseItem
bl OpponentBufferExecCompleted
pop {r0}
bx r0
@@ -5243,7 +5243,7 @@ sub_8061FB8: @ 8061FB8
movs r0, 0x1
movs r1, 0xA
_08061FD6:
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
_08061FDA:
bl OpponentBufferExecCompleted
b _08062156
@@ -5323,7 +5323,7 @@ _08062062:
cmp r0, 0
beq _0806209C
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r5, =gBankTarget
strb r0, [r5]
ldr r0, =gAbsentBankFlags
@@ -5337,7 +5337,7 @@ _08062062:
cmp r1, 0
beq _0806209C
movs r0, 0x2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
strb r0, [r5]
_0806209C:
ldr r0, =gBankTarget
@@ -5347,7 +5347,7 @@ _0806209C:
movs r0, 0x1
movs r1, 0xA
adds r2, r4, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
b _08061FDA
.pool
_080620C4:
@@ -5378,7 +5378,7 @@ _080620C6:
movs r0, 0x1
movs r1, 0xA
adds r2, r4, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
b _08062152
.pool
_08062108:
@@ -5394,26 +5394,26 @@ _08062108:
lsls r1, 24
lsrs r1, 24
adds r0, r1, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r2, r0, 0
lsls r2, 24
lsrs r2, 16
orrs r2, r4
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
b _08062152
.pool
_0806213C:
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r2, r0, 0
lsls r2, 24
lsrs r2, 16
orrs r2, r4
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
_08062152:
bl OpponentBufferExecCompleted
_08062156:
@@ -5435,7 +5435,7 @@ sub_806215C: @ 806215C
adds r0, 0xC0
ldrb r1, [r0]
movs r0, 0x1
- bl dp01_build_cmdbuf_x23_aa_0
+ bl EmitCmd35
bl OpponentBufferExecCompleted
pop {r0}
bx r0
@@ -5456,7 +5456,7 @@ sub_8062188: @ 8062188
ldrb r0, [r1]
cmp r0, 0x6
bne _08062254
- bl sub_8063A90
+ bl GetMostSuitableMonToSwitchInto
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x6
@@ -5468,7 +5468,7 @@ sub_8062188: @ 8062188
cmp r0, 0
bne _080621D4
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r5, r0, 24
adds r7, r5, 0
@@ -5476,11 +5476,11 @@ sub_8062188: @ 8062188
.pool
_080621D4:
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r7, r0, 24
movs r0, 0x3
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r5, r0, 24
_080621E8:
@@ -5550,7 +5550,7 @@ _0806225A:
lsrs r1, 24
movs r0, 0x1
movs r2, 0
- bl dp01_build_cmdbuf_x22_a_three_bytes
+ bl EmitCmd34
bl OpponentBufferExecCompleted
pop {r4-r7}
pop {r0}
@@ -5574,7 +5574,7 @@ sub_8062294: @ 8062294
push {r6,r7}
sub sp, 0x4
movs r0, 0
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
ldr r3, =gBattleBufferA
ldr r0, =gActiveBank
mov r9, r0
@@ -5621,7 +5621,7 @@ sub_8062294: @ 8062294
ldrb r1, [r1]
str r7, [sp]
mov r2, r8
- bl sub_807294C
+ bl SetBattleBarStruct
b _0806234E
.pool
_08062324:
@@ -5643,7 +5643,7 @@ _08062324:
ldrb r1, [r1]
str r7, [sp]
movs r3, 0
- bl sub_807294C
+ bl SetBattleBarStruct
_0806234E:
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
@@ -5692,9 +5692,9 @@ sub_8062390: @ 8062390
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0x9
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r2, [r4]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
lsls r1, r2, 1
@@ -6015,7 +6015,7 @@ sub_8062630: @ 8062630
ldrb r0, [r0]
cmp r0, 0
beq _0806266C
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -6168,7 +6168,7 @@ sub_80626FC: @ 80626FC
adds r1, r4
ldrb r0, [r6]
strh r0, [r1, 0x8]
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r6]
ldr r1, [r0, 0x4]
@@ -6244,7 +6244,7 @@ sub_8062828: @ 8062828
adds r0, r1
ldrh r0, [r0, 0x8]
strb r0, [r7]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0806286C
@@ -6348,7 +6348,7 @@ dp01t_30_7_0803D67C: @ 8062918
b _08062A12
.pool
_08062948:
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -6409,13 +6409,13 @@ _080629B4:
subs r4, 0x2
adds r3, r4
ldrb r3, [r3]
- bl sub_80735DC
+ bl CreatePartyStatusSummarySprites
ldr r2, =gUnknown_020244B4
ldrb r1, [r5]
adds r1, r2
movs r3, 0
strb r0, [r1]
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldrb r1, [r5]
ldr r2, [r0, 0x4]
@@ -6455,7 +6455,7 @@ _08062A12:
thumb_func_start bx_0803D790_t7
bx_0803D790_t7: @ 8062A2C
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -6491,7 +6491,7 @@ _08062A64:
thumb_func_start sub_8062A74
sub_8062A74: @ 8062A74
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -6535,7 +6535,7 @@ sub_8062AD0: @ 8062AD0
push {r4,lr}
ldr r4, =gActiveBank
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _08062B16
@@ -6655,7 +6655,7 @@ sub_8062BB0: @ 8062BB0
negs r0, r0
ands r0, r1
strb r0, [r3]
- ldr r0, =gUnknown_03005D00
+ ldr r0, =gPreBattleCallback1
ldr r0, [r0]
str r0, [r2]
ldr r0, [r2, 0x8]
diff --git a/asm/battle_controller_player.s b/asm/battle_controller_player.s
index eb4caa013..10b675714 100644
--- a/asm/battle_controller_player.s
+++ b/asm/battle_controller_player.s
@@ -191,7 +191,7 @@ _080575F0:
beq _08057658
movs r0, 0x5
bl PlaySE
- ldr r1, =gUnknown_020244AC
+ ldr r1, =gActionSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
@@ -226,14 +226,14 @@ _0805764C:
movs r0, 0x1
movs r1, 0x3
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
b _080577C2
_08057658:
movs r0, 0x20
ands r0, r2
cmp r0, 0
beq _08057698
- ldr r5, =gUnknown_020244AC
+ ldr r5, =gActionSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r5
@@ -249,7 +249,7 @@ _08057674:
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
ldrb r1, [r4]
adds r1, r5
ldrb r0, [r1]
@@ -261,7 +261,7 @@ _08057698:
ands r0, r2
cmp r0, 0
beq _080576D8
- ldr r5, =gUnknown_020244AC
+ ldr r5, =gActionSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r5
@@ -277,7 +277,7 @@ _080576B4:
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
ldrb r1, [r4]
adds r1, r5
ldrb r0, [r1]
@@ -290,7 +290,7 @@ _080576D8:
ands r0, r2
cmp r0, 0
beq _08057700
- ldr r5, =gUnknown_020244AC
+ ldr r5, =gActionSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r5
@@ -306,7 +306,7 @@ _08057700:
ands r0, r2
cmp r0, 0
beq _0805774C
- ldr r5, =gUnknown_020244AC
+ ldr r5, =gActionSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r5
@@ -321,7 +321,7 @@ _0805771A:
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
ldrb r1, [r4]
adds r1, r5
ldrb r0, [r1]
@@ -333,7 +333,7 @@ _08057732:
adds r0, r5
ldrb r0, [r0]
movs r1, 0
- bl sub_8059CB4
+ bl ActionSelectionCreateCursorAt
b _080577E8
.pool
_0805774C:
@@ -358,7 +358,7 @@ _0805775A:
cmp r0, 0x2
bne _080577E8
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r1, =gAbsentBankFlags
ldrb r1, [r1]
ldr r2, =gBitTable
@@ -393,7 +393,7 @@ _080577B2:
movs r1, 0xC
_080577BC:
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
_080577C2:
bl PlayerBufferExecCompleted
b _080577E8
@@ -403,7 +403,7 @@ _080577DC:
ands r0, r2
cmp r0, 0
beq _080577E8
- bl sub_8073314
+ bl SwapHpBarsWithHpText
_080577E8:
pop {r4-r7}
pop {r0}
@@ -508,7 +508,7 @@ _080578A0:
adds r0, r2
ldr r1, =sub_8039B2C
str r1, [r0]
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
@@ -518,7 +518,7 @@ _080578A0:
orrs r2, r0
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
ldrb r0, [r4]
movs r1, 0x1
bl dp11b_obj_free
@@ -622,7 +622,7 @@ _080579F0:
mov r1, sp
adds r0, r1, r4
ldrb r0, [r0]
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
strb r0, [r5]
ldr r1, =gNoOfAllBanks
lsls r0, 24
@@ -664,7 +664,7 @@ _08057A32:
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
adds r2, r1
ldrb r1, [r2]
adds r1, 0xD
@@ -750,7 +750,7 @@ _08057B14:
mov r1, sp
adds r0, r1, r4
ldrb r0, [r0]
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
strb r0, [r5]
ldr r1, =gNoOfAllBanks
lsls r0, 24
@@ -792,7 +792,7 @@ _08057B56:
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
adds r2, r1
ldrb r1, [r2]
adds r1, 0xD
@@ -890,7 +890,7 @@ _08057C48:
_08057C58:
movs r0, 0x5
bl PlaySE
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
@@ -942,7 +942,7 @@ _08057CC4:
movs r0, 0x1
ands r0, r1
eors r0, r2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r1, =gUnknown_03005D74
strb r0, [r1]
_08057CDE:
@@ -977,7 +977,7 @@ _08057D18:
movs r0, 0x1
add r8, r0
_08057D24:
- ldr r0, =gUnknown_020244B0
+ ldr r0, =gMoveSelectionCursor
adds r0, r3, r0
adds r1, r6, 0
adds r1, 0x8
@@ -1008,7 +1008,7 @@ _08057D5A:
cmp r0, 0
bne _08057D80
_08057D62:
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldrb r0, [r7]
adds r0, r1
ldrb r2, [r0]
@@ -1035,7 +1035,7 @@ _08057D80:
.pool
_08057DA8:
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r1, =gAbsentBankFlags
ldrb r1, [r1]
ldr r2, =gBitTable
@@ -1052,7 +1052,7 @@ _08057DA8:
_08057DD0:
movs r0, 0x1
_08057DD2:
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r1, =gUnknown_03005D74
_08057DD8:
strb r0, [r1]
@@ -1086,7 +1086,7 @@ _08057E14:
_08057E1C:
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl PlayerBufferExecCompleted
b _08057F9E
.pool
@@ -1095,7 +1095,7 @@ _08057E30:
ands r0, r2
cmp r0, 0
beq _08057E60
- ldr r4, =gUnknown_020244B0
+ ldr r4, =gMoveSelectionCursor
ldrb r0, [r7]
adds r2, r0, r4
ldrb r1, [r2]
@@ -1119,7 +1119,7 @@ _08057E60:
ands r0, r2
cmp r0, 0
beq _08057EA4
- ldr r4, =gUnknown_020244B0
+ ldr r4, =gMoveSelectionCursor
ldrb r0, [r7]
adds r3, r0, r4
ldrb r2, [r3]
@@ -1151,7 +1151,7 @@ _08057EA4:
ands r0, r2
cmp r0, 0
beq _08057ED4
- ldr r4, =gUnknown_020244B0
+ ldr r4, =gMoveSelectionCursor
ldrb r0, [r7]
adds r2, r0, r4
ldrb r1, [r2]
@@ -1173,7 +1173,7 @@ _08057ED4:
ands r0, r2
cmp r0, 0
beq _08057F30
- ldr r4, =gUnknown_020244B0
+ ldr r4, =gMoveSelectionCursor
ldrb r0, [r7]
adds r3, r0, r4
ldrb r2, [r3]
@@ -1221,7 +1221,7 @@ _08057F30:
ands r5, r6
cmp r5, 0
bne _08057F9E
- ldr r4, =gUnknown_020244B0
+ ldr r4, =gMoveSelectionCursor
ldrb r0, [r7]
adds r0, r4
ldrb r0, [r0]
@@ -1247,7 +1247,7 @@ _08057F80:
bl battle_menu_cursor_related_2
ldr r0, =gText_BattleSwitchWhich
movs r1, 0xB
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
ldrb r0, [r0]
@@ -1287,10 +1287,10 @@ _08057FD6:
beq _08057FF8
movs r0, 0x5
bl PlaySE
- ldr r1, =gUnknown_02022E14
+ ldr r1, =gBattle_BG0_X
movs r0, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
movs r2, 0xA0
lsls r2, 1
adds r0, r2, 0
@@ -1302,7 +1302,7 @@ _08057FF8:
ands r0, r1
cmp r0, 0
beq _08058038
- ldr r5, =gUnknown_020244B0
+ ldr r5, =gMoveSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r2, r0, r5
@@ -1333,7 +1333,7 @@ _08058038:
ands r0, r1
cmp r0, 0
beq _08058086
- ldr r5, =gUnknown_020244B0
+ ldr r5, =gMoveSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r3, r0, r5
@@ -1370,7 +1370,7 @@ _08058086:
ands r0, r1
cmp r0, 0
beq _080580C8
- ldr r5, =gUnknown_020244B0
+ ldr r5, =gMoveSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r2, r0, r5
@@ -1401,7 +1401,7 @@ _080580C8:
ands r0, r1
cmp r0, 0
beq _08058116
- ldr r5, =gUnknown_020244B0
+ ldr r5, =gMoveSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r3, r0, r5
@@ -1457,7 +1457,7 @@ sub_8058138: @ 8058138
_08058152:
movs r0, 0x5
bl PlaySE
- ldr r0, =gUnknown_020244B0
+ ldr r0, =gMoveSelectionCursor
mov r10, r0
ldr r1, =gActiveBank
mov r8, r1
@@ -1594,7 +1594,7 @@ _0805824E:
adds r6, 0x1
cmp r6, 0x3
ble _0805824E
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldrb r0, [r7]
adds r0, r1
ldrb r0, [r0]
@@ -1758,7 +1758,7 @@ _08058392:
adds r6, 0x1
cmp r6, 0x3
ble _08058392
- ldr r4, =gUnknown_020244B0
+ ldr r4, =gMoveSelectionCursor
ldr r3, =gActiveBank
ldrb r0, [r3]
adds r0, r4
@@ -1892,7 +1892,7 @@ _080584A8:
adds r0, r1
ldr r1, =sub_8057BFC
str r1, [r0]
- ldr r3, =gUnknown_020244B0
+ ldr r3, =gMoveSelectionCursor
ldrb r0, [r2]
adds r0, r3
ldr r1, =gUnknown_03005D74
@@ -1915,7 +1915,7 @@ _08058500:
ldr r0, =gUnknown_03005D74
ldrb r0, [r0]
bl battle_menu_cursor_related
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r1
@@ -1947,7 +1947,7 @@ _08058554:
bne _0805856A
b _080586E8
_0805856A:
- ldr r0, =gUnknown_020244B0
+ ldr r0, =gMoveSelectionCursor
ldr r1, =gActiveBank
ldrb r1, [r1]
adds r1, r0
@@ -1990,7 +1990,7 @@ _080585BA:
bcc _080585C8
b _080586E8
_080585C8:
- ldr r0, =gUnknown_020244B0
+ ldr r0, =gMoveSelectionCursor
ldr r1, =gActiveBank
ldrb r1, [r1]
adds r1, r0
@@ -2010,7 +2010,7 @@ _080585E8:
ands r0, r2
cmp r0, 0
beq _080586E8
- ldr r0, =gUnknown_020244B0
+ ldr r0, =gMoveSelectionCursor
ldr r1, =gActiveBank
ldrb r1, [r1]
adds r1, r0
@@ -2034,7 +2034,7 @@ _0805862C:
strb r0, [r4]
movs r0, 0x5
bl PlaySE
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
@@ -2064,7 +2064,7 @@ _0805865C:
ldrb r1, [r1]
cmp r0, r1
bcs _080586E8
- ldr r0, =gUnknown_020244B0
+ ldr r0, =gMoveSelectionCursor
ldr r1, =gActiveBank
ldrb r1, [r1]
adds r1, r0
@@ -2087,7 +2087,7 @@ _080586AA:
strb r0, [r4]
movs r0, 0x5
bl PlaySE
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
@@ -2123,7 +2123,7 @@ sub_80586F8: @ 80586F8
ldrb r0, [r0]
cmp r0, 0
bne _0805875C
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08058798
@@ -2137,7 +2137,7 @@ sub_80586F8: @ 80586F8
negs r0, r0
ands r0, r1
strb r0, [r2]
- ldr r0, =gUnknown_03005D00
+ ldr r0, =gPreBattleCallback1
ldr r0, [r0]
str r0, [r3]
ldr r0, =sub_8038D64
@@ -2166,7 +2166,7 @@ _0805875C:
negs r0, r0
ands r0, r1
strb r0, [r2]
- ldr r0, =gUnknown_03005D00
+ ldr r0, =gPreBattleCallback1
ldr r0, [r0]
str r0, [r3]
ldr r0, =sub_8038D64
@@ -2233,7 +2233,7 @@ _08058810:
negs r0, r0
ands r0, r1
strb r0, [r3]
- ldr r0, =gUnknown_03005D00
+ ldr r0, =gPreBattleCallback1
ldr r0, [r0]
str r0, [r2]
ldr r0, [r2, 0x8]
@@ -2344,7 +2344,7 @@ _08058908:
thumb_func_start sub_8058924
sub_8058924: @ 8058924
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r1, [r4]
ldr r3, =gActiveBank
ldrb r0, [r3]
@@ -2385,11 +2385,11 @@ sub_805896C: @ 805896C
mov r5, r8
push {r5-r7}
movs r7, 0
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08058998
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _080589D0
@@ -2452,7 +2452,7 @@ _08058A0A:
cmp r7, 0
beq _08058B08
_08058A0E:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
mov r9, r0
ldr r0, [r0]
mov r6, r10
@@ -2541,7 +2541,7 @@ _08058A0E:
ldr r4, =gPlayerParty
adds r0, r4
bl sub_805E990
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08058AE4
@@ -2593,7 +2593,7 @@ sub_8058B40: @ 8058B40
movs r0, 0
mov r9, r0
mov r8, r0
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r7, =gActiveBank
ldrb r2, [r7]
@@ -2672,7 +2672,7 @@ _08058BB2:
ands r0, r1
cmp r0, 0
bne _08058C68
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08058C38
@@ -2697,7 +2697,7 @@ _08058BB2:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r7]
eors r0, r6
bl sub_8076918
@@ -2705,7 +2705,7 @@ _08058BB2:
eors r0, r6
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_08058C38:
ldr r5, =gHealthBoxesIds
ldr r4, =gActiveBank
@@ -2721,15 +2721,15 @@ _08058C38:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_08058C68:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -2743,7 +2743,7 @@ _08058C68:
orrs r1, r2
strb r1, [r0, 0x1]
_08058C82:
- ldr r5, =gUnknown_020244D0
+ ldr r5, =gBattleSpritesDataPtr
ldr r0, [r5]
ldr r4, =gActiveBank
ldrb r2, [r4]
@@ -2801,7 +2801,7 @@ _08058D08:
lsls r2, 1
bl m4aMPlayVolumeControl
_08058D14:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -2817,11 +2817,11 @@ _08058D14:
movs r0, 0x1
mov r9, r0
_08058D32:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08058D52
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08058DAC
@@ -2915,7 +2915,7 @@ _08058E0A:
mov r0, r8
cmp r0, 0
beq _08058EAA
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08058E48
@@ -2950,7 +2950,7 @@ _08058E48:
ldr r1, =gSprites
adds r0, r1
bl DestroySprite
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r2, [r0, 0x8]
ldrb r1, [r2, 0x9]
@@ -3015,7 +3015,7 @@ sub_8058EDC: @ 8058EDC
ldr r0, =SpriteCallbackDummy
cmp r4, r0
bne _08058F94
- ldr r5, =gUnknown_020244D0
+ ldr r5, =gBattleSpritesDataPtr
ldr r0, [r5]
ldr r1, [r0, 0x4]
lsls r0, r3, 1
@@ -3098,7 +3098,7 @@ _08058F94:
thumb_func_start sub_8058FC0
sub_8058FC0: @ 8058FC0
push {r4,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r4, =gActiveBank
ldrb r1, [r4]
@@ -3142,7 +3142,7 @@ _0805900E:
thumb_func_start sub_805902C
sub_805902C: @ 805902C
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -3207,13 +3207,13 @@ _0805905E:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r5]
bl sub_8076918
ldrb r0, [r5]
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
ldr r1, =gBattleBankFunc
ldrb r0, [r5]
lsls r0, 2
@@ -3267,7 +3267,7 @@ bx_t1_healthbar_update: @ 8059130
ldrb r0, [r5]
adds r0, r6
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r1, r4, 16
movs r0, 0x1
@@ -3278,7 +3278,7 @@ bx_t1_healthbar_update: @ 8059130
adds r0, r6
ldrb r0, [r0]
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
b _08059192
.pool
_08059178:
@@ -3338,7 +3338,7 @@ sub_80591B8: @ 80591B8
str r7, [sp, 0x8]
ldrh r2, [r1, 0xA]
str r2, [sp, 0xC]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3413,9 +3413,9 @@ _080591FE:
lsrs r2, 16
movs r0, 0x1
movs r1, 0xB
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
strb r5, [r4]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3557,7 +3557,7 @@ sub_8059330: @ 8059330
negs r0, r0
str r0, [sp]
mov r0, r10
- bl sub_807294C
+ bl SetBattleBarStruct
movs r0, 0x21
bl PlaySE
ldr r0, =sub_8059400
@@ -3616,7 +3616,7 @@ _08059430:
lsls r4, 16
lsrs r4, 16
ldrb r0, [r5]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r4, 16
movs r0, 0x1
@@ -3686,7 +3686,7 @@ _08059430:
lsrs r2, 16
movs r0, 0x1
movs r1, 0xB
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
strb r5, [r4]
ldr r0, =sub_8059544
str r0, [r6]
@@ -3729,7 +3729,7 @@ sub_8059544: @ 8059544
adds r0, r1
ldrb r4, [r0, 0xC]
ldrb r6, [r0, 0x8]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3774,7 +3774,7 @@ sub_80595A4: @ 80595A4
lsls r0, 3
adds r2, r0, r1
ldrb r5, [r2, 0xC]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r5, 1
@@ -3795,7 +3795,7 @@ sub_80595A4: @ 80595A4
adds r0, r7, 0
movs r1, 0x38
bl GetMonData
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3814,7 +3814,7 @@ sub_80595A4: @ 80595A4
ldrb r0, [r0]
adds r1, r7, 0
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
b _08059638
.pool
_08059624:
@@ -3826,7 +3826,7 @@ _08059624:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
_08059638:
ldr r0, =gTasks
lsls r1, r6, 2
@@ -3930,7 +3930,7 @@ sub_80596A8: @ 80596A8
ldrb r0, [r4]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl PlayerBufferExecCompleted
_08059724:
pop {r4-r6}
@@ -3942,7 +3942,7 @@ _08059724:
thumb_func_start sub_8059744
sub_8059744: @ 8059744
push {r4-r6,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r2, [r6]
@@ -3977,7 +3977,7 @@ sub_8059744: @ 8059744
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl PlayerBufferExecCompleted
_08059798:
pop {r4-r6}
@@ -4042,7 +4042,7 @@ sub_8059828: @ 8059828
push {lr}
ldr r0, =gMain
ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
+ ldr r0, =BattleMainCB2
cmp r1, r0
bne _08059898
ldr r0, =gPaletteFade
@@ -4059,14 +4059,14 @@ sub_8059828: @ 8059828
ldrb r1, [r0]
ldr r2, =gUnknown_0203CF00
movs r0, 0x1
- bl dp01_build_cmdbuf_x22_a_three_bytes
+ bl EmitCmd34
b _0805987A
.pool
_08059870:
movs r0, 0x1
movs r1, 0x6
movs r2, 0
- bl dp01_build_cmdbuf_x22_a_three_bytes
+ bl EmitCmd34
_0805987A:
ldr r1, =gBattleBufferA
ldr r0, =gActiveBank
@@ -4118,7 +4118,7 @@ sub_80598E0: @ 80598E0
push {lr}
ldr r0, =gMain
ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
+ ldr r0, =BattleMainCB2
cmp r1, r0
bne _08059906
ldr r0, =gPaletteFade
@@ -4130,7 +4130,7 @@ sub_80598E0: @ 80598E0
ldr r0, =gScriptItemId
ldrh r1, [r0]
movs r0, 0x1
- bl dp01_build_cmdbuf_x23_aa_0
+ bl EmitCmd35
bl PlayerBufferExecCompleted
_08059906:
pop {r0}
@@ -4145,7 +4145,7 @@ bx_wait_t1: @ 805991C
ldrb r0, [r0]
cmp r0, 0
beq _08059942
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -4244,11 +4244,11 @@ sub_80599D4: @ 80599D4
movs r0, 0x5
bl PlaySE
ldrb r0, [r4]
- bl sub_8056BAC
+ bl BattleDestroyCursorAt
movs r0, 0
strb r0, [r4]
movs r0, 0
- bl sub_8056B74
+ bl BattleCreateCursorAt
_08059A02:
ldr r0, =gMain
ldrh r1, [r0, 0x2E]
@@ -4263,11 +4263,11 @@ _08059A02:
movs r0, 0x5
bl PlaySE
ldrb r0, [r4]
- bl sub_8056BAC
+ bl BattleDestroyCursorAt
movs r0, 0x1
strb r0, [r4]
movs r0, 0x1
- bl sub_8056B74
+ bl BattleCreateCursorAt
_08059A2C:
ldr r0, =gMain
ldrh r1, [r0, 0x2E]
@@ -4291,14 +4291,14 @@ _08059A2C:
movs r0, 0x1
movs r1, 0xE
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
b _08059A76
.pool
_08059A6C:
movs r0, 0x1
movs r1, 0xD
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
_08059A76:
bl PlayerBufferExecCompleted
_08059A7A:
@@ -4355,7 +4355,7 @@ _08059AC4:
lsls r1, 24
lsrs r1, 24
adds r0, r7, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldrh r0, [r4]
cmp r0, 0
beq _08059AF4
@@ -4382,7 +4382,7 @@ sub_8059B18: @ 8059B18
bl StringCopy
adds r0, r4, 0
movs r1, 0x7
- bl battle_show_message_maybe
+ bl sub_814F9EC
pop {r4}
pop {r0}
bx r0
@@ -4401,13 +4401,13 @@ sub_8059B3C: @ 8059B3C
ldrb r0, [r0]
cmp r0, 0x1
beq _08059B98
- bl sub_814FBAC
+ bl SetPpNumbersPaletteInMoveSelection
ldrb r1, [r7]
lsls r4, r1, 9
adds r0, r5, 0x4
adds r4, r0
ldr r6, =gDisplayedStringBattle
- ldr r5, =gUnknown_020244B0
+ ldr r5, =gMoveSelectionCursor
adds r1, r5
adds r0, r4, 0
adds r0, 0x8
@@ -4432,7 +4432,7 @@ sub_8059B3C: @ 8059B3C
bl ConvertIntToDecimalStringN
adds r0, r6, 0
movs r1, 0x9
- bl battle_show_message_maybe
+ bl sub_814F9EC
_08059B98:
pop {r4-r7}
pop {r0}
@@ -4462,7 +4462,7 @@ sub_8059BB0: @ 8059BB0
strb r1, [r0]
adds r0, 0x1
ldr r3, =gBattleMoves
- ldr r2, =gUnknown_020244B0
+ ldr r2, =gMoveSelectionCursor
ldrb r1, [r5]
adds r1, r2
ldrb r1, [r1]
@@ -4481,7 +4481,7 @@ sub_8059BB0: @ 8059BB0
bl StringCopy
adds r0, r6, 0
movs r1, 0xA
- bl battle_show_message_maybe
+ bl sub_814F9EC
pop {r4-r6}
pop {r0}
bx r0
@@ -4561,8 +4561,8 @@ battle_menu_cursor_related: @ 8059C70
.pool
thumb_func_end battle_menu_cursor_related
- thumb_func_start sub_8059CB4
-sub_8059CB4: @ 8059CB4
+ thumb_func_start ActionSelectionCreateCursorAt
+ActionSelectionCreateCursorAt: @ 8059CB4
push {r4,lr}
sub sp, 0x10
adds r3, r0, 0
@@ -4595,10 +4595,10 @@ sub_8059CB4: @ 8059CB4
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_8059CB4
+ thumb_func_end ActionSelectionCreateCursorAt
- thumb_func_start sub_8059CF8
-sub_8059CF8: @ 8059CF8
+ thumb_func_start ActionSelectionDestroyCursorAt
+ActionSelectionDestroyCursorAt: @ 8059CF8
push {lr}
sub sp, 0x10
adds r3, r0, 0
@@ -4632,12 +4632,12 @@ sub_8059CF8: @ 8059CF8
pop {r0}
bx r0
.pool
- thumb_func_end sub_8059CF8
+ thumb_func_end ActionSelectionDestroyCursorAt
thumb_func_start sub_8059D40
sub_8059D40: @ 8059D40
push {lr}
- ldr r0, =sub_80A92F8
+ ldr r0, =ReshowBattleScreenAfterMenu
bl SetMainCallback2
pop {r0}
bx r0
@@ -4647,7 +4647,7 @@ sub_8059D40: @ 8059D40
thumb_func_start sub_8059D50
sub_8059D50: @ 8059D50
push {lr}
- ldr r0, =sub_80A92F8
+ ldr r0, =ReshowBattleScreenAfterMenu
bl SetMainCallback2
pop {r0}
bx r0
@@ -4657,7 +4657,7 @@ sub_8059D50: @ 8059D50
thumb_func_start sub_8059D60
sub_8059D60: @ 8059D60
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -4681,7 +4681,7 @@ _08059D82:
thumb_func_start bx_8030B2C
bx_8030B2C: @ 8059D90
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -4711,14 +4711,14 @@ b_link_standby_message: @ 8059DC0
ands r0, r1
cmp r0, 0
beq _08059DE0
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r0, =gText_LinkStandby
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
_08059DE0:
pop {r0}
bx r0
@@ -4772,7 +4772,7 @@ _08059E4E:
lsrs r1, 16
movs r0, 0x1
mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl PlayerBufferExecCompleted
add sp, 0x100
pop {r4-r6}
@@ -5713,7 +5713,7 @@ _0805A66A:
ldrb r1, [r0]
movs r0, 0x1
adds r2, r4, 0
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl PlayerBufferExecCompleted
add sp, 0x58
pop {r4-r7}
@@ -6866,7 +6866,7 @@ sub_805B164: @ 805B164
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldr r2, =gSprites
ldr r0, =gBankSpriteIds
ldrb r3, [r4]
@@ -6923,12 +6923,12 @@ sub_805B1CC: @ 805B1CC
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
- ldr r1, =gUnknown_020244AC
+ bl BattleLoadPlayerMonSpriteGfx
+ ldr r1, =gActionSelectionCursor
ldrb r0, [r5]
adds r0, r1
strb r4, [r0]
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldrb r0, [r5]
adds r0, r1
strb r4, [r0]
@@ -7124,7 +7124,7 @@ sub_805B3D4: @ 805B3D4
ldrb r3, [r0]
cmp r3, 0
bne _0805B41C
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r2, 1
@@ -7162,7 +7162,7 @@ _0805B41C:
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl PlayerBufferExecCompleted
_0805B452:
pop {r4-r6}
@@ -7174,7 +7174,7 @@ _0805B452:
thumb_func_start sub_805B464
sub_805B464: @ 805B464
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -7371,11 +7371,11 @@ _0805B5E0:
beq _0805B618
movs r0, 0x5A
mov r9, r0
- ldr r1, =gUnknown_083054E0
+ ldr r1, =gTrainerFrontPicCoords
b _0805B642
.pool
_0805B618:
- ldr r1, =gUnknown_08305D2C
+ ldr r1, =gTrainerBackPicCoords
lsls r0, r4, 2
adds r0, r1
ldrb r1, [r0]
@@ -7392,7 +7392,7 @@ _0805B618:
_0805B63C:
movs r0, 0x50
mov r9, r0
- ldr r1, =gUnknown_08305D2C
+ ldr r1, =gTrainerBackPicCoords
_0805B642:
lsls r0, r4, 2
adds r0, r1
@@ -7542,7 +7542,7 @@ _0805B794:
ldr r5, =gActiveBank
ldrb r1, [r5]
adds r0, r4, 0
- bl sub_805DF84
+ bl LoadBackTrainerBankSpriteGfx
ldrb r0, [r5]
bl GetBankIdentity
adds r1, r0, 0
@@ -7724,7 +7724,7 @@ _0805B926:
ldr r5, =gActiveBank
ldrb r1, [r5]
adds r0, r4, 0
- bl sub_805DF84
+ bl LoadBackTrainerBankSpriteGfx
ldrb r0, [r5]
bl GetBankIdentity
adds r1, r0, 0
@@ -7733,7 +7733,7 @@ _0805B926:
adds r0, r4, 0
bl sub_806A12C
ldr r0, =gUnknown_0202499C
- ldr r1, =gUnknown_08305D2C
+ ldr r1, =gTrainerBackPicCoords
lsls r4, 2
adds r4, r1
ldrb r1, [r4]
@@ -7890,7 +7890,7 @@ sub_805B9F8: @ 805B9F8
thumb_func_start sub_805BAB8
sub_805BAB8: @ 805BAB8
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -8013,7 +8013,7 @@ sub_805BBA4: @ 805BBA4
thumb_func_start sub_805BBC4
sub_805BBC4: @ 805BBC4
push {r4,r5,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x8]
movs r0, 0x4
@@ -8024,7 +8024,7 @@ sub_805BBC4: @ 805BBC4
ldr r5, =gActiveBank
ldrb r4, [r5]
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
@@ -8054,7 +8054,7 @@ sub_805BC18: @ 805BC18
adds r1, 0x1
adds r0, r1
ldrb r1, [r0]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
strb r1, [r0, 0x8]
@@ -8063,7 +8063,7 @@ sub_805BC18: @ 805BC18
strb r0, [r1]
ldrb r4, [r5]
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
@@ -8134,7 +8134,7 @@ _0805BCBE:
ldrb r0, [r0]
lsls r0, 8
orrs r6, r0
- ldr r0, =gUnknown_02038432
+ ldr r0, =gAnimMoveTurn
mov r8, r0
mov r0, r12
adds r0, 0x3
@@ -8142,7 +8142,7 @@ _0805BCBE:
ldrb r0, [r1]
mov r1, r8
strb r0, [r1]
- ldr r3, =gMovePowerMoveAnim
+ ldr r3, =gAnimMovePower
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -8156,7 +8156,7 @@ _0805BCBE:
lsls r0, 8
orrs r2, r0
strh r2, [r3]
- ldr r3, =gMoveDmgMoveAnim
+ ldr r3, =gAnimMoveDmg
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -8182,7 +8182,7 @@ _0805BCBE:
lsls r0, 24
orrs r2, r0
str r2, [r3]
- ldr r2, =gHappinessMoveAnim
+ ldr r2, =gAnimFriendship
ldrb r0, [r5]
lsls r0, 9
mov r1, r12
@@ -8204,7 +8204,7 @@ _0805BCBE:
lsls r0, 8
orrs r2, r0
strh r2, [r4]
- ldr r7, =gDisableStructMoveAnim
+ ldr r7, =gAnimDisableStructPtr
ldrb r1, [r5]
lsls r1, 9
mov r0, r12
@@ -8229,7 +8229,7 @@ _0805BCBE:
b _0805BDE4
.pool
_0805BDBC:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r1, [r5]
ldr r2, [r0, 0x4]
@@ -8282,7 +8282,7 @@ bx_move_anim_1: @ 805BDFC
adds r1, r2
ldrb r1, [r1]
mov r8, r1
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r5, [r7]
ldr r1, [r5, 0x4]
lsls r0, r3, 1
@@ -8341,7 +8341,7 @@ _0805BE94:
movs r0, 0
bl sub_805EB9C
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r0, [r7]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -8390,7 +8390,7 @@ _0805BEBE:
ands r0, r2
strb r0, [r1]
_0805BF0C:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -8444,10 +8444,10 @@ _0805BF70:
thumb_func_start sub_805BF80
sub_805BF80: @ 805BF80
push {r4,r5,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r5, =gActiveBank
ldrb r4, [r5]
@@ -8458,7 +8458,7 @@ sub_805BF80: @ 805BF80
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r5]
lsls r0, 2
@@ -8503,9 +8503,9 @@ sub_805C004: @ 805C004
lsrs r1, r0, 24
cmp r1, 0
bne _0805C02A
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
movs r0, 0xA0
strh r0, [r1]
ldr r1, =gBattleBankFunc
@@ -8534,27 +8534,27 @@ dp01t_12_6_battle_menu: @ 805C044
bl sub_817F2A8
ldr r0, =gText_BattleMenu
movs r1, 0x2
- bl battle_show_message_maybe
+ bl sub_814F9EC
movs r4, 0
_0805C062:
lsls r0, r4, 24
lsrs r0, 24
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
adds r4, 0x1
cmp r4, 0x3
ble _0805C062
- ldr r1, =gUnknown_020244AC
+ ldr r1, =gActionSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
movs r1, 0
- bl sub_8059CB4
+ bl ActionSelectionCreateCursorAt
ldr r0, =gText_WhatWillPkmnDo
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0x1
- bl battle_show_message_maybe
+ bl sub_814F9EC
pop {r4}
pop {r0}
bx r0
@@ -8580,12 +8580,12 @@ sub_805C0B0: @ 805C0B0
bl sub_8056A3C
ldr r0, =gText_BattleYesNoChoice
movs r1, 0xC
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gUnknown_03005D74
movs r0, 0x1
strb r0, [r1]
movs r0, 0x1
- bl sub_8056B74
+ bl BattleCreateCursorAt
ldr r1, =gBattleBankFunc
ldrb r0, [r4]
lsls r0, 2
@@ -8611,9 +8611,9 @@ sub_805C114: @ 805C114
lsrs r1, r0, 24
cmp r1, 0
bne _0805C13E
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
movs r2, 0xA0
lsls r2, 1
adds r0, r2, 0
@@ -8648,7 +8648,7 @@ sub_805C158: @ 805C158
lsls r0, 24
cmp r0, 0
bne _0805C194
- ldr r1, =gUnknown_0203BD30
+ ldr r1, =gBattlePalaceMoveSelectionRngValue
ldr r0, =gRngValue
ldr r0, [r0]
str r0, [r1]
@@ -8658,7 +8658,7 @@ sub_805C158: @ 805C158
lsrs r2, 16
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl PlayerBufferExecCompleted
_0805C194:
pop {r0}
@@ -8715,7 +8715,7 @@ sub_805C210: @ 805C210
ldr r1, =gUnknown_03005D74
movs r0, 0xFF
strb r0, [r1]
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
@@ -8826,7 +8826,7 @@ _0805C2C8:
lsrs r1, 24
movs r0, 0x1
mov r2, r12
- bl dp01_build_cmdbuf_x22_a_three_bytes
+ bl EmitCmd34
bl PlayerBufferExecCompleted
b _0805C3BC
.pool
@@ -8913,7 +8913,7 @@ _0805C3BC:
sub_805C3EC: @ 805C3EC
push {lr}
sub sp, 0x4
- bl sub_805EA60
+ bl BattleMusicStop
movs r0, 0x1
negs r0, r0
movs r1, 0
@@ -8936,7 +8936,7 @@ sub_805C410: @ 805C410
push {r6,r7}
sub sp, 0x4
movs r0, 0
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
ldr r3, =gBattleBufferA
ldr r0, =gActiveBank
mov r9, r0
@@ -8992,7 +8992,7 @@ _0805C44A:
ldrb r1, [r1]
str r7, [sp]
mov r2, r8
- bl sub_807294C
+ bl SetBattleBarStruct
b _0805C4F2
.pool
_0805C4B4:
@@ -9016,14 +9016,14 @@ _0805C4B4:
ldrb r1, [r1]
str r7, [sp]
movs r3, 0
- bl sub_807294C
+ bl SetBattleBarStruct
mov r2, r9
ldrb r0, [r2]
adds r0, r4
ldrb r0, [r0]
movs r1, 0
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
_0805C4F2:
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
@@ -9067,7 +9067,7 @@ sub_805C528: @ 805C528
.pool
_0805C560:
movs r0, 0x1
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
adds r0, r4, 0
movs r1, 0xB
bl GetMonData
@@ -9130,9 +9130,9 @@ sub_805C5C4: @ 805C5C4
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0x9
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r2, [r4]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
lsls r1, r2, 1
@@ -9378,7 +9378,7 @@ sub_805C80C: @ 805C80C
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl PlayerBufferExecCompleted
pop {r0}
bx r0
@@ -9390,7 +9390,7 @@ sub_805C820: @ 805C820
movs r0, 0x1
movs r1, 0
movs r2, 0
- bl dp01_build_cmdbuf_x22_a_three_bytes
+ bl EmitCmd34
bl PlayerBufferExecCompleted
pop {r0}
bx r0
@@ -9401,7 +9401,7 @@ sub_805C834: @ 805C834
push {lr}
movs r0, 0x1
movs r1, 0
- bl dp01_build_cmdbuf_x23_aa_0
+ bl EmitCmd35
bl PlayerBufferExecCompleted
pop {r0}
bx r0
@@ -9412,7 +9412,7 @@ sub_805C848: @ 805C848
push {lr}
movs r0, 0x1
movs r1, 0
- bl dp01_build_cmdbuf_x24_aa_0
+ bl EmitCmd36
bl PlayerBufferExecCompleted
pop {r0}
bx r0
@@ -9595,7 +9595,7 @@ sub_805C9B0: @ 805C9B0
ldrb r0, [r0]
cmp r0, 0
beq _0805C9EC
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -9794,7 +9794,7 @@ dp01t_2F_1_pokemon_enter: @ 805CA80
adds r1, r4
ldrb r0, [r7]
strh r0, [r1, 0x8]
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r7]
ldr r1, [r0, 0x4]
@@ -9860,7 +9860,7 @@ sub_805CC00: @ 805CC00
ldr r1, =gPlayerParty
adds r0, r1
adds r1, r4, 0
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldr r0, =gBankSpriteIds
adds r4, r0
ldrb r1, [r4]
@@ -9906,7 +9906,7 @@ _0805CC94:
mov r9, r0
ldrh r0, [r1, 0x8]
strb r0, [r7]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0805CCB4
@@ -9965,7 +9965,7 @@ _0805CCE4:
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r7]
movs r1, 0
bl sub_805B258
@@ -10015,7 +10015,7 @@ sub_805CD74: @ 805CD74
b _0805CE18
.pool
_0805CDA4:
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r5, =gActiveBank
ldrb r1, [r5]
@@ -10038,7 +10038,7 @@ _0805CDA4:
subs r4, 0x2
adds r3, r4
ldrb r3, [r3]
- bl sub_80735DC
+ bl CreatePartyStatusSummarySprites
ldr r2, =gUnknown_020244B4
ldrb r1, [r5]
adds r1, r2
@@ -10083,7 +10083,7 @@ _0805CE18:
thumb_func_start sub_805CE38
sub_805CE38: @ 805CE38
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -10119,7 +10119,7 @@ _0805CE70:
thumb_func_start sub_805CE80
sub_805CE80: @ 805CE80
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -10172,7 +10172,7 @@ dp01t_33_1_enemy_move: @ 805CEF4
push {r4,lr}
ldr r4, =gActiveBank
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _0805CF3A
@@ -10333,21 +10333,21 @@ _0805D054:
beq _0805D07C
b _0805D084
_0805D05A:
- ldr r0, =gUnknown_020244AC
+ ldr r0, =gActionSelectionCursor
adds r0, r3, r0
strb r2, [r0]
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldrb r0, [r4]
adds r0, r1
strb r2, [r0]
b _0805D084
.pool
_0805D074:
- ldr r0, =gUnknown_020244AC
+ ldr r0, =gActionSelectionCursor
b _0805D07E
.pool
_0805D07C:
- ldr r0, =gUnknown_020244B0
+ ldr r0, =gMoveSelectionCursor
_0805D07E:
adds r0, r3, r0
movs r1, 0
diff --git a/asm/battle_controller_player_partner.s b/asm/battle_controller_player_partner.s
index 6b5a14f95..f82e1c3c3 100644
--- a/asm/battle_controller_player_partner.s
+++ b/asm/battle_controller_player_partner.s
@@ -132,7 +132,7 @@ _081BAEE8:
thumb_func_start sub_81BAF00
sub_81BAF00: @ 81BAF00
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r1, [r4]
ldr r3, =gActiveBank
ldrb r0, [r3]
@@ -169,11 +169,11 @@ _081BAF38:
sub_81BAF48: @ 81BAF48
push {r4-r6,lr}
movs r6, 0
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _081BAF6C
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _081BAFA0
@@ -240,7 +240,7 @@ _081BAFD8:
_081BAFE4:
cmp r6, 0
beq _081BB00A
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -271,7 +271,7 @@ sub_81BB02C: @ 81BB02C
mov r6, r9
mov r5, r8
push {r5-r7}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
mov r12, r0
ldr r0, [r0]
ldr r7, =gActiveBank
@@ -349,7 +349,7 @@ _081BB07A:
lsls r0, 2
adds r0, r2
strb r6, [r0, 0x9]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _081BB134
@@ -384,7 +384,7 @@ _081BB07A:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r7]
mov r1, r8
eors r0, r1
@@ -394,7 +394,7 @@ _081BB07A:
eors r0, r1
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_081BB134:
ldr r1, =gUnknown_03005D7C
ldr r4, =gActiveBank
@@ -420,14 +420,14 @@ _081BB134:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
- ldr r0, =gUnknown_020244D0
+ bl SetHealthboxSpriteVisible
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r2, [r0, 0x8]
ldrb r1, [r2, 0x9]
@@ -499,7 +499,7 @@ bx_t3_healthbar_update: @ 81BB214
ldrb r0, [r5]
adds r0, r6
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r1, r4, 16
movs r0, 0x1
@@ -510,7 +510,7 @@ bx_t3_healthbar_update: @ 81BB214
adds r0, r6
ldrb r0, [r0]
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
b _081BB276
.pool
_081BB25C:
@@ -570,7 +570,7 @@ sub_81BB29C: @ 81BB29C
str r7, [sp, 0x8]
ldrh r2, [r1, 0xA]
str r2, [sp, 0xC]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -645,9 +645,9 @@ _081BB2E2:
lsrs r2, 16
movs r0, 0x1
movs r1, 0xB
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
strb r5, [r4]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -789,7 +789,7 @@ sub_81BB414: @ 81BB414
negs r0, r0
str r0, [sp]
mov r0, r10
- bl sub_807294C
+ bl SetBattleBarStruct
movs r0, 0x21
bl PlaySE
ldr r0, =sub_81BB4E4
@@ -848,7 +848,7 @@ _081BB514:
lsls r4, 16
lsrs r4, 16
ldrb r0, [r5]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r4, 16
movs r0, 0x1
@@ -918,7 +918,7 @@ _081BB514:
lsrs r2, 16
movs r0, 0x1
movs r1, 0xB
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
strb r5, [r4]
ldr r0, =sub_81BB628
str r0, [r6]
@@ -961,7 +961,7 @@ sub_81BB628: @ 81BB628
adds r0, r1
ldrb r4, [r0, 0xC]
ldrb r6, [r0, 0x8]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1006,7 +1006,7 @@ sub_81BB688: @ 81BB688
lsls r0, 3
adds r2, r0, r1
ldrb r5, [r2, 0xC]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r5, 1
@@ -1027,7 +1027,7 @@ sub_81BB688: @ 81BB688
adds r0, r7, 0
movs r1, 0x38
bl GetMonData
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1046,7 +1046,7 @@ sub_81BB688: @ 81BB688
ldrb r0, [r0]
adds r1, r7, 0
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
b _081BB71C
.pool
_081BB708:
@@ -1058,7 +1058,7 @@ _081BB708:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
_081BB71C:
ldr r0, =gTasks
lsls r1, r6, 2
@@ -1162,7 +1162,7 @@ sub_81BB78C: @ 81BB78C
ldrb r0, [r4]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl PlayerPartnerBufferExecCompleted
_081BB808:
pop {r4-r6}
@@ -1174,7 +1174,7 @@ _081BB808:
thumb_func_start sub_81BB828
sub_81BB828: @ 81BB828
push {r4-r6,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r2, [r6]
@@ -1209,7 +1209,7 @@ sub_81BB828: @ 81BB828
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl PlayerPartnerBufferExecCompleted
_081BB87C:
pop {r4-r6}
@@ -1312,7 +1312,7 @@ sub_81BB92C: @ 81BB92C
bne _081BB97E
adds r0, r3, 0
bl sub_805E408
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r2, [r4]
ldr r1, [r0]
@@ -1344,7 +1344,7 @@ _081BB97E:
thumb_func_start dp01t_35_3_free_vram
dp01t_35_3_free_vram: @ 81BB9A0
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -1383,7 +1383,7 @@ sub_81BB9F4: @ 81BB9F4
push {r4-r7,lr}
mov r7, r8
push {r7}
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r7, =gActiveBank
ldrb r1, [r7]
@@ -1453,13 +1453,13 @@ sub_81BB9F4: @ 81BB9F4
muls r1, r6
adds r1, r5
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r7]
bl sub_8076918
ldrb r0, [r7]
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
ldr r1, =gBattleBankFunc
ldrb r0, [r7]
lsls r0, 2
@@ -1478,7 +1478,7 @@ _081BBAB0:
thumb_func_start sub_81BBAE8
sub_81BBAE8: @ 81BBAE8
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r4, =gActiveBank
ldrb r2, [r4]
@@ -1596,7 +1596,7 @@ _081BBBF2:
thumb_func_start sub_81BBC04
sub_81BBC04: @ 81BBC04
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1620,7 +1620,7 @@ _081BBC26:
thumb_func_start bx_80E8A6C
bx_80E8A6C: @ 81BBC34
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1688,7 +1688,7 @@ _081BBCBE:
lsrs r1, 16
movs r0, 0x1
mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl PlayerPartnerBufferExecCompleted
add sp, 0x100
pop {r4-r6}
@@ -3729,7 +3729,7 @@ sub_81BCF58: @ 81BCF58
muls r0, r5
ldr r4, =gPlayerParty
adds r0, r4
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r6]
lsls r0, 1
add r0, r8
@@ -3858,7 +3858,7 @@ sub_81BD074: @ 81BD074
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r5]
lsls r1, r0, 9
adds r1, r6
@@ -4051,7 +4051,7 @@ sub_81BD260: @ 81BD260
ldrb r3, [r0]
cmp r3, 0
bne _081BD2A8
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r2, 1
@@ -4089,7 +4089,7 @@ _081BD2A8:
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl PlayerPartnerBufferExecCompleted
_081BD2DE:
pop {r4-r6}
@@ -4101,7 +4101,7 @@ _081BD2DE:
thumb_func_start sub_81BD2F0
sub_81BD2F0: @ 81BD2F0
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4182,7 +4182,7 @@ sub_81BD37C: @ 81BD37C
movs r4, 0x7
movs r0, 0x5A
mov r9, r0
- ldr r0, =gUnknown_08305D2C
+ ldr r0, =gTrainerBackPicCoords
ldrb r1, [r0, 0x1C]
b _081BD3BE
.pool
@@ -4193,7 +4193,7 @@ _081BD3A8:
lsrs r4, r0, 24
movs r0, 0x20
mov r9, r0
- ldr r1, =gUnknown_083054E0
+ ldr r1, =gTrainerFrontPicCoords
lsls r0, r4, 2
adds r0, r1
ldrb r1, [r0]
@@ -4213,7 +4213,7 @@ _081BD3BE:
ldr r5, =gActiveBank
ldrb r1, [r5]
adds r0, r4, 0
- bl sub_805DF84
+ bl LoadBackTrainerBankSpriteGfx
ldrb r0, [r5]
bl GetBankIdentity
adds r1, r0, 0
@@ -4494,7 +4494,7 @@ sub_81BD5C8: @ 81BD5C8
thumb_func_start sub_81BD674
sub_81BD674: @ 81BD674
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4652,13 +4652,13 @@ _081BD7A2:
ldrb r1, [r1]
lsls r1, 8
orrs r0, r1
- ldr r5, =gUnknown_02038432
+ ldr r5, =gAnimMoveTurn
mov r1, r12
adds r1, 0x3
adds r2, r1
ldrb r1, [r2]
strb r1, [r5]
- ldr r4, =gMovePowerMoveAnim
+ ldr r4, =gAnimMovePower
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4672,7 +4672,7 @@ _081BD7A2:
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r4, =gMoveDmgMoveAnim
+ ldr r4, =gAnimMoveDmg
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4698,7 +4698,7 @@ _081BD7A2:
lsls r1, 24
orrs r3, r1
str r3, [r4]
- ldr r3, =gHappinessMoveAnim
+ ldr r3, =gAnimFriendship
ldrb r1, [r6]
lsls r1, 9
mov r2, r12
@@ -4720,7 +4720,7 @@ _081BD7A2:
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r3, =gDisableStructMoveAnim
+ ldr r3, =gAnimDisableStructPtr
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4743,7 +4743,7 @@ _081BD7A2:
b _081BD8B6
.pool
_081BD898:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -4790,7 +4790,7 @@ bx_move_anim_3: @ 81BD8C8
adds r1, r2
ldrb r1, [r1]
mov r8, r1
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r5, [r7]
ldr r1, [r5, 0x4]
lsls r0, r3, 1
@@ -4849,7 +4849,7 @@ _081BD960:
movs r0, 0
bl sub_805EB9C
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r0, [r7]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -4898,7 +4898,7 @@ _081BD98A:
ands r0, r2
strb r0, [r1]
_081BD9D8:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -4952,10 +4952,10 @@ _081BDA3C:
thumb_func_start sub_81BDA4C
sub_81BDA4C: @ 81BDA4C
push {r4,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r4, =gActiveBank
ldrb r0, [r4]
@@ -4966,7 +4966,7 @@ sub_81BDA4C: @ 81BDA4C
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r4]
lsls r0, 2
@@ -4990,7 +4990,7 @@ sub_81BDAA0: @ 81BDAA0
thumb_func_start sub_81BDAAC
sub_81BDAAC: @ 81BDAAC
push {lr}
- bl sub_8063880
+ bl AI_TrySwitchOrUseItem
bl PlayerPartnerBufferExecCompleted
pop {r0}
bx r0
@@ -5045,7 +5045,7 @@ _081BDB02:
cmp r0, 0
beq _081BDB3C
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r4, =gBankTarget
strb r0, [r4]
ldr r0, =gAbsentBankFlags
@@ -5059,7 +5059,7 @@ _081BDB02:
cmp r1, 0
beq _081BDB3C
movs r0, 0x3
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
strb r0, [r4]
_081BDB3C:
ldr r0, =gBankTarget
@@ -5068,7 +5068,7 @@ _081BDB3C:
orrs r2, r5
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl PlayerPartnerBufferExecCompleted
pop {r4-r6}
pop {r0}
@@ -5087,17 +5087,17 @@ sub_81BDB70: @ 81BDB70
thumb_func_start sub_81BDB7C
sub_81BDB7C: @ 81BDB7C
push {r4-r6,lr}
- bl sub_8063A90
+ bl GetMostSuitableMonToSwitchInto
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0x6
bne _081BDBD0
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r6, r0, 24
movs r0, 0x2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r5, r0, 24
movs r4, 0x3
@@ -5138,7 +5138,7 @@ _081BDBD0:
lsrs r1, 24
movs r0, 0x1
movs r2, 0
- bl dp01_build_cmdbuf_x22_a_three_bytes
+ bl EmitCmd34
bl PlayerPartnerBufferExecCompleted
pop {r4-r6}
pop {r0}
@@ -5162,7 +5162,7 @@ sub_81BDC10: @ 81BDC10
push {r6,r7}
sub sp, 0x4
movs r0, 0
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
ldr r3, =gBattleBufferA
ldr r0, =gActiveBank
mov r9, r0
@@ -5209,7 +5209,7 @@ sub_81BDC10: @ 81BDC10
ldrb r1, [r1]
str r7, [sp]
mov r2, r8
- bl sub_807294C
+ bl SetBattleBarStruct
b _081BDCCA
.pool
_081BDCA0:
@@ -5231,7 +5231,7 @@ _081BDCA0:
ldrb r1, [r1]
str r7, [sp]
movs r3, 0
- bl sub_807294C
+ bl SetBattleBarStruct
_081BDCCA:
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
@@ -5275,7 +5275,7 @@ sub_81BDD00: @ 81BDD00
.pool
_081BDD38:
movs r0, 0x1
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
adds r0, r4, 0
movs r1, 0xB
bl GetMonData
@@ -5338,9 +5338,9 @@ sub_81BDD9C: @ 81BDD9C
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0x9
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r2, [r4]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
lsls r1, r2, 1
@@ -5661,7 +5661,7 @@ sub_81BE03C: @ 81BE03C
ldrb r0, [r0]
cmp r0, 0
beq _081BE078
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -5880,7 +5880,7 @@ _081BE21A:
adds r1, r4
ldrb r0, [r5]
strh r0, [r1, 0x8]
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r5]
ldr r1, [r0, 0x4]
@@ -5950,7 +5950,7 @@ _081BE2F4:
mov r9, r0
ldrh r0, [r1, 0x8]
strb r0, [r7]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _081BE314
@@ -6009,7 +6009,7 @@ _081BE344:
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r7]
movs r1, 0
bl sub_81BD0E4
@@ -6059,7 +6059,7 @@ dp01t_30_3_80EB11C: @ 81BE3D4
b _081BE478
.pool
_081BE404:
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r5, =gActiveBank
ldrb r1, [r5]
@@ -6082,7 +6082,7 @@ _081BE404:
subs r4, 0x2
adds r3, r4
ldrb r3, [r3]
- bl sub_80735DC
+ bl CreatePartyStatusSummarySprites
ldr r2, =gUnknown_020244B4
ldrb r1, [r5]
adds r1, r2
@@ -6127,7 +6127,7 @@ _081BE478:
thumb_func_start sub_81BE498
sub_81BE498: @ 81BE498
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -6163,7 +6163,7 @@ _081BE4D0:
thumb_func_start sub_81BE4E0
sub_81BE4E0: @ 81BE4E0
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -6207,7 +6207,7 @@ sub_81BE53C: @ 81BE53C
push {r4,lr}
ldr r4, =gActiveBank
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _081BE582
diff --git a/asm/battle_controller_recorded_opponent.s b/asm/battle_controller_recorded_opponent.s
index dc7fe7de5..f98c10a6c 100644
--- a/asm/battle_controller_recorded_opponent.s
+++ b/asm/battle_controller_recorded_opponent.s
@@ -157,7 +157,7 @@ _0818661A:
thumb_func_start sub_8186630
sub_8186630: @ 8186630
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r1, [r4]
ldr r3, =gActiveBank
ldrb r0, [r3]
@@ -198,11 +198,11 @@ sub_8186678: @ 8186678
push {r6,r7}
movs r0, 0
mov r9, r0
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _081866A4
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _081866F8
@@ -311,7 +311,7 @@ _0818676A:
lsrs r3, r0, 24
cmp r3, 0x1
bne _08186816
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
mov r12, r0
ldr r0, [r0]
ldrb r2, [r6]
@@ -388,7 +388,7 @@ _0818676A:
adds r0, r4, 0
bl FreeSpritePaletteByTag
_08186816:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
mov r2, r8
ldrb r1, [r2]
@@ -425,7 +425,7 @@ sub_818686C: @ 818686C
movs r0, 0
mov r9, r0
mov r8, r0
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r7, =gActiveBank
ldrb r2, [r7]
@@ -504,7 +504,7 @@ _081868DE:
ands r0, r1
cmp r0, 0
bne _08186994
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08186964
@@ -529,7 +529,7 @@ _081868DE:
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r7]
eors r0, r6
bl sub_8076918
@@ -537,7 +537,7 @@ _081868DE:
eors r0, r6
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_08186964:
ldr r5, =gHealthBoxesIds
ldr r4, =gActiveBank
@@ -553,15 +553,15 @@ _08186964:
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_08186994:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -575,7 +575,7 @@ _08186994:
orrs r1, r2
strb r1, [r0, 0x1]
_081869AE:
- ldr r5, =gUnknown_020244D0
+ ldr r5, =gBattleSpritesDataPtr
ldr r0, [r5]
ldr r4, =gActiveBank
ldrb r2, [r4]
@@ -639,7 +639,7 @@ _08186A40:
lsls r2, 1
bl m4aMPlayVolumeControl
_08186A4C:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -655,7 +655,7 @@ _08186A4C:
movs r0, 0x1
mov r9, r0
_08186A6A:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _08186AC8
@@ -742,7 +742,7 @@ _08186B26:
mov r0, r8
cmp r0, 0
beq _08186C10
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08186B8A
@@ -781,7 +781,7 @@ _08186B26:
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
_08186B8A:
ldr r1, =gUnknown_03005D7C
ldr r4, =gActiveBank
@@ -809,8 +809,8 @@ _08186B8A:
lsls r1, 16
lsrs r1, 16
adds r0, r5, 0
- bl sub_805EE54
- ldr r3, =gUnknown_020244D0
+ bl SetBankEnemyShadowSpriteCallback
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r2, [r0, 0x8]
ldrb r1, [r2, 0x9]
@@ -881,7 +881,7 @@ sub_8186C48: @ 8186C48
ldrsh r0, [r0, r1]
cmp r0, 0
bne _08186CFA
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r1, [r0, 0x4]
lsls r4, r3, 1
@@ -955,7 +955,7 @@ sub_8186D04: @ 8186D04
ldrb r0, [r6]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r1, r4, 16
movs r0, 0x1
@@ -966,7 +966,7 @@ sub_8186D04: @ 8186D04
adds r0, r5
ldrb r0, [r0]
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
b _08186D50
.pool
_08186D4C:
@@ -998,7 +998,7 @@ sub_8186D58: @ 8186D58
ldr r0, =gHealthBoxesIds
adds r0, r3, r0
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl RecordedOpponentBufferExecCompleted
_08186D86:
pop {r0}
@@ -1009,7 +1009,7 @@ _08186D86:
thumb_func_start sub_8186D9C
sub_8186D9C: @ 8186D9C
push {r4-r6,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r2, [r6]
@@ -1046,7 +1046,7 @@ sub_8186D9C: @ 8186D9C
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl RecordedOpponentBufferExecCompleted
_08186DF6:
pop {r4-r6}
@@ -1147,7 +1147,7 @@ sub_8186EA4: @ 8186EA4
ldr r0, =SpriteCallbackDummy
cmp r1, r0
bne _08186EF0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r3, 2
@@ -1179,7 +1179,7 @@ _08186EF0:
thumb_func_start sub_8186F14
sub_8186F14: @ 8186F14
push {r4,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r4, =gActiveBank
ldrb r1, [r4]
@@ -1231,7 +1231,7 @@ _08186F6E:
thumb_func_start sub_8186F94
sub_8186F94: @ 8186F94
push {r4-r7,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -1302,13 +1302,13 @@ sub_8186F94: @ 8186F94
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r5]
bl sub_8076918
ldrb r0, [r5]
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
ldrb r0, [r5]
bl sub_805E408
ldr r1, =gBattleBankFunc
@@ -1327,7 +1327,7 @@ _08187050:
thumb_func_start sub_8187084
sub_8187084: @ 8187084
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -1394,7 +1394,7 @@ _081870B6:
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
ldr r1, =gBattleBankFunc
ldrb r0, [r5]
lsls r0, 2
@@ -1411,7 +1411,7 @@ _08187120:
thumb_func_start sub_818714C
sub_818714C: @ 818714C
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1435,7 +1435,7 @@ _0818716E:
thumb_func_start sub_818717C
sub_818717C: @ 818717C
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1553,7 +1553,7 @@ _0818727E:
lsrs r1, 16
movs r0, 0x1
mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl RecordedOpponentBufferExecCompleted
add sp, 0x100
pop {r4-r6}
@@ -3564,7 +3564,7 @@ sub_818843C: @ 818843C
muls r2, r0
adds r0, r2, 0
add r0, r9
- bl sub_805DC0C
+ bl BattleLoadOpponentMonSpriteGfx
ldrb r0, [r6]
bl GetBankIdentity
adds r1, r0, 0
@@ -3654,7 +3654,7 @@ sub_818843C: @ 818843C
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
- bl sub_805EE54
+ bl SetBankEnemyShadowSpriteCallback
ldr r1, =gBattleBankFunc
ldrb r0, [r6]
lsls r0, 2
@@ -3753,7 +3753,7 @@ sub_81885D8: @ 81885D8
adds r0, r1, 0
adds r0, r5
adds r1, r6, 0
- bl sub_805DC0C
+ bl BattleLoadOpponentMonSpriteGfx
adds r0, r6, 0
bl GetBankIdentity
adds r1, r0, 0
@@ -3888,7 +3888,7 @@ sub_8188768: @ 8188768
ldrb r3, [r0]
cmp r3, 0
bne _081887B0
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r2, 1
@@ -3928,7 +3928,7 @@ _081887B0:
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl RecordedOpponentBufferExecCompleted
_081887EC:
pop {r4-r6}
@@ -3940,7 +3940,7 @@ _081887EC:
thumb_func_start sub_8188800
sub_8188800: @ 8188800
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4096,7 +4096,7 @@ _0818892C:
bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r9, r7
- ldr r1, =gUnknown_083054E0
+ ldr r1, =gTrainerFrontPicCoords
mov r2, r8
lsls r0, r2, 2
adds r0, r1
@@ -4278,7 +4278,7 @@ sub_8188A4C: @ 8188A4C
thumb_func_start sub_8188AF8
sub_8188AF8: @ 8188AF8
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4408,13 +4408,13 @@ _08188BE6:
ldrb r1, [r1]
lsls r1, 8
orrs r0, r1
- ldr r5, =gUnknown_02038432
+ ldr r5, =gAnimMoveTurn
mov r1, r12
adds r1, 0x3
adds r2, r1
ldrb r1, [r2]
strb r1, [r5]
- ldr r4, =gMovePowerMoveAnim
+ ldr r4, =gAnimMovePower
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4428,7 +4428,7 @@ _08188BE6:
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r4, =gMoveDmgMoveAnim
+ ldr r4, =gAnimMoveDmg
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4454,7 +4454,7 @@ _08188BE6:
lsls r1, 24
orrs r3, r1
str r3, [r4]
- ldr r3, =gHappinessMoveAnim
+ ldr r3, =gAnimFriendship
ldrb r1, [r6]
lsls r1, 9
mov r2, r12
@@ -4476,7 +4476,7 @@ _08188BE6:
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r3, =gDisableStructMoveAnim
+ ldr r3, =gAnimDisableStructPtr
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4499,7 +4499,7 @@ _08188BE6:
b _08188CFA
.pool
_08188CDC:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -4546,7 +4546,7 @@ sub_8188D0C: @ 8188D0C
adds r1, r2
ldrb r1, [r1]
mov r8, r1
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r5, [r7]
ldr r1, [r5, 0x4]
lsls r0, r3, 1
@@ -4605,7 +4605,7 @@ _08188DA4:
movs r0, 0
bl sub_805EB9C
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r0, [r7]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -4654,7 +4654,7 @@ _08188DCE:
ands r0, r2
strb r0, [r1]
_08188E1C:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -4708,10 +4708,10 @@ _08188E80:
thumb_func_start sub_8188E90
sub_8188E90: @ 8188E90
push {r4,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r4, =gActiveBank
ldrb r0, [r4]
@@ -4722,7 +4722,7 @@ sub_8188E90: @ 8188E90
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r4]
lsls r0, 2
@@ -4754,7 +4754,7 @@ sub_8188EF0: @ 8188EF0
lsrs r1, 24
movs r0, 0x1
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl RecordedOpponentBufferExecCompleted
pop {r0}
bx r0
@@ -4785,7 +4785,7 @@ sub_8188F20: @ 8188F20
lsrs r2, 16
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
b _08188F6C
.pool
_08188F48:
@@ -4803,7 +4803,7 @@ _08188F48:
orrs r2, r4
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
_08188F6C:
bl RecordedOpponentBufferExecCompleted
pop {r4,r5}
@@ -4839,7 +4839,7 @@ sub_8188F88: @ 8188F88
ldrb r1, [r0]
movs r0, 0x1
movs r2, 0
- bl dp01_build_cmdbuf_x22_a_three_bytes
+ bl EmitCmd34
bl RecordedOpponentBufferExecCompleted
pop {r4}
pop {r0}
@@ -4863,7 +4863,7 @@ sub_8188FD0: @ 8188FD0
push {r6,r7}
sub sp, 0x4
movs r0, 0
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
ldr r3, =gBattleBufferA
ldr r0, =gActiveBank
mov r9, r0
@@ -4910,7 +4910,7 @@ sub_8188FD0: @ 8188FD0
ldrb r1, [r1]
str r7, [sp]
mov r2, r8
- bl sub_807294C
+ bl SetBattleBarStruct
b _0818908A
.pool
_08189060:
@@ -4932,7 +4932,7 @@ _08189060:
ldrb r1, [r1]
str r7, [sp]
movs r3, 0
- bl sub_807294C
+ bl SetBattleBarStruct
_0818908A:
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
@@ -4981,9 +4981,9 @@ sub_81890CC: @ 81890CC
ldr r2, =gEnemyParty
adds r1, r2
movs r2, 0x9
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r2, [r4]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
lsls r1, r2, 1
@@ -5304,7 +5304,7 @@ sub_818936C: @ 818936C
ldrb r0, [r0]
cmp r0, 0
beq _081893A8
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -5457,7 +5457,7 @@ sub_8189438: @ 8189438
adds r1, r4
ldrb r0, [r6]
strh r0, [r1, 0x8]
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r6]
ldr r1, [r0, 0x4]
@@ -5518,7 +5518,7 @@ c3_0803D564: @ 8189548
adds r0, r1
ldrh r0, [r0, 0x8]
strb r0, [r7]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08189582
@@ -5632,7 +5632,7 @@ sub_8189648: @ 8189648
b _08189742
.pool
_08189678:
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -5693,13 +5693,13 @@ _081896E4:
subs r4, 0x2
adds r3, r4
ldrb r3, [r3]
- bl sub_80735DC
+ bl CreatePartyStatusSummarySprites
ldr r2, =gUnknown_020244B4
ldrb r1, [r5]
adds r1, r2
movs r3, 0
strb r0, [r1]
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldrb r1, [r5]
ldr r2, [r0, 0x4]
@@ -5739,7 +5739,7 @@ _08189742:
thumb_func_start sub_818975C
sub_818975C: @ 818975C
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -5775,7 +5775,7 @@ _08189794:
thumb_func_start sub_81897A4
sub_81897A4: @ 81897A4
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -5819,7 +5819,7 @@ sub_8189800: @ 8189800
push {r4,lr}
ldr r4, =gActiveBank
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _08189846
diff --git a/asm/battle_controller_recorded_player.s b/asm/battle_controller_recorded_player.s
index b2769671c..6f3976205 100644
--- a/asm/battle_controller_recorded_player.s
+++ b/asm/battle_controller_recorded_player.s
@@ -132,7 +132,7 @@ _08189A40:
thumb_func_start sub_8189A58
sub_8189A58: @ 8189A58
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r1, [r4]
ldr r3, =gActiveBank
ldrb r0, [r3]
@@ -180,11 +180,11 @@ sub_8189AA0: @ 8189AA0
beq _08189ABA
b _08189C60
_08189ABA:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08189ADA
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08189B0C
@@ -244,7 +244,7 @@ _08189B42:
bne _08189B48
b _08189D18
_08189B48:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
mov r9, r0
ldr r0, [r0]
ldr r5, =gActiveBank
@@ -337,7 +337,7 @@ _08189B86:
ldr r4, =gPlayerParty
adds r0, r4
bl sub_805E990
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08189C22
@@ -366,11 +366,11 @@ _08189C22:
b _08189D10
.pool
_08189C60:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08189C80
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08189CB0
@@ -435,7 +435,7 @@ _08189CE6:
_08189CF2:
cmp r6, 0
beq _08189D18
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -478,7 +478,7 @@ sub_8189D40: @ 8189D40
lsls r0, 24
cmp r0, 0
bne _08189DBE
- ldr r5, =gUnknown_020244D0
+ ldr r5, =gBattleSpritesDataPtr
ldr r0, [r5]
ldrb r2, [r4]
ldr r1, [r0, 0x4]
@@ -527,7 +527,7 @@ _08189D8C:
adds r0, r3, 0
bl sub_8172EF0
_08189DBE:
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r2, =gActiveBank
ldrb r5, [r2]
@@ -561,7 +561,7 @@ _08189DBE:
ands r0, r1
cmp r0, 0
bne _08189E84
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08189E54
@@ -587,7 +587,7 @@ _08189DBE:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
mov r1, r9
ldrb r0, [r1]
eors r0, r7
@@ -597,7 +597,7 @@ _08189DBE:
eors r0, r7
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_08189E54:
ldr r5, =gHealthBoxesIds
ldr r4, =gActiveBank
@@ -613,15 +613,15 @@ _08189E54:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_08189E84:
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -702,7 +702,7 @@ _08189F38:
lsls r2, 1
bl m4aMPlayVolumeControl
_08189F44:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -747,7 +747,7 @@ _08189F62:
ldr r0, [r0]
cmp r0, r2
bne _0818A02A
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08189FC8
@@ -779,7 +779,7 @@ _08189FC8:
ldr r1, =gSprites
adds r0, r1
bl DestroySprite
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r2, [r0, 0x8]
ldrb r1, [r2, 0x9]
@@ -874,7 +874,7 @@ sub_818A0A4: @ 818A0A4
ldrb r0, [r5]
adds r0, r6
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r1, r4, 16
movs r0, 0x1
@@ -885,7 +885,7 @@ sub_818A0A4: @ 818A0A4
adds r0, r6
ldrb r0, [r0]
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
b _0818A106
.pool
_0818A0EC:
@@ -963,7 +963,7 @@ sub_818A114: @ 818A114
ldrb r0, [r4]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl RecordedPlayerBufferExecCompleted
_0818A190:
pop {r4-r6}
@@ -975,7 +975,7 @@ _0818A190:
thumb_func_start sub_818A1B0
sub_818A1B0: @ 818A1B0
push {r4-r6,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r2, [r6]
@@ -1010,7 +1010,7 @@ sub_818A1B0: @ 818A1B0
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl RecordedPlayerBufferExecCompleted
_0818A204:
pop {r4-r6}
@@ -1113,7 +1113,7 @@ sub_818A2B4: @ 818A2B4
bne _0818A306
adds r0, r3, 0
bl sub_805E408
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r2, [r4]
ldr r1, [r0]
@@ -1145,7 +1145,7 @@ _0818A306:
thumb_func_start sub_818A328
sub_818A328: @ 818A328
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -1184,7 +1184,7 @@ sub_818A37C: @ 818A37C
push {r4-r7,lr}
mov r7, r8
push {r7}
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldr r7, =gActiveBank
ldrb r1, [r7]
@@ -1254,13 +1254,13 @@ sub_818A37C: @ 818A37C
muls r1, r6
adds r1, r5
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r7]
bl sub_8076918
ldrb r0, [r7]
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
ldr r1, =gBattleBankFunc
ldrb r0, [r7]
lsls r0, 2
@@ -1279,7 +1279,7 @@ _0818A438:
thumb_func_start sub_818A470
sub_818A470: @ 818A470
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r4, =gActiveBank
ldrb r2, [r4]
@@ -1397,7 +1397,7 @@ _0818A57A:
thumb_func_start sub_818A58C
sub_818A58C: @ 818A58C
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1421,7 +1421,7 @@ _0818A5AE:
thumb_func_start sub_818A5BC
sub_818A5BC: @ 818A5BC
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -1489,7 +1489,7 @@ _0818A646:
lsrs r1, 16
movs r0, 0x1
mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl RecordedPlayerBufferExecCompleted
add sp, 0x100
pop {r4-r6}
@@ -3530,7 +3530,7 @@ sub_818B8E0: @ 818B8E0
muls r0, r5
ldr r4, =gPlayerParty
adds r0, r4
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r6]
lsls r0, 1
add r0, r8
@@ -3659,7 +3659,7 @@ sub_818B9FC: @ 818B9FC
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r5]
lsls r1, r0, 9
adds r1, r6
@@ -3852,7 +3852,7 @@ sub_818BBE8: @ 818BBE8
ldrb r3, [r0]
cmp r3, 0
bne _0818BC30
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r2, 1
@@ -3890,7 +3890,7 @@ _0818BC30:
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl RecordedPlayerBufferExecCompleted
_0818BC66:
pop {r4-r6}
@@ -3902,7 +3902,7 @@ _0818BC66:
thumb_func_start sub_818BC78
sub_818BC78: @ 818BC78
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4033,14 +4033,14 @@ _0818BD72:
beq _0818BD9C
movs r0, 0x5A
mov r9, r0
- ldr r1, =gUnknown_083054E0
+ ldr r1, =gTrainerFrontPicCoords
b _0818BD9E
.pool
_0818BD98:
movs r0, 0x50
mov r9, r0
_0818BD9C:
- ldr r1, =gUnknown_08305D2C
+ ldr r1, =gTrainerBackPicCoords
_0818BD9E:
lsls r0, r4, 2
adds r0, r1
@@ -4182,7 +4182,7 @@ _0818BEDC:
ldr r5, =gActiveBank
ldrb r1, [r5]
adds r0, r4, 0
- bl sub_805DF84
+ bl LoadBackTrainerBankSpriteGfx
ldrb r0, [r5]
bl GetBankIdentity
adds r1, r0, 0
@@ -4350,7 +4350,7 @@ sub_818BFB8: @ 818BFB8
thumb_func_start sub_818C064
sub_818C064: @ 818C064
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r4, [r6]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -4508,13 +4508,13 @@ _0818C192:
ldrb r1, [r1]
lsls r1, 8
orrs r0, r1
- ldr r5, =gUnknown_02038432
+ ldr r5, =gAnimMoveTurn
mov r1, r12
adds r1, 0x3
adds r2, r1
ldrb r1, [r2]
strb r1, [r5]
- ldr r4, =gMovePowerMoveAnim
+ ldr r4, =gAnimMovePower
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4528,7 +4528,7 @@ _0818C192:
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r4, =gMoveDmgMoveAnim
+ ldr r4, =gAnimMoveDmg
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4554,7 +4554,7 @@ _0818C192:
lsls r1, 24
orrs r3, r1
str r3, [r4]
- ldr r3, =gHappinessMoveAnim
+ ldr r3, =gAnimFriendship
ldrb r1, [r6]
lsls r1, 9
mov r2, r12
@@ -4576,7 +4576,7 @@ _0818C192:
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r3, =gDisableStructMoveAnim
+ ldr r3, =gAnimDisableStructPtr
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -4599,7 +4599,7 @@ _0818C192:
b _0818C2A6
.pool
_0818C288:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -4646,7 +4646,7 @@ bx_move_anim_2: @ 818C2B8
adds r1, r2
ldrb r1, [r1]
mov r8, r1
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r5, [r7]
ldr r1, [r5, 0x4]
lsls r0, r3, 1
@@ -4705,7 +4705,7 @@ _0818C350:
movs r0, 0
bl sub_805EB9C
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r0, [r7]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -4754,7 +4754,7 @@ _0818C37A:
ands r0, r2
strb r0, [r1]
_0818C3C8:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -4808,10 +4808,10 @@ _0818C42C:
thumb_func_start sub_818C43C
sub_818C43C: @ 818C43C
push {r4,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r4, =gActiveBank
ldrb r0, [r4]
@@ -4822,7 +4822,7 @@ sub_818C43C: @ 818C43C
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r4]
lsls r0, 2
@@ -4861,7 +4861,7 @@ sub_818C49C: @ 818C49C
lsrs r1, 24
movs r0, 0x1
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl RecordedPlayerBufferExecCompleted
_0818C4C6:
pop {r0}
@@ -4897,7 +4897,7 @@ _0818C508:
lsrs r1, 24
movs r0, 0x1
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl RecordedPlayerBufferExecCompleted
_0818C522:
pop {r0}
@@ -4929,7 +4929,7 @@ sub_818C538: @ 818C538
lsrs r2, 16
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
b _0818C584
.pool
_0818C560:
@@ -4947,7 +4947,7 @@ _0818C560:
orrs r2, r4
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
_0818C584:
bl RecordedPlayerBufferExecCompleted
pop {r4,r5}
@@ -4983,7 +4983,7 @@ sub_818C5A0: @ 818C5A0
ldrb r1, [r0]
movs r0, 0x1
movs r2, 0
- bl dp01_build_cmdbuf_x22_a_three_bytes
+ bl EmitCmd34
bl RecordedPlayerBufferExecCompleted
pop {r4}
pop {r0}
@@ -5007,7 +5007,7 @@ sub_818C5E8: @ 818C5E8
push {r6,r7}
sub sp, 0x4
movs r0, 0
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
ldr r3, =gBattleBufferA
ldr r0, =gActiveBank
mov r9, r0
@@ -5054,7 +5054,7 @@ sub_818C5E8: @ 818C5E8
ldrb r1, [r1]
str r7, [sp]
mov r2, r8
- bl sub_807294C
+ bl SetBattleBarStruct
b _0818C6B2
.pool
_0818C678:
@@ -5076,14 +5076,14 @@ _0818C678:
ldrb r1, [r1]
str r7, [sp]
movs r3, 0
- bl sub_807294C
+ bl SetBattleBarStruct
mov r1, r9
ldrb r0, [r1]
adds r0, r4
ldrb r0, [r0]
movs r1, 0
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
_0818C6B2:
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
@@ -5132,9 +5132,9 @@ sub_818C6F4: @ 818C6F4
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0x9
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r2, [r4]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
lsls r1, r2, 1
@@ -5455,7 +5455,7 @@ sub_818C994: @ 818C994
ldrb r0, [r0]
cmp r0, 0
beq _0818C9D0
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -5676,7 +5676,7 @@ _0818CB5A:
adds r1, r4
ldrb r0, [r5]
strh r0, [r1, 0x8]
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r5]
ldr r1, [r0, 0x4]
@@ -5746,7 +5746,7 @@ _0818CC50:
mov r9, r0
ldrh r0, [r1, 0x8]
strb r0, [r7]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0818CC70
@@ -5805,7 +5805,7 @@ _0818CCA0:
muls r0, r2
ldr r2, =gPlayerParty
adds r0, r2
- bl sub_805DD7C
+ bl BattleLoadPlayerMonSpriteGfx
ldrb r0, [r7]
movs r1, 0
bl sub_818BA6C
@@ -5855,7 +5855,7 @@ sub_818CD30: @ 818CD30
b _0818CDD4
.pool
_0818CD60:
- ldr r6, =gUnknown_020244D0
+ ldr r6, =gBattleSpritesDataPtr
ldr r0, [r6]
ldr r5, =gActiveBank
ldrb r1, [r5]
@@ -5878,7 +5878,7 @@ _0818CD60:
subs r4, 0x2
adds r3, r4
ldrb r3, [r3]
- bl sub_80735DC
+ bl CreatePartyStatusSummarySprites
ldr r2, =gUnknown_020244B4
ldrb r1, [r5]
adds r1, r2
@@ -5923,7 +5923,7 @@ _0818CDD4:
thumb_func_start bx_increment_dp11b_field_5_till_x60_then_resume
bx_increment_dp11b_field_5_till_x60_then_resume: @ 818CDF4
push {r4,lr}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r3, =gActiveBank
ldrb r1, [r3]
@@ -5959,7 +5959,7 @@ _0818CE2C:
thumb_func_start sub_818CE3C
sub_818CE3C: @ 818CE3C
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r1, [r0]
ldr r0, =gActiveBank
ldrb r3, [r0]
@@ -6003,7 +6003,7 @@ sub_818CE98: @ 818CE98
push {r4,lr}
ldr r4, =gActiveBank
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _0818CEDE
diff --git a/asm/battle_controller_safari.s b/asm/battle_controller_safari.s
index 6ca6e9d4e..d7efd69fe 100644
--- a/asm/battle_controller_safari.s
+++ b/asm/battle_controller_safari.s
@@ -71,7 +71,7 @@ bx_battle_menu_t6_2: @ 81593D8
beq _08159446
movs r0, 0x5
bl PlaySE
- ldr r1, =gUnknown_020244AC
+ ldr r1, =gActionSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
@@ -103,13 +103,13 @@ _0815942A:
movs r1, 0x7
_0815942E:
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
b _08159440
_08159436:
movs r0, 0x1
movs r1, 0x8
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
_08159440:
bl SafariBufferExecCompleted
b _0815954E
@@ -118,7 +118,7 @@ _08159446:
ands r0, r1
cmp r0, 0
beq _08159484
- ldr r5, =gUnknown_020244AC
+ ldr r5, =gActionSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r5
@@ -132,7 +132,7 @@ _08159446:
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
ldrb r1, [r4]
adds r1, r5
ldrb r0, [r1]
@@ -144,7 +144,7 @@ _08159484:
ands r0, r1
cmp r0, 0
beq _081594C0
- ldr r5, =gUnknown_020244AC
+ ldr r5, =gActionSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r5
@@ -158,7 +158,7 @@ _08159484:
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
ldrb r1, [r4]
adds r1, r5
ldrb r0, [r1]
@@ -170,7 +170,7 @@ _081594C0:
ands r0, r1
cmp r0, 0
beq _0815950C
- ldr r5, =gUnknown_020244AC
+ ldr r5, =gActionSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r5
@@ -184,7 +184,7 @@ _081594C0:
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
ldrb r1, [r4]
adds r1, r5
ldrb r0, [r1]
@@ -196,7 +196,7 @@ _081594F2:
adds r0, r5
ldrb r0, [r0]
movs r1, 0
- bl sub_8059CB4
+ bl ActionSelectionCreateCursorAt
b _0815954E
.pool
_0815950C:
@@ -204,7 +204,7 @@ _0815950C:
ands r0, r1
cmp r0, 0
beq _0815954E
- ldr r5, =gUnknown_020244AC
+ ldr r5, =gActionSelectionCursor
ldr r4, =gActiveBank
ldrb r0, [r4]
adds r0, r5
@@ -218,7 +218,7 @@ _0815950C:
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
ldrb r1, [r4]
adds r1, r5
ldrb r0, [r1]
@@ -229,7 +229,7 @@ _0815950C:
adds r0, r5
ldrb r0, [r0]
movs r1, 0
- bl sub_8059CB4
+ bl ActionSelectionCreateCursorAt
_0815954E:
pop {r4,r5}
pop {r0}
@@ -318,7 +318,7 @@ sub_81595E4: @ 81595E4
negs r0, r0
ands r0, r1
strb r0, [r3]
- ldr r0, =gUnknown_03005D00
+ ldr r0, =gPreBattleCallback1
ldr r0, [r0]
str r0, [r2]
ldr r0, [r2, 0x8]
@@ -336,7 +336,7 @@ bx_wait_t6: @ 8159624
ldrb r0, [r0]
cmp r0, 0
beq _0815964A
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -387,7 +387,7 @@ sub_8159698: @ 8159698
push {lr}
ldr r0, =gMain
ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
+ ldr r0, =BattleMainCB2
cmp r1, r0
bne _081596BE
ldr r0, =gPaletteFade
@@ -399,7 +399,7 @@ sub_8159698: @ 8159698
ldr r0, =gScriptItemId
ldrh r1, [r0]
movs r0, 0x1
- bl dp01_build_cmdbuf_x23_aa_0
+ bl EmitCmd35
bl SafariBufferExecCompleted
_081596BE:
pop {r0}
@@ -410,7 +410,7 @@ _081596BE:
thumb_func_start sub_81596D4
sub_81596D4: @ 81596D4
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -484,7 +484,7 @@ _0815976A:
thumb_func_start bx_80364D0
bx_80364D0: @ 815977C
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -569,7 +569,7 @@ sub_8159800: @ 8159800
ldrb r0, [r0, 0x8]
ldr r5, =gActiveBank
ldrb r1, [r5]
- bl sub_805DF84
+ bl LoadBackTrainerBankSpriteGfx
ldr r0, [r4]
ldrb r6, [r0, 0x8]
ldrb r0, [r5]
@@ -580,7 +580,7 @@ sub_8159800: @ 8159800
adds r0, r6, 0
bl sub_806A12C
ldr r0, =gUnknown_0202499C
- ldr r2, =gUnknown_08305D2C
+ ldr r2, =gTrainerBackPicCoords
ldr r1, [r4]
ldrb r1, [r1, 0x8]
lsls r1, 2
@@ -689,7 +689,7 @@ sub_8159904: @ 8159904
thumb_func_start sub_8159910
sub_8159910: @ 8159910
push {r4,r5,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x8]
movs r0, 0x4
@@ -700,7 +700,7 @@ sub_8159910: @ 8159910
ldr r5, =gActiveBank
ldrb r4, [r5]
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
@@ -730,7 +730,7 @@ sub_8159964: @ 8159964
adds r1, 0x1
adds r0, r1
ldrb r1, [r0]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
strb r1, [r0, 0x8]
@@ -739,7 +739,7 @@ sub_8159964: @ 8159964
strb r0, [r1]
ldrb r4, [r5]
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
@@ -778,10 +778,10 @@ sub_81599D0: @ 81599D0
thumb_func_start dp01t_10_6_message
dp01t_10_6_message: @ 81599DC
push {r4,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r4, =gActiveBank
ldrb r0, [r4]
@@ -792,7 +792,7 @@ dp01t_10_6_message: @ 81599DC
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r4]
lsls r0, 2
@@ -832,9 +832,9 @@ sub_8159A54: @ 8159A54
lsrs r1, r0, 24
cmp r1, 0
bne _08159A7A
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
movs r0, 0xA0
strh r0, [r1]
ldr r1, =gBattleBankFunc
@@ -862,27 +862,27 @@ sub_8159A94: @ 8159A94
str r1, [r0]
ldr r0, =gText_SafariZoneMenu
movs r1, 0x2
- bl battle_show_message_maybe
+ bl sub_814F9EC
movs r4, 0
_08159AAE:
lsls r0, r4, 24
lsrs r0, 24
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
adds r4, 0x1
cmp r4, 0x3
ble _08159AAE
- ldr r1, =gUnknown_020244AC
+ ldr r1, =gActionSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
movs r1, 0
- bl sub_8059CB4
+ bl ActionSelectionCreateCursorAt
ldr r0, =gText_WhatWillPkmnDo2
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0x1
- bl battle_show_message_maybe
+ bl sub_814F9EC
pop {r4}
pop {r0}
bx r0
@@ -981,7 +981,7 @@ sub_8159B84: @ 8159B84
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0xB
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
bl SafariBufferExecCompleted
pop {r0}
bx r0
@@ -1161,7 +1161,7 @@ dp01t_34_6_move_anim_start_t3: @ 8159CC4
ldrb r0, [r0]
cmp r0, 0
beq _08159D00
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -1256,13 +1256,13 @@ sub_8159D90: @ 8159D90
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0xA
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
ldr r1, =gBattleBankFunc
ldrb r0, [r4]
lsls r0, 2
diff --git a/asm/battle_controller_wally.s b/asm/battle_controller_wally.s
index 98d3e7c68..e1d92de0d 100644
--- a/asm/battle_controller_wally.s
+++ b/asm/battle_controller_wally.s
@@ -153,7 +153,7 @@ _081684CE:
movs r1, 0x9
_081684E4:
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl WallyBufferExecCompleted
ldr r1, [r4]
adds r1, 0x94
@@ -180,10 +180,10 @@ _08168508:
movs r0, 0x5
bl PlaySE
movs r0, 0
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
movs r0, 0x1
movs r1, 0
- bl sub_8059CB4
+ bl ActionSelectionCreateCursorAt
ldr r0, [r4]
adds r0, 0x96
movs r1, 0x40
@@ -208,7 +208,7 @@ _08168540:
movs r0, 0x1
movs r1, 0x1
movs r2, 0
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl WallyBufferExecCompleted
_08168564:
pop {r4,r5}
@@ -299,7 +299,7 @@ sub_8168610: @ 8168610
push {lr}
ldr r0, =gMain
ldr r1, [r0, 0x4]
- ldr r0, =sub_8038420
+ ldr r0, =BattleMainCB2
cmp r1, r0
bne _08168636
ldr r0, =gPaletteFade
@@ -311,7 +311,7 @@ sub_8168610: @ 8168610
ldr r0, =gScriptItemId
ldrh r1, [r0]
movs r0, 0x1
- bl dp01_build_cmdbuf_x23_aa_0
+ bl EmitCmd35
bl WallyBufferExecCompleted
_08168636:
pop {r0}
@@ -324,7 +324,7 @@ sub_816864C: @ 816864C
push {r4-r7,lr}
mov r7, r8
push {r7}
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r5, =gActiveBank
ldrb r2, [r5]
@@ -425,7 +425,7 @@ _081686D2:
ldr r0, [r0]
cmp r0, r3
bne _081687DC
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _0816877A
@@ -459,7 +459,7 @@ _081686D2:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r5]
eors r0, r6
bl sub_8076918
@@ -467,7 +467,7 @@ _081686D2:
eors r0, r6
adds r0, r4
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
_0816877A:
ldr r1, =gUnknown_03005D7C
ldr r4, =gActiveBank
@@ -493,14 +493,14 @@ _0816877A:
ldr r2, =gPlayerParty
adds r1, r2
movs r2, 0
- bl healthbar_draw_field_maybe
+ bl UpdateHealthboxAttribute
ldrb r0, [r4]
bl sub_8076918
ldrb r0, [r4]
adds r0, r5
ldrb r0, [r0]
- bl sub_80729D0
- ldr r0, =gUnknown_020244D0
+ bl SetHealthboxSpriteVisible
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r2, [r0, 0x8]
ldrb r1, [r2, 0x9]
@@ -549,7 +549,7 @@ sub_8168818: @ 8168818
_08168842:
cmp r4, 0
beq _08168904
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r0, [r7]
ldr r4, [r0, 0x4]
lsls r0, r3, 1
@@ -665,7 +665,7 @@ sub_8168934: @ 8168934
ldrb r0, [r5]
adds r0, r6
ldrb r0, [r0]
- bl sub_80729D0
+ bl SetHealthboxSpriteVisible
lsls r4, 16
asrs r1, r4, 16
movs r0, 0x1
@@ -676,7 +676,7 @@ sub_8168934: @ 8168934
adds r0, r6
ldrb r0, [r0]
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
b _08168996
.pool
_0816897C:
@@ -761,7 +761,7 @@ _08168A1A:
thumb_func_start sub_8168A20
sub_8168A20: @ 8168A20
push {r4-r6,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r2, [r6]
@@ -796,7 +796,7 @@ sub_8168A20: @ 8168A20
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl WallyBufferExecCompleted
_08168A74:
pop {r4-r6}
@@ -833,7 +833,7 @@ _08168AB4:
thumb_func_start sub_8168AC8
sub_8168AC8: @ 8168AC8
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -907,7 +907,7 @@ _08168B5E:
thumb_func_start sub_8168B70
sub_8168B70: @ 8168B70
push {lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r2, [r0]
ldr r0, =gActiveBank
ldrb r1, [r0]
@@ -975,7 +975,7 @@ _08168BFA:
lsrs r1, 16
movs r0, 0x1
mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
+ bl EmitDataTransfer
bl WallyBufferExecCompleted
add sp, 0x100
pop {r4-r6}
@@ -3015,7 +3015,7 @@ _08169E80:
ldrb r0, [r6]
adds r0, r1
ldrb r0, [r0]
- bl sub_8072984
+ bl SetHealthboxSpriteInvisible
bl WallyBufferExecCompleted
_08169EB6:
pop {r4-r6}
@@ -3030,7 +3030,7 @@ sub_8169EC8: @ 8169EC8
ldr r4, =gActiveBank
ldrb r1, [r4]
movs r0, 0x6
- bl sub_805DF84
+ bl LoadBackTrainerBankSpriteGfx
ldrb r0, [r4]
bl GetBankIdentity
adds r1, r0, 0
@@ -3039,7 +3039,7 @@ sub_8169EC8: @ 8169EC8
movs r0, 0x6
bl sub_806A12C
ldr r0, =gUnknown_0202499C
- ldr r1, =gUnknown_08305D2C
+ ldr r1, =gTrainerBackPicCoords
ldrb r1, [r1, 0x18]
movs r2, 0x8
subs r2, r1
@@ -3115,7 +3115,7 @@ dp01t_07_6_: @ 8169F94
ldr r4, =gActiveBank
ldrb r1, [r4]
movs r0, 0x6
- bl sub_805DF84
+ bl LoadBackTrainerBankSpriteGfx
ldrb r0, [r4]
bl GetBankIdentity
adds r1, r0, 0
@@ -3124,7 +3124,7 @@ dp01t_07_6_: @ 8169F94
movs r0, 0x6
bl sub_806A12C
ldr r0, =gUnknown_0202499C
- ldr r1, =gUnknown_08305D2C
+ ldr r1, =gTrainerBackPicCoords
ldrb r1, [r1, 0x18]
movs r2, 0x8
subs r2, r1
@@ -3221,7 +3221,7 @@ sub_816A078: @ 816A078
thumb_func_start sub_816A084
sub_816A084: @ 816A084
push {r4,r5,lr}
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x8]
movs r0, 0x4
@@ -3232,7 +3232,7 @@ sub_816A084: @ 816A084
ldr r5, =gActiveBank
ldrb r4, [r5]
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
@@ -3262,7 +3262,7 @@ sub_816A0D8: @ 816A0D8
adds r1, 0x1
adds r0, r1
ldrb r1, [r0]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
strb r1, [r0, 0x8]
@@ -3271,7 +3271,7 @@ sub_816A0D8: @ 816A0D8
strb r0, [r1]
ldrb r4, [r5]
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
@@ -3316,13 +3316,13 @@ sub_816A144: @ 816A144
ldrb r1, [r1]
lsls r1, 8
orrs r0, r1
- ldr r5, =gUnknown_02038432
+ ldr r5, =gAnimMoveTurn
mov r1, r12
adds r1, 0x3
adds r2, r1
ldrb r1, [r2]
strb r1, [r5]
- ldr r4, =gMovePowerMoveAnim
+ ldr r4, =gAnimMovePower
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -3336,7 +3336,7 @@ sub_816A144: @ 816A144
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r4, =gMoveDmgMoveAnim
+ ldr r4, =gAnimMoveDmg
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -3362,7 +3362,7 @@ sub_816A144: @ 816A144
lsls r1, 24
orrs r3, r1
str r3, [r4]
- ldr r3, =gHappinessMoveAnim
+ ldr r3, =gAnimFriendship
ldrb r1, [r6]
lsls r1, 9
mov r2, r12
@@ -3384,7 +3384,7 @@ sub_816A144: @ 816A144
lsls r1, 8
orrs r3, r1
strh r3, [r4]
- ldr r3, =gDisableStructMoveAnim
+ ldr r3, =gAnimDisableStructPtr
ldrb r2, [r6]
lsls r2, 9
mov r1, r12
@@ -3407,7 +3407,7 @@ sub_816A144: @ 816A144
b _0816A25A
.pool
_0816A23C:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -3449,7 +3449,7 @@ bx_move_anim_5: @ 816A26C
ldrb r0, [r1]
lsls r0, 8
orrs r4, r0
- ldr r7, =gUnknown_020244D0
+ ldr r7, =gBattleSpritesDataPtr
ldr r5, [r7]
ldr r1, [r5, 0x4]
lsls r0, r3, 1
@@ -3505,7 +3505,7 @@ _0816A2F6:
movs r0, 0
bl sub_805EB9C
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r0, [r7]
ldrb r1, [r6]
ldr r2, [r0, 0x4]
@@ -3592,10 +3592,10 @@ _0816A3AC:
thumb_func_start sub_816A3B8
sub_816A3B8: @ 816A3B8
push {r4,lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
ldr r4, =gActiveBank
ldrb r0, [r4]
@@ -3606,7 +3606,7 @@ sub_816A3B8: @ 816A3B8
bl BufferStringBattle
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gBattleBankFunc
ldrb r0, [r4]
lsls r0, 2
@@ -3646,9 +3646,9 @@ sub_816A430: @ 816A430
lsrs r1, r0, 24
cmp r1, 0
bne _0816A456
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
movs r0, 0xA0
strh r0, [r1]
ldr r1, =gBattleBankFunc
@@ -3676,27 +3676,27 @@ dp01t_12_1_battle_menu: @ 816A470
str r1, [r0]
ldr r0, =gText_BattleMenu
movs r1, 0x2
- bl battle_show_message_maybe
+ bl sub_814F9EC
movs r4, 0
_0816A48A:
lsls r0, r4, 24
lsrs r0, 24
- bl sub_8059CF8
+ bl ActionSelectionDestroyCursorAt
adds r4, 0x1
cmp r4, 0x3
ble _0816A48A
- ldr r1, =gUnknown_020244AC
+ ldr r1, =gActionSelectionCursor
ldr r0, =gActiveBank
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
movs r1, 0
- bl sub_8059CB4
+ bl ActionSelectionCreateCursorAt
ldr r0, =gText_WhatWillWallyDo
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0x1
- bl battle_show_message_maybe
+ bl sub_814F9EC
pop {r4}
pop {r0}
bx r0
@@ -3749,9 +3749,9 @@ _0816A522:
lsrs r1, r0, 24
cmp r1, 0
bne _0816A574
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
movs r2, 0xA0
lsls r2, 1
adds r0, r2, 0
@@ -3777,7 +3777,7 @@ _0816A550:
lsls r2, 1
movs r0, 0x1
movs r1, 0xA
- bl dp01_build_cmdbuf_x21_a_bb
+ bl EmitCmd33
bl WallyBufferExecCompleted
_0816A574:
pop {r4}
@@ -3836,7 +3836,7 @@ sub_816A5D4: @ 816A5D4
push {r6,r7}
sub sp, 0x4
movs r0, 0
- bl load_gfxc_health_bar
+ bl LoadBattleBarGfx
ldr r3, =gBattleBufferA
ldr r0, =gActiveBank
mov r9, r0
@@ -3883,7 +3883,7 @@ sub_816A5D4: @ 816A5D4
ldrb r1, [r1]
str r7, [sp]
mov r2, r8
- bl sub_807294C
+ bl SetBattleBarStruct
b _0816A69E
.pool
_0816A664:
@@ -3905,14 +3905,14 @@ _0816A664:
ldrb r1, [r1]
str r7, [sp]
movs r3, 0
- bl sub_807294C
+ bl SetBattleBarStruct
mov r1, r9
ldrb r0, [r1]
adds r0, r4
ldrb r0, [r0]
movs r1, 0
movs r2, 0
- bl heathbar_draw_hp
+ bl UpdateHpTextInHealthbox
_0816A69E:
ldr r1, =gBattleBankFunc
ldr r0, =gActiveBank
@@ -4150,7 +4150,7 @@ sub_816A840: @ 816A840
ldrb r0, [r0]
cmp r0, 0
beq _0816A87C
- bl sub_805EA60
+ bl BattleMusicStop
ldrb r1, [r5]
lsls r1, 9
adds r0, r4, 0x1
@@ -4342,7 +4342,7 @@ sub_816A90C: @ 816A90C
adds r1, r4
ldrb r0, [r7]
strh r0, [r1, 0x8]
- ldr r3, =gUnknown_020244D0
+ ldr r3, =gBattleSpritesDataPtr
ldr r0, [r3]
ldrb r2, [r7]
ldr r1, [r0, 0x4]
@@ -4393,7 +4393,7 @@ sub_816AA80: @ 816AA80
adds r6, r0, 0
lsls r6, 24
lsrs r6, 24
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r6, 2
@@ -4622,7 +4622,7 @@ sub_816AC78: @ 816AC78
b _0816ACE6
.pool
_0816ACA8:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r5, =gActiveBank
ldrb r1, [r5]
@@ -4645,7 +4645,7 @@ _0816ACA8:
subs r3, 0x2
adds r4, r3
ldrb r3, [r4]
- bl sub_80735DC
+ bl CreatePartyStatusSummarySprites
ldr r2, =gUnknown_020244B4
ldrb r1, [r5]
adds r1, r2
diff --git a/asm/battle_frontier_1.s b/asm/battle_frontier_1.s
index 5fb146afc..7ac60f1be 100755
--- a/asm/battle_frontier_1.s
+++ b/asm/battle_frontier_1.s
@@ -2599,10 +2599,10 @@ _0818FFFC:
b _081900A4
.pool
_0819002C:
- ldr r0, =gUnknown_0831ACE8
+ ldr r0, =gTypeEffectiveness
adds r1, r6, r0
ldrb r0, [r1]
- ldr r7, =gUnknown_0831ACE8
+ ldr r7, =gTypeEffectiveness
cmp r0, 0xFF
beq _081900A4
adds r4, r1, 0
@@ -2657,7 +2657,7 @@ _08190088:
_08190096:
adds r4, 0x3
adds r6, 0x3
- ldr r1, =gUnknown_0831ACE8
+ ldr r1, =gTypeEffectiveness
adds r0, r6, r1
ldrb r0, [r0]
cmp r0, 0xFF
@@ -3161,31 +3161,31 @@ _0819044E:
ldr r0, =gUnknown_0860CEB4
bl InitWindows
bl DeactivateAllTextPrinters
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r4, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r4, [r0]
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
strh r4, [r0]
mov r2, r9
cmp r2, 0x2
bne _081904DC
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r4, [r0]
b _081904E6
.pool
_081904DC:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r4, [r0]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
_081904E6:
@@ -4366,27 +4366,27 @@ _08190E98:
ldrsh r2, [r0, r5]
cmp r2, 0
beq _08190ED4
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
movs r0, 0xA0
strh r0, [r1]
b _08190EE6
.pool
_08190ED4:
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r2, [r0]
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
movs r0, 0xA0
strh r0, [r1]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r2, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r2, [r0]
_08190EE6:
cmp r6, 0x1
@@ -4396,9 +4396,9 @@ _08190EE6:
ldrb r1, [r0, 0x10]
cmp r1, 0
bne _08190F50
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r6, 0xA0
lsls r6, 1
adds r0, r6, 0
@@ -4424,12 +4424,12 @@ _08190EE6:
b _08191084
.pool
_08190F50:
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r6, 0x80
lsls r6, 1
adds r0, r6, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
movs r4, 0
strh r4, [r0]
ldr r3, =gUnknown_0860D080
@@ -4473,9 +4473,9 @@ _08190F9C:
lsrs r0, 24
adds r1, 0x11
bl sub_8192F08
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r5, [r0]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r3, 0xA0
lsls r3, 1
adds r0, r3, 0
@@ -4508,10 +4508,10 @@ _08190FF8:
lsrs r0, 24
adds r1, 0x11
bl sub_8192F08
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r0, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r2, 0xA0
lsls r2, 1
adds r0, r2, 0
@@ -4529,12 +4529,12 @@ _08190FF8:
b _08191084
.pool
_0819104C:
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r3, 0x80
lsls r3, 1
adds r0, r3, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r1, =gTasks
@@ -4765,29 +4765,29 @@ _08191234:
ldrsh r2, [r0, r5]
cmp r2, 0
beq _08191278
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldr r2, =0x0000ff60
adds r0, r2, 0
strh r0, [r1]
b _0819128C
.pool
_08191278:
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r2, [r0]
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
ldr r3, =0x0000ff60
adds r0, r3, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r2, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r2, [r0]
_0819128C:
cmp r6, 0x2
@@ -4797,9 +4797,9 @@ _0819128C:
ldrb r1, [r0, 0x10]
cmp r1, 0
bne _081912F4
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r1, [r0]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r3, =gUnknown_0860D080
@@ -4823,10 +4823,10 @@ _0819128C:
b _0819141C
.pool
_081912F4:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
movs r4, 0
strh r4, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r4, [r0]
ldr r3, =gUnknown_0860D080
ldr r2, =gTasks
@@ -4869,9 +4869,9 @@ _0819133C:
lsrs r0, 24
adds r1, 0x11
bl sub_8192F08
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r5, [r0]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r2, [r6]
@@ -4902,10 +4902,10 @@ _08191394:
lsrs r0, 24
adds r1, 0x11
bl sub_8192F08
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r0, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r2, [r6]
@@ -4921,12 +4921,12 @@ _08191394:
b _0819141C
.pool
_081913E4:
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r4, 0x80
lsls r4, 1
adds r0, r4, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0
strh r0, [r1]
ldr r1, =gTasks
@@ -5157,31 +5157,31 @@ _081915CC:
ldrsh r2, [r0, r5]
cmp r2, 0
beq _0819160C
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
movs r6, 0x80
lsls r6, 1
adds r0, r6, 0
strh r0, [r2]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
b _08191622
.pool
_0819160C:
- ldr r1, =gUnknown_02022E14
+ ldr r1, =gBattle_BG0_X
movs r3, 0x80
lsls r3, 1
adds r0, r3, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r2, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r2, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r2, [r0]
_08191622:
ldr r0, =gUnknown_0203CD78
@@ -5189,12 +5189,12 @@ _08191622:
ldrb r0, [r4, 0x10]
cmp r0, 0
bne _08191688
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r4, 0x80
lsls r4, 1
adds r0, r4, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r3, =gUnknown_0860D080
@@ -5218,12 +5218,12 @@ _08191622:
b _081916C6
.pool
_08191688:
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r6, 0x80
lsls r6, 1
adds r0, r6, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0
strh r0, [r1]
ldr r3, =gUnknown_0860D15C
@@ -5457,31 +5457,31 @@ _0819187C:
ldrsh r2, [r0, r5]
cmp r2, 0
beq _081918BC
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
movs r6, 0x80
lsls r6, 1
adds r0, r6, 0
strh r0, [r2]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
b _081918D2
.pool
_081918BC:
- ldr r1, =gUnknown_02022E14
+ ldr r1, =gBattle_BG0_X
movs r3, 0x80
lsls r3, 1
adds r0, r3, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r2, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r2, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r2, [r0]
_081918D2:
ldr r0, =gUnknown_0203CD78
@@ -5489,12 +5489,12 @@ _081918D2:
ldrb r0, [r2, 0x10]
cmp r0, 0
bne _08191924
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r4, 0x80
lsls r4, 1
adds r0, r4, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r1, =gTasks
@@ -5510,10 +5510,10 @@ _081918D2:
b _08191958
.pool
_08191924:
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r0, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r1, =gTasks
@@ -5744,31 +5744,31 @@ _08191B08:
ldrsh r2, [r0, r5]
cmp r2, 0
beq _08191B48
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
movs r6, 0xFF
lsls r6, 8
adds r0, r6, 0
strh r0, [r2]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
b _08191B5E
.pool
_08191B48:
- ldr r1, =gUnknown_02022E14
+ ldr r1, =gBattle_BG0_X
movs r3, 0xFF
lsls r3, 8
adds r0, r3, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r2, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r2, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r2, [r0]
_08191B5E:
ldr r0, =gUnknown_0203CD78
@@ -5776,19 +5776,19 @@ _08191B5E:
ldrb r0, [r0, 0x10]
cmp r0, 0x1
bne _08191B94
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r0, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
b _08191B9E
.pool
_08191B94:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
_08191B9E:
ldr r4, =gUnknown_0860D15C
@@ -6011,31 +6011,31 @@ _08191D68:
ldrsh r2, [r0, r5]
cmp r2, 0
beq _08191DA8
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r2, =gUnknown_02022E18
+ ldr r2, =gBattle_BG1_X
movs r6, 0xFF
lsls r6, 8
adds r0, r6, 0
strh r0, [r2]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
b _08191DBE
.pool
_08191DA8:
- ldr r1, =gUnknown_02022E14
+ ldr r1, =gBattle_BG0_X
movs r3, 0xFF
lsls r3, 8
adds r0, r3, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r2, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r2, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r2, [r0]
_08191DBE:
ldr r0, =gUnknown_0203CD78
@@ -6043,12 +6043,12 @@ _08191DBE:
ldrb r0, [r2, 0x10]
cmp r0, 0x2
bne _08191E10
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r4, 0x80
lsls r4, 1
adds r0, r4, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r1, =gTasks
@@ -6064,10 +6064,10 @@ _08191DBE:
b _08191E44
.pool
_08191E10:
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
movs r0, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
movs r0, 0xA0
strh r0, [r1]
ldr r1, =gTasks
@@ -6306,15 +6306,15 @@ _08191FF8:
asrs r0, 16
cmp r0, 0x29
beq _08192100
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
ldrh r0, [r1]
subs r0, 0x4
strh r0, [r1]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldrh r0, [r1]
subs r0, 0x4
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
b _081920A4
.pool
_08192038:
@@ -6331,15 +6331,15 @@ _08192038:
asrs r0, 16
cmp r0, 0x29
beq _08192100
- ldr r1, =gUnknown_02022E16
+ ldr r1, =gBattle_BG0_Y
ldrh r0, [r1]
adds r0, 0x4
strh r0, [r1]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldrh r0, [r1]
adds r0, 0x4
strh r0, [r1]
- ldr r1, =gUnknown_02022E1E
+ ldr r1, =gBattle_BG2_Y
b _081920E8
.pool
_08192078:
@@ -6356,15 +6356,15 @@ _08192078:
asrs r0, 16
cmp r0, 0x41
beq _08192100
- ldr r1, =gUnknown_02022E14
+ ldr r1, =gBattle_BG0_X
ldrh r0, [r1]
subs r0, 0x4
strh r0, [r1]
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r1]
subs r0, 0x4
strh r0, [r1]
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
_081920A4:
ldrh r0, [r1]
subs r0, 0x4
@@ -6385,15 +6385,15 @@ _081920BC:
asrs r0, 16
cmp r0, 0x41
beq _08192100
- ldr r1, =gUnknown_02022E14
+ ldr r1, =gBattle_BG0_X
ldrh r0, [r1]
adds r0, 0x4
strh r0, [r1]
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
ldrh r0, [r1]
adds r0, 0x4
strh r0, [r1]
- ldr r1, =gUnknown_02022E1C
+ ldr r1, =gBattle_BG2_X
_081920E8:
ldrh r0, [r1]
adds r0, 0x4
@@ -10109,7 +10109,7 @@ _08194074:
lsls r0, r4, 1
add r0, r10
ldrh r0, [r0]
- bl ai_rate_move
+ bl AI_TypeCalc
lsls r0, 24
lsrs r5, r0, 24
movs r0, 0x6
@@ -10400,13 +10400,13 @@ _0819427C:
ldr r0, =gUnknown_0860CE94
bl InitWindows
bl DeactivateAllTextPrinters
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r4, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r4, [r0]
movs r0, 0x2
movs r1, 0
@@ -11358,27 +11358,27 @@ sub_8194B70: @ 8194B70
movs r1, 0x80
movs r2, 0x2
bl ChangeBgY
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
ldrh r1, [r0]
movs r0, 0x10
bl SetGpuReg
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
ldrh r1, [r0]
movs r0, 0x12
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r1, [r0]
movs r0, 0x14
bl SetGpuReg
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r1, [r0]
movs r0, 0x16
bl SetGpuReg
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r1, [r0]
movs r0, 0x18
bl SetGpuReg
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
ldrh r1, [r0]
movs r0, 0x1A
bl SetGpuReg
@@ -11486,19 +11486,19 @@ _08194CD4:
thumb_func_start sub_8194CE4
sub_8194CE4: @ 8194CE4
push {lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
ldrh r1, [r0]
movs r0, 0x10
bl SetGpuReg
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
ldrh r1, [r0]
movs r0, 0x12
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r1, [r0]
movs r0, 0x14
bl SetGpuReg
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r1, [r0]
movs r0, 0x16
bl SetGpuReg
@@ -14296,7 +14296,7 @@ sub_81963F0: @ 81963F0
adds r0, r1
bl FieldObjectClearAnimIfSpecialAnimFinished
bl sub_80D338C
- bl sub_809757C
+ bl UnfreezeMapObjects
bl ScriptContext2_Disable
_08196446:
movs r0, 0x1
@@ -14680,7 +14680,7 @@ sub_8196748: @ 8196748
ldr r4, =gUnknown_085500A4
_08196750:
ldrh r0, [r4]
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
cmp r0, 0
beq _0819675E
@@ -14706,7 +14706,7 @@ sub_8196774: @ 8196774
ldr r5, =gUnknown_085500A4
_0819677E:
ldrh r0, [r5]
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
cmp r0, 0
beq _0819679A
diff --git a/asm/battle_frontier_2.s b/asm/battle_frontier_2.s
index 8a9b0ba24..37ddc7ac6 100755
--- a/asm/battle_frontier_2.s
+++ b/asm/battle_frontier_2.s
@@ -12935,7 +12935,7 @@ _081A1118:
adds r1, r0, 0
mov r0, sp
movs r2, 0x2
- bl sub_81DB5E8
+ bl TVShowConvertInternationalString
adds r0, r5, 0
mov r1, sp
bl StringCopy
@@ -18768,7 +18768,7 @@ _081A43EE:
sub_81A4410: @ 81A4410
push {r4,lr}
ldr r4, =gScriptResult
- bl sub_8185338
+ bl MoveRecordedBattleToSaveData
strh r0, [r4]
ldr r0, =gSaveBlock2Ptr
ldr r1, [r0]
@@ -18997,7 +18997,7 @@ sub_81A4594: @ 81A4594
adds r1, r6, 0x6
ldrb r2, [r6, 0xE]
add r0, sp, 0xC
- bl sub_81DB5E8
+ bl TVShowConvertInternationalString
ldr r1, =gUnknown_0203AB74
ldrb r0, [r1]
mov r3, r8
@@ -19111,7 +19111,7 @@ sub_81A4684: @ 81A4684
adds r1, 0xA
ldrb r2, [r5, 0x1A]
add r0, sp, 0xC
- bl sub_81DB5E8
+ bl TVShowConvertInternationalString
ldr r1, =gUnknown_0203AB74
ldrb r0, [r1]
adds r3, r7, 0x2
@@ -19133,13 +19133,13 @@ sub_81A4684: @ 81A4684
adds r4, r5, 0
adds r4, 0x12
adds r0, r4, 0
- bl sub_8009228
+ bl IsStringJapanese
cmp r0, 0
beq _081A4734
add r0, sp, 0xC
adds r1, r4, 0
movs r2, 0x1
- bl sub_81DB5E8
+ bl TVShowConvertInternationalString
b _081A473C
.pool
_081A4734:
@@ -20533,10 +20533,10 @@ _081A52A4:
lsls r1, 1
movs r2, 0x20
bl LoadCompressedPalette
- ldr r1, =gUnknown_02022E24
+ ldr r1, =gBattle_WIN0H
movs r0, 0xFF
strh r0, [r1]
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
movs r0, 0x70
strh r0, [r1]
b _081A553E
@@ -20577,34 +20577,34 @@ _081A5328:
movs r0, 0x1
negs r0, r0
strb r0, [r1, 0x1]
- ldr r0, =gText_JapaneseHonorific
- bl StrCpyDecodeToDisplayedStringBattle
+ ldr r0, =gText_PlayerMon1Name
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r4, =gDisplayedStringBattle
adds r0, r4, 0
movs r1, 0xF
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gText_Vs
movs r1, 0x10
- bl battle_show_message_maybe
- ldr r0, =gText_RivalBuffer
- bl StrCpyDecodeToDisplayedStringBattle
+ bl sub_814F9EC
+ ldr r0, =gText_OpponentMon1Name
+ bl BattleStringExpandPlaceholdersToDisplayedString
adds r0, r4, 0
movs r1, 0x11
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gText_Mind
movs r1, 0x12
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gText_Skill
movs r1, 0x13
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gText_Body
movs r1, 0x14
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gText_Judgement
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
adds r0, r4, 0
movs r1, 0x15
- bl battle_show_message_maybe
+ bl sub_814F9EC
b _081A553E
.pool
_081A53B4:
@@ -20685,10 +20685,10 @@ _081A5464:
movs r3, 0x1
bl sub_81A5558
ldr r0, =gText_Judgement
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0x15
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldrb r0, [r5]
adds r0, 0x1
strb r0, [r5]
@@ -27306,7 +27306,7 @@ _081A8A74:
ldrb r1, [r2, 0x5]
ldrb r2, [r2, 0x4]
adds r3, r7, 0
- bl exec_movement
+ bl ScriptMovement_StartObjectMovementScript
b _081A8AD4
.pool
_081A8ACC:
@@ -27540,7 +27540,7 @@ _081A8C72:
ldr r2, [r1]
ldrb r1, [r2, 0x5]
ldrb r2, [r2, 0x4]
- bl exec_movement
+ bl ScriptMovement_StartObjectMovementScript
b _081A8D32
.pool
_081A8C9C:
@@ -27618,7 +27618,7 @@ _081A8D12:
ldr r2, [r1]
ldrb r1, [r2, 0x5]
ldrb r2, [r2, 0x4]
- bl exec_movement
+ bl ScriptMovement_StartObjectMovementScript
_081A8D32:
mov r0, r9
adds r0, 0x1
@@ -28660,7 +28660,7 @@ _081A95EE:
lsls r0, r7, 2
adds r0, r1
ldr r0, [r0]
- bl box_related_two__2
+ bl ShowFieldMessage
add sp, 0x8
pop {r3,r4}
mov r8, r3
@@ -31263,8 +31263,8 @@ _081AAA9E:
.pool
thumb_func_end sub_81AAA7C
- thumb_func_start CalculateBattlePyramidPickupItemId
-CalculateBattlePyramidPickupItemId: @ 81AAAE0
+ thumb_func_start GetBattlePyramidPickupItemId
+GetBattlePyramidPickupItemId: @ 81AAAE0
push {r4-r6,lr}
ldr r0, =gSaveBlock2Ptr
ldr r1, [r0]
@@ -31331,6 +31331,6 @@ _081AAB5A:
pop {r1}
bx r1
.pool
- thumb_func_end CalculateBattlePyramidPickupItemId
+ thumb_func_end GetBattlePyramidPickupItemId
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_interface.s b/asm/battle_interface.s
deleted file mode 100755
index 489366fe8..000000000
--- a/asm/battle_interface.s
+++ /dev/null
@@ -1,5734 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8072304
-sub_8072304: @ 8072304
- movs r0, 0x9
- bx lr
- thumb_func_end sub_8072304
-
- thumb_func_start sub_8072308
-sub_8072308: @ 8072308
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- adds r7, r1, 0
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r2, 24
- lsrs r2, 24
- mov r10, r2
- movs r3, 0
- movs r2, 0
-_08072324:
- lsls r0, r3, 24
- asrs r0, 24
- mov r3, sp
- adds r1, r3, r0
- strb r2, [r1]
- adds r0, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _08072324
- movs r3, 0x3
- movs r0, 0x1
- negs r0, r0
- mov r9, r0
- mov r8, sp
-_08072344:
- lsls r0, r5, 16
- asrs r6, r0, 16
- cmp r6, 0
- ble _08072372
- lsls r4, r3, 24
- asrs r4, 24
- mov r1, sp
- adds r5, r1, r4
- adds r0, r6, 0
- movs r1, 0xA
- bl __modsi3
- strb r0, [r5]
- adds r0, r6, 0
- movs r1, 0xA
- bl __divsi3
- lsls r0, 16
- lsrs r5, r0, 16
- subs r4, 0x1
- lsls r4, 24
- lsrs r3, r4, 24
- b _08072344
-_08072372:
- lsls r1, r3, 24
- asrs r0, r1, 24
- cmp r0, r9
- ble _08072396
- movs r4, 0xFF
- movs r3, 0x1
- negs r3, r3
-_08072380:
- asrs r2, r1, 24
- mov r5, sp
- adds r1, r5, r2
- ldrb r0, [r1]
- orrs r0, r4
- strb r0, [r1]
- subs r2, 0x1
- lsls r1, r2, 24
- asrs r0, r1, 24
- cmp r0, r3
- bgt _08072380
-_08072396:
- mov r1, r8
- ldrb r0, [r1, 0x3]
- cmp r0, 0xFF
- bne _080723A2
- movs r0, 0
- strb r0, [r1, 0x3]
-_080723A2:
- mov r2, r10
- cmp r2, 0
- bne _08072432
- movs r3, 0
- movs r1, 0
- movs r6, 0xFC
- lsls r6, 8
- movs r5, 0x1E
- mov r12, r5
-_080723B4:
- lsls r1, 24
- asrs r2, r1, 24
- mov r0, sp
- adds r5, r0, r2
- ldrb r0, [r5]
- mov r8, r1
- cmp r0, 0xFF
- bne _080723EA
- lsls r1, r2, 1
- adds r1, r7
- ldrh r2, [r1]
- adds r0, r6, 0
- ands r0, r2
- mov r2, r12
- orrs r0, r2
- strh r0, [r1]
- lsls r3, 24
- asrs r1, r3, 23
- adds r1, r7
- adds r1, 0x40
- ldrh r2, [r1]
- adds r0, r6, 0
- ands r0, r2
- mov r5, r12
- orrs r0, r5
- strh r0, [r1]
- b _0807241A
-_080723EA:
- lsls r2, 1
- adds r2, r7
- ldrh r0, [r2]
- adds r1, r6, 0
- ands r1, r0
- ldrb r0, [r5]
- adds r0, 0x14
- orrs r1, r0
- strh r1, [r2]
- lsls r4, r3, 24
- asrs r3, r4, 24
- lsls r2, r3, 1
- adds r2, r7
- adds r2, 0x40
- ldrh r0, [r2]
- adds r1, r6, 0
- ands r1, r0
- mov r5, sp
- adds r0, r5, r3
- ldrb r0, [r0]
- adds r0, 0x34
- orrs r1, r0
- strh r1, [r2]
- adds r3, r4, 0
-_0807241A:
- movs r0, 0x80
- lsls r0, 17
- add r0, r8
- lsrs r1, r0, 24
- movs r2, 0x80
- lsls r2, 17
- adds r0, r3, r2
- lsrs r3, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _080723B4
- b _08072496
-_08072432:
- movs r3, 0
- movs r4, 0xFC
- lsls r4, 8
- movs r6, 0x1E
-_0807243A:
- lsls r1, r3, 24
- asrs r2, r1, 24
- mov r3, sp
- adds r5, r3, r2
- ldrb r0, [r5]
- adds r3, r1, 0
- cmp r0, 0xFF
- bne _08072466
- lsls r1, r2, 1
- adds r1, r7
- ldrh r2, [r1]
- adds r0, r4, 0
- ands r0, r2
- orrs r0, r6
- strh r0, [r1]
- adds r1, 0x40
- ldrh r2, [r1]
- adds r0, r4, 0
- ands r0, r2
- orrs r0, r6
- strh r0, [r1]
- b _08072488
-_08072466:
- lsls r2, 1
- adds r2, r7
- ldrh r0, [r2]
- adds r1, r4, 0
- ands r1, r0
- ldrb r0, [r5]
- adds r0, 0x14
- orrs r1, r0
- strh r1, [r2]
- adds r2, 0x40
- ldrh r0, [r2]
- adds r1, r4, 0
- ands r1, r0
- ldrb r0, [r5]
- adds r0, 0x34
- orrs r1, r0
- strh r1, [r2]
-_08072488:
- movs r5, 0x80
- lsls r5, 17
- adds r0, r3, r5
- lsrs r3, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _0807243A
-_08072496:
- 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_8072308
-
- thumb_func_start sub_80724A8
-sub_80724A8: @ 80724A8
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r0, r1, 0
- adds r5, r2, 0
- lsls r4, 16
- lsrs r4, 16
- movs r1, 0x1E
- strh r1, [r5, 0x8]
- lsls r0, 16
- asrs r0, 16
- adds r1, r5, 0
- movs r2, 0
- bl sub_8072308
- lsls r4, 16
- asrs r4, 16
- adds r5, 0xA
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x1
- bl sub_8072308
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80724A8
-
- thumb_func_start battle_make_oam_normal_battle
-battle_make_oam_normal_battle: @ 80724DC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- movs r0, 0
- str r0, [sp]
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- bne _080725F0
- mov r0, r10
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08072574
- ldr r4, =gUnknown_0832C140
- adds r0, r4, 0
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r4, 0
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r4, =gSprites
- lsls r1, r6, 4
- adds r1, r6
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0x1]
- movs r3, 0x3F
- adds r0, r3, 0
- ands r0, r2
- strb r0, [r1, 0x1]
- lsls r2, r7, 4
- adds r2, r7
- lsls r2, 2
- adds r2, r4
- ldrb r0, [r2, 0x1]
- ands r3, r0
- strb r3, [r2, 0x1]
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x40
- ldr r4, =0x000003ff
- adds r0, r4, 0
- ands r1, r0
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
- b _080725BA
- .pool
-_08072574:
- ldr r4, =gUnknown_0832C170
- adds r0, r4, 0
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r4, 0
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gSprites
- lsls r2, r7, 4
- adds r2, r7
- lsls r2, 2
- adds r2, r0
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x20
- ldr r5, =0x000003ff
- adds r0, r5, 0
- ands r1, r0
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
- movs r0, 0x2
- str r0, [sp]
-_080725BA:
- ldr r2, =gSprites
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- adds r0, r2
- strh r7, [r0, 0x6]
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r1, r0, r2
- strh r6, [r1, 0x38]
- adds r2, 0x1C
- adds r0, r2
- ldr r1, =sub_8072924
- str r1, [r0]
- b _08072718
- .pool
-_080725F0:
- mov r0, r10
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08072694
- mov r0, r10
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 25
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- ldr r4, =gUnknown_0832C140
- adds r0, r4
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r6, r0, 24
- mov r0, r10
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 25
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r4, =gSprites
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- adds r0, r4
- strh r7, [r0, 0x6]
- lsls r2, r7, 4
- adds r2, r7
- lsls r2, 2
- adds r3, r2, r4
- strh r6, [r3, 0x38]
- ldrh r1, [r3, 0x4]
- mov r8, r1
- mov r5, r8
- lsls r1, r5, 22
- lsrs r1, 22
- adds r1, 0x20
- ldr r5, =0x000003ff
- adds r0, r5, 0
- ands r1, r0
- ldr r0, =0xfffffc00
- mov r5, r8
- ands r0, r5
- orrs r0, r1
- strh r0, [r3, 0x4]
- adds r4, 0x1C
- adds r2, r4
- ldr r0, =sub_8072924
- str r0, [r2]
- movs r0, 0x1
- b _08072716
- .pool
-_08072694:
- mov r0, r10
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 25
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- ldr r4, =gUnknown_0832C170
- adds r0, r4
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r6, r0, 24
- mov r0, r10
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 25
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r4, =gSprites
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- adds r0, r4
- strh r7, [r0, 0x6]
- lsls r2, r7, 4
- adds r2, r7
- lsls r2, 2
- adds r3, r2, r4
- strh r6, [r3, 0x38]
- ldrh r1, [r3, 0x4]
- mov r8, r1
- mov r5, r8
- lsls r1, r5, 22
- lsrs r1, 22
- adds r1, 0x20
- ldr r5, =0x000003ff
- adds r0, r5, 0
- ands r1, r0
- ldr r0, =0xfffffc00
- mov r5, r8
- ands r0, r5
- orrs r0, r1
- strh r0, [r3, 0x4]
- adds r4, 0x1C
- adds r2, r4
- ldr r0, =sub_8072924
- str r0, [r2]
- movs r0, 0x2
-_08072716:
- str r0, [sp]
-_08072718:
- ldr r0, =gBanksBySide
- add r0, r10
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- ldr r1, =gUnknown_0832C1C0
- adds r0, r1
- movs r1, 0x8C
- movs r2, 0x3C
- movs r3, 0
- bl CreateSpriteAtEnd
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 4
- adds r4, r5
- lsls r4, 2
- ldr r1, =gSprites
- mov r8, r1
- add r4, r8
- mov r0, r10
- bl GetBankSide
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 21
- ldr r0, =gUnknown_0832C28C
- adds r1, r0
- adds r0, r4, 0
- bl SetSubspriteTables
- adds r2, r4, 0
- adds r2, 0x42
- ldrb r1, [r2]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- ldrb r1, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- movs r2, 0x4
- mov r9, r2
- mov r1, r9
- orrs r0, r1
- strb r0, [r4, 0x5]
- movs r0, 0x1
- bl sub_80728A4
- ldrh r1, [r4, 0x4]
- lsls r1, 22
- lsrs r1, 17
- ldr r2, =0x06010000
- adds r1, r2
- ldr r2, =0x04000010
- bl CpuSet
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- add r0, r8
- strh r5, [r0, 0x38]
- mov r2, r10
- strh r2, [r0, 0x3A]
- adds r0, 0x3E
- ldrb r1, [r0]
- mov r5, r9
- orrs r1, r5
- strb r1, [r0]
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r8
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r5
- strb r1, [r0]
- strh r6, [r4, 0x38]
- mov r0, sp
- ldrh r0, [r0]
- strh r0, [r4, 0x3A]
- adds r4, 0x3E
- ldrb r0, [r4]
- orrs r0, r5
- strb r0, [r4]
- adds r0, r6, 0
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end battle_make_oam_normal_battle
-
- thumb_func_start battle_make_oam_safari_battle
-battle_make_oam_safari_battle: @ 8072804
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r4, =gUnknown_0832C1A0
- adds r0, r4, 0
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSprite
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- adds r0, r4, 0
- movs r1, 0xF0
- movs r2, 0xA0
- movs r3, 0x1
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSprites
- mov r9, r1
- lsls r4, r6, 4
- adds r4, r6
- lsls r4, 2
- add r4, r9
- ldrb r3, [r4, 0x1]
- movs r2, 0x3F
- adds r1, r2, 0
- ands r1, r3
- strb r1, [r4, 0x1]
- lsls r3, r0, 4
- adds r3, r0
- lsls r3, 2
- mov r7, r9
- adds r5, r3, r7
- ldrb r1, [r5, 0x1]
- ands r2, r1
- strb r2, [r5, 0x1]
- ldrh r1, [r5, 0x4]
- mov r8, r1
- mov r7, r8
- lsls r2, r7, 22
- lsrs r2, 22
- adds r2, 0x40
- ldr r7, =0x000003ff
- adds r1, r7, 0
- ands r2, r1
- ldr r1, =0xfffffc00
- mov r7, r8
- ands r1, r7
- orrs r1, r2
- strh r1, [r5, 0x4]
- strh r0, [r4, 0x6]
- strh r6, [r5, 0x38]
- movs r0, 0x1C
- add r9, r0
- add r3, r9
- ldr r0, =sub_8072924
- str r0, [r3]
- adds r0, r6, 0
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end battle_make_oam_safari_battle
-
- thumb_func_start sub_80728A4
-sub_80728A4: @ 80728A4
- lsls r0, 24
- lsrs r0, 19
- ldr r1, =gUnknown_08C11BDC
- adds r0, r1
- bx lr
- .pool
- thumb_func_end sub_80728A4
-
- thumb_func_start sub_80728B4
-sub_80728B4: @ 80728B4
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x38]
- lsls r0, 24
- lsrs r5, r0, 24
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080728E4
- cmp r0, 0x1
- bgt _080728F8
- cmp r0, 0
- bne _080728F8
- ldr r2, =gSprites
- lsls r3, r5, 4
- adds r1, r3, r5
- lsls r1, 2
- adds r1, r2
- ldrh r0, [r1, 0x20]
- adds r0, 0x10
- b _08072906
- .pool
-_080728E4:
- ldr r2, =gSprites
- lsls r3, r5, 4
- adds r1, r3, r5
- lsls r1, 2
- adds r1, r2
- ldrh r0, [r1, 0x20]
- adds r0, 0x10
- b _08072906
- .pool
-_080728F8:
- ldr r2, =gSprites
- lsls r3, r5, 4
- adds r1, r3, r5
- lsls r1, 2
- adds r1, r2
- ldrh r0, [r1, 0x20]
- adds r0, 0x8
-_08072906:
- strh r0, [r4, 0x20]
- ldrh r0, [r1, 0x22]
- strh r0, [r4, 0x22]
- adds r0, r3, r5
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x24]
- strh r1, [r4, 0x24]
- ldrh r0, [r0, 0x26]
- strh r0, [r4, 0x26]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80728B4
-
- thumb_func_start sub_8072924
-sub_8072924: @ 8072924
- ldrh r1, [r0, 0x38]
- lsls r1, 24
- lsrs r1, 24
- ldr r3, =gSprites
- lsls r2, r1, 4
- adds r2, r1
- lsls r2, 2
- adds r2, r3
- ldrh r1, [r2, 0x20]
- adds r1, 0x40
- strh r1, [r0, 0x20]
- ldrh r1, [r2, 0x22]
- strh r1, [r0, 0x22]
- ldrh r1, [r2, 0x24]
- strh r1, [r0, 0x24]
- ldrh r1, [r2, 0x26]
- strh r1, [r0, 0x26]
- bx lr
- .pool
- thumb_func_end sub_8072924
-
- thumb_func_start sub_807294C
-sub_807294C: @ 807294C
- push {r4-r7,lr}
- ldr r7, [sp, 0x14]
- lsls r0, 24
- lsrs r0, 24
- ldr r6, =gUnknown_020244D0
- ldr r4, [r6]
- ldr r5, [r4, 0xC]
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 2
- adds r5, r4, r5
- strb r1, [r5]
- ldr r0, [r6]
- ldr r0, [r0, 0xC]
- adds r4, r0
- str r2, [r4, 0x4]
- str r3, [r4, 0x8]
- str r7, [r4, 0xC]
- ldr r0, =0xffff8000
- str r0, [r4, 0x10]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_807294C
-
- thumb_func_start sub_8072984
-sub_8072984: @ 8072984
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gSprites
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r4
- adds r1, r2, 0
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r3, 0x4
- orrs r0, r3
- strb r0, [r1]
- movs r0, 0x38
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r3
- strb r1, [r0]
- ldrh r1, [r2, 0x6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r3
- strb r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8072984
-
- thumb_func_start sub_80729D0
-sub_80729D0: @ 80729D0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r5, =gSprites
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r5
- adds r4, r2, 0
- adds r4, 0x3E
- ldrb r1, [r4]
- movs r3, 0x5
- negs r3, r3
- adds r0, r3, 0
- ands r0, r1
- strb r0, [r4]
- movs r0, 0x38
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r4, [r0]
- adds r1, r3, 0
- ands r1, r4
- strb r1, [r0]
- ldrh r1, [r2, 0x6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r3, r1
- strb r3, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80729D0
-
- thumb_func_start sub_8072A24
-sub_8072A24: @ 8072A24
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gSprites
- lsls r3, r0, 4
- adds r3, r0
- lsls r3, 2
- adds r3, r4
- strh r1, [r3, 0x20]
- strh r2, [r3, 0x22]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8072A24
-
- thumb_func_start sub_8072A44
-sub_8072A44: @ 8072A44
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r5, =gSprites
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- adds r4, r5
- ldrh r1, [r4, 0x6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
- movs r0, 0x38
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
- adds r0, r4, 0
- bl DestroySprite
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8072A44
-
- thumb_func_start nullsub_30
-nullsub_30: @ 8072A84
- bx lr
- thumb_func_end nullsub_30
-
- thumb_func_start sub_8072A88
-sub_8072A88: @ 8072A88
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- movs r6, 0
- ldr r1, =gNoOfAllBanks
- mov r8, r1
- ldrb r2, [r1]
- cmp r6, r2
- bge _08072B00
- ldr r1, =gSprites
- mov r12, r1
- movs r1, 0x3
- ands r0, r1
- lsls r5, r0, 2
- movs r7, 0xD
- negs r7, r7
- ldr r2, =gHealthBoxesIds
- mov r9, r2
-_08072AB2:
- mov r1, r9
- adds r0, r6, r1
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- add r1, r12
- ldrb r4, [r1, 0x6]
- ldrh r3, [r1, 0x38]
- lsls r3, 24
- lsrs r3, 24
- ldrb r2, [r1, 0x5]
- adds r0, r7, 0
- ands r0, r2
- orrs r0, r5
- strb r0, [r1, 0x5]
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- add r1, r12
- ldrb r2, [r1, 0x5]
- adds r0, r7, 0
- ands r0, r2
- orrs r0, r5
- strb r0, [r1, 0x5]
- lsls r1, r3, 4
- adds r1, r3
- lsls r1, 2
- add r1, r12
- ldrb r2, [r1, 0x5]
- adds r0, r7, 0
- ands r0, r2
- orrs r0, r5
- strb r0, [r1, 0x5]
- adds r6, 0x1
- mov r2, r8
- ldrb r2, [r2]
- cmp r6, r2
- blt _08072AB2
-_08072B00:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8072A88
-
- thumb_func_start sub_8072B18
-sub_8072B18: @ 8072B18
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- movs r4, 0
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- bne _08072B44
- adds r0, r6, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _08072B3E
- movs r5, 0x2C
- movs r4, 0x1E
- b _08072B7C
-_08072B3E:
- movs r5, 0x9E
- movs r4, 0x58
- b _08072B7C
-_08072B44:
- adds r0, r6, 0
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08072B72
- cmp r0, 0x1
- bgt _08072B5C
- cmp r0, 0
- beq _08072B66
- b _08072B7C
-_08072B5C:
- cmp r0, 0x2
- beq _08072B6C
- cmp r0, 0x3
- beq _08072B78
- b _08072B7C
-_08072B66:
- movs r5, 0x9F
- movs r4, 0x4C
- b _08072B7C
-_08072B6C:
- movs r5, 0xAB
- movs r4, 0x65
- b _08072B7C
-_08072B72:
- movs r5, 0x2C
- movs r4, 0x13
- b _08072B7C
-_08072B78:
- movs r5, 0x20
- movs r4, 0x2C
-_08072B7C:
- ldr r0, =gHealthBoxesIds
- adds r0, r6, r0
- ldrb r0, [r0]
- adds r1, r5, 0
- adds r2, r4, 0
- bl sub_8072A24
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8072B18
-
- thumb_func_start healthbar_draw_level
-healthbar_draw_level: @ 8072B94
- push {r4,r5,lr}
- sub sp, 0x18
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r1, 24
- lsrs r1, 24
- add r2, sp, 0x4
- movs r0, 0xF9
- strb r0, [r2]
- movs r0, 0x5
- strb r0, [r2, 0x1]
- mov r0, sp
- adds r0, 0x6
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r1, r0, 0
- subs r1, 0x2
- add r0, sp, 0x4
- subs r1, r0
- movs r0, 0x3
- subs r0, r1
- lsls r1, r0, 2
- adds r1, r0
- add r0, sp, 0x14
- str r0, [sp]
- add r0, sp, 0x4
- movs r2, 0x3
- movs r3, 0x2
- bl write_to_rbox
- adds r5, r0, 0
- ldr r0, =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x4]
- lsls r0, 22
- lsrs r4, r0, 17
- ldrh r0, [r1, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08072C18
- bl battle_type_is_double
- lsls r0, 24
- ldr r2, =0x06010420
- adds r1, r4, r2
- cmp r0, 0
- bne _08072C1C
- ldr r0, =0x06010820
- adds r1, r4, r0
- b _08072C1C
- .pool
-_08072C18:
- ldr r2, =0x06010400
- adds r1, r4, r2
-_08072C1C:
- adds r0, r1, 0
- adds r1, r5, 0
- movs r2, 0x3
- bl sub_8075198
- ldr r0, [sp, 0x14]
- bl sub_807512C
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end healthbar_draw_level
-
- thumb_func_start heathbar_draw_hp
-heathbar_draw_hp: @ 8072C38
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x28
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 16
- lsrs r1, 16
- mov r9, r1
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- ldr r1, =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r4, r0, r1
- ldrh r0, [r4, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08072D10
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- bne _08072D10
- ldrh r0, [r4, 0x4]
- lsls r0, 22
- lsrs r5, r0, 17
- mov r0, r8
- cmp r0, 0
- beq _08072CB8
- mov r2, r9
- lsls r1, r2, 16
- asrs r1, 16
- add r0, sp, 0x4
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- add r0, sp, 0x24
- str r0, [sp]
- add r0, sp, 0x4
- movs r1, 0
- movs r2, 0x5
- movs r3, 0x2
- bl write_to_rbox
- adds r4, r0, 0
- ldr r1, =0x06010b40
- adds r0, r5, r1
- adds r1, r4, 0
- b _08072CF8
- .pool
-_08072CB8:
- mov r2, r9
- lsls r1, r2, 16
- asrs r1, 16
- add r0, sp, 0x4
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- add r1, sp, 0x4
- movs r0, 0xBA
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- add r0, sp, 0x24
- str r0, [sp]
- adds r0, r1, 0
- movs r1, 0x4
- movs r2, 0x5
- movs r3, 0x2
- bl write_to_rbox
- adds r4, r0, 0
- ldr r1, =0x060103e0
- adds r0, r5, r1
- adds r1, r4, 0
- movs r2, 0x1
- bl sub_8075170
- ldr r2, =0x06010b00
- adds r0, r5, r2
- adds r1, r4, 0
- adds r1, 0x20
-_08072CF8:
- movs r2, 0x2
- bl sub_8075170
- ldr r0, [sp, 0x24]
- bl sub_807512C
- b _08072DEA
- .pool
-_08072D10:
- ldr r1, =gUnknown_0832C3C4
- add r0, sp, 0x4
- movs r2, 0x14
- bl memcpy
- ldr r1, =gSprites
- lsls r4, r7, 4
- adds r0, r4, r7
- lsls r0, 2
- adds r6, r0, r1
- ldrh r0, [r6, 0x3A]
- lsls r0, 24
- lsrs r5, r0, 24
- bl battle_type_is_double
- lsls r0, 24
- lsrs r0, 24
- mov r10, r4
- cmp r0, 0x1
- beq _08072D46
- adds r0, r5, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08072D60
-_08072D46:
- mov r0, r9
- lsls r1, r0, 16
- asrs r1, 16
- adds r0, r7, 0
- mov r2, r8
- bl sub_8072E0C
- b _08072DEA
- .pool
-_08072D60:
- ldrh r0, [r6, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08072D7C
- movs r6, 0x59
- mov r1, r8
- cmp r1, 0
- bne _08072D86
- movs r6, 0x1D
- b _08072D86
-_08072D7C:
- movs r6, 0x30
- mov r2, r8
- cmp r2, 0
- bne _08072D86
- movs r6, 0x14
-_08072D86:
- mov r0, sp
- adds r0, 0xA
- mov r2, r9
- lsls r1, r2, 16
- asrs r1, 16
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r0, =gBattleSpritesGfx
- ldr r0, [r0]
- movs r1, 0xBA
- lsls r1, 1
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x9
- add r2, sp, 0x4
- bl RenderTextFont9
- movs r4, 0
- ldr r1, =gSprites
- mov r2, r10
- adds r0, r2, r7
- lsls r0, 2
- adds r5, r0, r1
-_08072DB8:
- ldr r0, =gBattleSpritesGfx
- ldr r0, [r0]
- movs r1, 0xBA
- lsls r1, 1
- adds r0, r1
- lsls r1, r4, 6
- adds r1, 0x20
- ldr r0, [r0]
- adds r0, r1
- ldrh r1, [r5, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r1, r6
- adds r1, r4
- lsls r1, 5
- ldr r2, =0x06010000
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _08072DB8
-_08072DEA:
- add sp, 0x28
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end heathbar_draw_hp
-
- thumb_func_start sub_8072E0C
-sub_8072E0C: @ 8072E0C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x30
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 16
- lsrs r4, r1, 16
- mov r10, r4
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- ldr r5, =gSprites
- lsls r0, 4
- add r0, r9
- lsls r0, 2
- adds r7, r0, r5
- ldrh r0, [r7, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08072F28
- ldr r0, =gUnknown_020244D0
- ldr r1, [r0]
- movs r2, 0x3A
- ldrsh r0, [r7, r2]
- ldr r1, [r1]
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _08072E5E
- b _080730B8
-_08072E5E:
- movs r3, 0x38
- ldrsh r1, [r7, r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrh r0, [r0, 0x4]
- lsls r0, 22
- lsrs r5, r0, 17
- ldr r0, =0x06010000
- adds r6, r5, r0
- mov r0, r8
- cmp r0, 0
- beq _08072EDC
- lsls r1, r4, 16
- asrs r1, 16
- add r0, sp, 0x4
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- add r0, sp, 0x28
- str r0, [sp]
- add r0, sp, 0x4
- movs r1, 0
- movs r2, 0x5
- movs r3, 0
- bl write_to_rbox
- adds r4, r0, 0
- ldr r1, =0x060100c0
- adds r0, r5, r1
- adds r1, r4, 0
- movs r2, 0x2
- bl sub_8075170
- ldr r0, [sp, 0x28]
- bl sub_807512C
- movs r0, 0x74
- bl sub_80728A4
- ldrh r1, [r7, 0x4]
- lsls r1, 22
- lsrs r1, 17
- ldr r2, =0x06010680
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- b _080730B8
- .pool
-_08072EDC:
- lsls r1, r4, 16
- asrs r1, 16
- add r0, sp, 0x4
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- add r1, sp, 0x4
- movs r0, 0xBA
- strb r0, [r1, 0x3]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- add r0, sp, 0x28
- str r0, [sp]
- adds r0, r1, 0
- movs r1, 0x4
- movs r2, 0x5
- movs r3, 0
- bl write_to_rbox
- adds r4, r0, 0
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0x3
- bl sub_807513C
- ldr r3, =0x06010060
- adds r0, r5, r3
- adds r1, r4, 0
- movs r2, 0x3
- bl sub_8075170
- ldr r0, [sp, 0x28]
- bl sub_807512C
- b _080730B8
- .pool
-_08072F28:
- ldr r1, =gUnknown_0832C3D8
- add r0, sp, 0x4
- movs r2, 0x14
- bl memcpy
- ldrh r0, [r7, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x2C]
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0]
- ldr r2, [sp, 0x2C]
- lsls r0, r2, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _08072F52
- b _080730B8
-_08072F52:
- movs r6, 0x4
- mov r3, r8
- negs r0, r3
- orrs r0, r3
- asrs r0, 31
- ands r6, r0
- ldrh r0, [r7, 0x38]
- lsls r0, 24
- lsrs r7, r0, 24
- mov r0, sp
- adds r0, 0xA
- mov r2, r10
- lsls r1, r2, 16
- asrs r1, 16
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- mov r3, r8
- cmp r3, 0
- bne _08072F82
- ldr r1, =gText_Slash
- bl StringCopy
-_08072F82:
- ldr r0, =gBattleSpritesGfx
- ldr r0, [r0]
- movs r1, 0xBA
- lsls r1, 1
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x9
- add r2, sp, 0x4
- bl RenderTextFont9
- adds r4, r6, 0
- adds r0, r4, 0x3
- cmp r4, r0
- bge _08073024
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r5, r0, r5
-_08072FA6:
- cmp r4, 0x2
- bhi _08072FF0
- ldr r0, =gBattleSpritesGfx
- ldr r0, [r0]
- movs r2, 0xBA
- lsls r2, 1
- adds r0, r2
- subs r1, r4, r6
- lsls r1, 6
- adds r1, 0x20
- ldr r0, [r0]
- adds r0, r1
- ldrh r1, [r5, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r4, 0x1
- adds r1, r4
- lsls r1, 5
- ldr r3, =0x06010000
- adds r1, r3
- ldr r2, =0x04000008
- bl CpuSet
- b _0807301A
- .pool
-_08072FF0:
- ldr r0, =gBattleSpritesGfx
- ldr r0, [r0]
- movs r1, 0xBA
- lsls r1, 1
- adds r0, r1
- subs r1, r4, r6
- lsls r1, 6
- adds r1, 0x20
- ldr r0, [r0]
- adds r0, r1
- ldrh r1, [r5, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r1, r4, r1
- lsls r1, 5
- ldr r2, =0x06010020
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- adds r4, 0x1
-_0807301A:
- lsls r0, r4, 24
- lsrs r4, r0, 24
- adds r0, r6, 0x3
- cmp r4, r0
- blt _08072FA6
-_08073024:
- mov r3, r8
- cmp r3, 0
- bne _08073084
- ldr r0, =gBattleSpritesGfx
- ldr r0, [r0]
- movs r1, 0xBA
- lsls r1, 1
- adds r0, r1
- ldr r0, [r0]
- adds r0, 0xE0
- ldr r1, =gSprites
- lsls r4, r7, 4
- adds r4, r7
- lsls r4, 2
- adds r4, r1
- ldrh r1, [r4, 0x4]
- lsls r1, 22
- lsrs r1, 17
- adds r1, 0x80
- ldr r5, =0x06010000
- adds r1, r5
- ldr r2, =0x04000008
- bl CpuSet
- mov r2, r8
- str r2, [sp, 0x24]
- add r0, sp, 0x24
- ldrh r1, [r4, 0x4]
- lsls r1, 22
- lsrs r1, 17
- adds r1, r5
- ldr r2, =0x05000008
- bl CpuSet
- b _080730B8
- .pool
-_08073084:
- ldr r0, [sp, 0x2C]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080730B8
- movs r0, 0x74
- bl sub_80728A4
- ldr r2, =gSprites
- mov r3, r9
- lsls r1, r3, 4
- add r1, r9
- lsls r1, 2
- adds r1, r2
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 17
- movs r2, 0xD0
- lsls r2, 3
- adds r1, r2
- ldr r2, =0x06010000
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
-_080730B8:
- add sp, 0x30
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8072E0C
-
- thumb_func_start sub_80730D4
-sub_80730D4: @ 80730D4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x14]
- ldr r1, =gUnknown_0832C3C4
- mov r0, sp
- movs r2, 0x14
- bl memcpy
- ldr r1, =gSprites
- ldr r2, [sp, 0x14]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- bl GetBankIdentity
- ldr r1, =gBattleSpritesGfx
- ldr r2, [r1]
- movs r3, 0xBA
- lsls r3, 1
- adds r2, r3
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 7
- movs r0, 0xA4
- lsls r0, 3
- adds r1, r0
- ldr r0, [r2]
- adds r6, r0, r1
- movs r1, 0x5
- mov r8, r1
- adds r0, r4, 0
- bl GetNature
- lsls r0, 24
- mov r4, sp
- adds r4, 0x6
- ldr r1, =gNatureNamePointers
- lsrs r0, 22
- adds r0, r1
- ldr r1, [r0]
- adds r0, r4, 0
- bl StringCopy
- adds r0, r6, 0
- movs r1, 0x9
- mov r2, sp
- bl RenderTextFont9
- movs r7, 0x6
- movs r5, 0
- mov r2, sp
- adds r2, 0x9
- str r2, [sp, 0x1C]
-_08073158:
- mov r3, sp
- adds r0, r3, r7
- ldrb r1, [r0]
- adds r0, r1, 0
- subs r0, 0x37
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bls _08073176
- adds r0, r1, 0
- adds r0, 0x79
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bhi _0807318C
-_08073176:
- movs r0, 0x2C
- b _080731AA
- .pool
-_0807318C:
- adds r0, r1, 0
- subs r0, 0x4B
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080731A4
- adds r0, r1, 0
- adds r0, 0x65
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080731A8
-_080731A4:
- movs r0, 0x2D
- b _080731AA
-_080731A8:
- movs r0, 0x2B
-_080731AA:
- bl sub_80728A4
- lsls r1, r5, 6
- adds r1, r6, r1
- ldr r2, =0x04000008
- bl CpuSet
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- adds r7, 0x1
- cmp r5, r8
- bcc _08073158
- movs r7, 0x1
- ldr r0, [sp, 0x14]
- lsls r0, 4
- str r0, [sp, 0x18]
- movs r1, 0x1
- add r1, r8
- mov r9, r1
- cmp r7, r9
- bge _08073236
- ldr r1, =gSprites
- ldr r2, =0x04000008
- mov r10, r2
- ldr r3, [sp, 0x14]
- adds r0, r3
- lsls r0, 2
- adds r0, r1
- mov r8, r0
-_080731E6:
- mov r1, r8
- ldrh r0, [r1, 0x4]
- lsls r0, 22
- lsrs r0, 22
- adds r5, r7, 0
- cmp r7, 0
- bge _080731F6
- adds r5, r7, 0x7
-_080731F6:
- asrs r5, 3
- lsls r4, r5, 3
- subs r4, r7, r4
- adds r0, r4
- lsls r5, 6
- adds r0, r5
- lsls r0, 5
- ldr r2, =0x06010000
- adds r1, r0, r2
- adds r0, r6, 0
- mov r2, r10
- bl CpuSet
- adds r6, 0x20
- mov r3, r8
- ldrh r0, [r3, 0x4]
- lsls r0, 22
- lsrs r0, 22
- adds r4, 0x8
- adds r0, r4
- adds r0, r5
- lsls r0, 5
- ldr r2, =0x06010000
- adds r1, r0, r2
- adds r0, r6, 0
- mov r2, r10
- bl CpuSet
- adds r6, 0x20
- adds r7, 0x1
- cmp r7, r9
- blt _080731E6
-_08073236:
- ldr r6, =gSprites
- ldr r3, [sp, 0x18]
- ldr r1, [sp, 0x14]
- adds r0, r3, r1
- lsls r0, 2
- adds r0, r6
- ldrh r4, [r0, 0x38]
- lsls r4, 24
- lsrs r4, 24
- ldr r5, =gBattleStruct
- ldr r0, [r5]
- adds r0, 0x7C
- ldrb r1, [r0]
- mov r0, sp
- adds r0, 0x6
- movs r2, 0x1
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r0, [r5]
- adds r0, 0x7B
- ldrb r1, [r0]
- ldr r0, [sp, 0x1C]
- movs r2, 0x1
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- mov r1, sp
- movs r0, 0
- strb r0, [r1, 0x5]
- movs r0, 0xBA
- strb r0, [r1, 0x8]
- ldr r5, =gBattleSpritesGfx
- ldr r0, [r5]
- movs r2, 0xBA
- lsls r2, 1
- adds r0, r2
- ldr r0, [r0]
- movs r1, 0x9
- mov r2, sp
- bl RenderTextFont9
- movs r7, 0
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r6, r0, r6
- movs r4, 0x20
-_08073296:
- cmp r7, 0x1
- bgt _080732D4
- ldr r0, [r5]
- movs r3, 0xBA
- lsls r3, 1
- adds r0, r3
- ldr r0, [r0]
- adds r0, r4
- ldrh r1, [r6, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r2, r7, 0x2
- adds r1, r2
- lsls r1, 5
- ldr r2, =0x06010000
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- b _080732F4
- .pool
-_080732D4:
- ldr r0, [r5]
- movs r3, 0xBA
- lsls r3, 1
- adds r0, r3
- ldr r0, [r0]
- adds r0, r4
- ldrh r1, [r6, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r1, r7, r1
- lsls r1, 5
- ldr r2, =0x060100c0
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
-_080732F4:
- adds r4, 0x40
- adds r7, 0x1
- cmp r7, 0x4
- ble _08073296
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80730D4
-
- thumb_func_start sub_8073314
-sub_8073314: @ 8073314
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r0, 0
- mov r9, r0
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r9, r0
- blt _0807332E
- b _080735BA
-_0807332E:
- ldr r1, =gSprites
- mov r10, r1
- ldr r2, =gBattlePartyID
- mov r8, r2
-_08073336:
- ldr r0, =gHealthBoxesIds
- mov r1, r9
- adds r6, r1, r0
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- mov r1, r10
- adds r1, 0x1C
- adds r0, r1
- ldr r1, [r0]
- ldr r0, =SpriteCallbackDummy
- cmp r1, r0
- beq _08073354
- b _080735A8
-_08073354:
- mov r2, r9
- lsls r0, r2, 24
- lsrs r7, r0, 24
- adds r0, r7, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0807336A
- b _080735A8
-_0807336A:
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- bne _08073382
- adds r0, r7, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08073382
- b _080735A8
-_08073382:
- ldr r5, =gUnknown_020244D0
- ldr r0, [r5]
- ldr r3, [r0]
- mov r0, r9
- lsls r4, r0, 2
- adds r3, r4, r3
- ldr r0, [r3]
- lsls r0, 27
- lsrs r0, 31
- movs r2, 0x1
- eors r2, r0
- lsls r2, 4
- mov r12, r2
- ldrb r0, [r3]
- movs r2, 0x11
- negs r2, r2
- adds r1, r2, 0
- ands r0, r1
- mov r1, r12
- orrs r0, r1
- strb r0, [r3]
- ldr r0, [r5]
- ldr r0, [r0]
- adds r4, r0
- ldr r0, [r4]
- lsls r0, 27
- lsrs r4, r0, 31
- adds r0, r7, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080734B0
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- bne _080733D0
- b _080735A8
-_080733D0:
- ldr r0, =gBattleTypeFlags
- ldr r2, [r0]
- movs r0, 0x80
- ands r2, r0
- cmp r2, 0
- beq _080733DE
- b _080735A8
-_080733DE:
- cmp r4, 0x1
- bne _08073468
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r0, [r0, 0x38]
- lsls r0, 24
- lsrs r1, r0, 24
- str r2, [sp]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r1, [r0, 0x4]
- lsls r1, 22
- lsrs r1, 17
- ldr r2, =0x06010000
- adds r1, r2
- mov r0, sp
- ldr r2, =0x05000040
- bl CpuSet
- ldrb r4, [r6]
- mov r1, r8
- ldrh r0, [r1]
- movs r2, 0x64
- muls r0, r2
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x39
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- asrs r1, 16
- adds r0, r4, 0
- movs r2, 0
- bl sub_8072E0C
- ldrb r4, [r6]
- mov r2, r8
- ldrh r0, [r2]
- movs r1, 0x64
- muls r0, r1
- ldr r2, =gPlayerParty
- b _08073536
- .pool
-_08073468:
- ldrb r0, [r6]
- bl draw_status_ailment_maybe
- ldrb r0, [r6]
- mov r2, r8
- ldrh r1, [r2]
- movs r2, 0x64
- muls r1, r2
- ldr r2, =gPlayerParty
- adds r1, r2
- movs r2, 0x5
- bl healthbar_draw_field_maybe
- movs r0, 0x75
- bl sub_80728A4
- ldrb r2, [r6]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- add r1, r10
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 17
- ldr r2, =0x06010680
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- b _08073592
- .pool
-_080734B0:
- cmp r4, 0x1
- bne _0807355C
- ldr r0, =gBattleTypeFlags
- ldr r2, [r0]
- movs r0, 0x80
- ands r2, r0
- cmp r2, 0
- beq _080734DC
- ldrb r0, [r6]
- mov r2, r8
- ldrh r1, [r2]
- movs r2, 0x64
- muls r1, r2
- ldr r2, =gEnemyParty
- adds r1, r2
- bl sub_80730D4
- b _08073592
- .pool
-_080734DC:
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r0, [r0, 0x38]
- lsls r0, 24
- lsrs r1, r0, 24
- str r2, [sp]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r1, [r0, 0x4]
- lsls r1, 22
- lsrs r1, 17
- ldr r0, =0x06010000
- adds r1, r0
- mov r0, sp
- ldr r2, =0x05000040
- bl CpuSet
- ldrb r4, [r6]
- mov r1, r8
- ldrh r0, [r1]
- movs r2, 0x64
- muls r0, r2
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x39
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- asrs r1, 16
- adds r0, r4, 0
- movs r2, 0
- bl sub_8072E0C
- ldrb r4, [r6]
- mov r2, r8
- ldrh r0, [r2]
- movs r1, 0x64
- muls r0, r1
- ldr r2, =gEnemyParty
-_08073536:
- adds r0, r2
- movs r1, 0x3A
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- asrs r1, 16
- adds r0, r4, 0
- movs r2, 0x1
- bl sub_8072E0C
- b _08073592
- .pool
-_0807355C:
- ldrb r0, [r6]
- bl draw_status_ailment_maybe
- ldrb r0, [r6]
- mov r2, r8
- ldrh r1, [r2]
- movs r5, 0x64
- muls r1, r5
- ldr r4, =gEnemyParty
- adds r1, r4
- movs r2, 0x5
- bl healthbar_draw_field_maybe
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08073592
- ldrb r0, [r6]
- mov r2, r8
- ldrh r1, [r2]
- muls r1, r5
- adds r1, r4
- movs r2, 0x4
- bl healthbar_draw_field_maybe
-_08073592:
- ldr r0, =gHealthBoxesIds
- add r0, r9
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r1, [r0, 0x3C]
- movs r2, 0x1
- eors r1, r2
- strh r1, [r0, 0x3C]
-_080735A8:
- movs r0, 0x2
- add r8, r0
- movs r1, 0x1
- add r9, r1
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r9, r0
- bge _080735BA
- b _08073336
-_080735BA:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8073314
-
- thumb_func_start sub_80735DC
-sub_80735DC: @ 80735DC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x24
- str r1, [sp, 0xC]
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
- lsls r2, 24
- lsrs r2, 24
- adds r4, r2, 0
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp, 0x10]
- cmp r4, 0
- beq _0807360C
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _0807365C
-_0807360C:
- ldr r0, [sp, 0x8]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08073630
- movs r0, 0
- mov r9, r0
- movs r5, 0x88
- movs r4, 0x60
- movs r1, 0x64
- mov r10, r1
- ldr r2, =0x0000fffb
- mov r8, r2
- b _0807366C
- .pool
-_08073630:
- movs r3, 0x1
- mov r9, r3
- cmp r4, 0
- beq _08073642
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- bne _08073648
-_08073642:
- movs r5, 0x68
- movs r4, 0x28
- b _0807364C
-_08073648:
- movs r5, 0x68
- movs r4, 0x10
-_0807364C:
- ldr r6, =0x0000ff9c
- mov r10, r6
- movs r0, 0x5
- mov r8, r0
- b _0807366C
- .pool
-_0807365C:
- movs r1, 0x1
- mov r9, r1
- movs r5, 0x68
- movs r4, 0x28
- ldr r2, =0x0000ff9c
- mov r10, r2
- movs r3, 0x5
- mov r8, r3
-_0807366C:
- ldr r0, =gUnknown_0832C334
- bl LoadCompressedObjectPicUsingHeap
- ldr r0, =gUnknown_0832C34C
- bl LoadSpriteSheet
- ldr r0, =gUnknown_0832C33C
- bl LoadSpritePalette
- ldr r0, =gUnknown_0832C344
- bl LoadSpritePalette
- mov r0, r9
- lsls r6, r0, 1
- adds r0, r6, r0
- lsls r0, 3
- ldr r1, =gUnknown_0832C364
- adds r0, r1
- lsls r5, 16
- asrs r1, r5, 16
- lsls r4, 16
- asrs r2, r4, 16
- movs r3, 0xA
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x14]
- lsls r0, 4
- ldr r1, [sp, 0x14]
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r7, r0, r1
- ldr r1, =gUnknown_0832C2C4
- adds r0, r7, 0
- bl SetSubspriteTables
- mov r2, r10
- strh r2, [r7, 0x24]
- mov r3, r8
- strh r3, [r7, 0x2E]
- str r5, [sp, 0x1C]
- str r4, [sp, 0x20]
- mov r5, r9
- cmp r5, 0
- beq _08073700
- ldrh r0, [r7, 0x20]
- subs r0, 0x60
- strh r0, [r7, 0x20]
- ldrb r1, [r7, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r1
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r7, 0x3]
- b _08073706
- .pool
-_08073700:
- ldrh r0, [r7, 0x20]
- adds r0, 0x60
- strh r0, [r7, 0x20]
-_08073706:
- movs r0, 0
- mov r8, r0
- ldr r1, =gSprites
- mov r10, r1
- mov r7, sp
- mov r2, r9
- adds r0, r6, r2
- lsls r0, 3
- str r0, [sp, 0x18]
- movs r6, 0xA
- movs r5, 0
-_0807371C:
- ldr r0, =gUnknown_0832C394
- ldr r3, [sp, 0x20]
- ldr r1, =0xfffc0000
- adds r2, r3, r1
- ldr r3, [sp, 0x18]
- adds r0, r3, r0
- ldr r3, [sp, 0x1C]
- asrs r1, r3, 16
- asrs r2, 16
- movs r3, 0x9
- bl CreateSpriteAtEnd
- strb r0, [r7]
- ldr r0, [sp, 0x10]
- cmp r0, 0
- bne _0807374C
- ldrb r0, [r7]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r2, =gSprites + 0x1C
- adds r1, r2
- ldr r0, =sub_80741C8
- str r0, [r1]
-_0807374C:
- ldr r4, =gSprites
- mov r3, r9
- cmp r3, 0
- bne _0807376E
- ldrb r1, [r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r10
- strh r3, [r0, 0x24]
- ldrb r1, [r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r10
- mov r1, r9
- strh r1, [r0, 0x26]
-_0807376E:
- ldrb r1, [r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0
- mov r2, sp
- ldrh r2, [r2, 0x14]
- strh r2, [r0, 0x2E]
- mov r3, r9
- cmp r3, 0
- bne _080737C8
- ldrb r0, [r7]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrh r0, [r1, 0x20]
- adds r0, 0x18
- adds r0, r5
- strh r0, [r1, 0x20]
- ldrb r1, [r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r6, [r0, 0x30]
- ldrb r1, [r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x78
- b _0807380A
- .pool
-_080737C8:
- ldrb r0, [r7]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r4
- ldrh r3, [r2, 0x20]
- subs r3, 0x18
- movs r1, 0x5
- mov r0, r8
- subs r1, r0
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 1
- subs r3, r0
- strh r3, [r2, 0x20]
- ldrb r0, [r7]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r4
- movs r1, 0x6
- mov r3, r8
- subs r1, r3
- lsls r0, r1, 3
- subs r0, r1
- adds r0, 0xA
- strh r0, [r2, 0x30]
- ldrb r1, [r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, =0x0000ff88
-_0807380A:
- strh r1, [r0, 0x24]
- ldrb r1, [r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- mov r1, r9
- strh r1, [r0, 0x32]
- adds r7, 0x1
- adds r6, 0x7
- adds r5, 0xA
- movs r2, 0x1
- add r8, r2
- mov r3, r8
- cmp r3, 0x5
- bgt _0807382C
- b _0807371C
-_0807382C:
- ldr r0, [sp, 0x8]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0807383A
- b _080739E8
-_0807383A:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0x40
- ands r1, r2
- cmp r1, 0
- beq _080738F4
- ldr r5, =0x0000ffff
- mov r10, r5
- ldr r6, =gSprites
- ldr r0, =0x000003ff
- adds r7, r0, 0
- ldr r1, =0xfffffc00
- mov r9, r1
- mov r4, sp
- ldr r5, [sp, 0xC]
- movs r2, 0x5
- mov r8, r2
-_0807385C:
- ldrh r0, [r5]
- cmp r0, r10
- bne _080738A8
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x1
- ands r1, r7
- mov r0, r9
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- movs r1, 0x1
- strh r1, [r0, 0x3C]
- b _080738E2
- .pool
-_080738A8:
- cmp r0, 0
- bne _080738C0
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x3
- b _080738D8
-_080738C0:
- ldr r0, [r5, 0x4]
- cmp r0, 0
- beq _080738E2
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x2
-_080738D8:
- ands r1, r7
- mov r0, r9
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
-_080738E2:
- adds r4, 0x1
- adds r5, 0x8
- movs r3, 0x1
- negs r3, r3
- add r8, r3
- mov r0, r8
- cmp r0, 0
- bge _0807385C
- b _08073B9A
-_080738F4:
- movs r1, 0x5
- mov r10, r1
- movs r7, 0
- ldr r2, =gSprites
- mov r8, r2
- ldr r3, =0x000003ff
- mov r9, r3
- ldr r5, =0xfffffc00
- mov r12, r5
- ldr r6, [sp, 0xC]
- mov r5, sp
-_0807390A:
- ldrh r0, [r6]
- ldr r1, =0x0000ffff
- cmp r0, r1
- bne _08073958
- mov r4, sp
- add r4, r10
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r8
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x1
- mov r0, r9
- ands r1, r0
- mov r0, r12
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- movs r1, 0x1
- strh r1, [r0, 0x3C]
- subs r1, 0x2
- add r10, r1
- b _080739DE
- .pool
-_08073958:
- cmp r0, 0
- bne _08073970
- ldrb r0, [r5]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r8
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x3
- b _080739D0
-_08073970:
- ldr r1, =gBattleTypeFlags
- ldr r0, [r1]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _080739B8
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- movs r2, 0xA8
- lsls r2, 2
- adds r0, r2
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r7, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _080739B8
- ldrb r0, [r5]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r8
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x3
- b _080739D0
- .pool
-_080739B8:
- ldr r0, [r6, 0x4]
- cmp r0, 0
- beq _080739DC
- ldrb r0, [r5]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r8
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x2
-_080739D0:
- mov r0, r9
- ands r1, r0
- mov r0, r12
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
-_080739DC:
- adds r5, 0x1
-_080739DE:
- adds r6, 0x8
- adds r7, 0x1
- cmp r7, 0x5
- ble _0807390A
- b _08073B9A
-_080739E8:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r2, =0x00008040
- ands r1, r2
- cmp r1, 0
- beq _08073AA4
- ldr r1, =0x0000ffff
- mov r10, r1
- ldr r6, =gSprites
- ldr r2, =0x000003ff
- adds r7, r2, 0
- ldr r3, =0xfffffc00
- mov r9, r3
- ldr r5, [sp, 0xC]
- mov r4, sp
- adds r4, 0x5
- movs r0, 0x5
- mov r8, r0
-_08073A0C:
- ldrh r0, [r5]
- cmp r0, r10
- bne _08073A58
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x1
- ands r1, r7
- mov r0, r9
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- movs r1, 0x1
- strh r1, [r0, 0x3C]
- b _08073A92
- .pool
-_08073A58:
- cmp r0, 0
- bne _08073A70
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x3
- b _08073A88
-_08073A70:
- ldr r0, [r5, 0x4]
- cmp r0, 0
- beq _08073A92
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x2
-_08073A88:
- ands r1, r7
- mov r0, r9
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
-_08073A92:
- subs r4, 0x1
- adds r5, 0x8
- movs r1, 0x1
- negs r1, r1
- add r8, r1
- mov r2, r8
- cmp r2, 0
- bge _08073A0C
- b _08073B9A
-_08073AA4:
- movs r3, 0
- mov r8, r3
- movs r7, 0
- ldr r5, =gSprites
- mov r9, r5
- ldr r6, =0x000003ff
- mov r12, r6
- ldr r0, =0xfffffc00
- mov r10, r0
- ldr r6, [sp, 0xC]
- mov r5, sp
- adds r5, 0x5
-_08073ABC:
- ldrh r0, [r6]
- ldr r1, =0x0000ffff
- cmp r0, r1
- bne _08073B08
- mov r4, sp
- add r4, r8
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r9
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x1
- mov r0, r12
- ands r1, r0
- mov r0, r10
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r9
- movs r1, 0x1
- strh r1, [r0, 0x3C]
- add r8, r1
- b _08073B92
- .pool
-_08073B08:
- cmp r0, 0
- bne _08073B20
- ldrb r0, [r5]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r9
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x3
- b _08073B84
-_08073B20:
- ldr r1, =gBattleTypeFlags
- ldr r0, [r1]
- movs r1, 0x80
- lsls r1, 11
- ands r0, r1
- cmp r0, 0
- beq _08073B6C
- ldr r2, =gBattleStruct
- ldr r0, [r2]
- ldr r3, =0x000002a1
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r7, 2
- ldr r2, =gBitTable
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08073B6C
- ldrb r0, [r5]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r9
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x3
- b _08073B84
- .pool
-_08073B6C:
- ldr r0, [r6, 0x4]
- cmp r0, 0
- beq _08073B90
- ldrb r0, [r5]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r9
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x2
-_08073B84:
- mov r0, r12
- ands r1, r0
- mov r0, r10
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
-_08073B90:
- subs r5, 0x1
-_08073B92:
- adds r6, 0x8
- adds r7, 0x1
- cmp r7, 0x5
- ble _08073ABC
-_08073B9A:
- ldr r0, =TaskDummy
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r2, =gTasks
- lsls r3, r4, 2
- adds r1, r3, r4
- lsls r1, 3
- adds r0, r1, r2
- mov r5, sp
- ldrh r5, [r5, 0x8]
- strh r5, [r0, 0x8]
- mov r6, sp
- ldrh r6, [r6, 0x14]
- strh r6, [r0, 0xA]
- movs r0, 0
- mov r8, r0
- adds r0, r2, 0
- adds r0, 0xE
- adds r1, r0
-_08073BC6:
- mov r0, sp
- add r0, r8
- ldrb r0, [r0]
- strh r0, [r1]
- adds r1, 0x2
- movs r5, 0x1
- add r8, r5
- mov r6, r8
- cmp r6, 0x5
- ble _08073BC6
- adds r0, r3, r4
- lsls r0, 3
- adds r0, r2
- mov r1, sp
- ldrh r1, [r1, 0x10]
- strh r1, [r0, 0x1C]
- ldr r2, [sp, 0x10]
- cmp r2, 0
- beq _08073C0A
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r3, [r0, 0x8]
- ldrb r2, [r3, 0x9]
- lsls r1, r2, 27
- lsrs r1, 29
- adds r1, 0x1
- movs r0, 0x7
- ands r1, r0
- lsls r1, 2
- movs r0, 0x1D
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x9]
-_08073C0A:
- movs r0, 0x72
- movs r1, 0
- bl PlaySE12WithPanning
- adds r0, r4, 0
- add sp, 0x24
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80735DC
-
- thumb_func_start sub_8073C30
-sub_8073C30: @ 8073C30
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x18
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r2, =gTasks
- lsls r3, r0, 2
- adds r1, r3, r0
- lsls r1, 3
- adds r0, r1, r2
- ldrb r7, [r0, 0x1C]
- ldrb r4, [r0, 0xA]
- mov r10, r4
- ldrb r0, [r0, 0x8]
- str r0, [sp, 0x8]
- movs r5, 0
- str r3, [sp, 0xC]
- adds r2, 0xE
- adds r2, r1, r2
-_08073C5E:
- mov r0, sp
- adds r1, r0, r5
- ldrh r0, [r2]
- strb r0, [r1]
- adds r2, 0x2
- adds r5, 0x1
- cmp r5, 0x5
- ble _08073C5E
- movs r1, 0xFD
- lsls r1, 6
- movs r0, 0x50
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0x10
- bl SetGpuReg
- ldr r1, =gTasks
- ldr r0, [sp, 0xC]
- add r0, r8
- lsls r0, 3
- adds r0, r1
- movs r1, 0x10
- strh r1, [r0, 0x26]
- movs r5, 0
- mov r1, r10
- lsls r1, 4
- str r1, [sp, 0x10]
- ldr r3, =gSprites
- movs r6, 0xD
- negs r6, r6
- mov r12, r3
- movs r4, 0x4
-_08073CA0:
- mov r2, sp
- adds r0, r2, r5
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- ldrb r2, [r1, 0x1]
- adds r0, r6, 0
- ands r0, r2
- orrs r0, r4
- strb r0, [r1, 0x1]
- adds r5, 0x1
- cmp r5, 0x5
- ble _08073CA0
- ldr r2, [sp, 0x10]
- add r2, r10
- lsls r2, 2
- add r2, r12
- ldrb r1, [r2, 0x1]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2, 0x1]
- cmp r7, 0
- bne _08073CDA
- b _08073DE0
-_08073CDA:
- movs r5, 0
- mov r6, r12
- mov r9, r5
- adds r3, r6, 0
- adds r3, 0x1C
- mov r4, sp
- movs r7, 0
-_08073CE8:
- ldr r0, [sp, 0x8]
- str r3, [sp, 0x14]
- bl GetBankSide
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r3, [sp, 0x14]
- cmp r2, 0
- beq _08073D4C
- movs r0, 0x5
- subs r0, r5
- mov r1, sp
- adds r2, r1, r0
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strh r7, [r0, 0x30]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r1, r9
- strh r1, [r0, 0x34]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r1, r9
- strh r1, [r0, 0x36]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldr r1, =sub_8074158
- str r1, [r0]
- ldr r2, =gSprites
- mov r12, r2
- b _08073D82
- .pool
-_08073D4C:
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strh r7, [r0, 0x30]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strh r2, [r0, 0x34]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- strh r2, [r0, 0x36]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldr r1, =sub_8074158
- str r1, [r0]
- ldr r0, =gSprites
- mov r12, r0
-_08073D82:
- adds r4, 0x1
- adds r7, 0x7
- adds r5, 0x1
- cmp r5, 0x5
- ble _08073CE8
- ldr r3, [sp, 0x10]
- add r3, r10
- lsls r3, 2
- mov r1, r12
- adds r0, r3, r1
- movs r2, 0x2E
- ldrsh r1, [r0, r2]
- lsrs r2, r1, 31
- adds r1, r2
- asrs r1, 1
- movs r2, 0
- strh r1, [r0, 0x2E]
- strh r2, [r0, 0x30]
- mov r1, r12
- adds r1, 0x1C
- adds r3, r1
- ldr r1, =sub_8074090
- str r1, [r3]
- ldr r1, =gUnknown_0832C2CC
- bl SetSubspriteTables
- ldr r1, =gTasks
- ldr r0, [sp, 0xC]
- add r0, r8
- lsls r0, 3
- adds r0, r1
- ldr r1, =task_battle_throw_own_ball
- str r1, [r0]
- b _08073DEE
- .pool
-_08073DE0:
- ldr r0, =gTasks
- ldr r1, [sp, 0xC]
- add r1, r8
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_8073F98
- str r0, [r1]
-_08073DEE:
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8073C30
-
- thumb_func_start task_battle_throw_own_ball
-task_battle_throw_own_ball: @ 8073E08
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r0, [r4, 0x1E]
- adds r1, r0, 0x1
- strh r1, [r4, 0x1E]
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08073E48
- ldrh r0, [r4, 0x26]
- subs r1, r0, 0x1
- strh r1, [r4, 0x26]
- lsls r0, r1, 16
- cmp r0, 0
- blt _08073E54
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
-_08073E48:
- movs r1, 0x26
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08073E54
- ldr r0, =sub_8073E64
- str r0, [r4]
-_08073E54:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task_battle_throw_own_ball
-
- thumb_func_start sub_8073E64
-sub_8073E64: @ 8073E64
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r7, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r3, r0, 3
- adds r4, r3, r7
- ldrb r2, [r4, 0x8]
- ldrh r0, [r4, 0x26]
- subs r0, 0x1
- strh r0, [r4, 0x26]
- lsls r0, 16
- asrs r1, r0, 16
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- bne _08073F54
- ldrb r5, [r4, 0xA]
- movs r4, 0
- ldr r6, =gUnknown_020244D0
- adds r0, r7, 0
- adds r0, 0xE
- adds r2, r3, r0
-_08073E96:
- mov r0, sp
- adds r1, r0, r4
- ldrh r0, [r2]
- strb r0, [r1]
- adds r2, 0x2
- adds r4, 0x1
- cmp r4, 0x5
- ble _08073E96
- ldr r0, [r6]
- ldr r3, [r0, 0x8]
- ldrb r2, [r3, 0x9]
- lsls r1, r2, 27
- lsrs r1, 29
- subs r1, 0x1
- movs r0, 0x7
- ands r1, r0
- lsls r1, 2
- movs r0, 0x1D
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x9]
- ldr r0, [r6]
- ldr r0, [r0, 0x8]
- ldrb r1, [r0, 0x9]
- movs r0, 0x1C
- ands r0, r1
- cmp r0, 0
- bne _08073EFC
- lsls r0, r5, 4
- adds r0, r5
- lsls r0, 2
- ldr r4, =gSprites
- adds r0, r4
- bl DestroySpriteAndFreeResources
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySpriteAndFreeResources
- b _08073F32
- .pool
-_08073EFC:
- lsls r4, r5, 4
- adds r4, r5
- lsls r4, 2
- ldr r5, =gSprites
- adds r4, r5
- adds r0, r4, 0
- bl FreeSpriteOamMatrix
- adds r0, r4, 0
- bl DestroySprite
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl FreeSpriteOamMatrix
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
-_08073F32:
- movs r4, 0x1
- ldr r5, =gSprites
-_08073F36:
- mov r1, sp
- adds r0, r1, r4
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
- adds r4, 0x1
- cmp r4, 0x5
- ble _08073F36
- b _08073F8A
- .pool
-_08073F54:
- movs r0, 0x3
- negs r0, r0
- cmp r1, r0
- bne _08073F8A
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- adds r0, r5, 0
- bl DestroyTask
-_08073F8A:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8073E64
-
- thumb_func_start sub_8073F98
-sub_8073F98: @ 8073F98
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- adds r4, r0, 0
- ldr r7, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r6, r0, 3
- adds r3, r6, r7
- ldrb r5, [r3, 0x8]
- ldrh r0, [r3, 0x26]
- subs r1, r0, 0x1
- strh r1, [r3, 0x26]
- lsls r0, r1, 16
- asrs r2, r0, 16
- cmp r2, 0
- blt _08073FD4
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
- b _0807406A
- .pool
-_08073FD4:
- movs r0, 0x1
- negs r0, r0
- cmp r2, r0
- bne _08074034
- ldrb r3, [r3, 0xA]
- movs r5, 0
- adds r0, r7, 0
- adds r0, 0xE
- adds r2, r6, r0
-_08073FE6:
- mov r0, sp
- adds r1, r0, r5
- ldrh r0, [r2]
- strb r0, [r1]
- adds r2, 0x2
- adds r5, 0x1
- cmp r5, 0x5
- ble _08073FE6
- lsls r0, r3, 4
- adds r0, r3
- lsls r0, 2
- ldr r4, =gSprites
- adds r0, r4
- bl DestroySpriteAndFreeResources
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySpriteAndFreeResources
- movs r5, 0x1
-_08074016:
- mov r1, sp
- adds r0, r1, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- adds r5, 0x1
- cmp r5, 0x5
- ble _08074016
- b _0807406A
- .pool
-_08074034:
- movs r0, 0x3
- negs r0, r0
- cmp r2, r0
- bne _0807406A
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- adds r0, r4, 0
- bl DestroyTask
-_0807406A:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8073F98
-
- thumb_func_start sub_8074078
-sub_8074078: @ 8074078
- push {lr}
- adds r1, r0, 0
- ldrh r2, [r1, 0x24]
- movs r3, 0x24
- ldrsh r0, [r1, r3]
- cmp r0, 0
- beq _0807408C
- ldrh r0, [r1, 0x2E]
- adds r0, r2, r0
- strh r0, [r1, 0x24]
-_0807408C:
- pop {r0}
- bx r0
- thumb_func_end sub_8074078
-
- thumb_func_start sub_8074090
-sub_8074090: @ 8074090
- push {lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x30]
- adds r1, r0, 0
- adds r1, 0x20
- strh r1, [r2, 0x30]
- movs r3, 0x2E
- ldrsh r0, [r2, r3]
- cmp r0, 0
- ble _080740AE
- lsls r0, r1, 16
- asrs r0, 20
- ldrh r1, [r2, 0x24]
- adds r0, r1
- b _080740B6
-_080740AE:
- lsls r1, 16
- asrs r1, 20
- ldrh r0, [r2, 0x24]
- subs r0, r1
-_080740B6:
- strh r0, [r2, 0x24]
- ldrh r1, [r2, 0x30]
- movs r0, 0xF
- ands r0, r1
- strh r0, [r2, 0x30]
- pop {r0}
- bx r0
- thumb_func_end sub_8074090
-
- thumb_func_start sub_80740C4
-sub_80740C4: @ 80740C4
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x30]
- movs r2, 0x30
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _080740D8
- subs r0, r1, 0x1
- strh r0, [r4, 0x30]
- b _0807414E
-_080740D8:
- ldrh r0, [r4, 0x32]
- lsls r0, 24
- lsrs r3, r0, 24
- ldrh r2, [r4, 0x34]
- adds r0, r2, 0
- adds r0, 0x38
- lsls r1, r0, 16
- lsrs r2, r1, 16
- ldr r0, =0x0000fff0
- ands r2, r0
- strh r2, [r4, 0x34]
- cmp r3, 0
- beq _0807410C
- lsrs r0, r1, 20
- ldrh r1, [r4, 0x24]
- adds r0, r1
- strh r0, [r4, 0x24]
- lsls r0, 16
- cmp r0, 0
- ble _0807411C
- movs r0, 0
- strh r0, [r4, 0x24]
- b _0807411C
- .pool
-_0807410C:
- lsrs r1, 20
- ldrh r0, [r4, 0x24]
- subs r0, r1
- strh r0, [r4, 0x24]
- lsls r0, 16
- cmp r0, 0
- bge _0807411C
- strh r3, [r4, 0x24]
-_0807411C:
- movs r2, 0x24
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _0807414E
- movs r1, 0x3F
- cmp r3, 0
- beq _0807412C
- movs r1, 0xC0
-_0807412C:
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08074140
- lsls r1, 24
- asrs r1, 24
- movs r0, 0x74
- bl PlaySE2WithPanning
- b _0807414A
-_08074140:
- lsls r1, 24
- asrs r1, 24
- movs r0, 0x73
- bl PlaySE1WithPanning
-_0807414A:
- ldr r0, =SpriteCallbackDummy
- str r0, [r4, 0x1C]
-_0807414E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80740C4
-
- thumb_func_start sub_8074158
-sub_8074158: @ 8074158
- push {r4,lr}
- adds r3, r0, 0
- ldrh r1, [r3, 0x30]
- movs r2, 0x30
- ldrsh r0, [r3, r2]
- cmp r0, 0
- ble _0807416C
- subs r0, r1, 0x1
- strh r0, [r3, 0x30]
- b _080741BC
-_0807416C:
- ldrh r0, [r3, 0x32]
- lsls r0, 24
- ldrh r2, [r3, 0x34]
- adds r1, r2, 0
- adds r1, 0x38
- lsls r4, r1, 16
- lsrs r2, r4, 16
- ldr r1, =0x0000fff0
- ands r2, r1
- strh r2, [r3, 0x34]
- cmp r0, 0
- beq _08074190
- lsrs r0, r4, 20
- ldrh r1, [r3, 0x24]
- adds r0, r1
- b _08074196
- .pool
-_08074190:
- lsrs r1, r4, 20
- ldrh r0, [r3, 0x24]
- subs r0, r1
-_08074196:
- strh r0, [r3, 0x24]
- movs r2, 0x24
- ldrsh r0, [r3, r2]
- movs r2, 0x20
- ldrsh r1, [r3, r2]
- adds r0, r1
- adds r0, 0x8
- movs r1, 0x80
- lsls r1, 1
- cmp r0, r1
- bls _080741BC
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =SpriteCallbackDummy
- str r0, [r3, 0x1C]
-_080741BC:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8074158
-
- thumb_func_start sub_80741C8
-sub_80741C8: @ 80741C8
- ldrh r2, [r0, 0x2E]
- lsls r2, 24
- lsrs r2, 24
- ldr r3, =gSprites
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r3
- ldrh r2, [r1, 0x24]
- strh r2, [r0, 0x24]
- ldrh r1, [r1, 0x26]
- strh r1, [r0, 0x26]
- bx lr
- .pool
- thumb_func_end sub_80741C8
-
- thumb_func_start sub_80741E8
-sub_80741E8: @ 80741E8
- push {r4-r7,lr}
- sub sp, 0x14
- adds r4, r1, 0
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r5, =gDisplayedStringBattle
- ldr r1, =gText_HighlightDarkGrey
- adds r0, r5, 0
- bl StringCopy
- adds r0, r4, 0
- movs r1, 0x2
- add r2, sp, 0x4
- bl GetMonData
- add r0, sp, 0x4
- bl StringGetEnd10
- adds r0, r5, 0
- add r1, sp, 0x4
- bl StringAppend
- adds r5, r0, 0
- adds r0, r4, 0
- bl GetMonGender
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- adds r1, r0, 0
- cmp r0, 0x1D
- beq _08074236
- cmp r0, 0x20
- bne _0807424A
-_08074236:
- movs r0, 0xB
- muls r1, r0
- ldr r0, =gSpeciesNames
- adds r1, r0
- add r0, sp, 0x4
- bl StringCompare
- cmp r0, 0
- bne _0807424A
- movs r6, 0x64
-_0807424A:
- cmp r6, 0
- beq _08074268
- cmp r6, 0xFE
- beq _08074270
- ldr r1, =gText_DynColor2
- b _08074272
- .pool
-_08074268:
- ldr r1, =gText_DynColor2Male
- b _08074272
- .pool
-_08074270:
- ldr r1, =gText_DynColor1Female
-_08074272:
- adds r0, r5, 0
- bl StringCopy
- ldr r0, =gDisplayedStringBattle
- add r1, sp, 0x10
- str r1, [sp]
- movs r1, 0
- movs r2, 0x3
- movs r3, 0x2
- bl write_to_rbox
- adds r6, r0, 0
- ldr r0, =gSprites
- lsls r1, r7, 4
- adds r1, r7
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x4]
- lsls r0, 22
- lsrs r4, r0, 17
- ldrh r0, [r1, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080742F0
- ldr r1, =0x06010040
- adds r0, r4, r1
- adds r1, r6, 0
- movs r2, 0x6
- bl sub_8075198
- bl battle_type_is_double
- lsls r0, 24
- ldr r1, =0x06010400
- adds r5, r4, r1
- cmp r0, 0
- bne _080742C8
- ldr r0, =0x06010800
- adds r5, r4, r0
-_080742C8:
- adds r1, r6, 0
- adds r1, 0xC0
- adds r0, r5, 0
- movs r2, 0x1
- bl sub_8075198
- b _080742FC
- .pool
-_080742F0:
- ldr r1, =0x06010020
- adds r0, r4, r1
- adds r1, r6, 0
- movs r2, 0x7
- bl sub_8075198
-_080742FC:
- ldr r0, [sp, 0x10]
- bl sub_807512C
- add sp, 0x14
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80741E8
-
- thumb_func_start sub_8074310
-sub_8074310: @ 8074310
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r1, 24
- lsrs r7, r1, 24
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 2
- ands r0, r1
- cmp r0, 0
- bne _080743E6
- movs r0, 0x8
- ands r1, r0
- cmp r1, 0
- bne _080743E6
- ldr r6, =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r5, r0, r6
- ldrh r0, [r5, 0x3A]
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080743E6
- ldr r1, =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- bl GetSetPokedexFlag
- lsls r0, 24
- cmp r0, 0
- beq _080743E6
- ldrh r0, [r5, 0x38]
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r7, 0
- beq _080743C4
- movs r0, 0x46
- bl sub_80728A4
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r6
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 17
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2
- ldr r2, =0x06010000
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- b _080743E6
- .pool
-_080743C4:
- str r7, [sp]
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r6
- ldrh r1, [r0, 0x4]
- lsls r1, 22
- lsrs r1, 17
- movs r0, 0x80
- lsls r0, 1
- adds r1, r0
- ldr r0, =0x06010000
- adds r1, r0
- ldr r2, =0x05000008
- mov r0, sp
- bl CpuSet
-_080743E6:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8074310
-
- thumb_func_start draw_status_ailment_maybe
-draw_status_ailment_maybe: @ 80743F8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r0, =gSprites
- mov r2, r9
- lsls r1, r2, 4
- add r1, r9
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x3A]
- lsls r0, 24
- lsrs r7, r0, 24
- ldrh r0, [r1, 0x38]
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- adds r0, r7, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08074468
- ldr r1, =gBattlePartyID
- lsls r0, r7, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x37
- bl GetMonData
- adds r4, r0, 0
- bl battle_type_is_double
- lsls r0, 24
- movs r3, 0x12
- mov r8, r3
- cmp r0, 0
- bne _08074484
- movs r0, 0x1A
- mov r8, r0
- b _08074484
- .pool
-_08074468:
- ldr r1, =gBattlePartyID
- lsls r0, r7, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x37
- bl GetMonData
- adds r4, r0, 0
- movs r1, 0x11
- mov r8, r1
-_08074484:
- movs r0, 0x7
- ands r0, r4
- cmp r0, 0
- beq _080744AC
- movs r0, 0x1B
- adds r1, r7, 0
- bl sub_80746A8
- lsls r0, 24
- lsrs r0, 24
- bl sub_80728A4
- adds r6, r0, 0
- movs r0, 0x2
- b _080745B8
- .pool
-_080744AC:
- movs r0, 0x88
- ands r0, r4
- cmp r0, 0
- beq _080744CA
- movs r0, 0x15
- adds r1, r7, 0
- bl sub_80746A8
- lsls r0, 24
- lsrs r0, 24
- bl sub_80728A4
- adds r6, r0, 0
- movs r0, 0
- b _080745B8
-_080744CA:
- movs r0, 0x10
- ands r0, r4
- cmp r0, 0
- beq _080744E8
- movs r0, 0x21
- adds r1, r7, 0
- bl sub_80746A8
- lsls r0, 24
- lsrs r0, 24
- bl sub_80728A4
- adds r6, r0, 0
- movs r0, 0x4
- b _080745B8
-_080744E8:
- movs r0, 0x20
- ands r0, r4
- cmp r0, 0
- beq _08074506
- movs r0, 0x1E
- adds r1, r7, 0
- bl sub_80746A8
- lsls r0, 24
- lsrs r0, 24
- bl sub_80728A4
- adds r6, r0, 0
- movs r0, 0x3
- b _080745B8
-_08074506:
- movs r0, 0x40
- ands r0, r4
- cmp r0, 0
- beq _08074524
- movs r0, 0x18
- adds r1, r7, 0
- bl sub_80746A8
- lsls r0, 24
- lsrs r0, 24
- bl sub_80728A4
- adds r6, r0, 0
- movs r0, 0x1
- b _080745B8
-_08074524:
- movs r0, 0x27
- bl sub_80728A4
- adds r6, r0, 0
- movs r4, 0
- mov r2, r9
- lsls r0, r2, 4
- mov r3, r8
- lsls r3, 16
- mov r8, r3
- lsls r7, 2
- ldr r1, =gSprites
- add r0, r9
- lsls r0, 2
- adds r5, r0, r1
-_08074542:
- ldrh r1, [r5, 0x4]
- lsls r1, 22
- lsrs r1, 22
- mov r2, r8
- asrs r0, r2, 16
- adds r1, r0
- adds r1, r4
- lsls r1, 5
- ldr r3, =0x06010000
- adds r1, r3
- adds r0, r6, 0
- ldr r2, =0x04000008
- bl CpuSet
- adds r4, 0x1
- cmp r4, 0x2
- ble _08074542
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, r7, r0
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _08074598
- movs r0, 0x1
- bl sub_80728A4
- ldr r2, =gSprites
- mov r3, r10
- lsls r1, r3, 4
- add r1, r10
- lsls r1, 2
- adds r1, r2
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 17
- ldr r2, =0x06010000
- adds r1, r2
- ldr r2, =0x04000010
- bl CpuSet
-_08074598:
- mov r0, r9
- movs r1, 0x1
- bl sub_8074310
- b _0807467A
- .pool
-_080745B8:
- mov r1, r9
- lsls r5, r1, 4
- add r5, r9
- lsls r5, 2
- ldr r2, =gSprites
- adds r5, r2
- ldrb r4, [r5, 0x5]
- lsrs r4, 4
- lsls r4, 4
- adds r4, 0xC
- adds r4, r7
- ldr r1, =gUnknown_0832C3EC
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- movs r3, 0x80
- lsls r3, 1
- adds r1, r4, r3
- movs r2, 0x2
- bl FillPalette
- lsls r4, 1
- ldr r0, =gPlttBufferUnfaded + 0x200
- adds r0, r4, r0
- ldr r1, =0x05000200
- adds r4, r1
- adds r1, r4, 0
- movs r2, 0x1
- bl CpuSet
- ldrh r1, [r5, 0x4]
- lsls r1, 22
- lsrs r1, 22
- add r1, r8
- lsls r1, 5
- ldr r2, =0x06010000
- mov r8, r2
- add r1, r8
- ldr r2, =0x04000018
- adds r0, r6, 0
- bl CpuSet
- bl battle_type_is_double
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08074626
- adds r0, r7, 0
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08074672
-_08074626:
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r7, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _08074672
- movs r0, 0
- bl sub_80728A4
- mov r3, r10
- lsls r4, r3, 4
- add r4, r10
- lsls r4, 2
- ldr r1, =gSprites
- adds r4, r1
- ldrh r1, [r4, 0x4]
- lsls r1, 22
- lsrs r1, 17
- add r1, r8
- ldr r5, =0x04000008
- adds r2, r5, 0
- bl CpuSet
- movs r0, 0x41
- bl sub_80728A4
- ldrh r1, [r4, 0x4]
- lsls r1, 22
- lsrs r1, 17
- adds r1, 0x20
- add r1, r8
- adds r2, r5, 0
- bl CpuSet
-_08074672:
- mov r0, r9
- movs r1, 0
- bl sub_8074310
-_0807467A:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end draw_status_ailment_maybe
-
- thumb_func_start sub_80746A8
-sub_80746A8: @ 80746A8
- push {lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- lsrs r2, r0, 24
- adds r0, r2, 0
- subs r0, 0x15
- cmp r0, 0xC
- bhi _08074768
- lsls r0, 2
- ldr r1, =_080746C8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080746C8:
- .4byte _080746FC
- .4byte _08074768
- .4byte _08074768
- .4byte _08074712
- .4byte _08074768
- .4byte _08074768
- .4byte _08074728
- .4byte _08074768
- .4byte _08074768
- .4byte _0807473E
- .4byte _08074768
- .4byte _08074768
- .4byte _08074754
-_080746FC:
- movs r2, 0x15
- cmp r3, 0
- beq _08074768
- movs r2, 0x47
- cmp r3, 0x1
- beq _08074768
- movs r2, 0x65
- cmp r3, 0x2
- bne _08074768
- movs r2, 0x56
- b _08074768
-_08074712:
- movs r2, 0x18
- cmp r3, 0
- beq _08074768
- movs r2, 0x4A
- cmp r3, 0x1
- beq _08074768
- movs r2, 0x68
- cmp r3, 0x2
- bne _08074768
- movs r2, 0x59
- b _08074768
-_08074728:
- movs r2, 0x1B
- cmp r3, 0
- beq _08074768
- movs r2, 0x4D
- cmp r3, 0x1
- beq _08074768
- movs r2, 0x6B
- cmp r3, 0x2
- bne _08074768
- movs r2, 0x5C
- b _08074768
-_0807473E:
- movs r2, 0x1E
- cmp r3, 0
- beq _08074768
- movs r2, 0x50
- cmp r3, 0x1
- beq _08074768
- movs r2, 0x6E
- cmp r3, 0x2
- bne _08074768
- movs r2, 0x5F
- b _08074768
-_08074754:
- movs r2, 0x21
- cmp r3, 0
- beq _08074768
- movs r2, 0x53
- cmp r3, 0x1
- beq _08074768
- movs r2, 0x71
- cmp r3, 0x2
- bne _08074768
- movs r2, 0x62
-_08074768:
- adds r0, r2, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80746A8
-
- thumb_func_start sub_8074770
-sub_8074770: @ 8074770
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gText_SafariBalls
- add r1, sp, 0x4
- str r1, [sp]
- movs r1, 0
- movs r2, 0x3
- movs r3, 0x2
- bl write_to_rbox
- adds r5, r0, 0
- ldr r1, =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r1
- ldrh r4, [r0, 0x4]
- lsls r4, 22
- lsrs r4, 17
- ldr r1, =0x06010040
- adds r0, r4, r1
- adds r1, r5, 0
- movs r2, 0x6
- bl sub_8075198
- ldr r0, =0x06010800
- adds r4, r0
- adds r5, 0xC0
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x2
- bl sub_8075198
- ldr r0, [sp, 0x4]
- bl sub_807512C
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8074770
-
- thumb_func_start sub_80747D8
-sub_80747D8: @ 80747D8
- push {r4,r5,lr}
- sub sp, 0x18
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, =gText_SafariBallLeft
- add r0, sp, 0x4
- bl StringCopy
- ldr r1, =gNumSafariBalls
- ldrb r1, [r1]
- movs r2, 0
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- movs r0, 0
- add r1, sp, 0x4
- movs r2, 0x2F
- bl GetStringRightAlignXOffset
- adds r1, r0, 0
- add r0, sp, 0x14
- str r0, [sp]
- add r0, sp, 0x4
- movs r2, 0x3
- movs r3, 0x2
- bl write_to_rbox
- adds r5, r0, 0
- ldr r1, =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r1
- ldrh r4, [r0, 0x4]
- lsls r4, 22
- lsrs r4, 17
- ldr r1, =0x060102c0
- adds r0, r4, r1
- adds r1, r5, 0
- movs r2, 0x2
- bl sub_80751E4
- ldr r0, =0x06010a00
- adds r4, r0
- adds r5, 0x40
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x4
- bl sub_80751E4
- ldr r0, [sp, 0x14]
- bl sub_807512C
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80747D8
-
- thumb_func_start healthbar_draw_field_maybe
-healthbar_draw_field_maybe: @ 8074860
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- mov r8, r1
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r2, 24
- lsrs r7, r2, 24
- ldr r1, =gSprites
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- cmp r7, 0
- bne _0807489C
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- bne _0807489C
- mov r0, r9
- bl GetBankSide
-_0807489C:
- ldr r1, =gSprites
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080748B8
- b _08074A18
-_080748B8:
- cmp r7, 0x3
- beq _080748C0
- cmp r7, 0
- bne _080748D4
-_080748C0:
- mov r0, r8
- movs r1, 0x38
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl healthbar_draw_level
-_080748D4:
- cmp r7, 0x1
- bhi _080748EE
- mov r0, r8
- movs r1, 0x39
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- asrs r1, 16
- adds r0, r6, 0
- movs r2, 0
- bl heathbar_draw_hp
-_080748EE:
- cmp r7, 0x2
- beq _080748F6
- cmp r7, 0
- bne _0807490C
-_080748F6:
- mov r0, r8
- movs r1, 0x3A
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- asrs r1, 16
- adds r0, r6, 0
- movs r2, 0x1
- bl heathbar_draw_hp
-_0807490C:
- cmp r7, 0x5
- beq _08074914
- cmp r7, 0
- bne _08074948
-_08074914:
- movs r0, 0
- bl load_gfxc_health_bar
- mov r0, r8
- movs r1, 0x3A
- bl GetMonData
- adds r4, r0, 0
- mov r0, r8
- movs r1, 0x39
- bl GetMonData
- adds r3, r0, 0
- movs r0, 0
- str r0, [sp]
- mov r0, r9
- adds r1, r6, 0
- adds r2, r4, 0
- bl sub_807294C
- mov r0, r9
- adds r1, r6, 0
- movs r2, 0
- movs r3, 0
- bl sub_8074AA0
-_08074948:
- bl battle_type_is_double
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- cmp r0, 0
- bne _080749CE
- cmp r7, 0x6
- beq _0807495E
- cmp r7, 0
- bne _080749CE
-_0807495E:
- movs r0, 0x3
- bl load_gfxc_health_bar
- mov r0, r8
- movs r1, 0xB
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- mov r0, r8
- movs r1, 0x38
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- mov r0, r8
- movs r1, 0x19
- bl GetMonData
- adds r3, r0, 0
- ldr r0, =gExperienceTables
- mov r12, r0
- lsls r1, r4, 2
- ldr r2, =gBaseStats
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r2
- ldrb r2, [r0, 0x13]
- movs r0, 0xCA
- lsls r0, 1
- muls r0, r2
- adds r1, r0
- add r1, r12
- ldr r1, [r1]
- subs r3, r1
- adds r4, 0x1
- lsls r4, 2
- adds r4, r0
- add r4, r12
- ldr r2, [r4]
- subs r2, r1
- mov r0, r10
- str r0, [sp]
- mov r0, r9
- adds r1, r6, 0
- bl sub_807294C
- mov r0, r9
- adds r1, r6, 0
- movs r2, 0x1
- movs r3, 0
- bl sub_8074AA0
-_080749CE:
- cmp r7, 0x4
- beq _080749D6
- cmp r7, 0
- bne _080749DE
-_080749D6:
- adds r0, r6, 0
- mov r1, r8
- bl sub_80741E8
-_080749DE:
- cmp r7, 0x9
- beq _080749E6
- cmp r7, 0
- bne _080749EC
-_080749E6:
- adds r0, r6, 0
- bl draw_status_ailment_maybe
-_080749EC:
- cmp r7, 0xA
- bne _080749F6
- adds r0, r6, 0
- bl sub_8074770
-_080749F6:
- adds r0, r7, 0
- subs r0, 0xA
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _08074A8E
- adds r0, r6, 0
- bl sub_80747D8
- b _08074A8E
- .pool
-_08074A18:
- cmp r7, 0x3
- beq _08074A20
- cmp r7, 0
- bne _08074A34
-_08074A20:
- mov r0, r8
- movs r1, 0x38
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl healthbar_draw_level
-_08074A34:
- cmp r7, 0x5
- beq _08074A3C
- cmp r7, 0
- bne _08074A70
-_08074A3C:
- movs r0, 0
- bl load_gfxc_health_bar
- mov r0, r8
- movs r1, 0x3A
- bl GetMonData
- adds r4, r0, 0
- mov r0, r8
- movs r1, 0x39
- bl GetMonData
- adds r3, r0, 0
- movs r0, 0
- str r0, [sp]
- mov r0, r9
- adds r1, r6, 0
- adds r2, r4, 0
- bl sub_807294C
- mov r0, r9
- adds r1, r6, 0
- movs r2, 0
- movs r3, 0
- bl sub_8074AA0
-_08074A70:
- cmp r7, 0x4
- beq _08074A78
- cmp r7, 0
- bne _08074A80
-_08074A78:
- adds r0, r6, 0
- mov r1, r8
- bl sub_80741E8
-_08074A80:
- cmp r7, 0x9
- beq _08074A88
- cmp r7, 0
- bne _08074A8E
-_08074A88:
- adds r0, r6, 0
- bl draw_status_ailment_maybe
-_08074A8E:
- 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 healthbar_draw_field_maybe
-
- thumb_func_start sub_8074AA0
-sub_8074AA0: @ 8074AA0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r2, 24
- lsrs r2, 24
- mov r9, r2
- cmp r2, 0
- bne _08074AEC
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0, 0xC]
- mov r1, r8
- lsls r5, r1, 2
- adds r3, r5, r1
- lsls r3, 2
- adds r3, r0
- ldr r0, [r3, 0x4]
- ldr r1, [r3, 0x8]
- ldr r2, [r3, 0xC]
- adds r3, 0x10
- movs r4, 0x6
- str r4, [sp]
- movs r4, 0x1
- str r4, [sp, 0x4]
- bl sub_8074DB8
- adds r4, r0, 0
- adds r7, r5, 0
- b _08074B48
- .pool
-_08074AEC:
- ldr r2, =gUnknown_020244D0
- mov r10, r2
- ldr r0, [r2]
- ldr r2, [r0, 0xC]
- mov r0, r8
- lsls r4, r0, 2
- adds r0, r4, r0
- lsls r6, r0, 2
- adds r2, r6, r2
- ldr r0, [r2, 0x8]
- ldr r1, [r2, 0xC]
- ldr r2, [r2, 0x4]
- movs r3, 0x8
- bl sub_8074FE8
- lsls r0, 24
- lsrs r5, r0, 24
- adds r7, r4, 0
- cmp r5, 0
- bne _08074B16
- movs r5, 0x1
-_08074B16:
- mov r1, r10
- ldr r0, [r1]
- ldr r0, [r0, 0xC]
- adds r4, r6, r0
- ldr r6, [r4, 0xC]
- adds r0, r6, 0
- adds r1, r5, 0
- bl __divsi3
- cmp r0, 0
- bge _08074B2E
- negs r0, r0
-_08074B2E:
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, [r4, 0x4]
- ldr r1, [r4, 0x8]
- adds r3, r4, 0
- adds r3, 0x10
- movs r2, 0x8
- str r2, [sp]
- str r5, [sp, 0x4]
- adds r2, r6, 0
- bl sub_8074DB8
- adds r4, r0, 0
-_08074B48:
- mov r2, r9
- cmp r2, 0x1
- beq _08074B64
- cmp r2, 0
- bne _08074B6C
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, r7, r0
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _08074B6C
-_08074B64:
- mov r0, r8
- mov r1, r9
- bl sub_8074B9C
-_08074B6C:
- movs r0, 0x1
- negs r0, r0
- cmp r4, r0
- bne _08074B86
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0, 0xC]
- mov r2, r8
- adds r0, r7, r2
- lsls r0, 2
- adds r0, r1
- movs r1, 0
- str r1, [r0, 0x10]
-_08074B86:
- adds r0, r4, 0
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8074AA0
-
- thumb_func_start sub_8074B9C
-sub_8074B9C: @ 8074B9C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x10
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0
- beq _08074BB8
- cmp r1, 0x1
- beq _08074CA0
- b _08074D9E
-_08074BB8:
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0, 0xC]
- lsls r5, r6, 2
- adds r3, r5, r6
- lsls r3, 2
- adds r3, r0
- ldr r0, [r3, 0x4]
- ldr r1, [r3, 0x8]
- ldr r2, [r3, 0xC]
- adds r3, 0x10
- add r4, sp, 0x8
- str r4, [sp]
- movs r4, 0x6
- str r4, [sp, 0x4]
- bl sub_8074E8C
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x3
- mov r9, r1
- adds r7, r5, 0
- cmp r0, 0x18
- bhi _08074BF4
- movs r2, 0x38
- mov r9, r2
- cmp r0, 0x9
- bls _08074BF4
- movs r4, 0x2F
- mov r9, r4
-_08074BF4:
- movs r5, 0
- ldr r0, =gSprites
- mov r8, r0
-_08074BFA:
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0, 0xC]
- adds r0, r7, r6
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- ldrh r0, [r0, 0x38]
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r5, 0x1
- bhi _08074C5C
- mov r0, r9
- bl sub_80728A4
- mov r1, sp
- adds r1, r5
- adds r1, 0x8
- ldrb r1, [r1]
- lsls r1, 5
- adds r0, r1
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- add r1, r8
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r2, r5, 0x2
- adds r1, r2
- lsls r1, 5
- ldr r2, =0x06010000
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- b _08074C8A
- .pool
-_08074C5C:
- mov r0, r9
- bl sub_80728A4
- mov r1, sp
- adds r1, r5
- adds r1, 0x8
- ldrb r1, [r1]
- lsls r1, 5
- adds r0, r1
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- add r1, r8
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r1, r5, r1
- lsls r1, 5
- ldr r4, =0x06010040
- adds r1, r4
- ldr r2, =0x04000008
- bl CpuSet
-_08074C8A:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _08074BFA
- b _08074D9E
- .pool
-_08074CA0:
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0, 0xC]
- lsls r5, r6, 2
- adds r3, r5, r6
- lsls r3, 2
- adds r3, r0
- ldr r0, [r3, 0x4]
- ldr r1, [r3, 0x8]
- ldr r2, [r3, 0xC]
- adds r3, 0x10
- add r4, sp, 0x8
- str r4, [sp]
- movs r4, 0x8
- str r4, [sp, 0x4]
- bl sub_8074E8C
- ldr r1, =gBattlePartyID
- lsls r0, r6, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x38
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- adds r7, r5, 0
- cmp r0, 0x64
- bne _08074CF8
- movs r5, 0
- movs r1, 0
-_08074CE6:
- mov r0, sp
- adds r0, r5
- adds r0, 0x8
- strb r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x7
- bls _08074CE6
-_08074CF8:
- movs r5, 0
- ldr r0, =gSprites
- mov r8, r0
- adds r0, r7, r6
- lsls r4, r0, 2
-_08074D02:
- cmp r5, 0x3
- bhi _08074D5C
- movs r0, 0xC
- bl sub_80728A4
- mov r1, sp
- adds r1, r5
- adds r1, 0x8
- ldrb r1, [r1]
- lsls r1, 5
- adds r0, r1
- ldr r1, =gUnknown_020244D0
- ldr r1, [r1]
- ldr r1, [r1, 0xC]
- adds r1, r4, r1
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- add r1, r8
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r2, r5, 0
- adds r2, 0x24
- adds r1, r2
- lsls r1, 5
- ldr r2, =0x06010000
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- b _08074D94
- .pool
-_08074D5C:
- movs r0, 0xC
- bl sub_80728A4
- mov r1, sp
- adds r1, r5
- adds r1, 0x8
- ldrb r1, [r1]
- lsls r1, 5
- adds r0, r1
- ldr r1, =gUnknown_020244D0
- ldr r1, [r1]
- ldr r1, [r1, 0xC]
- adds r1, r4, r1
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- add r1, r8
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r1, r5, r1
- lsls r1, 5
- ldr r2, =0x06010b80
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
-_08074D94:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x7
- bls _08074D02
-_08074D9E:
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8074B9C
-
- thumb_func_start sub_8074DB8
-sub_8074DB8: @ 8074DB8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- adds r4, r1, 0
- mov r8, r2
- adds r5, r3, 0
- ldr r1, [sp, 0x18]
- ldr r0, [sp, 0x1C]
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, 27
- lsrs r2, r1, 24
- ldr r1, [r5]
- ldr r0, =0xffff8000
- cmp r1, r0
- bne _08074DEA
- cmp r7, r2
- bge _08074DE8
- lsls r0, r4, 8
- str r0, [r5]
- b _08074DEA
- .pool
-_08074DE8:
- str r4, [r5]
-_08074DEA:
- mov r0, r8
- subs r4, r0
- cmp r4, 0
- bge _08074DF6
- movs r4, 0
- b _08074DFC
-_08074DF6:
- cmp r4, r7
- ble _08074DFC
- adds r4, r7, 0
-_08074DFC:
- cmp r7, r2
- bge _08074E18
- ldr r0, [r5]
- asrs r1, r0, 8
- adds r6, r0, 0
- cmp r4, r1
- bne _08074E24
- movs r0, 0xFF
- ands r0, r6
- cmp r0, 0
- bne _08074E24
- movs r0, 0x1
- negs r0, r0
- b _08074E80
-_08074E18:
- ldr r6, [r5]
- cmp r4, r6
- bne _08074E24
- movs r0, 0x1
- negs r0, r0
- b _08074E80
-_08074E24:
- cmp r7, r2
- bge _08074E5E
- lsls r0, r7, 8
- adds r1, r2, 0
- bl __divsi3
- mov r1, r8
- cmp r1, 0
- bge _08074E42
- adds r0, r6, r0
- str r0, [r5]
- asrs r2, r0, 8
- cmp r2, r4
- blt _08074E7E
- b _08074E56
-_08074E42:
- subs r0, r6, r0
- str r0, [r5]
- asrs r2, r0, 8
- movs r1, 0xFF
- ands r0, r1
- cmp r0, 0
- ble _08074E52
- adds r2, 0x1
-_08074E52:
- cmp r2, r4
- bgt _08074E7E
-_08074E56:
- lsls r0, r4, 8
- str r0, [r5]
- adds r2, r4, 0
- b _08074E7E
-_08074E5E:
- mov r0, r8
- cmp r0, 0
- bge _08074E70
- ldr r0, [r5]
- adds r0, r3
- str r0, [r5]
- cmp r0, r4
- ble _08074E7C
- b _08074E7A
-_08074E70:
- ldr r0, [r5]
- subs r0, r3
- str r0, [r5]
- cmp r0, r4
- bge _08074E7C
-_08074E7A:
- str r4, [r5]
-_08074E7C:
- ldr r2, [r5]
-_08074E7E:
- adds r0, r2, 0
-_08074E80:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8074DB8
-
- thumb_func_start sub_8074E8C
-sub_8074E8C: @ 8074E8C
- push {r4-r7,lr}
- adds r4, r0, 0
- mov r12, r3
- ldr r7, [sp, 0x14]
- ldr r0, [sp, 0x18]
- lsls r0, 24
- lsrs r6, r0, 24
- subs r5, r1, r2
- cmp r5, 0
- bge _08074EA4
- movs r5, 0
- b _08074EAA
-_08074EA4:
- cmp r5, r4
- ble _08074EAA
- adds r5, r4, 0
-_08074EAA:
- lsls r0, r6, 27
- lsrs r3, r0, 24
- movs r1, 0
- cmp r1, r6
- bcs _08074EC4
- movs r2, 0
-_08074EB6:
- adds r0, r7, r1
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, r6
- bcc _08074EB6
-_08074EC4:
- cmp r4, r3
- bge _08074ED8
- mov r1, r12
- ldr r0, [r1]
- muls r0, r3
- adds r1, r4, 0
- bl __divsi3
- asrs r0, 8
- b _08074EE4
-_08074ED8:
- mov r1, r12
- ldr r0, [r1]
- muls r0, r3
- adds r1, r4, 0
- bl __divsi3
-_08074EE4:
- lsls r0, 24
- lsrs r2, r0, 24
- adds r3, r2, 0
- cmp r3, 0
- bne _08074EFA
- cmp r5, 0
- ble _08074EFA
- movs r0, 0x1
- strb r0, [r7]
- movs r3, 0x1
- b _08074F1E
-_08074EFA:
- movs r1, 0
- movs r4, 0x8
-_08074EFE:
- cmp r1, r6
- bcs _08074F1E
- cmp r2, 0x7
- bls _08074F1A
- adds r0, r7, r1
- strb r4, [r0]
- adds r0, r2, 0
- subs r0, 0x8
- lsls r0, 24
- lsrs r2, r0, 24
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- b _08074EFE
-_08074F1A:
- adds r0, r7, r1
- strb r2, [r0]
-_08074F1E:
- adds r0, r3, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8074E8C
-
- thumb_func_start sub_8074F28
-sub_8074F28: @ 8074F28
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- adds r5, r0, 0
- adds r6, r1, 0
- adds r4, r2, 0
- mov r8, r3
- ldr r0, [r5]
- ldr r1, [r5, 0x4]
- ldr r2, [r5, 0x8]
- movs r3, 0x6
- str r3, [sp]
- movs r3, 0x1
- str r3, [sp, 0x4]
- adds r3, r6, 0
- bl sub_8074DB8
- lsls r0, 16
- lsrs r7, r0, 16
- adds r0, r5, 0
- adds r1, r6, 0
- adds r2, r4, 0
- bl sub_8074F88
- ldr r0, [r5]
- cmp r0, 0x2F
- bgt _08074F68
- ldr r0, [r6]
- lsls r0, 8
- lsrs r1, r0, 16
- b _08074F6A
-_08074F68:
- ldrh r1, [r6]
-_08074F6A:
- movs r2, 0
- ldrsh r0, [r5, r2]
- lsls r1, 16
- asrs r1, 16
- mov r2, r8
- bl sub_8072304
- lsls r0, r7, 16
- asrs r0, 16
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8074F28
-
- thumb_func_start sub_8074F88
-sub_8074F88: @ 8074F88
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x1C
- adds r5, r0, 0
- adds r3, r1, 0
- mov r8, r2
- ldr r0, [r5]
- ldr r1, [r5, 0x4]
- ldr r2, [r5, 0x8]
- add r4, sp, 0x8
- str r4, [sp]
- movs r4, 0x6
- str r4, [sp, 0x4]
- bl sub_8074E8C
- movs r3, 0
- add r7, sp, 0x10
- mov r12, r7
- ldrb r0, [r5, 0xC]
- lsls r6, r0, 27
- ldr r4, [r5, 0x10]
-_08074FB4:
- lsls r2, r3, 1
- add r2, r12
- lsrs r1, r6, 15
- mov r0, sp
- adds r0, r3
- adds r0, 0x8
- ldrb r0, [r0]
- adds r0, r4, r0
- orrs r1, r0
- strh r1, [r2]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x5
- bls _08074FB4
- adds r0, r7, 0
- mov r1, r8
- movs r2, 0x6
- bl CpuSet
- add sp, 0x1C
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8074F88
-
- thumb_func_start sub_8074FE8
-sub_8074FE8: @ 8074FE8
- push {r4-r7,lr}
- adds r6, r2, 0
- lsls r3, 27
- lsrs r7, r3, 24
- subs r5, r0, r1
- cmp r5, 0
- bge _08074FFA
- movs r5, 0
- b _08075000
-_08074FFA:
- cmp r5, r6
- ble _08075000
- adds r5, r6, 0
-_08075000:
- muls r0, r7
- adds r1, r6, 0
- bl __divsi3
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- muls r0, r7
- adds r1, r6, 0
- bl __divsi3
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- subs r0, r4, r0
- cmp r0, 0
- bge _08075028
- negs r0, r0
-_08075028:
- lsls r0, 24
- lsrs r0, 24
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8074FE8
-
- thumb_func_start sub_8075034
-sub_8075034: @ 8075034
- push {r4,lr}
- lsls r2, 24
- lsrs r2, 24
- lsls r0, 16
- asrs r4, r0, 16
- adds r0, r4, 0
- muls r0, r2
- lsls r1, 16
- asrs r1, 16
- bl __divsi3
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _08075058
- cmp r4, 0
- ble _08075058
- movs r0, 0x1
-_08075058:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8075034
-
- thumb_func_start sub_8075060
-sub_8075060: @ 8075060
- push {lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- cmp r0, r1
- bne _08075072
- movs r0, 0x4
- b _0807508E
-_08075072:
- movs r2, 0x30
- bl sub_8075034
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x3
- cmp r1, 0x18
- bhi _0807508E
- movs r0, 0x2
- cmp r1, 0x9
- bhi _0807508E
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
-_0807508E:
- pop {r1}
- bx r1
- thumb_func_end sub_8075060
-
- thumb_func_start write_to_rbox
-write_to_rbox: @ 8075094
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- mov r10, r0
- mov r8, r1
- mov r9, r2
- adds r5, r3, 0
- ldr r7, [sp, 0x40]
- ldr r0, =gUnknown_0832C3F8
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp, 0x18]
- str r1, [sp, 0x1C]
- add r0, sp, 0x18
- bl AddWindow
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r6, r4, 24
- lsrs r6, 24
- lsls r1, r5, 4
- orrs r1, r5
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl FillWindowPixelBuffer
- add r0, sp, 0x14
- movs r2, 0
- strb r5, [r0]
- adds r1, r0, 0
- movs r0, 0x1
- strb r0, [r1, 0x1]
- movs r0, 0x3
- strb r0, [r1, 0x2]
- mov r0, r8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- str r2, [sp]
- str r2, [sp, 0x4]
- str r1, [sp, 0x8]
- movs r0, 0x1
- negs r0, r0
- str r0, [sp, 0xC]
- mov r0, r10
- str r0, [sp, 0x10]
- adds r0, r6, 0
- movs r1, 0
- mov r2, r8
- mov r3, r9
- bl AddTextPrinterParametrized2
- str r4, [r7]
- adds r0, r6, 0
- movs r1, 0x7
- bl GetWindowAttribute
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end write_to_rbox
-
- thumb_func_start sub_807512C
-sub_807512C: @ 807512C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl RemoveWindow
- pop {r0}
- bx r0
- thumb_func_end sub_807512C
-
- thumb_func_start sub_807513C
-sub_807513C: @ 807513C
- push {lr}
- sub sp, 0x4
- adds r3, r0, 0
- lsls r0, r1, 4
- adds r0, r1
- lsls r1, r0, 8
- adds r0, r1
- lsls r1, r0, 16
- adds r0, r1
- str r0, [sp]
- lsls r2, 3
- ldr r0, =0x001fffff
- ands r2, r0
- movs r0, 0xA0
- lsls r0, 19
- orrs r2, r0
- mov r0, sp
- adds r1, r3, 0
- bl CpuSet
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_807513C
-
- thumb_func_start sub_8075170
-sub_8075170: @ 8075170
- push {lr}
- adds r3, r0, 0
- adds r0, r1, 0
- movs r1, 0x80
- lsls r1, 1
- adds r0, r1
- lsls r2, 3
- ldr r1, =0x001fffff
- ands r2, r1
- movs r1, 0x80
- lsls r1, 19
- orrs r2, r1
- adds r1, r3, 0
- bl CpuSet
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8075170
-
- thumb_func_start sub_8075198
-sub_8075198: @ 8075198
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r5, r1, 0
- adds r4, r2, 0
- movs r1, 0x80
- lsls r1, 1
- adds r0, r5, r1
- adds r1, r6, r1
- lsls r2, r4, 3
- ldr r3, =0x001fffff
- ands r2, r3
- movs r3, 0x80
- lsls r3, 19
- orrs r2, r3
- bl CpuSet
- cmp r4, 0
- ble _080751D4
-_080751BC:
- adds r0, r5, 0
- adds r0, 0x14
- adds r1, r6, 0
- adds r1, 0x14
- ldr r2, =0x04000003
- bl CpuSet
- adds r6, 0x20
- adds r5, 0x20
- subs r4, 0x1
- cmp r4, 0
- bne _080751BC
-_080751D4:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8075198
-
- thumb_func_start sub_80751E4
-sub_80751E4: @ 80751E4
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r5, r1, 0
- lsls r4, r2, 3
- ldr r0, =0x001fffff
- ands r4, r0
- movs r0, 0x80
- lsls r0, 19
- orrs r4, r0
- adds r0, r5, 0
- adds r1, r6, 0
- adds r2, r4, 0
- bl CpuSet
- movs r0, 0x80
- lsls r0, 1
- adds r5, r0
- adds r6, r0
- adds r0, r5, 0
- adds r1, r6, 0
- adds r2, r4, 0
- bl CpuSet
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80751E4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_link_817C95C.s b/asm/battle_link_817C95C.s
index 94ae7ad7f..aa887bc25 100644
--- a/asm/battle_link_817C95C.s
+++ b/asm/battle_link_817C95C.s
@@ -665,7 +665,7 @@ _0817D16C:
bl _0817DFAC
.pool
_0817D1B8:
- ldr r1, =gUnknown_02022F5C
+ ldr r1, =gBattleTextBuff1 + 4
ldrb r0, [r1]
cmp r0, 0
beq _0817D1C4
@@ -917,7 +917,7 @@ _0817D3C0:
bne _0817D3CC
bl _0817E0A6
_0817D3CC:
- ldr r1, =gUnknown_02022F6A
+ ldr r1, =gBattleTextBuff2 + 2
ldrh r0, [r1]
cmp r0, 0xD1
bne _0817D3E8
@@ -946,7 +946,7 @@ _0817D3FE:
ldrb r1, [r1]
cmp r0, r1
bne _0817D436
- ldr r1, =gUnknown_02022F6A
+ ldr r1, =gBattleTextBuff2 + 2
ldrh r0, [r1]
cmp r0, 0xD1
bne _0817D42C
@@ -988,7 +988,7 @@ _0817D45C:
bne _0817D468
bl _0817E0A6
_0817D468:
- ldr r1, =gUnknown_02022F6A
+ ldr r1, =gBattleTextBuff2 + 2
ldrh r0, [r1]
cmp r0, 0xD3
bne _0817D484
@@ -2182,7 +2182,7 @@ _0817DE10:
b _0817DFAA
.pool
_0817DE58:
- ldr r1, =gUnknown_02022F5A
+ ldr r1, =gBattleTextBuff1 + 2
ldrh r0, [r1]
cmp r0, 0x73
bne _0817DE82
@@ -2204,7 +2204,7 @@ _0817DE58:
ands r0, r2
strb r0, [r1]
_0817DE82:
- ldr r2, =gUnknown_02022F5A
+ ldr r2, =gBattleTextBuff1 + 2
ldrh r0, [r2]
cmp r0, 0x71
bne _0817DEAA
@@ -2225,7 +2225,7 @@ _0817DE82:
ands r0, r2
strb r0, [r1]
_0817DEAA:
- ldr r1, =gUnknown_02022F5A
+ ldr r1, =gBattleTextBuff1 + 2
ldrh r0, [r1]
cmp r0, 0x36
beq _0817DEB4
@@ -3193,7 +3193,7 @@ _0817E63A:
adds r1, r4, 0
ldr r2, [sp]
ldr r3, [sp, 0x4]
- bl sub_80ECB00
+ bl PutBattleUpdateOnTheAir
b _0817E670
.pool
_0817E65C:
@@ -3205,7 +3205,7 @@ _0817E65C:
adds r1, r4, 0
ldr r2, [sp]
ldr r3, [sp, 0x4]
- bl sub_80ECB00
+ bl PutBattleUpdateOnTheAir
_0817E670:
add sp, 0x20
pop {r3-r5}
@@ -4322,7 +4322,7 @@ _0817EF36:
b _0817F1FA
_0817EF44:
ldr r3, =gBattleMoves
- ldr r2, =gUnknown_020244B0
+ ldr r2, =gMoveSelectionCursor
adds r0, r4, r2
ldrb r0, [r0]
lsls r0, 1
@@ -4514,7 +4514,7 @@ _0817F0B4:
ble _0817EFC2
movs r5, 0
ldr r3, =gBankAttacker
- ldr r6, =gUnknown_020244B0
+ ldr r6, =gMoveSelectionCursor
ldr r4, =gBattlePartyID
mov r8, r4
movs r7, 0x64
@@ -4624,7 +4624,7 @@ _0817F1D4:
b _0817F0CC
_0817F1DC:
ldr r2, =gBattleMoveDamage
- ldr r1, =gUnknown_020244B0
+ ldr r1, =gMoveSelectionCursor
ldr r0, =gBankAttacker
ldrb r0, [r0]
adds r0, r1
diff --git a/asm/battle_message.s b/asm/battle_message.s
deleted file mode 100644
index dfbf069b3..000000000
--- a/asm/battle_message.s
+++ /dev/null
@@ -1,3089 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start BufferStringBattle
-BufferStringBattle: @ 814E0C4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 16
- lsrs r6, r0, 16
- movs r7, 0
- ldr r4, =gStringInfo
- ldr r0, =gActiveBank
- mov r8, r0
- ldrb r1, [r0]
- lsls r1, 9
- ldr r0, =gBattleBufferA + 4
- adds r1, r0
- str r1, [r4]
- ldr r2, =gLastUsedItem
- ldrh r0, [r1, 0x4]
- strh r0, [r2]
- ldr r2, =gLastUsedAbility
- ldrb r0, [r1, 0x6]
- strb r0, [r2]
- ldr r5, =gBattleScripting
- ldrb r0, [r1, 0x7]
- strb r0, [r5, 0x17]
- ldr r3, =gBattleStruct
- ldr r0, [r3]
- adds r0, 0x52
- ldrb r1, [r1, 0x8]
- strb r1, [r0]
- ldr r0, [r3]
- adds r0, 0xB1
- ldr r1, [r4]
- ldrb r1, [r1, 0x9]
- strb r1, [r0]
- ldr r1, =gStringBank
- ldr r2, [r4]
- ldrb r0, [r2, 0xA]
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x8E
- ldrb r1, [r2, 0xB]
- strb r1, [r0]
- movs r2, 0
- mov r12, r8
- mov r9, r5
- ldr r1, =gBattleTextBuff1
- mov r10, r1
- ldr r3, =gAbilitiesPerBank
-_0814E126:
- adds r0, r2, r3
- ldr r1, [r4]
- adds r1, 0xC
- adds r1, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x3
- ble _0814E126
- movs r2, 0
- ldr r0, =gBattleTextBuff1
- mov r8, r0
- ldr r3, =gStringInfo
- ldr r5, =gBattleTextBuff2
- ldr r4, =gBattleTextBuff3
-_0814E144:
- mov r0, r8
- adds r1, r2, r0
- ldr r0, [r3]
- adds r0, 0x10
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r2, r5
- ldr r0, [r3]
- adds r0, 0x20
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r2, r4
- ldr r0, [r3]
- adds r0, 0x30
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r2, 0x1
- cmp r2, 0xF
- ble _0814E144
- cmp r6, 0x5
- bls _0814E176
- b _0814E6B8
-_0814E176:
- lsls r0, r6, 2
- ldr r1, =_0814E1B4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0814E1B4:
- .4byte _0814E1CC
- .4byte _0814E2AC
- .4byte _0814E394
- .4byte _0814E430
- .4byte _0814E4F8
- .4byte _0814E55C
-_0814E1CC:
- ldr r0, =gBattleTypeFlags
- ldr r2, [r0]
- movs r0, 0x8
- ands r0, r2
- cmp r0, 0
- beq _0814E26C
- ldr r0, =0x02000002
- ands r0, r2
- cmp r0, 0
- beq _0814E248
- movs r0, 0x80
- lsls r0, 16
- ands r0, r2
- cmp r0, 0
- bne _0814E260
- movs r0, 0x40
- ands r0, r2
- cmp r0, 0
- beq _0814E214
- movs r0, 0x80
- lsls r0, 17
- ands r2, r0
- ldr r7, =gText_TwoTrainersWantToBattle
- cmp r2, 0
- bne _0814E200
- b _0814E6D8
-_0814E200:
- ldr r7, =gText_TwoTrainersWantToBattle3
- b _0814E6D8
- .pool
-_0814E214:
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- cmp r1, r0
- bne _0814E22C
- ldr r7, =gText_TrainerXYWantsToBattle
- b _0814E6D8
- .pool
-_0814E22C:
- movs r0, 0x80
- lsls r0, 17
- ands r2, r0
- ldr r7, =gText_TrainerXWantsToBattle
- cmp r2, 0
- bne _0814E23A
- b _0814E6D8
-_0814E23A:
- ldr r7, =gText_TrainerWantsToBattle
- b _0814E6D8
- .pool
-_0814E248:
- movs r0, 0x80
- lsls r0, 15
- ands r0, r2
- cmp r0, 0
- bne _0814E260
- movs r0, 0x80
- lsls r0, 8
- ands r2, r0
- ldr r7, =gText_TrainerXYWantsToBattle
- cmp r2, 0
- bne _0814E260
- b _0814E6D8
-_0814E260:
- ldr r7, =gText_TwoTrainersWantToBattle2
- b _0814E6D8
- .pool
-_0814E26C:
- movs r0, 0x80
- lsls r0, 6
- ands r0, r2
- cmp r0, 0
- beq _0814E280
- ldr r7, =gText_WildPkmnAppeared2
- b _0814E6D8
- .pool
-_0814E280:
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- beq _0814E290
- ldr r7, =gText_TwoWildPkmnAppeared
- b _0814E6D8
- .pool
-_0814E290:
- movs r0, 0x80
- lsls r0, 2
- ands r2, r0
- ldr r7, =gText_WildPkmnAppeared
- cmp r2, 0
- bne _0814E29E
- b _0814E6D8
-_0814E29E:
- ldr r7, =gText_WildPkmnAppearedPause
- b _0814E6D8
- .pool
-_0814E2AC:
- mov r1, r12
- ldrb r0, [r1]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0814E310
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0814E308
- movs r0, 0x80
- lsls r0, 15
- ands r0, r1
- cmp r0, 0
- beq _0814E2DC
- ldr r7, =gText_TrainerXYSentOutZGoN
- b _0814E6D8
- .pool
-_0814E2DC:
- movs r0, 0x80
- lsls r0, 8
- ands r0, r1
- cmp r0, 0
- beq _0814E2F0
- ldr r7, =gText_GoTwoPkmn
- b _0814E6D8
- .pool
-_0814E2F0:
- movs r0, 0x40
- ands r1, r0
- ldr r7, =gText_GoTwoPkmn
- cmp r1, 0
- bne _0814E2FC
- b _0814E6D8
-_0814E2FC:
- ldr r7, =gText_EnemySentOutPkmnGoPkmn
- b _0814E6D8
- .pool
-_0814E308:
- ldr r7, =gText_GoPkmn
- b _0814E6D8
- .pool
-_0814E310:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0814E368
- movs r0, 0x80
- lsls r0, 8
- ands r0, r1
- cmp r0, 0
- bne _0814E330
- movs r0, 0x80
- lsls r0, 16
- ands r0, r1
- cmp r0, 0
- beq _0814E33C
-_0814E330:
- ldr r7, =gText_TwoTrainersSentPkmn
- b _0814E6D8
- .pool
-_0814E33C:
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0814E34C
- ldr r7, =gText_TwoTrainersSentOutPkmn
- b _0814E6D8
- .pool
-_0814E34C:
- ldr r0, =0x02000002
- ands r1, r0
- ldr r7, =gText_TrainerXYSentOutTwoPkmn
- cmp r1, 0
- bne _0814E358
- b _0814E6D8
-_0814E358:
- ldr r7, =gText_TrainerXSentOutTwoPkmn
- b _0814E6D8
- .pool
-_0814E368:
- ldr r0, =0x02000002
- ands r1, r0
- cmp r1, 0
- beq _0814E380
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- ldr r7, =gText_TrainerXSentOutPkmn
- cmp r1, r0
- beq _0814E380
- b _0814E6D8
-_0814E380:
- ldr r7, =gText_TrainerXYSentOutPkmn
- b _0814E6D8
- .pool
-_0814E394:
- mov r1, r12
- ldrb r0, [r1]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0814E3EC
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB1
- ldrb r2, [r0]
- cmp r2, 0
- bne _0814E3BC
- ldr r7, =gText_PkmnThatsEnough
- b _0814E6D8
- .pool
-_0814E3BC:
- cmp r2, 0x1
- beq _0814E3CC
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0814E3D8
-_0814E3CC:
- ldr r7, =gText_PkmnComeBack
- b _0814E6D8
- .pool
-_0814E3D8:
- ldr r7, =gText_PkmnGoodComeBack
- cmp r2, 0x2
- beq _0814E3E0
- b _0814E6D8
-_0814E3E0:
- ldr r7, =gText_PkmnOkComeBack
- b _0814E6D8
- .pool
-_0814E3EC:
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0x80
- lsls r0, 4
- ldr r2, =gBattleTypeFlags
- cmp r1, r0
- beq _0814E406
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 18
- ands r0, r1
- cmp r0, 0
- beq _0814E428
-_0814E406:
- ldr r0, [r2]
- movs r1, 0x40
- ands r0, r1
- ldr r7, =gText_TrainerXWithdrewPkmn
- cmp r0, 0
- bne _0814E414
- b _0814E6D8
-_0814E414:
- ldr r7, =gText_TrainerXWithdrewPkmn2
- b _0814E6D8
- .pool
-_0814E428:
- ldr r7, =gText_TrainerXYWithdrewPkmn
- b _0814E6D8
- .pool
-_0814E430:
- mov r4, r9
- ldrb r0, [r4, 0x17]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0814E488
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB1
- ldrb r2, [r0]
- cmp r2, 0
- beq _0814E456
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0814E468
-_0814E456:
- ldr r7, =gText_GoPkmn2
- b _0814E6D8
- .pool
-_0814E468:
- cmp r2, 0x1
- bne _0814E474
- ldr r7, =gText_DoItPkmn
- b _0814E6D8
- .pool
-_0814E474:
- ldr r7, =gText_YourFoesWeakGetEmPkmn
- cmp r2, 0x2
- beq _0814E47C
- b _0814E6D8
-_0814E47C:
- ldr r7, =gText_GoForItPkmn
- b _0814E6D8
- .pool
-_0814E488:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x02000002
- ands r0, r1
- cmp r0, 0
- beq _0814E4DC
- movs r0, 0x80
- lsls r0, 16
- ands r0, r1
- cmp r0, 0
- beq _0814E4AC
- ldrb r0, [r4, 0x17]
- b _0814E4EA
- .pool
-_0814E4AC:
- movs r0, 0x40
- ands r1, r0
- cmp r1, 0
- beq _0814E4BC
- ldr r7, =gText_TrainerXSentOutPkmn3
- b _0814E6D8
- .pool
-_0814E4BC:
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- ldr r7, =gText_TrainerXSentOutPkmn2
- cmp r1, r0
- beq _0814E4CC
- b _0814E6D8
-_0814E4CC:
- ldr r7, =gText_TrainerXYSentOutPkmn2
- b _0814E6D8
- .pool
-_0814E4DC:
- movs r0, 0x80
- lsls r0, 8
- ands r1, r0
- cmp r1, 0
- beq _0814E4CC
- mov r1, r9
- ldrb r0, [r1, 0x17]
-_0814E4EA:
- ldr r7, =gText_TrainerXYSentOutPkmn3
- cmp r0, 0x1
- beq _0814E4F2
- b _0814E6D8
-_0814E4F2:
- b _0814E4CC
- .pool
-_0814E4F8:
- mov r0, r10
- bl sub_814F8F8
- ldr r0, =gStringInfo
- ldr r2, [r0]
- ldrh r1, [r2]
- movs r0, 0xB1
- lsls r0, 1
- cmp r1, r0
- bls _0814E534
- ldr r0, =gBattleTextBuff2
- ldr r1, =gBattleStruct
- ldr r1, [r1]
- adds r1, 0x8E
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- ldr r2, =gText_UnknownMoveTypes
- adds r1, r2
- bl StringCopy
- b _0814E544
- .pool
-_0814E534:
- ldr r0, =gBattleTextBuff2
- ldrh r2, [r2]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
-_0814E544:
- ldr r0, =gBattleTextBuff2
- bl sub_814F950
- ldr r7, =gText_XUsedY2
- b _0814E6D8
- .pool
-_0814E55C:
- ldr r4, =gBattleTextBuff1
- ldrb r1, [r4]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0814E5C4
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r4]
- mov r1, r12
- ldrb r0, [r1]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0814E58A
- ldrb r1, [r4]
- cmp r1, 0x3
- beq _0814E58A
- movs r0, 0x3
- eors r0, r1
- strb r0, [r4]
-_0814E58A:
- ldr r0, =gBattleTextBuff1
- ldrb r0, [r0]
- subs r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _0814E5A4
- ldr r7, =gText_GotAwaySafely
- b _0814E6D8
- .pool
-_0814E5A4:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- ldr r7, =gText_WildFled
- cmp r0, 0
- bne _0814E5B4
- b _0814E6D8
-_0814E5B4:
- ldr r7, =gText_TwoWildFled
- b _0814E6D8
- .pool
-_0814E5C4:
- mov r1, r12
- ldrb r0, [r1]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0814E5E0
- ldrb r1, [r4]
- cmp r1, 0x3
- beq _0814E5E0
- movs r0, 0x3
- eors r0, r1
- strb r0, [r4]
-_0814E5E0:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0814E638
- ldr r0, =gBattleTextBuff1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0814E628
- cmp r0, 0x2
- bgt _0814E608
- cmp r0, 0x1
- beq _0814E60E
- b _0814E6D8
- .pool
-_0814E608:
- cmp r0, 0x3
- beq _0814E630
- b _0814E6D8
-_0814E60E:
- movs r0, 0x80
- lsls r0, 16
- ands r1, r0
- ldr r7, =gText_PlayerBeatTwo
- cmp r1, 0
- beq _0814E6D8
- ldr r7, =gText_TwoEnemiesDefeated
- b _0814E6D8
- .pool
-_0814E628:
- ldr r7, =gText_PlayerLostToTwo
- b _0814E6D8
- .pool
-_0814E630:
- ldr r7, =gText_PlayerBattledToDrawVsTwo
- b _0814E6D8
- .pool
-_0814E638:
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- cmp r1, r0
- bne _0814E680
- ldr r0, =gBattleTextBuff1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0814E670
- cmp r0, 0x2
- bgt _0814E660
- cmp r0, 0x1
- beq _0814E666
- b _0814E6D8
- .pool
-_0814E660:
- cmp r0, 0x3
- beq _0814E678
- b _0814E6D8
-_0814E666:
- ldr r7, =gText_PlayerDefeatedXY
- b _0814E6D8
- .pool
-_0814E670:
- ldr r7, =gText_PlayerLostAgainst2
- b _0814E6D8
- .pool
-_0814E678:
- ldr r7, =gText_PlayerBattledToDraw2
- b _0814E6D8
- .pool
-_0814E680:
- ldr r0, =gBattleTextBuff1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0814E6A8
- cmp r0, 0x2
- bgt _0814E698
- cmp r0, 0x1
- beq _0814E69E
- b _0814E6D8
- .pool
-_0814E698:
- cmp r0, 0x3
- beq _0814E6B0
- b _0814E6D8
-_0814E69E:
- ldr r7, =gText_PlayerDefeated
- b _0814E6D8
- .pool
-_0814E6A8:
- ldr r7, =gText_PlayerLostAgainst
- b _0814E6D8
- .pool
-_0814E6B0:
- ldr r7, =gText_PlayerBattledToDraw
- b _0814E6D8
- .pool
-_0814E6B8:
- movs r0, 0xBE
- lsls r0, 1
- cmp r6, r0
- bls _0814E6CC
- ldr r1, =gDisplayedStringBattle
- movs r0, 0xFF
- strb r0, [r1]
- b _0814E6DE
- .pool
-_0814E6CC:
- ldr r1, =gBattleStringsTable
- adds r0, r6, 0
- subs r0, 0xC
- lsls r0, 2
- adds r0, r1
- ldr r7, [r0]
-_0814E6D8:
- adds r0, r7, 0
- bl StrCpyDecodeToDisplayedStringBattle
-_0814E6DE:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end BufferStringBattle
-
- thumb_func_start StrCpyDecodeToDisplayedStringBattle
-StrCpyDecodeToDisplayedStringBattle: @ 814E6F0
- push {lr}
- ldr r1, =gDisplayedStringBattle
- bl StrCpyDecodeBattle
- pop {r1}
- bx r1
- .pool
- thumb_func_end StrCpyDecodeToDisplayedStringBattle
-
- thumb_func_start AppendStatusString
-AppendStatusString: @ 814E700
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r1, =gUnknown_085CD422
- mov r0, sp
- movs r2, 0x8
- bl memcpy
- mov r2, sp
- movs r3, 0
- b _0814E728
- .pool
-_0814E71C:
- strb r1, [r2]
- adds r4, 0x1
- adds r2, 0x1
- adds r3, 0x1
- cmp r3, 0x7
- bhi _0814E730
-_0814E728:
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814E71C
-_0814E730:
- ldr r5, [sp]
- ldr r4, [sp, 0x4]
- movs r3, 0
- ldr r2, =gUnknown_0831BCA8
-_0814E738:
- ldr r1, [r2]
- ldr r0, [r1]
- cmp r5, r0
- bne _0814E750
- ldr r0, [r1, 0x4]
- cmp r4, r0
- bne _0814E750
- ldr r0, [r2, 0x4]
- b _0814E75A
- .pool
-_0814E750:
- adds r2, 0x8
- adds r3, 0x1
- cmp r3, 0x6
- bls _0814E738
- movs r0, 0
-_0814E75A:
- add sp, 0x8
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end AppendStatusString
-
- thumb_func_start StrCpyDecodeBattle
-StrCpyDecodeBattle: @ 814E764
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x20
- mov r9, r0
- mov r8, r1
- movs r6, 0
- movs r4, 0
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 18
- ands r0, r1
- cmp r0, 0
- beq _0814E794
- ldr r0, =gUnknown_0203C7B4
- ldrb r7, [r0]
- b _0814E79C
- .pool
-_0814E794:
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r7, r0, 24
-_0814E79C:
- mov r0, r9
- ldrb r1, [r0]
- bl _0814F620
-_0814E7A4:
- cmp r1, 0xFD
- beq _0814E7AC
- bl _0814F610
-_0814E7AC:
- movs r1, 0x1
- add r9, r1
- mov r2, r9
- ldrb r0, [r2]
- cmp r0, 0x34
- bls _0814E7BC
- bl _0814F5C0
-_0814E7BC:
- lsls r0, 2
- ldr r1, =_0814E7CC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0814E7CC:
- .4byte _0814E8A0
- .4byte _0814E8CE
- .4byte _0814E90A
- .4byte _0814E914
- .4byte _0814E920
- .4byte _0814E92C
- .4byte _0814E960
- .4byte _0814E994
- .4byte _0814E9C8
- .4byte _0814E9FC
- .4byte _0814EA38
- .4byte _0814EA78
- .4byte _0814EAB8
- .4byte _0814EAF8
- .4byte _0814EBB0
- .4byte _0814EC38
- .4byte _0814ECD4
- .4byte _0814ED70
- .4byte _0814EE0C
- .4byte _0814EEA8
- .4byte _0814EF44
- .4byte _0814EF5C
- .4byte _0814EF98
- .4byte _0814F080
- .4byte _0814F088
- .4byte _0814F098
- .4byte _0814F0A8
- .4byte _0814F0B8
- .4byte _0814F0D8
- .4byte _0814F164
- .4byte _0814F220
- .4byte _0814F230
- .4byte _0814F244
- .4byte _0814F258
- .4byte _0814F27C
- .4byte _0814F298
- .4byte _0814F2C0
- .4byte _0814F300
- .4byte _0814F330
- .4byte _0814F3C4
- .4byte _0814F410
- .4byte _0814F418
- .4byte _0814F3E4
- .4byte _0814F3EC
- .4byte _0814F43C
- .4byte _0814F444
- .4byte _0814F468
- .4byte _0814F4B8
- .4byte _0814F508
- .4byte _0814F548
- .4byte _0814F594
- .4byte _0814F5B4
- .4byte _0814E8E4
-_0814E8A0:
- ldr r5, =gBattleTextBuff1
- ldrb r0, [r5]
- cmp r0, 0xFD
- bne _0814E8B8
- ldr r4, =gStringVar1
- adds r0, r5, 0
- b _0814E8F0
- .pool
-_0814E8B8:
- adds r0, r5, 0
- bl AppendStatusString
- adds r4, r0, 0
- cmp r4, 0
- beq _0814E8C8
- bl _0814F5C0
-_0814E8C8:
- adds r4, r5, 0
- bl _0814F5C0
-_0814E8CE:
- ldr r1, =gBattleTextBuff2
- ldrb r0, [r1]
- cmp r0, 0xFD
- bne _0814E904
- ldr r4, =gStringVar2
- b _0814E8EE
- .pool
-_0814E8E4:
- ldr r1, =gBattleTextBuff3
- ldrb r0, [r1]
- cmp r0, 0xFD
- bne _0814E904
- ldr r4, =gStringVar3
-_0814E8EE:
- adds r0, r1, 0
-_0814E8F0:
- adds r1, r4, 0
- bl StrCpyDecodeBattleTextBuff
- bl _0814F5C0
- .pool
-_0814E904:
- adds r4, r1, 0
- bl _0814F5C0
-_0814E90A:
- ldr r4, =gStringVar1
- bl _0814F5C0
- .pool
-_0814E914:
- ldr r4, =gStringVar2
- bl _0814F5C0
- .pool
-_0814E920:
- ldr r4, =gStringVar3
- bl _0814F5C0
- .pool
-_0814E92C:
- movs r0, 0
- bl GetBankByPlayerAI
- ldr r1, =gBattlePartyID
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814E960:
- movs r0, 0x1
- bl GetBankByPlayerAI
- ldr r1, =gBattlePartyID
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814E994:
- movs r0, 0x2
- bl GetBankByPlayerAI
- ldr r1, =gBattlePartyID
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814E9C8:
- movs r0, 0x3
- bl GetBankByPlayerAI
- ldr r1, =gBattlePartyID
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814E9FC:
- ldr r2, =gBattlePartyID
- ldr r1, =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x18]
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814EA38:
- ldr r2, =gBattlePartyID
- ldr r1, =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0, 0x18]
- movs r0, 0x1
- eors r0, r1
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814EA78:
- ldr r2, =gBattlePartyID
- ldr r1, =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0, 0x18]
- movs r0, 0x2
- eors r0, r1
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814EAB8:
- ldr r2, =gBattlePartyID
- ldr r1, =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0, 0x18]
- movs r0, 0x3
- eors r0, r1
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814EAF8:
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- adds r2, r4, 0
- cmp r0, 0
- beq _0814EB74
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, =gText_WildPkmnPrefix
- cmp r1, 0
- beq _0814EB36
- ldr r4, =gText_FoePkmnPrefix
- b _0814EB36
- .pool
-_0814EB2C:
- mov r3, r8
- adds r0, r3, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
-_0814EB36:
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814EB2C
- ldrb r0, [r2]
- bl GetBankIdentity
- adds r1, r0, 0
- movs r0, 0x1
- ands r0, r1
- bl GetBankByPlayerAI
- ldr r1, =gBattlePartyID
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814EB9E
- .pool
-_0814EB74:
- ldrb r0, [r2]
- bl GetBankIdentity
- adds r1, r0, 0
- movs r0, 0x1
- ands r0, r1
- bl GetBankByPlayerAI
- ldr r1, =gBattlePartyID
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814EB9E:
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814EBB0:
- ldr r4, =gBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0814EBF8
- ldrb r0, [r4]
- bl GetBankIdentity
- adds r1, r0, 0
- movs r0, 0x1
- ands r0, r1
- bl GetBankByPlayerAI
- ldr r1, =gBattlePartyID
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0x4
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814EC24
- .pool
-_0814EBF8:
- ldrb r0, [r4]
- bl GetBankIdentity
- adds r1, r0, 0
- movs r0, 0x1
- ands r0, r1
- bl GetBankByPlayerAI
- ldr r1, =gBattlePartyID
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0x4
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814EC24:
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814EC38:
- ldr r5, =gBankAttacker
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0814ECA8
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, =gText_WildPkmnPrefix
- cmp r1, 0
- beq _0814EC56
- ldr r4, =gText_FoePkmnPrefix
-_0814EC56:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, =gBattlePartyID
- ldr r2, =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _0814EC78
-_0814EC66:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814EC66
-_0814EC78:
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- add r0, r12
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814ECC2
- .pool
-_0814ECA8:
- ldr r1, =gBattlePartyID
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814ECC2:
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814ECD4:
- ldr r5, =gBankTarget
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0814ED44
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, =gText_WildPkmnPrefix
- cmp r1, 0
- beq _0814ECF2
- ldr r4, =gText_FoePkmnPrefix
-_0814ECF2:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, =gBattlePartyID
- ldr r2, =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _0814ED14
-_0814ED02:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814ED02
-_0814ED14:
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- add r0, r12
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814ED5E
- .pool
-_0814ED44:
- ldr r1, =gBattlePartyID
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814ED5E:
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814ED70:
- ldr r5, =gEffectBank
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0814EDE0
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, =gText_WildPkmnPrefix
- cmp r1, 0
- beq _0814ED8E
- ldr r4, =gText_FoePkmnPrefix
-_0814ED8E:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, =gBattlePartyID
- ldr r2, =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _0814EDB0
-_0814ED9E:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814ED9E
-_0814EDB0:
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- add r0, r12
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814EDFA
- .pool
-_0814EDE0:
- ldr r1, =gBattlePartyID
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814EDFA:
- mov r0, sp
- bl StringGetEnd10
- bl _0814F5BE
- .pool
-_0814EE0C:
- ldr r5, =gActiveBank
- ldrb r0, [r5]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0814EE7C
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, =gText_WildPkmnPrefix
- cmp r1, 0
- beq _0814EE2A
- ldr r4, =gText_FoePkmnPrefix
-_0814EE2A:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, =gBattlePartyID
- ldr r2, =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _0814EE4C
-_0814EE3A:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814EE3A
-_0814EE4C:
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- add r0, r12
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814EE96
- .pool
-_0814EE7C:
- ldr r1, =gBattlePartyID
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814EE96:
- mov r0, sp
- bl StringGetEnd10
- b _0814F5BE
- .pool
-_0814EEA8:
- ldr r5, =gBattleScripting
- ldrb r0, [r5, 0x17]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0814EF18
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, =gText_WildPkmnPrefix
- cmp r1, 0
- beq _0814EEC6
- ldr r4, =gText_FoePkmnPrefix
-_0814EEC6:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, =gBattlePartyID
- ldr r2, =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _0814EEE8
-_0814EED6:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814EED6
-_0814EEE8:
- ldrb r0, [r2, 0x17]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- add r0, r12
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814EF32
- .pool
-_0814EF18:
- ldr r1, =gBattlePartyID
- ldrb r0, [r5, 0x17]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814EF32:
- mov r0, sp
- bl StringGetEnd10
- b _0814F5BE
- .pool
-_0814EF44:
- ldr r0, =gStringInfo
- ldr r2, [r0]
- ldrh r1, [r2]
- movs r0, 0xB1
- lsls r0, 1
- cmp r1, r0
- bhi _0814EF6A
- ldrh r1, [r2]
- b _0814EF8A
- .pool
-_0814EF5C:
- ldr r0, =gStringInfo
- ldr r2, [r0]
- ldrh r1, [r2, 0x2]
- movs r0, 0xB1
- lsls r0, 1
- cmp r1, r0
- bls _0814EF88
-_0814EF6A:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- ldr r1, =gText_UnknownMoveTypes
- adds r4, r0, r1
- b _0814F5C0
- .pool
-_0814EF88:
- ldrh r1, [r2, 0x2]
-_0814EF8A:
- movs r0, 0xD
- muls r1, r0
- ldr r0, =gMoveNames
- adds r4, r1, r0
- b _0814F5C0
- .pool
-_0814EF98:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x02000002
- ands r0, r1
- cmp r0, 0
- beq _0814F06E
- ldr r2, =gLastUsedItem
- ldrh r0, [r2]
- cmp r0, 0xAF
- bne _0814F064
- movs r0, 0x40
- ands r1, r0
- cmp r1, 0
- bne _0814F014
- ldr r0, =gBattleScripting
- adds r0, 0x25
- ldrb r0, [r0]
- cmp r0, 0
- beq _0814EFE0
- ldr r2, =gStringBank
- ldrb r1, [r2]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0814EFEC
- b _0814F05C
- .pool
-_0814EFE0:
- ldr r2, =gStringBank
- ldrb r1, [r2]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0814F05C
-_0814EFEC:
- ldrb r0, [r2]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- ldr r0, =gEnigmaBerries
- adds r1, r0
- mov r0, sp
- bl StringCopy
- ldr r1, =gText_BerrySuffix
- mov r0, sp
- bl StringAppend
- b _0814F5BE
- .pool
-_0814F014:
- ldr r2, =gLinkPlayers
- ldr r0, =gBattleScripting
- adds r0, 0x25
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, =gStringBank
- ldrb r2, [r1]
- ldrh r0, [r0, 0x18]
- cmp r0, r2
- bne _0814F05C
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- ldr r0, =gEnigmaBerries
- adds r1, r0
- mov r0, sp
- bl StringCopy
- ldr r1, =gText_BerrySuffix
- mov r0, sp
- bl StringAppend
- b _0814F5BE
- .pool
-_0814F05C:
- ldr r4, =gText_EnigmaBerry
- b _0814F5C0
- .pool
-_0814F064:
- ldrh r0, [r2]
- mov r1, sp
- bl CopyItemName
- b _0814F5BE
-_0814F06E:
- ldr r0, =gLastUsedItem
- ldrh r0, [r0]
- mov r1, sp
- bl CopyItemName
- b _0814F5BE
- .pool
-_0814F080:
- ldr r0, =gLastUsedAbility
- b _0814F0C0
- .pool
-_0814F088:
- ldr r1, =gAbilitiesPerBank
- ldr r0, =gBankAttacker
- b _0814F0BC
- .pool
-_0814F098:
- ldr r1, =gAbilitiesPerBank
- ldr r0, =gBankTarget
- b _0814F0BC
- .pool
-_0814F0A8:
- ldr r1, =gAbilitiesPerBank
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x17]
- b _0814F0BE
- .pool
-_0814F0B8:
- ldr r1, =gAbilitiesPerBank
- ldr r0, =gEffectBank
-_0814F0BC:
- ldrb r0, [r0]
-_0814F0BE:
- adds r0, r1
-_0814F0C0:
- ldrb r1, [r0]
- movs r0, 0xD
- muls r1, r0
- ldr r0, =gAbilityNames
- adds r4, r1, r0
- b _0814F5C0
- .pool
-_0814F0D8:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 20
- ands r0, r1
- cmp r0, 0
- beq _0814F0F0
- bl GetSecretBaseTrainerNameIndex
- b _0814F59C
- .pool
-_0814F0F0:
- ldr r3, =gTrainerBattleOpponent_A
- ldrh r2, [r3]
- movs r0, 0xC0
- lsls r0, 4
- cmp r2, r0
- bne _0814F10C
- bl sub_8068BB0
- lsls r0, 16
- lsrs r0, 16
- b _0814F5A0
- .pool
-_0814F10C:
- ldr r0, =0x000003fe
- cmp r2, r0
- bne _0814F11C
- bl sub_81A4D00
- b _0814F59C
- .pool
-_0814F11C:
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0814F12C
- ldrh r0, [r3]
- b _0814F598
- .pool
-_0814F12C:
- movs r0, 0x80
- lsls r0, 19
- ands r0, r1
- cmp r0, 0
- beq _0814F13E
- ldrh r0, [r3]
- bl sub_81D5530
- b _0814F59C
-_0814F13E:
- movs r0, 0x80
- lsls r0, 4
- ands r1, r0
- cmp r1, 0
- beq _0814F14E
- bl sub_8165264
- b _0814F59C
-_0814F14E:
- ldr r2, =gTrainers
- ldrh r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r1, [r0, 0x1]
- movs r0, 0xD
- b _0814F5A2
- .pool
-_0814F164:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 20
- ands r0, r1
- cmp r0, 0
- beq _0814F1AC
- movs r2, 0
- ldr r4, =gBattleResources
- ldr r3, [r4]
-_0814F178:
- mov r1, sp
- adds r0, r1, r2
- ldr r1, [r3]
- adds r1, 0x2
- adds r1, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x6
- ble _0814F178
- mov r3, sp
- adds r1, r3, r2
- movs r0, 0xFF
- strb r0, [r1]
- ldr r0, [r4]
- ldr r0, [r0]
- ldrb r1, [r0, 0xD]
- mov r0, sp
- bl ConvertInternationalString
- b _0814F5BE
- .pool
-_0814F1AC:
- ldr r3, =gTrainerBattleOpponent_A
- ldrh r2, [r3]
- movs r0, 0xC0
- lsls r0, 4
- cmp r2, r0
- bne _0814F1C4
- movs r1, 0x1
- adds r0, r7, 0
- eors r0, r1
- b _0814F284
- .pool
-_0814F1C4:
- ldr r0, =0x000003fe
- cmp r2, r0
- bne _0814F1D8
- mov r0, sp
- bl sub_81A4D50
- b _0814F5BE
- .pool
-_0814F1D8:
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0814F1E8
- ldrh r1, [r3]
- b _0814F5B8
- .pool
-_0814F1E8:
- movs r0, 0x80
- lsls r0, 19
- ands r0, r1
- cmp r0, 0
- beq _0814F1FC
- ldrh r1, [r3]
- mov r0, sp
- bl sub_81D5554
- b _0814F5BE
-_0814F1FC:
- movs r0, 0x80
- lsls r0, 4
- ands r1, r0
- cmp r1, 0
- beq _0814F20E
- mov r0, sp
- bl sub_8165284
- b _0814F5BE
-_0814F20E:
- ldrh r0, [r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTrainers + 0x4 @ name offset
- adds r4, r1, r0
- b _0814F5C0
- .pool
-_0814F220:
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- ldr r1, =gLinkPlayers + 8
- adds r4, r0, r1
- b _0814F5C0
- .pool
-_0814F230:
- ldr r4, =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x18]
- movs r0, 0x2
- b _0814F266
- .pool
-_0814F244:
- ldr r4, =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x18]
- movs r0, 0x1
- b _0814F266
- .pool
-_0814F258:
- ldr r4, =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x18]
- movs r0, 0x3
-_0814F266:
- eors r0, r1
- bl sub_806D864
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r4, 0x8
- adds r4, r1, r4
- b _0814F5C0
- .pool
-_0814F27C:
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x17]
- bl sub_806D864
-_0814F284:
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- ldr r0, =gLinkPlayers + 8
- adds r4, r1, r0
- b _0814F5C0
- .pool
-_0814F298:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- beq _0814F2B4
- ldr r4, =gLinkPlayers + 8
- b _0814F5C0
- .pool
-_0814F2B4:
- ldr r0, =gSaveBlock2Ptr
- ldr r4, [r0]
- b _0814F5C0
- .pool
-_0814F2C0:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0814F2E0
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0x2
- b _0814F55A
- .pool
-_0814F2E0:
- movs r0, 0x80
- lsls r0, 19
- ands r1, r0
- cmp r1, 0
- beq _0814F2F8
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0x4
- b _0814F584
- .pool
-_0814F2F8:
- bl sub_80B1CA4
- adds r4, r0, 0
- b _0814F5C0
-_0814F300:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0814F31C
- ldr r0, =gTrainerBattleOpponent_A
- b _0814F556
- .pool
-_0814F31C:
- movs r0, 0x80
- lsls r0, 19
- ands r1, r0
- cmp r1, 0
- bne _0814F328
- b _0814F5C0
-_0814F328:
- ldr r0, =gTrainerBattleOpponent_A
- b _0814F580
- .pool
-_0814F330:
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x17]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0814F39C
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, =gText_WildPkmnPrefix
- cmp r1, 0
- beq _0814F34E
- ldr r4, =gText_FoePkmnPrefix
-_0814F34E:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r5, =gEnemyParty
- mov r12, r5
- ldr r2, =gBattleStruct
- cmp r0, 0xFF
- beq _0814F36E
-_0814F35C:
- mov r3, r8
- adds r0, r3, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814F35C
-_0814F36E:
- ldr r0, [r2]
- adds r0, 0x52
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- add r0, r12
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814F3B4
- .pool
-_0814F39C:
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x52
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814F3B4:
- mov r0, sp
- bl StringGetEnd10
- b _0814F5BE
- .pool
-_0814F3C4:
- ldr r0, =0x000008ab
- bl FlagGet
- lsls r0, 24
- ldr r4, =gText_Someones
- cmp r0, 0
- bne _0814F3D4
- b _0814F5C0
-_0814F3D4:
- ldr r4, =gText_Lanettes
- b _0814F5C0
- .pool
-_0814F3E4:
- ldr r0, =gBankAttacker
- b _0814F3EE
- .pool
-_0814F3EC:
- ldr r0, =gBankTarget
-_0814F3EE:
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- ldr r4, =gText_FoePkmnPrefix3
- cmp r0, 0
- beq _0814F3FE
- b _0814F5C0
-_0814F3FE:
- ldr r4, =gText_AllyPkmnPrefix2
- b _0814F5C0
- .pool
-_0814F410:
- ldr r0, =gBankAttacker
- b _0814F41A
- .pool
-_0814F418:
- ldr r0, =gBankTarget
-_0814F41A:
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- ldr r4, =gText_FoePkmnPrefix2
- cmp r0, 0
- beq _0814F42A
- b _0814F5C0
-_0814F42A:
- ldr r4, =gText_AllyPkmnPrefix
- b _0814F5C0
- .pool
-_0814F43C:
- ldr r0, =gBankAttacker
- b _0814F446
- .pool
-_0814F444:
- ldr r0, =gBankTarget
-_0814F446:
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- ldr r4, =gText_FoePkmnPrefix4
- cmp r0, 0
- beq _0814F456
- b _0814F5C0
-_0814F456:
- ldr r4, =gText_AllyPkmnPrefix3
- b _0814F5C0
- .pool
-_0814F468:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0814F484
- ldr r0, =gTrainerBattleOpponent_B
- b _0814F596
- .pool
-_0814F484:
- movs r0, 0x80
- lsls r0, 19
- ands r1, r0
- cmp r1, 0
- beq _0814F49C
- ldr r0, =gTrainerBattleOpponent_B
- ldrh r0, [r0]
- bl sub_81D5530
- b _0814F59C
- .pool
-_0814F49C:
- ldr r2, =gTrainers
- ldr r0, =gTrainerBattleOpponent_B
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r1, [r0, 0x1]
- movs r0, 0xD
- b _0814F5A2
- .pool
-_0814F4B8:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0814F4D4
- ldr r0, =gTrainerBattleOpponent_B
- b _0814F5B6
- .pool
-_0814F4D4:
- movs r0, 0x80
- lsls r0, 19
- ands r1, r0
- cmp r1, 0
- beq _0814F4F0
- ldr r0, =gTrainerBattleOpponent_B
- ldrh r1, [r0]
- mov r0, sp
- bl sub_81D5554
- b _0814F5BE
- .pool
-_0814F4F0:
- ldr r0, =gTrainerBattleOpponent_B
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- ldr r1, =gTrainers + 0x4 @ name offset
- adds r4, r0, r1
- b _0814F5C0
- .pool
-_0814F508:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0814F528
- ldr r0, =gTrainerBattleOpponent_B
- ldrh r1, [r0]
- movs r0, 0x2
- b _0814F55A
- .pool
-_0814F528:
- movs r0, 0x80
- lsls r0, 19
- ands r1, r0
- cmp r1, 0
- beq _0814F540
- ldr r0, =gTrainerBattleOpponent_B
- ldrh r1, [r0]
- movs r0, 0x4
- b _0814F584
- .pool
-_0814F540:
- bl sub_80B1CE0
- adds r4, r0, 0
- b _0814F5C0
-_0814F548:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0814F574
- ldr r0, =gTrainerBattleOpponent_B
-_0814F556:
- ldrh r1, [r0]
- movs r0, 0x1
-_0814F55A:
- bl sub_81A36D0
- ldr r4, =gStringVar4
- b _0814F5C0
- .pool
-_0814F574:
- movs r0, 0x80
- lsls r0, 19
- ands r1, r0
- cmp r1, 0
- beq _0814F5C0
- ldr r0, =gTrainerBattleOpponent_B
-_0814F580:
- ldrh r1, [r0]
- movs r0, 0x3
-_0814F584:
- bl sub_81D572C
- ldr r4, =gStringVar4
- b _0814F5C0
- .pool
-_0814F594:
- ldr r0, =gPartnerTrainerId
-_0814F596:
- ldrh r0, [r0]
-_0814F598:
- bl GetFrontierOpponentClass
-_0814F59C:
- lsls r0, 24
- lsrs r0, 24
-_0814F5A0:
- movs r1, 0xD
-_0814F5A2:
- muls r1, r0
- ldr r0, =gTrainerClassNames
- adds r4, r1, r0
- b _0814F5C0
- .pool
-_0814F5B4:
- ldr r0, =gPartnerTrainerId
-_0814F5B6:
- ldrh r1, [r0]
-_0814F5B8:
- mov r0, sp
- bl GetFrontierTrainerName
-_0814F5BE:
- mov r4, sp
-_0814F5C0:
- ldrb r1, [r4]
- adds r0, r1, 0
- mov r5, r9
- ldrb r2, [r5]
- mov r3, r9
- adds r3, 0x1
- cmp r0, 0xFF
- beq _0814F5E2
-_0814F5D0:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _0814F5D0
-_0814F5E2:
- lsls r0, r2, 24
- lsrs r0, 24
- cmp r0, 0x24
- beq _0814F5F6
- cmp r0, 0x30
- beq _0814F5F6
- cmp r0, 0x25
- beq _0814F5F6
- cmp r0, 0x31
- bne _0814F61C
-_0814F5F6:
- mov r0, r8
- adds r1, r0, r6
- movs r0, 0xFC
- strb r0, [r1]
- adds r6, 0x1
- mov r2, r8
- adds r1, r2, r6
- movs r0, 0x9
- strb r0, [r1]
- adds r6, 0x1
- b _0814F61C
- .pool
-_0814F610:
- mov r3, r8
- adds r0, r3, r6
- strb r1, [r0]
- adds r6, 0x1
- mov r3, r9
- adds r3, 0x1
-_0814F61C:
- mov r9, r3
- ldrb r1, [r3]
-_0814F620:
- adds r0, r1, 0
- cmp r0, 0xFF
- beq _0814F62A
- bl _0814E7A4
-_0814F62A:
- mov r5, r8
- adds r1, r5, r6
- mov r2, r9
- ldrb r0, [r2]
- strb r0, [r1]
- adds r6, 0x1
- adds r0, r6, 0
- add sp, 0x20
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end StrCpyDecodeBattle
-
- thumb_func_start StrCpyDecodeBattleTextBuff
-StrCpyDecodeBattleTextBuff: @ 814F648
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- adds r7, r0, 0
- adds r6, r1, 0
- movs r5, 0x1
- movs r0, 0
- mov r8, r0
- movs r0, 0xFF
- strb r0, [r6]
- ldrb r0, [r7, 0x1]
- cmp r0, 0xFF
- bne _0814F666
- b _0814F8EA
-_0814F666:
- adds r0, r7, r5
- ldrb r1, [r0]
- adds r4, r0, 0
- cmp r1, 0xA
- bls _0814F672
- b _0814F8E0
-_0814F672:
- lsls r0, r1, 2
- ldr r1, =_0814F680
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0814F680:
- .4byte _0814F6AC
- .4byte _0814F6C8
- .4byte _0814F71C
- .4byte _0814F734
- .4byte _0814F744
- .4byte _0814F7BC
- .4byte _0814F7D0
- .4byte _0814F7E2
- .4byte _0814F828
- .4byte _0814F83C
- .4byte _0814F858
-_0814F6AC:
- adds r0, r5, r7
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldr r0, =gBattleStringsTable
- subs r1, 0xC
- lsls r1, 2
- adds r1, r0
- ldr r1, [r1]
- b _0814F8BE
- .pool
-_0814F6C8:
- ldrb r0, [r4, 0x1]
- cmp r0, 0x2
- beq _0814F6E4
- cmp r0, 0x2
- bgt _0814F6D8
- cmp r0, 0x1
- beq _0814F6DE
- b _0814F706
-_0814F6D8:
- cmp r0, 0x4
- beq _0814F6EC
- b _0814F706
-_0814F6DE:
- ldrb r4, [r4, 0x3]
- mov r8, r4
- b _0814F706
-_0814F6E4:
- ldrb r1, [r4, 0x3]
- ldrb r0, [r4, 0x4]
- lsls r0, 8
- b _0814F702
-_0814F6EC:
- ldrb r0, [r4, 0x3]
- mov r8, r0
- ldrb r0, [r4, 0x4]
- lsls r0, 8
- mov r1, r8
- orrs r1, r0
- ldrb r0, [r4, 0x5]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r4, 0x6]
- lsls r0, 24
-_0814F702:
- orrs r1, r0
- mov r8, r1
-_0814F706:
- adds r4, r5, r7
- ldrb r3, [r4, 0x2]
- adds r0, r6, 0
- mov r1, r8
- movs r2, 0
- bl ConvertIntToDecimalStringN
- adds r0, r5, 0x3
- ldrb r4, [r4, 0x1]
- adds r5, r0, r4
- b _0814F8E0
-_0814F71C:
- adds r0, r5, r7
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0xD
- muls r1, r0
- ldr r0, =gMoveNames
- adds r1, r0
- b _0814F8BE
- .pool
-_0814F734:
- adds r0, r5, r7
- ldrb r0, [r0, 0x1]
- lsls r1, r0, 3
- subs r1, r0
- ldr r0, =gTypeNames
- b _0814F846
- .pool
-_0814F744:
- ldrb r0, [r4, 0x1]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0814F768
- ldrb r1, [r4, 0x2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0814F7A4
- .pool
-_0814F768:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0814F788
- ldr r1, =gText_FoePkmnPrefix
- adds r0, r6, 0
- bl StringAppend
- b _0814F790
- .pool
-_0814F788:
- ldr r1, =gText_WildPkmnPrefix
- adds r0, r6, 0
- bl StringAppend
-_0814F790:
- adds r0, r5, r7
- ldrb r1, [r0, 0x2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0814F7A4:
- mov r0, sp
- bl StringGetEnd10
- adds r0, r6, 0
- mov r1, sp
- bl StringAppend
- b _0814F8DE
- .pool
-_0814F7BC:
- ldr r1, =gStatNamesTable
- adds r0, r5, r7
- ldrb r0, [r0, 0x1]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- b _0814F848
- .pool
-_0814F7D0:
- adds r0, r5, r7
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- adds r0, r6, 0
- bl GetSpeciesName
- b _0814F8DE
-_0814F7E2:
- adds r4, r5, r7
- ldrb r0, [r4, 0x1]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0814F808
- ldrb r1, [r4, 0x2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- adds r2, r6, 0
- bl GetMonData
- b _0814F81A
- .pool
-_0814F808:
- ldrb r1, [r4, 0x2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- adds r2, r6, 0
- bl GetMonData
-_0814F81A:
- adds r0, r6, 0
- bl StringGetEnd10
- b _0814F8DE
- .pool
-_0814F828:
- ldr r1, =gPokeblockWasTooXStringTable
- adds r0, r5, r7
- ldrb r0, [r0, 0x1]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- b _0814F848
- .pool
-_0814F83C:
- adds r0, r5, r7
- ldrb r1, [r0, 0x1]
- movs r0, 0xD
- muls r1, r0
- ldr r0, =gAbilityNames
-_0814F846:
- adds r1, r0
-_0814F848:
- adds r0, r6, 0
- bl StringAppend
- adds r5, 0x2
- b _0814F8E0
- .pool
-_0814F858:
- adds r0, r5, r7
- ldrb r2, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r2, r0
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x02000002
- ands r0, r1
- cmp r0, 0
- beq _0814F8D6
- cmp r2, 0xAF
- bne _0814F8CC
- ldr r2, =gLinkPlayers
- ldr r0, =gBattleScripting
- adds r0, 0x25
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, =gStringBank
- ldrb r2, [r1]
- ldrh r0, [r0, 0x18]
- cmp r0, r2
- bne _0814F8BC
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- ldr r0, =gEnigmaBerries
- adds r1, r0
- adds r0, r6, 0
- bl StringCopy
- ldr r1, =gText_BerrySuffix
- b _0814F8BE
- .pool
-_0814F8BC:
- ldr r1, =gText_EnigmaBerry
-_0814F8BE:
- adds r0, r6, 0
- bl StringAppend
- b _0814F8DE
- .pool
-_0814F8CC:
- adds r0, r2, 0
- adds r1, r6, 0
- bl CopyItemName
- b _0814F8DE
-_0814F8D6:
- adds r0, r2, 0
- adds r1, r6, 0
- bl CopyItemName
-_0814F8DE:
- adds r5, 0x3
-_0814F8E0:
- adds r0, r7, r5
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _0814F8EA
- b _0814F666
-_0814F8EA:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end StrCpyDecodeBattleTextBuff
-
- thumb_func_start sub_814F8F8
-sub_814F8F8: @ 814F8F8
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r2, 0
- ldr r5, =gStringInfo
- ldr r3, =gUnknown_085CD336
-_0814F902:
- cmp r2, 0x4
- beq _0814F918
- ldrh r1, [r3]
- cmp r1, 0
- bne _0814F90E
- adds r2, 0x1
-_0814F90E:
- ldr r0, [r5]
- adds r3, 0x2
- ldrh r0, [r0]
- cmp r1, r0
- bne _0814F902
-_0814F918:
- cmp r2, 0
- blt _0814F944
- cmp r2, 0x2
- bgt _0814F938
- ldr r1, =gText_SpaceIs
- adds r0, r4, 0
- bl StringCopy
- b _0814F944
- .pool
-_0814F938:
- cmp r2, 0x4
- bgt _0814F944
- ldr r1, =gText_ApostropheS
- adds r0, r4, 0
- bl StringCopy
-_0814F944:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_814F8F8
-
- thumb_func_start sub_814F950
-sub_814F950: @ 814F950
- push {r4,r5,lr}
- adds r3, r0, 0
- movs r4, 0
- b _0814F95A
-_0814F958:
- adds r3, 0x1
-_0814F95A:
- ldrb r0, [r3]
- cmp r0, 0xFF
- bne _0814F958
- ldr r1, =gUnknown_085CD336
- ldr r5, =gStringInfo
- movs r0, 0
- lsls r0, 1
- adds r2, r0, r1
-_0814F96A:
- cmp r4, 0x4
- beq _0814F984
- ldrh r1, [r2]
- cmp r1, 0
- bne _0814F976
- adds r4, 0x1
-_0814F976:
- ldr r0, [r5]
- adds r2, 0x2
- ldrh r0, [r0]
- cmp r1, r0
- bne _0814F96A
- cmp r4, 0x4
- bhi _0814F9E0
-_0814F984:
- lsls r0, r4, 2
- ldr r1, =_0814F99C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0814F99C:
- .4byte _0814F9B0
- .4byte _0814F9B8
- .4byte _0814F9C0
- .4byte _0814F9C8
- .4byte _0814F9D8
-_0814F9B0:
- ldr r1, =gText_ExclamationMark
- b _0814F9CA
- .pool
-_0814F9B8:
- ldr r1, =gText_ExclamationMark2
- b _0814F9CA
- .pool
-_0814F9C0:
- ldr r1, =gText_ExclamationMark3
- b _0814F9CA
- .pool
-_0814F9C8:
- ldr r1, =gText_ExclamationMark4
-_0814F9CA:
- adds r0, r3, 0
- bl StringCopy
- b _0814F9E0
- .pool
-_0814F9D8:
- ldr r1, =gText_ExclamationMark5
- adds r0, r3, 0
- bl StringCopy
-_0814F9E0:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_814F950
-
- thumb_func_start battle_show_message_maybe
-battle_show_message_maybe: @ 814F9EC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x10
- adds r4, r0, 0
- lsls r1, 24
- lsrs r7, r1, 24
- ldr r1, =gUnknown_085CD660
- ldr r0, =gBattleScripting
- adds r0, 0x24
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- mov r8, r0
- movs r0, 0x80
- ands r0, r7
- cmp r0, 0
- beq _0814FA24
- movs r0, 0x7F
- ands r7, r0
- movs r0, 0
- b _0814FA36
- .pool
-_0814FA24:
- lsls r0, r7, 1
- adds r0, r7
- lsls r0, 2
- add r0, r8
- ldrb r1, [r0]
- adds r0, r7, 0
- bl FillWindowPixelBuffer
- movs r0, 0x1
-_0814FA36:
- mov r9, r0
- str r4, [sp]
- mov r0, sp
- strb r7, [r0, 0x4]
- mov r1, sp
- lsls r6, r7, 1
- adds r3, r6, r7
- lsls r3, 2
- add r3, r8
- ldrb r0, [r3, 0x1]
- strb r0, [r1, 0x5]
- ldrb r0, [r3, 0x2]
- strb r0, [r1, 0x6]
- ldrb r0, [r3, 0x3]
- strb r0, [r1, 0x7]
- mov r0, sp
- ldrb r0, [r0, 0x6]
- strb r0, [r1, 0x8]
- mov r0, sp
- ldrb r0, [r0, 0x7]
- strb r0, [r1, 0x9]
- ldrb r0, [r3, 0x4]
- strb r0, [r1, 0xA]
- ldrb r0, [r3, 0x5]
- strb r0, [r1, 0xB]
- mov r4, sp
- ldrb r2, [r4, 0xC]
- movs r1, 0x10
- negs r1, r1
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r4, 0xC]
- mov r2, sp
- ldrb r0, [r3, 0x7]
- lsls r0, 4
- movs r5, 0xF
- strb r0, [r2, 0xC]
- ldrb r2, [r3, 0x8]
- adds r0, r5, 0
- ands r0, r2
- ldrb r2, [r4, 0xD]
- ands r1, r2
- orrs r1, r0
- strb r1, [r4, 0xD]
- mov r2, sp
- ldrb r0, [r3, 0x9]
- lsls r0, 4
- ands r1, r5
- orrs r1, r0
- strb r1, [r2, 0xD]
- mov r0, sp
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- bne _0814FAC6
- ldr r0, =gBattleScripting
- adds r0, 0x24
- ldrb r0, [r0]
- adds r1, r7, 0
- bl sub_80397C4
- adds r2, r0, 0
- mov r0, sp
- ldrb r0, [r0, 0x5]
- ldr r1, [sp]
- mov r3, sp
- ldrb r3, [r3, 0xA]
- bl GetStringCenterAlignXOffsetWithLetterSpacing
- mov r2, sp
- mov r1, sp
- strb r0, [r1, 0x8]
- strb r0, [r2, 0x6]
-_0814FAC6:
- cmp r7, 0x16
- bne _0814FAE0
- ldr r0, =gTextFlags
- ldrb r2, [r0]
- movs r1, 0x3
- negs r1, r1
- ands r1, r2
- b _0814FAE8
- .pool
-_0814FAE0:
- ldr r0, =gTextFlags
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
-_0814FAE8:
- strb r1, [r0]
- adds r3, r0, 0
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- ldr r2, =0x01000002
- ands r1, r2
- adds r2, r0, 0
- cmp r1, 0
- beq _0814FB10
- ldrb r0, [r3]
- movs r1, 0x4
- orrs r0, r1
- b _0814FB18
- .pool
-_0814FB10:
- ldrb r1, [r3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
-_0814FB18:
- strb r0, [r3]
- cmp r7, 0
- beq _0814FB22
- cmp r7, 0x16
- bne _0814FB6C
-_0814FB22:
- ldr r1, [r2]
- ldr r0, =0x02000002
- ands r0, r1
- cmp r0, 0
- beq _0814FB34
- movs r6, 0x1
- b _0814FB5C
- .pool
-_0814FB34:
- movs r0, 0x80
- lsls r0, 17
- ands r1, r0
- cmp r1, 0
- beq _0814FB54
- ldr r4, =gUnknown_085CD668
- bl sub_8185FC4
- lsls r0, 24
- lsrs r0, 24
- adds r0, r4
- ldrb r6, [r0]
- b _0814FB5C
- .pool
-_0814FB54:
- bl sav2_get_text_speed
- lsls r0, 24
- lsrs r6, r0, 24
-_0814FB5C:
- ldr r0, =gTextFlags
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- b _0814FB7E
- .pool
-_0814FB6C:
- adds r0, r6, r7
- lsls r0, 2
- add r0, r8
- ldrb r6, [r0, 0x6]
- ldrb r1, [r3]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
-_0814FB7E:
- mov r0, sp
- adds r1, r6, 0
- movs r2, 0
- bl AddTextPrinter
- mov r0, r9
- cmp r0, 0
- beq _0814FB9C
- adds r0, r7, 0
- bl PutWindowTilemap
- adds r0, r7, 0
- movs r1, 0x3
- bl CopyWindowToVram
-_0814FB9C:
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end battle_show_message_maybe
-
- thumb_func_start sub_814FBAC
-sub_814FBAC: @ 814FBAC
- push {r4,r5,lr}
- ldr r0, =gActiveBank
- ldrb r2, [r0]
- lsls r1, r2, 9
- ldr r0, =gBattleBufferA + 4
- adds r1, r0
- ldr r4, =gUnknown_08D85620
- ldr r0, =gUnknown_020244B0
- adds r2, r0
- ldrb r2, [r2]
- adds r0, r1, 0
- adds r0, 0x8
- adds r0, r2
- ldrb r0, [r0]
- adds r1, 0xC
- adds r1, r2
- ldrb r1, [r1]
- bl sub_814FC20
- lsls r0, 24
- ldr r5, =gPlttBufferUnfaded
- lsrs r0, 22
- adds r0, r4
- ldrh r1, [r0]
- adds r2, r5, 0
- adds r2, 0xB8
- strh r1, [r2]
- ldrh r0, [r0, 0x2]
- adds r5, 0xB6
- strh r0, [r5]
- ldr r4, =gPlttBufferFaded + 0xB8
- adds r0, r2, 0
- adds r1, r4, 0
- movs r2, 0x1
- bl CpuSet
- subs r4, 0x2
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x1
- bl CpuSet
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_814FBAC
-
- thumb_func_start sub_814FC20
-sub_814FC20: @ 814FC20
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- adds r3, r2, 0
- lsls r1, 24
- lsrs r0, r1, 24
- cmp r0, r2
- beq _0814FC68
- cmp r0, 0x2
- bhi _0814FC3A
- cmp r2, 0x1
- bhi _0814FC68
- b _0814FC42
-_0814FC3A:
- cmp r0, 0x7
- bhi _0814FC4C
- cmp r2, 0x2
- bhi _0814FC68
-_0814FC42:
- movs r0, 0x2
- subs r0, r2
- lsls r0, 24
- lsrs r0, 24
- b _0814FC6A
-_0814FC4C:
- cmp r2, 0
- bne _0814FC54
- movs r0, 0x2
- b _0814FC6A
-_0814FC54:
- lsrs r0, r1, 26
- cmp r2, r0
- bhi _0814FC5E
- movs r0, 0x1
- b _0814FC6A
-_0814FC5E:
- lsrs r0, r1, 25
- cmp r3, r0
- bhi _0814FC68
- movs r0, 0
- b _0814FC6A
-_0814FC68:
- movs r0, 0x3
-_0814FC6A:
- pop {r1}
- bx r1
- thumb_func_end sub_814FC20
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_setup.s b/asm/battle_setup.s
index 752e4adf1..5c7196579 100644
--- a/asm/battle_setup.s
+++ b/asm/battle_setup.s
@@ -41,7 +41,7 @@ _080B062E:
cmp r0, 0x1
bne _080B0652
bl overworld_free_bg_tilemaps
- ldr r0, =sub_8036760
+ ldr r0, =CB2_InitBattle
bl SetMainCallback2
bl prev_quest_postbuffer_cursor_backup_reset
bl overworld_poison_timer_set
@@ -299,8 +299,8 @@ sub_80B086C: @ 80B086C
.pool
thumb_func_end sub_80B086C
- thumb_func_start sub_80B08A8
-sub_80B08A8: @ 80B08A8
+ thumb_func_start BattleSetup_StartScriptedWildBattle
+BattleSetup_StartScriptedWildBattle: @ 80B08A8
push {lr}
bl ScriptContext2_Enable
ldr r1, =gMain
@@ -323,7 +323,7 @@ sub_80B08A8: @ 80B08A8
pop {r0}
bx r0
.pool
- thumb_func_end sub_80B08A8
+ thumb_func_end BattleSetup_StartScriptedWildBattle
thumb_func_start sub_80B08EC
sub_80B08EC: @ 80B08EC
@@ -638,8 +638,8 @@ _080B0BC6:
.pool
thumb_func_end sub_80B0B6C
- thumb_func_start sub_80B0BD0
-sub_80B0BD0: @ 80B0BD0
+ thumb_func_start BattleSetup_GetTerrainId
+BattleSetup_GetTerrainId: @ 80B0BD0
push {r4,r5,lr}
sub sp, 0x4
mov r4, sp
@@ -704,7 +704,7 @@ _080B0C64:
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8089588
+ bl MetatileBehavior_IsMB_0B
lsls r0, 24
cmp r0, 0
beq _080B0C78
@@ -734,7 +734,7 @@ _080B0C9C:
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_808962C
+ bl MetatileBehavior_IsDeepOrOceanWater
lsls r0, 24
cmp r0, 0
bne _080B0CF2
@@ -744,7 +744,7 @@ _080B0C9C:
cmp r0, 0
bne _080B0CE0
adds r0, r4, 0
- bl sub_808959C
+ bl MetatileBehavior_IsMountain
lsls r0, 24
cmp r0, 0
beq _080B0CC8
@@ -757,7 +757,7 @@ _080B0CC8:
cmp r0, 0
beq _080B0CF6
adds r0, r4, 0
- bl sub_80894D4
+ bl MetatileBehavior_GetBridgeSth
lsls r0, 24
cmp r0, 0
beq _080B0CE4
@@ -766,7 +766,7 @@ _080B0CE0:
b _080B0D1A
_080B0CE4:
adds r0, r4, 0
- bl sub_80894AC
+ bl MetatileBehavior_IsBridge
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -798,7 +798,7 @@ _080B0D1A:
pop {r4,r5}
pop {r1}
bx r1
- thumb_func_end sub_80B0BD0
+ thumb_func_end BattleSetup_GetTerrainId
thumb_func_start sub_80B0D24
sub_80B0D24: @ 80B0D24
@@ -1357,7 +1357,7 @@ sub_80B1158: @ 80B1158
movs r1, 0x5
movs r2, 0
movs r3, 0
- bl sub_80F9244
+ bl ScriptGiveMon
bl ResetTasks
bl PlayBattleBGM
ldr r0, =sub_80B11A8
@@ -1387,7 +1387,7 @@ sub_80B11A8: @ 80B11A8
ldr r0, =sub_80B1204
str r0, [r1, 0x8]
bl FreeAllWindowBuffers
- ldr r0, =sub_8036760
+ ldr r0, =CB2_InitBattle
bl SetMainCallback2
bl prev_quest_postbuffer_cursor_backup_reset
bl overworld_poison_timer_set
@@ -1686,9 +1686,9 @@ _080B141A:
.pool
thumb_func_end battle_80801F0
- thumb_func_start TrainerBattleConfigure
-@ u8 *TrainerBattleConfigure(u8 *args)
-TrainerBattleConfigure: @ 80B1430
+ thumb_func_start BattleSetup_ConfigureTrainerBattle
+@ u8 *BattleSetup_ConfigureTrainerBattle(u8 *args)
+BattleSetup_ConfigureTrainerBattle: @ 80B1430
push {r4,r5,lr}
adds r5, r0, 0
bl InitTrainerBattleVariables
@@ -1872,7 +1872,7 @@ _080B161E:
pop {r1}
bx r1
.pool
- thumb_func_end TrainerBattleConfigure
+ thumb_func_end BattleSetup_ConfigureTrainerBattle
thumb_func_start SingleTrainerWantsBattle
@ void SingleTrainerWantsBattle(u8 trainerFieldObjectId, u8 *trainerScript)
@@ -1892,7 +1892,7 @@ SingleTrainerWantsBattle: @ 80B162C
strh r0, [r4]
adds r1, 0x1
adds r0, r1, 0
- bl TrainerBattleConfigure
+ bl BattleSetup_ConfigureTrainerBattle
ldr r0, =gUnknown_08271354
bl ScriptContext1_SetupScript
bl ScriptContext2_Enable
@@ -1920,7 +1920,7 @@ TwoTrainersWantBattle: @ 80B1670
strh r0, [r4]
adds r1, 0x1
adds r0, r1, 0
- bl TrainerBattleConfigure
+ bl BattleSetup_ConfigureTrainerBattle
pop {r4}
pop {r0}
bx r0
@@ -2056,8 +2056,8 @@ sub_80B178C: @ 80B178C
bx r0
thumb_func_end sub_80B178C
- thumb_func_start trainer_flag_check
-trainer_flag_check: @ 80B17A0
+ thumb_func_start HasTrainerAlreadyBeenFought
+HasTrainerAlreadyBeenFought: @ 80B17A0
push {lr}
lsls r0, 16
movs r1, 0xA0
@@ -2069,7 +2069,7 @@ trainer_flag_check: @ 80B17A0
lsrs r0, 24
pop {r1}
bx r1
- thumb_func_end trainer_flag_check
+ thumb_func_end HasTrainerAlreadyBeenFought
thumb_func_start trainer_flag_set
trainer_flag_set: @ 80B17B8
@@ -2092,13 +2092,13 @@ trainer_flag_clear: @ 80B17CC
lsls r1, 19
adds r0, r1
lsrs r0, 16
- bl FlagReset
+ bl FlagClear
pop {r0}
bx r0
thumb_func_end trainer_flag_clear
- thumb_func_start sub_80B17E0
-sub_80B17E0: @ 80B17E0
+ thumb_func_start BattleSetup_StartTrainerBattle
+BattleSetup_StartTrainerBattle: @ 80B17E0
push {r4,lr}
ldr r0, =gUnknown_030060A8
ldrb r0, [r0]
@@ -2217,7 +2217,7 @@ _080B190C:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_80B17E0
+ thumb_func_end BattleSetup_StartTrainerBattle
thumb_func_start sub_80B1918
sub_80B1918: @ 80B1918
@@ -2407,14 +2407,14 @@ _080B1AD8:
.pool
_080B1AEC:
bl sub_80B1C7C
- bl box_related_two__2
+ bl ShowFieldMessage
_080B1AF4:
pop {r0}
bx r0
thumb_func_end sub_80B1A14
- thumb_func_start sub_80B1AF8
-sub_80B1AF8: @ 80B1AF8
+ thumb_func_start BattleSetup_GetScriptAddrAfterBattle
+BattleSetup_GetScriptAddrAfterBattle: @ 80B1AF8
push {lr}
ldr r0, =gUnknown_02038BEC
ldr r0, [r0]
@@ -2425,10 +2425,10 @@ _080B1B04:
pop {r1}
bx r1
.pool
- thumb_func_end sub_80B1AF8
+ thumb_func_end BattleSetup_GetScriptAddrAfterBattle
- thumb_func_start sub_80B1B10
-sub_80B1B10: @ 80B1B10
+ thumb_func_start BattleSetup_GetTrainerPostBattleScript
+BattleSetup_GetTrainerPostBattleScript: @ 80B1B10
push {lr}
ldr r1, =gUnknown_02038BF8
ldrb r2, [r1]
@@ -2462,13 +2462,13 @@ _080B1B56:
pop {r1}
bx r1
.pool
- thumb_func_end sub_80B1B10
+ thumb_func_end BattleSetup_GetTrainerPostBattleScript
thumb_func_start special_trainer_unable_to_battle
special_trainer_unable_to_battle: @ 80B1B60
push {lr}
bl sub_80B1D18
- bl box_related_two__2
+ bl ShowFieldMessage
pop {r0}
bx r0
thumb_func_end special_trainer_unable_to_battle
@@ -2617,8 +2617,8 @@ _080B1C96:
.pool
thumb_func_end sub_80B1C7C
- thumb_func_start sub_80B1CA4
-sub_80B1CA4: @ 80B1CA4
+ thumb_func_start GetTrainer1LoseText
+GetTrainer1LoseText: @ 80B1CA4
push {r4,lr}
ldr r0, =gTrainerBattleOpponent_A
ldrh r1, [r0]
@@ -2643,10 +2643,10 @@ _080B1CC0:
pop {r1}
bx r1
.pool
- thumb_func_end sub_80B1CA4
+ thumb_func_end GetTrainer1LoseText
- thumb_func_start sub_80B1CE0
-sub_80B1CE0: @ 80B1CE0
+ thumb_func_start GetTrainer2LoseText
+GetTrainer2LoseText: @ 80B1CE0
push {r4,lr}
ldr r4, =gStringVar4
ldr r0, =gUnknown_02038BE0
@@ -2660,7 +2660,7 @@ sub_80B1CE0: @ 80B1CE0
pop {r1}
bx r1
.pool
- thumb_func_end sub_80B1CE0
+ thumb_func_end GetTrainer2LoseText
thumb_func_start sub_80B1D04
sub_80B1D04: @ 80B1D04
@@ -2796,7 +2796,7 @@ _080B1DCE:
ldrh r0, [r4]
cmp r0, 0
beq _080B1DE2
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
cmp r0, 0
bne _080B1DCA
@@ -2895,7 +2895,7 @@ sub_80B1E94: @ 80B1E94
lsls r0, r4, 4
adds r0, r5
ldrh r0, [r0]
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3076,7 +3076,7 @@ _080B1FE2:
ldrh r0, [r4]
cmp r0, 0
beq _080B1FCA
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
cmp r0, 0
beq _080B1FD4
@@ -3127,7 +3127,7 @@ _080B203A:
ldrh r0, [r4]
cmp r0, 0
beq _080B201E
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
cmp r0, 0
beq _080B2028
@@ -3233,7 +3233,7 @@ sub_80B20F4: @ 80B20F4
lsls r0, r1, 4
adds r0, r4
ldrh r0, [r0, 0x2]
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
cmp r0, 0
beq _080B211E
@@ -3509,7 +3509,7 @@ sub_80B2318: @ 80B2318
lsrs r4, r0, 12
adds r6, r4, r7
ldrh r0, [r6]
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3527,7 +3527,7 @@ _080B2338:
adds r4, r6, 0x2
_080B2346:
ldrh r0, [r4]
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
cmp r0, 0
beq _080B2360
diff --git a/asm/battle_tower.s b/asm/battle_tower.s
index 0782b8609..74c84e34c 100755
--- a/asm/battle_tower.s
+++ b/asm/battle_tower.s
@@ -1795,7 +1795,7 @@ _08162ED8:
adds r0, 0xE4
ldrb r2, [r0]
adds r0, r6, 0
- bl sub_81DB5E8
+ bl TVShowConvertInternationalString
b _08162F62
.pool
_08162F00:
@@ -1835,7 +1835,7 @@ _08162F3E:
adds r1, r0, 0
adds r0, r6, 0
adds r2, r4, 0
- bl sub_81DB5E8
+ bl TVShowConvertInternationalString
b _08162F62
.pool
_08162F5C:
@@ -3194,7 +3194,7 @@ sub_8163A8C: @ 8163A8C
ldr r0, =gMain
ldr r1, =sub_81639AC
str r1, [r0, 0x8]
- ldr r0, =sub_8036760
+ ldr r0, =CB2_InitBattle
bl SetMainCallback2
adds r0, r4, 0
bl DestroyTask
@@ -3548,11 +3548,11 @@ _08163E2C:
movs r0, 0
strb r0, [r4]
ldr r0, =gUnknown_08224158
- bl TrainerBattleConfigure
+ bl BattleSetup_ConfigureTrainerBattle
movs r0, 0x1
strb r0, [r4]
ldr r0, =gUnknown_08224167
- bl TrainerBattleConfigure
+ bl BattleSetup_ConfigureTrainerBattle
ldr r0, =gPartnerTrainerId
strh r5, [r0]
ldr r0, =sub_8163A8C
@@ -4364,7 +4364,7 @@ _081644E0:
strb r0, [r1, 0x1]
movs r0, 0xD8
lsls r0, 2
- bl FlagReset
+ bl FlagClear
ldr r0, [r6]
adds r0, r5
ldrh r0, [r0]
@@ -4525,7 +4525,7 @@ _08164660:
adds r1, 0xC0
strb r0, [r1, 0x1]
ldr r0, =0x00000361
- bl FlagReset
+ bl FlagClear
ldr r0, [r6]
adds r0, r5
ldrh r0, [r0]
@@ -5016,7 +5016,7 @@ _08164B04:
lsls r0, 2
adds r0, r1
ldr r0, [r0]
- bl box_related_two__2
+ bl ShowFieldMessage
b _08164B54
.pool
_08164B28:
@@ -5040,7 +5040,7 @@ _08164B28:
lsls r1, 2
adds r1, r0
ldr r0, [r1]
- bl box_related_two__2
+ bl ShowFieldMessage
_08164B54:
add sp, 0x8
pop {r3-r5}
@@ -5125,21 +5125,21 @@ _08164C18:
lsrs r0, 24
mov r1, sp
movs r2, 0x4
- bl link_0800A448
+ bl SendBlock
ldr r1, =gScriptResult
movs r0, 0x1
b _08164DB4
.pool
_08164C3C:
- bl sub_800A550
+ bl GetBlockReceivedStatus
movs r1, 0x3
ands r1, r0
cmp r1, 0x3
beq _08164C4A
b _08164DB6
_08164C4A:
- bl sub_800A5B4
- ldr r1, =gUnknown_020223C4
+ bl ResetBlockReceivedFlags
+ ldr r1, =gBlockRecvBuffer
movs r0, 0x80
lsls r0, 1
adds r2, r1, r0
@@ -5221,23 +5221,23 @@ _08164CE0:
ldr r3, =0x00000cb4
adds r1, r3
movs r2, 0x28
- bl link_0800A448
+ bl SendBlock
ldr r1, =gScriptResult
movs r0, 0x3
b _08164DB4
.pool
_08164D14:
- bl sub_800A550
+ bl GetBlockReceivedStatus
movs r1, 0x3
ands r1, r0
cmp r1, 0x3
bne _08164DB6
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
ldr r4, =gSaveBlock2Ptr
ldr r0, [r4]
ldr r5, =0x00000cb4
adds r0, r5
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
movs r2, 0x28
bl memcpy
ldr r2, =gTrainerBattleOpponent_A
@@ -5260,7 +5260,7 @@ _08164D14:
ldrh r0, [r4]
movs r1, 0x1
bl sub_8162614
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08164DB0
@@ -5279,7 +5279,7 @@ _08164D98:
b _08164DB4
.pool
_08164DA8:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08164DB6
@@ -5673,7 +5673,7 @@ _0816508C:
bl SetMonData
ldr r0, [r7]
adds r0, r4
- bl sub_80EE5A4
+ bl GetRibbonCount
strb r0, [r5, 0x1]
_081650D4:
adds r5, 0x4
@@ -5857,8 +5857,8 @@ sub_8165244: @ 8165244
.pool
thumb_func_end sub_8165244
- thumb_func_start sub_8165264
-sub_8165264: @ 8165264
+ thumb_func_start GetEreaderTrainerClassId
+GetEreaderTrainerClassId: @ 8165264
ldr r1, =gTrainerClassToNameIndex
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
@@ -5869,10 +5869,10 @@ sub_8165264: @ 8165264
ldrb r0, [r0]
bx lr
.pool
- thumb_func_end sub_8165264
+ thumb_func_end GetEreaderTrainerClassId
- thumb_func_start sub_8165284
-sub_8165284: @ 8165284
+ thumb_func_start GetEreaderTrainerName
+GetEreaderTrainerName: @ 8165284
push {r4,lr}
adds r3, r0, 0
movs r2, 0
@@ -5896,7 +5896,7 @@ _08165294:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8165284
+ thumb_func_end GetEreaderTrainerName
thumb_func_start sub_81652B4
sub_81652B4: @ 81652B4
@@ -6056,7 +6056,7 @@ _081653E0:
bne _081653F8
bl sub_80F01B8
movs r0, 0x77
- bl FlagReset
+ bl FlagClear
_081653F8:
pop {r0}
bx r0
diff --git a/asm/battle_transition.s b/asm/battle_transition.s
index 6406a3f24..2f9637594 100644
--- a/asm/battle_transition.s
+++ b/asm/battle_transition.s
@@ -2151,7 +2151,7 @@ sub_8147018: @ 8147018
ands r5, r0
movs r1, 0
mov r8, r4
- ldr r6, =gFieldEffectSpawnParams
+ ldr r6, =gFieldEffectArguments
_08147046:
lsls r5, 16
asrs r5, 16
@@ -2221,7 +2221,7 @@ _081470C4:
sub_81470D0: @ 81470D0
push {r4,r5,lr}
ldr r0, =gUnknown_085C8E68
- ldr r5, =gFieldEffectSpawnParams
+ ldr r5, =gFieldEffectArguments
movs r2, 0
ldrsh r1, [r5, r2]
movs r3, 0x4
@@ -9513,11 +9513,11 @@ sub_814ABE4: @ 814ABE4
strh r0, [r6, 0xC]
cmp r0, 0
bne _0814AC24
- ldr r5, =gUnknown_02022E14
+ ldr r5, =gBattle_BG0_X
ldrh r1, [r5]
movs r0, 0x12
bl SetGpuReg
- ldr r4, =gUnknown_02022E16
+ ldr r4, =gBattle_BG0_Y
ldrh r1, [r4]
movs r0, 0x10
bl SetGpuReg
@@ -9562,9 +9562,9 @@ sub_814AC38: @ 814AC38
movs r1, 0xF0
movs r2, 0x20
bl LoadPalette
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r5, [r0]
- ldr r4, =gUnknown_02022E16
+ ldr r4, =gBattle_BG0_Y
strh r5, [r4]
movs r0, 0x12
movs r1, 0
@@ -9781,10 +9781,10 @@ sub_814AE40: @ 814AE40
push {r4,r5,lr}
sub sp, 0x8
adds r5, r0, 0
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r4, =gUnknown_02022E16
+ ldr r4, =gBattle_BG0_Y
strh r1, [r4]
movs r0, 0x12
movs r1, 0
diff --git a/asm/berry_blender.s b/asm/berry_blender.s
index 0599fa153..6d18ab7cb 100644
--- a/asm/berry_blender.s
+++ b/asm/berry_blender.s
@@ -512,7 +512,7 @@ _0807FBBE:
adds r4, 0x1
cmp r4, 0x3
ble _0807FBBE
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0807FC14
@@ -1116,7 +1116,7 @@ _08080126:
adds r5, 0x1
cmp r5, 0x3
ble _08080126
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0808016A
@@ -1213,7 +1213,7 @@ _08080248:
bne _08080254
b _08080546
_08080254:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
bl GetMultiplayerId
lsls r0, 24
cmp r0, 0
@@ -1239,7 +1239,7 @@ _08080282:
movs r0, 0x4
movs r1, 0x1
bl sub_8197DF8
- bl sub_800A550
+ bl GetBlockReceivedStatus
adds r4, r0, 0
bl sub_800A9D8
lsls r4, 24
@@ -1260,7 +1260,7 @@ _080802AC:
adds r0, r4, r0
adds r0, r6
lsls r1, r5, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x10
bl memcpy
@@ -1275,12 +1275,12 @@ _080802AC:
strh r0, [r1]
adds r5, 0x1
_080802D4:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
blt _080802AC
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
b _080804F8
.pool
_080802EC:
@@ -1295,7 +1295,7 @@ _080802EC:
bl sub_807FD90
b _08080336
_08080302:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
ldr r2, =gUnknown_020322A4
ldr r1, [r2]
adds r1, 0x7C
@@ -1876,7 +1876,7 @@ sub_80807BC: @ 80807BC
sub sp, 0x1C
movs r0, 0
mov r10, r0
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080807DE
@@ -3330,7 +3330,7 @@ sub_80814B0: @ 80814B0
lsrs r1, 16
lsls r2, 16
lsrs r2, 16
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080814E4
@@ -3633,7 +3633,7 @@ sub_8081744: @ 8081744
push {r4-r6,lr}
movs r4, 0
movs r6, 0
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0808175A
@@ -4702,7 +4702,7 @@ _08081F7C:
sub_8081F94: @ 8081F94
push {lr}
adds r1, r0, 0
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08081FB8
@@ -4810,7 +4810,7 @@ _08082078:
adds r1, 0x4C
movs r0, 0
strh r0, [r1]
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080820B0
@@ -4848,7 +4848,7 @@ _080820E0:
bne _080820EC
b _0808249E
_080820EC:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0808218C
@@ -4911,7 +4911,7 @@ _08082132:
adds r1, r4
movs r0, 0
movs r2, 0x20
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
bne _08082172
@@ -4941,7 +4941,7 @@ _0808218C:
strh r2, [r0]
movs r0, 0
movs r2, 0x28
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
bne _080821BE
@@ -4951,20 +4951,20 @@ _080821BE:
b _0808245C
.pool
_080821C8:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
cmp r0, 0
bne _080821D4
b _0808249E
_080821D4:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
ldr r5, =gUnknown_020322A4
ldr r1, [r5]
adds r1, 0x63
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08082254
@@ -4972,7 +4972,7 @@ _080821D4:
ldrb r0, [r0]
cmp r0, 0
beq _08082254
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
ldr r3, [r5]
ldrh r0, [r2, 0x4]
adds r1, r3, 0
@@ -5016,7 +5016,7 @@ _08082220:
b _0808249E
.pool
_08082254:
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
ldr r0, =gUnknown_020322A4
ldr r3, [r0]
ldrh r0, [r2, 0x4]
@@ -5748,7 +5748,7 @@ _080828BC:
strb r0, [r1]
b _080828DC
_080828C6:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r4, [r0]
cmp r4, 0
bne _080828DC
@@ -5966,7 +5966,7 @@ _08082A92:
thumb_func_start sub_8082AD4
sub_8082AD4: @ 8082AD4
push {r4-r7,lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08082AE0
@@ -6091,7 +6091,7 @@ _08082BEE:
lsls r0, 24
lsrs r5, r0, 24
_08082BF4:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -6104,7 +6104,7 @@ _08082C0C:
lsls r0, 24
lsrs r5, r0, 24
_08082C12:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -6118,7 +6118,7 @@ _08082C12:
cmp r0, 0
bne _08082C0C
_08082C2E:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -6132,7 +6132,7 @@ _08082C48:
lsls r0, 24
lsrs r5, r0, 24
_08082C4E:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -6149,7 +6149,7 @@ _08082C6A:
ldr r4, =gUnknown_03003110
adds r0, r4, 0
bl sub_8081F94
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -6242,7 +6242,7 @@ sub_8082D18: @ 8082D18
sub_8082D28: @ 8082D28
push {r4,lr}
movs r1, 0
- ldr r4, =gUnknown_03003124
+ ldr r4, =gReceivedRemoteLinkPlayers
ldrb r0, [r4]
cmp r0, 0
beq _08082D3C
@@ -7909,7 +7909,7 @@ _08083A80:
cmp r5, r0
bcc _08083A80
_08083A9E:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08083AB4
@@ -8514,7 +8514,7 @@ sub_8083F94: @ 8083F94
strb r0, [r7, 0xC]
movs r0, 0xFF
strb r0, [r7]
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080840C4
@@ -8568,7 +8568,7 @@ sub_8083F94: @ 8083F94
ldrb r0, [r5, 0x12]
str r0, [sp]
adds r0, r7, 0
- bl sub_80ECC04
+ bl Put3CheersForPokeblocksOnTheAir
lsls r0, 24
cmp r0, 0
bne _080840BA
@@ -8617,7 +8617,7 @@ _08084058:
ldrb r0, [r5, 0x12]
str r0, [sp]
adds r0, r7, 0
- bl sub_80ECC04
+ bl Put3CheersForPokeblocksOnTheAir
lsls r0, 24
cmp r0, 0
beq _080840C4
diff --git a/asm/bike.s b/asm/bike.s
index 7ea4a4598..b5d40a312 100644
--- a/asm/bike.s
+++ b/asm/bike.s
@@ -2013,9 +2013,9 @@ _0811A0B0:
bl SetPlayerAvatarTransitionFlags
ldr r4, =0x00000193
adds r0, r4, 0
- bl sav1_set_battle_music_maybe
+ bl Overworld_SetSavedMusic
adds r0, r4, 0
- bl sub_80858C4
+ bl Overworld_ChangeMusicTo
_0811A0C4:
pop {r4}
pop {r0}
diff --git a/asm/braille_puzzles.s b/asm/braille_puzzles.s
deleted file mode 100644
index 095b1b793..000000000
--- a/asm/braille_puzzles.s
+++ /dev/null
@@ -1,627 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_81795E8
-sub_81795E8: @ 81795E8
- push {lr}
- ldr r0, =0x000008af
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08179634
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- ldrh r1, [r2, 0x4]
- ldr r0, =0x00004718
- cmp r1, r0
- bne _08179634
- ldr r1, [r2]
- ldr r0, =0x0003000a
- cmp r1, r0
- beq _08179616
- ldr r0, =0x00030009
- cmp r1, r0
- beq _08179616
- ldr r0, =0x0003000b
- cmp r1, r0
- bne _08179634
-_08179616:
- movs r0, 0x1
- b _08179636
- .pool
-_08179634:
- movs r0, 0
-_08179636:
- pop {r1}
- bx r1
- thumb_func_end sub_81795E8
-
- thumb_func_start sub_817963C
-sub_817963C: @ 817963C
- push {lr}
- ldr r2, =0x0000022a
- movs r0, 0x10
- movs r1, 0x8
- bl MapGridSetMetatileIdAt
- ldr r2, =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, =0x00000e32
- movs r0, 0x10
- movs r1, 0x9
- bl MapGridSetMetatileIdAt
- ldr r2, =0x00000233
- movs r0, 0x11
- movs r1, 0x9
- bl MapGridSetMetatileIdAt
- ldr r2, =0x00000e34
- movs r0, 0x12
- movs r1, 0x9
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- movs r0, 0x14
- bl PlaySE
- ldr r0, =0x000008af
- bl FlagSet
- bl ScriptContext2_Disable
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817963C
-
- thumb_func_start sub_81796AC
-sub_81796AC: @ 81796AC
- push {r4,lr}
- ldr r4, =gPlayerParty
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- movs r1, 0x9D
- lsls r1, 1
- cmp r0, r1
- bne _081796F4
- bl CalculatePlayerPartyCount
- ldr r0, =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
- ldr r1, =0x0000017d
- cmp r0, r1
- bne _081796F4
- movs r0, 0x1
- b _081796F6
- .pool
-_081796F4:
- movs r0, 0
-_081796F6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81796AC
-
- thumb_func_start nullsub_84
-nullsub_84: @ 81796FC
- bx lr
- thumb_func_end nullsub_84
-
- thumb_func_start sub_8179700
-sub_8179700: @ 8179700
- push {lr}
- ldr r0, =sub_8179778
- movs r1, 0x9
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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
- .pool
- thumb_func_end sub_8179700
-
- thumb_func_start sub_817973C
-sub_817973C: @ 817973C
- push {lr}
- ldr r0, =sub_8179778
- movs r1, 0x9
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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
- .pool
- thumb_func_end sub_817973C
-
- thumb_func_start sub_8179778
-sub_8179778: @ 8179778
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =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 _081797D0
- 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 _081797D0
- adds r0, r5, 0
- bl DestroyTask
- bl EnableBothScriptContexts
- bl InstallCameraPanAheadCallback
-_081797D0:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8179778
-
- thumb_func_start sub_81797DC
-sub_81797DC: @ 81797DC
- push {lr}
- movs r0, 0x8B
- lsls r0, 4
- bl FlagGet
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _0817982C
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
- ldrh r1, [r3, 0x4]
- movs r0, 0xC3
- lsls r0, 3
- cmp r1, r0
- bne _0817982C
- ldr r1, [r3]
- ldr r0, =0x00170006
- cmp r1, r0
- beq _08179810
- ldr r0, =0x00170005
- cmp r1, r0
- beq _08179810
- ldr r0, =0x00170007
- cmp r1, r0
- bne _0817982C
-_08179810:
- ldr r0, =gUnknown_0203BD14
- strb r2, [r0]
- movs r0, 0x1
- b _0817982E
- .pool
-_0817982C:
- movs r0, 0
-_0817982E:
- pop {r1}
- bx r1
- thumb_func_end sub_81797DC
-
- thumb_func_start sub_8179834
-sub_8179834: @ 8179834
- push {lr}
- bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
- lsls r0, 24
- lsrs r0, 24
- str r0, [r1]
- movs r0, 0x3C
- bl FieldEffectStart
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8179834
-
- thumb_func_start sub_8179850
-sub_8179850: @ 8179850
- push {lr}
- movs r0, 0x3C
- bl FieldEffectActiveListRemove
- bl sub_8179860
- pop {r0}
- bx r0
- thumb_func_end sub_8179850
-
- thumb_func_start sub_8179860
-sub_8179860: @ 8179860
- push {lr}
- ldr r2, =0x0000022a
- movs r0, 0xE
- movs r1, 0x1A
- bl MapGridSetMetatileIdAt
- ldr r2, =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, =0x00000e32
- movs r0, 0xE
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- ldr r2, =0x00000233
- movs r0, 0xF
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- ldr r2, =0x00000e34
- movs r0, 0x10
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- movs r0, 0x14
- bl PlaySE
- movs r0, 0x8B
- lsls r0, 4
- bl FlagSet
- bl ScriptContext2_Disable
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8179860
-
- thumb_func_start sub_81798D0
-sub_81798D0: @ 81798D0
- push {lr}
- ldr r0, =0x000008b2
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08179910
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- ldrh r1, [r2, 0x4]
- ldr r0, =0x00004418
- cmp r1, r0
- bne _08179910
- ldr r1, [r2]
- ldr r0, =0x00190008
- cmp r1, r0
- bne _08179910
- ldr r1, =gUnknown_0203BD14
- movs r0, 0x1
- strb r0, [r1]
- movs r0, 0x1
- b _08179912
- .pool
-_08179910:
- movs r0, 0
-_08179912:
- pop {r1}
- bx r1
- thumb_func_end sub_81798D0
-
- thumb_func_start sub_8179918
-sub_8179918: @ 8179918
- push {lr}
- bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
- lsls r0, 24
- lsrs r0, 24
- str r0, [r1]
- movs r0, 0x3C
- bl FieldEffectStart
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8179918
-
- thumb_func_start sub_8179934
-sub_8179934: @ 8179934
- push {lr}
- movs r0, 0x3C
- bl FieldEffectActiveListRemove
- bl sub_8179944
- pop {r0}
- bx r0
- thumb_func_end sub_8179934
-
- thumb_func_start sub_8179944
-sub_8179944: @ 8179944
- push {lr}
- ldr r2, =0x0000022a
- movs r0, 0xE
- movs r1, 0x1A
- bl MapGridSetMetatileIdAt
- ldr r2, =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, =0x00000e32
- movs r0, 0xE
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- ldr r2, =0x00000233
- movs r0, 0xF
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- ldr r2, =0x00000e34
- movs r0, 0x10
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- movs r0, 0x14
- bl PlaySE
- ldr r0, =0x000008b2
- bl FlagSet
- bl ScriptContext2_Disable
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8179944
-
- thumb_func_start nullsub_64
-nullsub_64: @ 81799B4
- bx lr
- thumb_func_end nullsub_64
-
- thumb_func_start sub_81799B8
-sub_81799B8: @ 81799B8
- push {lr}
- bl oei_task_add
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gUnknown_0203BD14
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _081799E4
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- ldr r2, =sub_8179934
- b _081799F0
- .pool
-_081799E4:
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- ldr r2, =sub_8179850
-_081799F0:
- lsrs r1, r2, 16
- strh r1, [r0, 0x18]
- strh r2, [r0, 0x1A]
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81799B8
-
- thumb_func_start sub_8179A04
-sub_8179A04: @ 8179A04
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldrh r1, [r0, 0x4]
- ldr r0, =0x00004318
- cmp r1, r0
- beq _08179A1A
- b _08179B5A
-_08179A1A:
- ldr r0, =0x000008b1
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08179A28
- b _08179B5A
-_08179A28:
- movs r0, 0x2
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08179A36
- b _08179B5A
-_08179A36:
- movs r0, 0x3
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08179A58
- b _08179B5A
- .pool
-_08179A54:
- movs r0, 0x1
- b _08179B5C
-_08179A58:
- movs r5, 0
- mov r8, r4
- ldr r4, =gUnknown_085EFE74
- adds r0, r4, 0x1
- mov r12, r0
- ldr r6, =0x0000403b
- ldr r1, =0x0000403c
- mov r9, r1
-_08179A68:
- lsls r0, r5, 1
- adds r1, r0, r4
- add r0, r12
- ldrb r3, [r0]
- mov r7, r8
- ldr r2, [r7]
- movs r7, 0
- ldrsh r0, [r2, r7]
- ldrb r1, [r1]
- cmp r0, r1
- bne _08179B44
- movs r1, 0x2
- ldrsh r0, [r2, r1]
- cmp r0, r3
- bne _08179B44
- cmp r5, 0xF
- bhi _08179AB0
- adds r0, r6, 0
- bl VarGet
- lsls r0, 16
- movs r1, 0x80
- lsls r1, 9
- lsls r1, r5
- orrs r1, r0
- lsrs r1, 16
- adds r0, r6, 0
- bl VarSet
- b _08179AF0
- .pool
-_08179AB0:
- cmp r5, 0x1F
- bhi _08179AD2
- mov r0, r9
- bl VarGet
- lsls r0, 16
- adds r2, r5, 0
- subs r2, 0x10
- movs r1, 0x80
- lsls r1, 9
- lsls r1, r2
- orrs r1, r0
- lsrs r1, 16
- mov r0, r9
- bl VarSet
- b _08179AF0
-_08179AD2:
- ldr r4, =0x0000403d
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- adds r2, r5, 0
- subs r2, 0x20
- movs r1, 0x80
- lsls r1, 9
- lsls r1, r2
- orrs r1, r0
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
-_08179AF0:
- ldr r0, =0x0000403b
- bl VarGet
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, =0x0000ffff
- cmp r4, r0
- bne _08179B5A
- ldr r0, =0x0000403c
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r4
- bne _08179B5A
- ldr r0, =0x0000403d
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xF
- bne _08179B5A
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, [r0]
- ldr r0, =0x00150008
- cmp r1, r0
- beq _08179A54
- b _08179B5A
- .pool
-_08179B44:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x23
- bls _08179A68
- movs r0, 0x3
- bl FlagSet
- movs r0, 0x2
- bl FlagReset
-_08179B5A:
- movs r0, 0
-_08179B5C:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8179A04
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/cable_club.s b/asm/cable_club.s
index 80d9a0916..15ba76e9c 100644
--- a/asm/cable_club.s
+++ b/asm/cable_club.s
@@ -434,7 +434,7 @@ sub_80B2688: @ 80B2688
movs r0, 0x15
bl PlaySE
ldr r0, =gUnknown_082780B3
- bl box_related_two__3
+ bl ShowFieldAutoScrollMessage
ldr r0, =sub_80B270C
b _080B26FA
.pool
@@ -442,7 +442,7 @@ _080B26EC:
movs r0, 0x16
bl PlaySE
ldr r0, =gUnknown_08278131
- bl box_related_two__3
+ bl ShowFieldAutoScrollMessage
ldr r0, =sub_80B2918
_080B26FA:
str r0, [r4]
@@ -545,7 +545,7 @@ sub_80B275C: @ 80B275C
movs r3, 0x1
bl ConvertIntToDecimalStringN
ldr r0, =gUnknown_082780F2
- bl box_related_two__3
+ bl ShowFieldAutoScrollMessage
mov r0, r9
subs r0, 0x8
add r0, r8
@@ -598,7 +598,7 @@ sub_80B2804: @ 80B2804
beq _080B2878
_080B2852:
ldr r0, =gUnknown_082780B3
- bl box_related_two__3
+ bl ShowFieldAutoScrollMessage
ldr r1, =gTasks
lsls r0, r5, 2
adds r0, r5
@@ -719,7 +719,7 @@ sub_80B2918: @ 80B2918
cmp r0, 0x1
bhi _080B297C
bl sub_800AC34
- bl textbox_close
+ bl HideFieldMessageBox
ldr r0, =sub_80B2CB0
b _080B29E4
.pool
@@ -730,7 +730,7 @@ _080B297C:
bne _080B2994
_080B2984:
bl sub_80097E8
- bl textbox_close
+ bl HideFieldMessageBox
ldr r0, =sub_80B2CB0
b _080B29E4
.pool
@@ -814,7 +814,7 @@ _080B2A42:
_080B2A4A:
bl sub_80097E8
_080B2A4E:
- bl textbox_close
+ bl HideFieldMessageBox
ldr r0, =gTasks
lsls r1, r7, 2
adds r1, r7
@@ -1030,7 +1030,7 @@ sub_80B2C30: @ 80B2C30
bl sub_80B24F8
cmp r0, 0x1
beq _080B2C9C
- bl sub_800A550
+ bl GetBlockReceivedStatus
adds r4, r0, 0
bl sub_800A9A8
lsls r4, 24
@@ -1047,7 +1047,7 @@ _080B2C5C:
ldr r1, =gUnknown_02039B58
adds r0, r1
lsls r1, r4, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
lsls r2, r4, 3
subs r2, r4
@@ -1059,14 +1059,14 @@ _080B2C5C:
lsls r0, 24
lsrs r4, r0, 24
_080B2C7E:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r4, r0
bcc _080B2C5C
movs r0, 0
bl sub_800B330
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
ldr r0, =gScriptResult
adds r1, r5, 0
bl task_map_chg_seq_0807EC34
@@ -1082,7 +1082,7 @@ sub_80B2CB0: @ 80B2CB0
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080B2CDE
@@ -1151,7 +1151,7 @@ sub_80B2D2C: @ 80B2D2C
bl sub_80B241C
ldrb r0, [r4, 0x12]
bl RemoveWindow
- bl textbox_close
+ bl HideFieldMessageBox
bl EnableBothScriptContexts
adds r0, r5, 0
bl DestroyTask
@@ -1361,7 +1361,7 @@ _080B2F0C:
movs r0, 0
mov r8, r0
mov r9, r0
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r5, r0, 24
movs r4, 0
@@ -1434,7 +1434,7 @@ _080B2FA8:
bl DestroyTask
b _080B2FC6
_080B2FB4:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080B2FC6
@@ -1706,7 +1706,7 @@ sub_80B3220: @ 80B3220
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _080B3248
@@ -1836,7 +1836,7 @@ _080B3338:
bl sub_800AC34
b _080B3346
_080B333E:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
_080B3342:
cmp r0, 0
@@ -1872,7 +1872,7 @@ _080B3378:
lsls r2, 4
adds r0, r2, 0
strh r0, [r1]
- ldr r0, =sub_8036760
+ ldr r0, =CB2_InitBattle
bl SetMainCallback2
ldr r1, =gMain
ldr r0, =sub_80B360C
@@ -1948,13 +1948,13 @@ _080B3444:
ldr r1, =gUnknown_020229CC
movs r0, 0
movs r2, 0x1C
- bl link_0800A448
+ bl SendBlock
movs r0, 0x3
strh r0, [r6]
b _080B3532
.pool
_080B3458:
- bl sub_800A550
+ bl GetBlockReceivedStatus
adds r4, r0, 0
bl sub_800A9D8
lsls r4, 24
@@ -1967,7 +1967,7 @@ _080B3458:
.pool
_080B3474:
lsls r1, r4, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r0, r5, 0
adds r1, r2
ldm r1!, {r2,r3,r7}
@@ -1980,11 +1980,11 @@ _080B3474:
bl sub_800B524
lsls r0, r4, 24
lsrs r0, 24
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
adds r5, 0x1C
adds r4, 0x1
_080B349A:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -2045,7 +2045,7 @@ _080B3504:
lsls r3, 4
adds r0, r3, 0
strh r0, [r1]
- ldr r0, =sub_8036760
+ ldr r0, =CB2_InitBattle
bl SetMainCallback2
ldr r1, =gMain
ldr r0, =sub_80B360C
@@ -2080,7 +2080,7 @@ _080B3574:
beq _080B35F8
b _080B35FE
_080B357A:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r3, r0, 24
movs r4, 0
@@ -2128,7 +2128,7 @@ _080B35C8:
b _080B35FE
.pool
_080B35E0:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080B35FE
@@ -2297,13 +2297,13 @@ _080B3750:
b _080B37CC
_080B375A:
ldr r0, =gUnknown_08278091
- bl box_related_two__2
+ bl ShowFieldMessage
movs r0, 0x1
strh r0, [r5, 0x8]
b _080B37CC
.pool
_080B376C:
- bl sub_809833C
+ bl IsFieldMessageBoxHidden
lsls r0, 24
cmp r0, 0
beq _080B37CC
@@ -2325,7 +2325,7 @@ _080B378C:
beq _080B37B2
b _080B37CC
_080B379E:
- bl textbox_close
+ bl HideFieldMessageBox
movs r0, 0
strh r0, [r5, 0x8]
bl sub_80872C4
@@ -2425,7 +2425,7 @@ _080B3864:
b _080B3884
.pool
_080B3870:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080B3884
@@ -2657,7 +2657,7 @@ task00_08081A90: @ 80B3A30
adds r0, r4, 0
bl DestroyTask
_080B3A62:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080B3AA6
@@ -2691,7 +2691,7 @@ sub_80B3AAC: @ 80B3AAC
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080B3AC4
@@ -2804,7 +2804,7 @@ _080B3B96:
strh r0, [r5]
b _080B3BB8
_080B3B9E:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _080B3BB8
diff --git a/asm/clear_save_data_screen.s b/asm/clear_save_data_screen.s
deleted file mode 100644
index 5efff250c..000000000
--- a/asm/clear_save_data_screen.s
+++ /dev/null
@@ -1,399 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start c2_clear_save_data_screen_2
-c2_clear_save_data_screen_2: @ 817ACC8
- push {lr}
- bl sub_817AE00
- lsls r0, 24
- cmp r0, 0
- beq _0817ACDC
- ldr r0, =sub_817ACE4
- movs r1, 0
- bl CreateTask
-_0817ACDC:
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_clear_save_data_screen_2
-
- thumb_func_start sub_817ACE4
-sub_817ACE4: @ 817ACE4
- push {r4,lr}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0
- movs r2, 0x2
- movs r3, 0xE
- bl SetWindowBorderStyle
- ldr r2, =gText_ClearAllSaveData
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl PrintTextOnWindow
- ldr r0, =gUnknown_085F06D8
- movs r1, 0x2
- movs r2, 0xE
- movs r3, 0x1
- bl CreateYesNoMenu
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_817AD40
- str r1, [r0]
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817ACE4
-
- thumb_func_start sub_817AD40
-sub_817AD40: @ 817AD40
- push {r4,r5,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_8198C58
- lsls r0, 24
- asrs r4, r0, 24
- cmp r4, 0
- beq _0817AD68
- cmp r4, 0
- bgt _0817AD62
- movs r0, 0x1
- negs r0, r0
- cmp r4, r0
- beq _0817ADA0
- b _0817ADB2
-_0817AD62:
- cmp r4, 0x1
- beq _0817ADA0
- b _0817ADB2
-_0817AD68:
- movs r0, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r2, =gText_ClearingData
- movs r0, 0x1
- str r0, [sp]
- str r4, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r0, 0
- movs r1, 0x1
- movs r3, 0
- bl PrintTextOnWindow
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_817ADC0
- str r1, [r0]
- b _0817ADB2
- .pool
-_0817ADA0:
- movs r0, 0x5
- bl PlaySE
- adds r0, r5, 0
- bl DestroyTask
- ldr r0, =sub_817AFD4
- bl SetMainCallback2
-_0817ADB2:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817AD40
-
- thumb_func_start sub_817ADC0
-sub_817ADC0: @ 817ADC0
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ClearSaveData
- adds r0, r4, 0
- bl DestroyTask
- ldr r0, =sub_817AFD4
- bl SetMainCallback2
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817ADC0
-
- thumb_func_start sub_817ADE4
-sub_817ADE4: @ 817ADE4
- push {lr}
- bl RunTasks
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_817ADE4
-
- thumb_func_start sub_817ADF4
-sub_817ADF4: @ 817ADF4
- push {lr}
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_817ADF4
-
- thumb_func_start sub_817AE00
-sub_817AE00: @ 817AE00
- push {r4,lr}
- sub sp, 0xC
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _0817AE18
- cmp r0, 0x1
- bne _0817AE18
- b _0817AFA4
-_0817AE18:
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x40
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x44
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x48
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x4A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- add r0, sp, 0x4
- movs r4, 0
- strh r4, [r0]
- ldr r1, =0x040000d4
- str r0, [r1]
- movs r0, 0xC0
- lsls r0, 19
- str r0, [r1, 0x4]
- ldr r0, =0x8100c000
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- movs r2, 0
- str r2, [sp, 0x8]
- add r0, sp, 0x8
- str r0, [r1]
- movs r0, 0xE0
- lsls r0, 19
- str r0, [r1, 0x4]
- ldr r0, =0x85000100
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- add r0, sp, 0x4
- strh r2, [r0]
- str r0, [r1]
- ldr r0, =0x05000002
- str r0, [r1, 0x4]
- ldr r0, =0x810001ff
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- bl ResetPaletteFade
- ldr r2, =gPlttBufferUnfaded
- ldr r0, =0x00007fff
- strh r0, [r2]
- ldr r1, =gPlttBufferFaded
- strh r0, [r1]
- ldr r0, =0x00003945
- strh r0, [r2, 0x2]
- strh r0, [r1, 0x2]
- movs r1, 0
- ldr r3, =0x06000020
- ldr r0, =0x00001111
- adds r2, r0, 0
-_0817AED4:
- lsls r0, r1, 1
- adds r0, r3
- strh r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0xF
- bls _0817AED4
- movs r1, 0
- ldr r4, =0x0600f000
- movs r3, 0x1
- ldr r2, =0x000003ff
-_0817AEEC:
- lsls r0, r1, 1
- adds r0, r4
- strh r3, [r0]
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r2
- bls _0817AEEC
- bl ResetTasks
- bl ResetSpriteData
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_085F06C0
- movs r0, 0
- movs r2, 0x2
- bl InitBgsFromTemplates
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- bl sub_817B02C
- ldr r0, =0x0000ffff
- str r0, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r0, 0x1
- bl EnableInterrupts
- ldr r0, =sub_817ADF4
- bl SetVBlankCallback
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- b _0817AFC8
- .pool
-_0817AFA4:
- bl UpdatePaletteFade
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0817AFC8
- ldr r0, =sub_817ADE4
- bl SetMainCallback2
- movs r0, 0x1
- b _0817AFCA
- .pool
-_0817AFC8:
- movs r0, 0
-_0817AFCA:
- add sp, 0xC
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_817AE00
-
- thumb_func_start sub_817AFD4
-sub_817AFD4: @ 817AFD4
- push {r4,lr}
- sub sp, 0x4
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0
- beq _0817AFEA
- cmp r0, 0x1
- beq _0817B008
-_0817AFEA:
- ldr r0, =0x0000ffff
- str r0, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- movs r0, 0x1
- strb r0, [r4]
- b _0817B020
- .pool
-_0817B008:
- bl UpdatePaletteFade
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0817B020
- bl FreeAllWindowBuffers
- bl DoSoftReset
-_0817B020:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817AFD4
-
- thumb_func_start sub_817B02C
-sub_817B02C: @ 817B02C
- push {lr}
- ldr r0, =gUnknown_085F06C8
- bl InitWindows
- bl DeactivateAllTextPrinters
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0
- movs r1, 0
- movs r2, 0x2
- movs r3, 0xE0
- bl sub_80987D4
- ldr r0, =gUnknown_0860F074
- movs r1, 0xF0
- movs r2, 0x20
- bl LoadPalette
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817B02C
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/clock.s b/asm/clock.s
index 01c7e964e..5d771a8b6 100644
--- a/asm/clock.s
+++ b/asm/clock.s
@@ -27,8 +27,8 @@ sub_809E778: @ 809E778
.pool
thumb_func_end sub_809E778
- thumb_func_start sub_809E7B0
-sub_809E7B0: @ 809E7B0
+ thumb_func_start DoTimeBasedEvents
+DoTimeBasedEvents: @ 809E7B0
push {r4,lr}
ldr r0, =0x00000895
bl FlagGet
@@ -50,7 +50,7 @@ _0809E7DA:
pop {r0}
bx r0
.pool
- thumb_func_end sub_809E7B0
+ thumb_func_end DoTimeBasedEvents
thumb_func_start sub_809E7E8
sub_809E7E8: @ 809E7E8
diff --git a/asm/coins.s b/asm/coins.s
index ea55dd85c..d2b6cbb47 100644
--- a/asm/coins.s
+++ b/asm/coins.s
@@ -5,9 +5,9 @@
.text
- thumb_func_start AddCoins
-@ bool8 AddCoins(u16 toAdd)
-AddCoins: @ 8145C80
+ thumb_func_start GiveCoins
+@ bool8 GiveCoins(u16 toAdd)
+GiveCoins: @ 8145C80
push {r4,lr}
lsls r0, 16
lsrs r4, r0, 16
@@ -44,11 +44,11 @@ _08145CC0:
pop {r1}
bx r1
.pool
- thumb_func_end AddCoins
+ thumb_func_end GiveCoins
- thumb_func_start SubtractCoins
-@ bool8 SubtractCoins(u16 toSub)
-SubtractCoins: @ 8145CCC
+ thumb_func_start TakeCoins
+@ bool8 TakeCoins(u16 toSub)
+TakeCoins: @ 8145CCC
push {r4,lr}
lsls r0, 16
lsrs r4, r0, 16
@@ -69,6 +69,6 @@ _08145CEE:
pop {r4}
pop {r1}
bx r1
- thumb_func_end SubtractCoins
+ thumb_func_end TakeCoins
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/contest.s b/asm/contest.s
index 71e8ab058..9c0684663 100644
--- a/asm/contest.s
+++ b/asm/contest.s
@@ -45,30 +45,30 @@ sub_80D7678: @ 80D7678
lsls r1, 7
movs r0, 0
bl SetGpuRegBits
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
- ldr r0, =gUnknown_02022E28
+ ldr r0, =gBattle_WIN1H
strh r1, [r0]
- ldr r0, =gUnknown_02022E2A
+ ldr r0, =gBattle_WIN1V
strh r1, [r0]
pop {r4}
pop {r0}
@@ -76,8 +76,8 @@ sub_80D7678: @ 80D7678
.pool
thumb_func_end sub_80D7678
- thumb_func_start sub_80D7724
-sub_80D7724: @ 80D7724
+ thumb_func_start LoadContestBgAfterMoveAnim
+LoadContestBgAfterMoveAnim: @ 80D7724
push {r4,r5,lr}
ldr r0, =gUnknown_08C17AB0
movs r1, 0xC0
@@ -119,7 +119,7 @@ _080D775E:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80D7724
+ thumb_func_end LoadContestBgAfterMoveAnim
thumb_func_start sub_80D779C
sub_80D779C: @ 80D779C
@@ -138,7 +138,7 @@ sub_80D779C: @ 80D779C
_080D77BA:
lsls r0, r4, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
lsls r2, r4, 2
adds r1, 0x24
@@ -224,7 +224,7 @@ _080D7848:
thumb_func_start sub_80D787C
sub_80D787C: @ 80D787C
push {r4-r7,lr}
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
movs r1, 0
@@ -244,7 +244,7 @@ _080D7890:
cmp r5, 0x3
ble _080D7890
movs r4, 0
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
movs r5, 0x3
_080D78AA:
ldr r0, [r6]
@@ -257,7 +257,7 @@ _080D78AA:
subs r5, 0x1
cmp r5, 0
bge _080D78AA
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
movs r7, 0x4
negs r7, r7
movs r6, 0xFF
@@ -287,7 +287,7 @@ _080D78CC:
subs r5, 0x1
cmp r5, 0
bge _080D78CC
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0x8]
movs r1, 0
@@ -339,7 +339,7 @@ _080D7942:
cmp r5, 0x3
ble _080D7942
bl sub_80DD590
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x1C]
movs r1, 0
@@ -354,7 +354,7 @@ _080D7942:
thumb_func_start sub_80D7988
sub_80D7988: @ 80D7988
push {r4,r5,lr}
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
movs r0, 0x40
bl AllocZeroed
str r0, [r4]
@@ -441,7 +441,7 @@ sub_80D7988: @ 80D7988
thumb_func_start sub_80D7A5C
sub_80D7A5C: @ 80D7A5C
push {r4,r5,lr}
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r0, [r0]
bl Free
@@ -546,8 +546,8 @@ _080D7B4E:
ldr r0, =gUnknown_02039F38
strb r5, [r0]
bl sub_80D7988
- bl init_uns_table_pokemon_copy
- ldr r4, =gBattleSpritesGfx
+ bl AllocateMonSpritesGfx
+ ldr r4, =gMonSpritesGfxPtr
ldr r0, [r4]
ldr r0, [r0]
bl Free
@@ -590,7 +590,7 @@ _080D7BD4:
strb r0, [r6]
b _080D7C56
_080D7BDA:
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
adds r0, 0x59
@@ -611,10 +611,10 @@ _080D7BF6:
.pool
_080D7C04:
bl sub_80DE224
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
movs r0, 0x2
bl BeginFastPaletteFade
@@ -628,7 +628,7 @@ _080D7C04:
ldr r0, =sub_80D7C7C
movs r1, 0xA
bl CreateTask
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r1, [r1]
strb r0, [r1, 0x8]
@@ -840,7 +840,7 @@ sub_80D7DE8: @ 80D7DE8
bl GetMultiplayerId
adds r0, r4, 0
bl DestroyTask
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x8]
@@ -973,7 +973,7 @@ _080D7F40:
bl CopyToBgTilemapBuffer
movs r0, 0x2
bl CopyBgTilemapBufferToVram
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x2C]
ldr r2, =0x0201aa04
@@ -1038,7 +1038,7 @@ _080D8004:
bl sub_80DBF90
bl sub_80DB2BC
bl sub_80DB120
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r1, [r1]
movs r4, 0
@@ -1048,7 +1048,7 @@ _080D8004:
bl sub_80DC594
bl sub_80DC5E8
bl sub_80DC7EC
- ldr r1, =gBanksBySide
+ ldr r1, =gBanksByIdentity
strb r4, [r1]
movs r0, 0x1
strb r0, [r1, 0x1]
@@ -1190,7 +1190,7 @@ _080D814C:
strh r0, [r4, 0x8]
b _080D822C
_080D8176:
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldrh r0, [r1]
adds r0, 0x7
strh r0, [r1]
@@ -1256,7 +1256,7 @@ _080D81FA:
b _080D822C
.pool
_080D8208:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x6]
@@ -1316,51 +1316,51 @@ _080D8266:
thumb_func_start vblank_cb_battle
vblank_cb_battle: @ 80D827C
push {lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
ldrh r1, [r0]
movs r0, 0x10
bl SetGpuReg
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
ldrh r1, [r0]
movs r0, 0x12
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r1, [r0]
movs r0, 0x14
bl SetGpuReg
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r1, [r0]
movs r0, 0x16
bl SetGpuReg
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r1, [r0]
movs r0, 0x18
bl SetGpuReg
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
ldrh r1, [r0]
movs r0, 0x1A
bl SetGpuReg
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
ldrh r1, [r0]
movs r0, 0x1C
bl SetGpuReg
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
ldrh r1, [r0]
movs r0, 0x1E
bl SetGpuReg
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
ldrh r1, [r0]
movs r0, 0x40
bl SetGpuReg
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
ldrh r1, [r0]
movs r0, 0x44
bl SetGpuReg
- ldr r0, =gUnknown_02022E28
+ ldr r0, =gBattle_WIN1H
ldrh r1, [r0]
movs r0, 0x42
bl SetGpuReg
- ldr r0, =gUnknown_02022E2A
+ ldr r0, =gBattle_WIN1V
ldrh r1, [r0]
movs r0, 0x46
bl SetGpuReg
@@ -1387,9 +1387,9 @@ sub_80D833C: @ 80D833C
ldrsh r1, [r4, r0]
cmp r1, 0
bne _080D840C
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
bl sub_80DCD48
ldr r1, =gPlttBufferUnfaded
@@ -1401,7 +1401,7 @@ sub_80D833C: @ 80D833C
str r1, [r0, 0x8]
ldr r0, [r0, 0x8]
ldr r0, =gStringVar1
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r1, [r1]
ldrb r1, [r1, 0x1]
@@ -1517,17 +1517,17 @@ sub_80D8490: @ 80D8490
lsls r0, 24
lsrs r0, 24
mov r9, r0
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
movs r1, 0xA0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
movs r6, 0
ldr r0, =gUnknown_02039F25
mov r8, r0
- ldr r2, =gUnknown_02039E1E
+ ldr r2, =gUnknown_02039E00 + 30
mov r10, r2
- ldr r7, =gUnknown_02039F34
+ ldr r7, =gContestResources
_080D84B8:
lsls r1, r6, 1
mov r0, r8
@@ -1632,7 +1632,7 @@ _080D856C:
lsrs r6, r0, 24
cmp r6, 0x3
bls _080D84B8
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
ldrb r0, [r0]
@@ -1738,7 +1738,7 @@ _080D868E:
movs r0, 0
bl sub_80DC490
ldr r0, =gStringVar1
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r1, [r1]
ldrb r1, [r1, 0x1]
@@ -1770,10 +1770,10 @@ _080D86E4:
adds r0, r4, 0
movs r1, 0
bl sub_80DEC30
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
ldr r1, =gTasks
lsls r0, r7, 2
@@ -1785,7 +1785,7 @@ _080D86E4:
b _080D87FA
.pool
_080D8730:
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
ldrb r0, [r0]
@@ -1804,7 +1804,7 @@ _080D8754:
subs r0, 0x1
_080D8756:
strb r0, [r1]
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
ldrb r0, [r0]
@@ -1831,7 +1831,7 @@ _080D8756:
b _080D87FA
.pool
_080D879C:
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
ldrb r0, [r0]
@@ -1851,7 +1851,7 @@ _080D87C0:
adds r0, r2, 0x1
strb r0, [r1]
_080D87C4:
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
ldrb r0, [r0]
@@ -1967,7 +1967,7 @@ sub_80D8894: @ 80D8894
ldr r4, =gUnknown_02039F25
ldrb r0, [r4]
bl sub_80DB8B8
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldrb r2, [r4]
ldr r3, [r1, 0x4]
@@ -2020,7 +2020,7 @@ sub_80D892C: @ 80D892C
lsrs r0, 24
bl DestroyTask
ldr r2, =gTasks
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x8]
@@ -2041,10 +2041,10 @@ sub_80D895C: @ 80D895C
lsls r0, 24
lsrs r7, r0, 24
bl sub_80DB89C
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
movs r0, 0
bl sub_80DC490
@@ -2145,7 +2145,7 @@ sub_80D8A50: @ 80D8A50
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrh r1, [r0, 0x6]
@@ -2184,7 +2184,7 @@ sub_80D8A88: @ 80D8A88
asrs r0, 16
cmp r0, 0x13
ble _080D8B18
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r1, [r0]
movs r0, 0
@@ -2217,7 +2217,7 @@ _080D8ADE:
lsls r0, 24
lsrs r0, 24
bl sub_80DB8B8
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldrb r2, [r5]
adds r2, r4
@@ -2259,7 +2259,7 @@ sub_80D8B38: @ 80D8B38
lsls r0, 24
lsrs r0, 24
mov r8, r0
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r0, [r0]
ldrb r6, [r0, 0x11]
@@ -2348,7 +2348,7 @@ _080D8B84:
_080D8C74:
bl sub_80DCD48
movs r7, 0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0]
ldr r0, [r0, 0x8]
@@ -2367,7 +2367,7 @@ _080D8C92:
cmp r1, r0
bne _080D8C92
_080D8C9C:
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
strb r7, [r0, 0x11]
@@ -2447,7 +2447,7 @@ _080D8D56:
adds r0, r6, 0
bl sub_80DF080
bl sub_80DF750
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r6, 3
@@ -2624,7 +2624,7 @@ _080D8EF2:
bl sub_80DB89C
ldr r0, =gStringVar1
lsls r1, r6, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
mov r2, r9
@@ -2678,7 +2678,7 @@ _080D8F84:
beq _080D8F92
bl _080DA100
_080D8F92:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
adds r0, 0x5A
@@ -2719,7 +2719,7 @@ _080D8FB8:
adds r0, r4, 0
bl sub_80DEAA8
adds r0, r4, 0
- bl move_anim_start_t1
+ bl DoMoveAnim
ldr r1, =gTasks
mov r2, r8
lsls r0, r2, 2
@@ -2742,7 +2742,7 @@ _080D9010:
_080D9024:
adds r0, r6, 0
bl sub_80DE9B0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r1, [r0]
ldr r0, [r1]
adds r0, 0x5A
@@ -3173,7 +3173,7 @@ _080D939E:
cmp r7, 0x3
bgt _080D9418
ldr r5, =gUnknown_02039F26
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
_080D93BC:
movs r3, 0
str r3, [sp]
@@ -3488,7 +3488,7 @@ _080D963C:
movs r0, 0x64
bl PlaySE
_080D9642:
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0x4]
lsls r0, r7, 3
@@ -3562,7 +3562,7 @@ _080D96D4:
bl sub_80DB89C
ldr r0, =gStringVar1
lsls r1, r6, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
ldr r4, =gStringVar4
@@ -3588,7 +3588,7 @@ _080D971C:
beq _080D9728
bl _080DA100
_080D9728:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r6, 3
@@ -3671,7 +3671,7 @@ _080D97DC:
bl sub_80DB89C
ldr r0, =gStringVar1
lsls r1, r6, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
ldr r4, =gStringVar4
@@ -3739,7 +3739,7 @@ _080D9870:
bgt _080D988E
bl _080DA100
_080D988E:
- ldr r7, =gUnknown_02039F34
+ ldr r7, =gContestResources
ldr r0, [r7]
ldr r1, [r0, 0x4]
lsls r0, r6, 3
@@ -3809,7 +3809,7 @@ _080D9904:
bl sub_80DB89C
ldr r0, =gStringVar1
lsls r1, r6, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
ldr r4, =gStringVar4
@@ -3866,7 +3866,7 @@ _080D999E:
beq _080D99A8
b _080DA100
_080D99A8:
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0x4]
lsls r4, r6, 3
@@ -3898,7 +3898,7 @@ _080D99A8:
.pool
_080D99EC:
bl sub_80DCD48
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x14]
lsls r0, r6, 2
@@ -3992,7 +3992,7 @@ _080D9AAE:
lsls r0, r5, 24
cmp r0, 0
ble _080D9AD2
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
ldr r2, [sp, 0x4]
@@ -4010,10 +4010,10 @@ _080D9AD2:
bl sub_80DB89C
ldr r0, =gStringVar1
lsls r1, r6, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r1, [r0]
ldrb r0, [r1, 0x13]
@@ -4374,14 +4374,14 @@ _080D9DC2:
_080D9DD4:
bl sub_80DB89C
ldr r0, =gStringVar3
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r1, [r5]
ldr r1, [r1, 0x10]
ldr r1, [r1]
lsls r1, 20
lsrs r1, 29
lsls r1, 6
- ldr r4, =gUnknown_02039E02
+ ldr r4, =gUnknown_02039E00 + 2
adds r1, r4
bl StringCopy
ldr r0, =gStringVar1
@@ -4476,7 +4476,7 @@ _080D9EDC:
bl sub_80DC9B4
ldr r0, =gStringVar1
lsls r1, r6, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
ldr r0, =gStringVar2
@@ -4626,7 +4626,7 @@ _080DA038:
bl sub_80DB89C
ldr r0, =gStringVar1
lsls r1, r6, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
ldr r4, =gStringVar4
@@ -4725,7 +4725,7 @@ sub_80DA110: @ 80DA110
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r3, [r1]
ldrb r2, [r3, 0x7]
@@ -4829,7 +4829,7 @@ _080DA1C6:
ands r0, r1
cmp r0, 0
beq _080DA224
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r0, [r2, 0x7]
@@ -4861,7 +4861,7 @@ _080DA224:
bl sub_80DBA18
b _080DA23E
_080DA22E:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x7]
@@ -4947,7 +4947,7 @@ _080DA2BA:
strh r5, [r4, 0xA]
b _080DA2F6
_080DA2D2:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x7]
@@ -5082,7 +5082,7 @@ sub_80DA3CC: @ 80DA3CC
ldrsh r0, [r6, r1]
cmp r0, 0
bne _080DA448
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r5, =gUnknown_02039F25
ldrb r1, [r5]
@@ -5096,7 +5096,7 @@ sub_80DA3CC: @ 80DA3CC
ldr r0, =gStringVar1
ldrb r1, [r5]
lsls r1, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
ldr r5, =gStringVar4
@@ -5255,7 +5255,7 @@ sub_80DA51C: @ 80DA51C
ldrh r1, [r4]
movs r0, 0xC
bl SetGpuReg
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r1, [r0]
ldrb r0, [r1, 0x1]
@@ -5296,7 +5296,7 @@ sub_80DA5B4: @ 80DA5B4
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x6]
@@ -5322,12 +5322,12 @@ sub_80DA5E8: @ 80DA5E8
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
movs r3, 0
ldr r2, =gUnknown_02039F10
movs r1, 0x3
@@ -5350,7 +5350,7 @@ _080DA600:
ands r0, r1
cmp r0, 0
bne _080DA65C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r2, [r0]
ldr r0, =gUnknown_02039F25
ldrb r1, [r0]
@@ -5360,7 +5360,7 @@ _080DA600:
lsls r0, 2
adds r0, r2
ldrh r0, [r0, 0x8]
- bl sub_80ED03C
+ bl BravoTrainerPokemonProfile_BeforeInterview1
b _080DA668
.pool
_080DA65C:
@@ -5404,9 +5404,9 @@ sub_80DA6B4: @ 80DA6B4
cmp r4, 0
bne _080DA6EA
bl sub_80DE224
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r4, [r0]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
movs r0, 0xA0
strh r0, [r1]
movs r0, 0x62
@@ -5432,7 +5432,7 @@ sub_80DA700: @ 80DA700
push {lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldrh r0, [r1]
subs r0, 0x7
strh r0, [r1]
@@ -5553,7 +5553,7 @@ sub_80DA7EC: @ 80DA7EC
movs r3, 0x10
bl BeginNormalPaletteFade
ldr r2, =gTasks
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x8]
@@ -5587,7 +5587,7 @@ sub_80DA830: @ 80DA830
str r1, [r0]
bl FreeAllWindowBuffers
bl sub_80D7A5C
- bl sub_805F094
+ bl FreeMonSpritesGfx
ldr r0, =c2_exit_to_overworld_2_switch
bl SetMainCallback2
_080DA860:
@@ -5667,7 +5667,7 @@ _080DA8F2:
ldr r5, =gUnknown_02039F25
ldrb r0, [r5]
lsls r0, 6
- ldr r4, =gUnknown_02039E0D
+ ldr r4, =gUnknown_02039E00 + 13
adds r0, r4
mov r1, sp
movs r2, 0x8
@@ -6313,7 +6313,7 @@ _080DAE1E:
movs r0, 0x4
b _080DAE9A
_080DAE2E:
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
cmp r0, 0x4
bhi _080DAE82
@@ -6451,7 +6451,7 @@ sub_80DAF1C: @ 80DAF1C
add r0, sp, 0x4
bl StringCopy
lsls r1, r5, 6
- ldr r0, =gUnknown_02039E0D
+ ldr r0, =gUnknown_02039E00 + 13
adds r1, r0
add r0, sp, 0x4
bl StringAppend
@@ -6508,7 +6508,7 @@ sub_80DAFA0: @ 80DAFA0
lsls r1, 24
lsrs r1, 24
lsls r0, r4, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r0, r2
bl sub_80DAED4
ldr r0, =gUnknown_02039F26
@@ -6741,7 +6741,7 @@ sub_80DB174: @ 80DB174
lsls r0, r5, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x4]
adds r2, r5, 0
@@ -6753,7 +6753,7 @@ _080DB1B8:
lsls r0, r5, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x4]
adds r2, r5, 0
@@ -6818,7 +6818,7 @@ _080DB1CC:
strh r0, [r4, 0x2E]
strh r5, [r4, 0x32]
adds r0, r5, 0
- bl sub_80DB2A8
+ bl IsSpeciesNotUnown
lsls r0, 24
cmp r0, 0
beq _080DB278
@@ -6851,8 +6851,8 @@ _080DB280:
.pool
thumb_func_end sub_80DB174
- thumb_func_start sub_80DB2A8
-sub_80DB2A8: @ 80DB2A8
+ thumb_func_start IsSpeciesNotUnown
+IsSpeciesNotUnown: @ 80DB2A8
push {lr}
lsls r0, 16
lsrs r0, 16
@@ -6865,12 +6865,12 @@ _080DB2B6:
_080DB2B8:
pop {r1}
bx r1
- thumb_func_end sub_80DB2A8
+ thumb_func_end IsSpeciesNotUnown
thumb_func_start sub_80DB2BC
sub_80DB2BC: @ 80DB2BC
push {r4-r6,lr}
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r0, [r0, 0x24]
movs r4, 0xA0
@@ -7199,7 +7199,7 @@ sub_80DB584: @ 80DB584
movs r4, 0
movs r5, 0
_080DB58A:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x4]
adds r0, r5, r0
@@ -7238,7 +7238,7 @@ sub_80DB5B8: @ 80DB5B8
lsrs r1, 24
mov r8, r1
mov r10, r8
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
mov r9, r0
ldr r0, [r0]
ldr r1, [r0, 0x4]
@@ -7365,7 +7365,7 @@ _080DB6B6:
adds r5, r0, 0
lsls r5, 16
lsrs r5, 16
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x4]
add r0, r8
@@ -7486,7 +7486,7 @@ sub_80DB798: @ 80DB798
adds r1, 0x2
lsls r1, 24
lsrs r7, r1, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r2, [r1, 0x4]
lsls r1, r0, 3
@@ -7647,7 +7647,7 @@ _080DB8D0:
.pool
_080DB8F4:
ldr r2, =gUnknown_02039E00
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r0, [r0]
@@ -7674,7 +7674,7 @@ _080DB91E:
lsls r0, r4, 24
lsrs r0, 24
bl sub_80DB8B8
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r1, [r1, 0x4]
adds r1, r5, r1
@@ -7696,7 +7696,7 @@ sub_80DB944: @ 80DB944
mov r6, r8
push {r6,r7}
sub sp, 0x8
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
mov r4, sp
movs r3, 0
movs r6, 0x3
@@ -7751,7 +7751,7 @@ _080DB9A4:
movs r0, 0x4
negs r0, r0
mov r9, r0
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
mov r8, r1
movs r7, 0x3
mov r12, r7
@@ -7806,7 +7806,7 @@ _080DB9F8:
thumb_func_start sub_80DBA18
sub_80DBA18: @ 80DBA18
push {r4,r5,lr}
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
movs r2, 0
movs r3, 0x3
_080DBA20:
@@ -7854,7 +7854,7 @@ sub_80DBA68: @ 80DBA68
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r2, [r1, 0x4]
lsls r1, r0, 3
@@ -7889,7 +7889,7 @@ sub_80DBAA0: @ 80DBAA0
mov r6, r9
mov r5, r8
push {r5-r7}
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
movs r0, 0
mov r8, r0
movs r1, 0x7
@@ -8092,7 +8092,7 @@ _080DBC1A:
b _080DBAC0
_080DBC34:
movs r6, 0
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
movs r7, 0
movs r4, 0
_080DBC3C:
@@ -8132,7 +8132,7 @@ _080DBC3C:
adds r6, 0x1
cmp r6, 0x3
ble _080DBC3C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0x10]
ldrb r1, [r2, 0x1]
@@ -8155,7 +8155,7 @@ sub_80DBCA8: @ 80DBCA8
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r2, [r1, 0x4]
lsls r1, r0, 3
@@ -8456,7 +8456,7 @@ sub_80DBED4: @ 80DBED4
adds r0, r1
ldrb r1, [r0]
lsls r1, 1
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
lsls r0, 3
adds r1, r0
@@ -8516,10 +8516,10 @@ _080DBF62:
thumb_func_start sub_80DBF68
sub_80DBF68: @ 80DBF68
push {lr}
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
bl sub_80DB89C
ldr r0, =gUnknown_0827E8DA
@@ -8626,7 +8626,7 @@ sub_80DC028: @ 80DC028
lsls r2, 24
lsrs r2, 24
mov r8, r2
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x14]
lsls r1, r2, 2
@@ -8746,7 +8746,7 @@ _080DC126:
bne _080DC15C
adds r0, r7, 0
bl DestroyTask
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x14]
mov r2, r9
@@ -8950,7 +8950,7 @@ _080DC2C8:
movs r1, 0xB4
movs r3, 0x1
bl CreateSprite
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r2, [r1, 0x14]
lsls r1, r4, 2
@@ -8970,7 +8970,7 @@ sub_80DC308: @ 80DC308
push {r4-r7,lr}
lsls r0, 24
lsrs r6, r0, 24
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r2, [r0, 0x14]
lsls r3, r6, 2
@@ -9067,7 +9067,7 @@ _080DC3B0:
sub_80DC3C4: @ 80DC3C4
push {r4,lr}
movs r2, 0
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r0, [r3]
ldr r0, [r0, 0x14]
ldrb r1, [r0, 0x2]
@@ -9114,7 +9114,7 @@ sub_80DC408: @ 80DC408
ldrsh r0, [r3, r4]
cmp r1, r0
bne _080DC440
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
movs r2, 0x2E
ldrsh r1, [r3, r2]
@@ -9145,7 +9145,7 @@ sub_80DC44C: @ 80DC44C
push {r4-r6,lr}
movs r2, 0
ldr r6, =gSprites
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r4, =gUnknown_08587A6C
ldr r3, =gUnknown_02039F26
_080DC458:
@@ -9180,7 +9180,7 @@ sub_80DC490: @ 80DC490
movs r3, 0
ldr r7, =gUnknown_02039F26
ldr r5, =gSprites
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
movs r2, 0
_080DC4A0:
adds r0, r3, r7
@@ -9231,7 +9231,7 @@ sub_80DC4F0: @ 80DC4F0
ldr r0, =gUnknown_08587B08
bl LoadSpritePalette
movs r5, 0
- ldr r7, =gUnknown_02039F34
+ ldr r7, =gContestResources
ldr r0, =gSprites
mov r8, r0
movs r6, 0
@@ -9315,7 +9315,7 @@ sub_80DC594: @ 80DC594
movs r3, 0x4
orrs r2, r3
strb r2, [r1]
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r1, [r1]
adds r1, 0x58
@@ -9333,7 +9333,7 @@ sub_80DC5E8: @ 80DC5E8
bl CreateTask
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r1, [r1]
strb r0, [r1, 0xD]
@@ -9365,7 +9365,7 @@ sub_80DC630: @ 80DC630
lsls r0, 24
lsrs r0, 24
ldr r3, =gTasks
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r5, [r1]
ldr r1, [r5]
ldrb r2, [r1, 0xD]
@@ -9430,7 +9430,7 @@ sub_80DC6A4: @ 80DC6A4
adds r0, r2
ldrb r0, [r0, 0x8]
adds r5, r0, 0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r4, [r0]
ldr r0, [r4]
ldrb r1, [r0, 0xD]
@@ -9553,7 +9553,7 @@ _080DC79C:
eors r1, r2
strh r1, [r0]
_080DC7AA:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
adds r0, 0x14
@@ -9590,7 +9590,7 @@ sub_80DC7EC: @ 80DC7EC
ldr r0, =sub_80DC8D0
movs r1, 0x1E
bl CreateTask
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r1, [r1]
strb r0, [r1, 0xE]
@@ -9614,7 +9614,7 @@ sub_80DC81C: @ 80DC81C
lsls r0, 24
lsrs r0, 24
ldr r3, =gTasks
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r4, [r1]
ldr r1, [r4]
ldrb r2, [r1, 0xE]
@@ -9819,7 +9819,7 @@ sub_80DC9B4: @ 80DC9B4
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r2, 3
@@ -9923,7 +9923,7 @@ sub_80DC9EC: @ 80DC9EC
lsls r3, 6
ldr r0, =0x0600e026
adds r3, r0
- ldr r7, =gUnknown_02039F34
+ ldr r7, =gContestResources
ldr r0, [r7]
ldr r0, [r0, 0x34]
str r0, [sp]
@@ -10083,7 +10083,7 @@ sub_80DCBE8: @ 80DCBE8
lsrs r0, 24
mov r9, r0
bl sub_80DCBB4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r1, [r0]
ldr r2, =gSprites
mov r8, r2
@@ -10186,7 +10186,7 @@ _080DCCCC:
thumb_func_start sub_80DCCD8
sub_80DCCD8: @ 80DCCD8
push {lr}
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
movs r3, 0x30
ldrsh r2, [r0, r3]
@@ -10279,7 +10279,7 @@ _080DCD7E:
bls _080DCD7E
movs r5, 0
_080DCD92:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r5, 3
@@ -10322,7 +10322,7 @@ _080DCDBC:
bls _080DCD92
movs r5, 0
_080DCDEA:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r5, 3
@@ -10536,7 +10536,7 @@ _080DCF80:
ldr r3, =gUnknown_02039F26
movs r6, 0
_080DCF90:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x4]
adds r0, r6, r0
@@ -10577,7 +10577,7 @@ _080DCFCC:
add r3, sp, 0x4
mov r12, r3
_080DCFE0:
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r0, [r6]
ldr r1, [r0, 0x4]
lsls r0, r4, 3
@@ -10667,7 +10667,7 @@ sub_80DD080: @ 80DD080
push {r6,r7}
lsls r0, 24
lsrs r6, r0, 24
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r3, [r4]
ldr r1, [r3, 0x4]
lsls r7, r6, 3
@@ -10731,7 +10731,7 @@ _080DD0B4:
b _080DD12C
.pool
_080DD110:
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0x4]
lsls r3, r6, 3
@@ -10789,7 +10789,7 @@ _080DD166:
adds r2, 0x1
cmp r2, 0x3
ble _080DD166
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0x4]
subs r0, r7, r6
@@ -10819,7 +10819,7 @@ _080DD1B4:
add r0, r9
ldr r0, [r0]
bl _call_via_r0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
subs r0, r7, r6
@@ -10855,7 +10855,7 @@ _080DD204:
_080DD206:
adds r0, r1
strh r0, [r2, 0x2]
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0x4]
subs r0, r7, r6
@@ -10927,7 +10927,7 @@ _080DD206:
.pool
_080DD29C:
ldr r2, =gContestMoves
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0x4]
subs r0, r7, r6
@@ -10960,7 +10960,7 @@ _080DD2D8:
ands r0, r1
strb r0, [r3, 0x15]
_080DD2E2:
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0x4]
subs r0, r7, r6
@@ -11071,7 +11071,7 @@ _080DD3AE:
cmp r0, 0
bne _080DD3A2
_080DD3B6:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
subs r0, r7, r6
@@ -11092,7 +11092,7 @@ _080DD3C4:
sub_80DD3D4: @ 80DD3D4
lsls r0, 24
lsrs r0, 24
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r2, [r2]
ldr r3, [r2, 0x4]
lsls r2, r0, 3
@@ -11108,7 +11108,7 @@ sub_80DD3D4: @ 80DD3D4
sub_80DD3F0: @ 80DD3F0
lsls r0, 24
lsrs r0, 24
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r2, [r2]
ldr r3, [r2, 0x4]
lsls r2, r0, 3
@@ -11173,11 +11173,11 @@ sub_80DD45C: @ 80DD45C
lsrs r6, r1, 24
ldr r0, =gStringVar1
lsls r1, r4, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
ldr r0, =gStringVar2
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r1, [r5]
ldr r2, [r1, 0x4]
lsls r1, r4, 3
@@ -11265,7 +11265,7 @@ sub_80DD560: @ 80DD560
push {r4,lr}
lsls r0, 24
lsrs r0, 24
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r1, [r4]
ldr r3, [r1, 0x4]
lsls r1, r0, 3
@@ -11315,7 +11315,7 @@ _080DD5AC:
cmp r4, 0x3
ble _080DD5AC
movs r4, 0
- ldr r7, =gUnknown_02039F34
+ ldr r7, =gContestResources
ldr r1, [r7]
mov r8, r1
adds r5, r2, 0
@@ -11422,7 +11422,7 @@ _080DD684:
cmp r4, 0x3
ble _080DD5CA
movs r4, 0
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
movs r5, 0
_080DD690:
ldr r0, [r6]
@@ -11483,7 +11483,7 @@ sub_80DD6DC: @ 80DD6DC
strb r0, [r3]
ldr r0, =SpriteCallbackDummy
str r0, [r2, 0x1C]
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r1, [r2, 0x6]
@@ -11502,7 +11502,7 @@ sub_80DD720: @ 80DD720
push {r4,r5,lr}
lsls r0, 24
lsrs r1, r0, 24
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r5, [r0, 0x12]
@@ -11700,7 +11700,7 @@ _080DD8F8:
adds r2, r4
ldr r0, =sub_80DD6DC
str r0, [r2]
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r0, [r2, 0x6]
@@ -11720,7 +11720,7 @@ sub_80DD940: @ 80DD940
mov r6, r8
push {r6,r7}
movs r5, 0
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r0, =gSprites
mov r9, r0
ldr r0, =0x06010000
@@ -11805,7 +11805,7 @@ sub_80DD9F0: @ 80DD9F0
ldrb r1, [r0, 0x1]
lsls r1, 29
lsrs r1, 29
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r2, [r0]
lsls r0, r2, 2
adds r0, r2
@@ -11905,7 +11905,7 @@ _080DDACA:
movs r1, 0x1
eors r0, r1
strh r0, [r4, 0xE]
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r0, [r0, 0x13]
@@ -11939,7 +11939,7 @@ sub_80DDB0C: @ 80DDB0C
movs r1, 0xA
bl CreateTask
ldr r3, =gSprites
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r2, [r4]
ldr r0, [r2]
adds r0, 0x58
@@ -11981,7 +11981,7 @@ sub_80DDB6C: @ 80DDB6C
lsls r0, 24
lsrs r0, 24
adds r3, r0, 0
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0]
adds r0, 0x58
@@ -12040,7 +12040,7 @@ _080DDBD4:
sub_80DDBE8: @ 80DDBE8
push {r4,r5,lr}
ldr r5, =gSprites
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r2, [r0]
adds r0, r2, 0
@@ -12093,7 +12093,7 @@ task08_080CD1CC: @ 80DDC4C
lsls r0, 24
lsrs r0, 24
adds r4, r0, 0
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r0, [r0]
adds r0, 0x58
@@ -12175,7 +12175,7 @@ sub_80DDCDC: @ 80DDCDC
lsls r4, 24
asrs r4, 24
strh r4, [r1, 0x8]
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r0, [r2, 0x6]
@@ -12216,7 +12216,7 @@ _080DDD4E:
bl sub_80DDB0C
b _080DDD64
_080DDD54:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x6]
@@ -12241,7 +12241,7 @@ _080DDD70:
movs r0, 0
strh r0, [r4, 0x1E]
bl sub_80DD940
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r1, [r2, 0x6]
@@ -12261,7 +12261,7 @@ _080DDD9C:
thumb_func_start sub_80DDDA8
sub_80DDDA8: @ 80DDDA8
ldr r3, =gSprites
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r2, [r0]
ldr r0, [r2]
adds r0, 0x58
@@ -12292,7 +12292,7 @@ sub_80DDDA8: @ 80DDDA8
thumb_func_start sub_80DDDE4
sub_80DDDE4: @ 80DDDE4
ldr r2, =gSprites
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
adds r0, 0x58
@@ -12316,7 +12316,7 @@ sub_80DDE0C: @ 80DDE0C
ldr r0, =sub_80DDE30
movs r1, 0xF
bl CreateTask
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r0, [r2, 0x6]
@@ -12383,7 +12383,7 @@ _080DDE8C:
ldrsh r0, [r0, r1]
cmp r0, 0x9
bne _080DDEBA
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r1, [r2, 0x6]
@@ -12421,7 +12421,7 @@ sub_80DDED0: @ 80DDED0
cmp r4, 0
ble _080DDF1C
movs r5, 0
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r0, [r0]
movs r1, 0x13
@@ -12433,7 +12433,7 @@ sub_80DDED0: @ 80DDED0
b _080DDF4E
.pool
_080DDF1C:
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r0, [r0]
movs r1, 0x13
@@ -12458,7 +12458,7 @@ _080DDF48:
movs r5, 0xC
movs r3, 0
_080DDF4C:
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
_080DDF4E:
ldr r1, =gTasks
lsls r0, r6, 2
@@ -12536,7 +12536,7 @@ _080DDFB8:
bne _080DDFFC
adds r0, r5, 0
bl DestroyTask
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r1, [r2, 0x7]
@@ -12562,7 +12562,7 @@ sub_80DE008: @ 80DE008
lsrs r0, 24
mov r10, r0
movs r5, 0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
mov r9, r0
mov r8, r9
ldr r6, =gSprites
@@ -12666,7 +12666,7 @@ sub_80DE0F0: @ 80DE0F0
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r2, [r1, 0x4]
lsls r1, r0, 3
@@ -12708,7 +12708,7 @@ sub_80DE12C: @ 80DE12C
movs r0, 0x11
mov r9, r0
_080DE146:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
adds r0, 0xD
@@ -12789,7 +12789,7 @@ sub_80DE1E8: @ 80DE1E8
push {lr}
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r2, [r1, 0x4]
lsls r1, r0, 3
@@ -12881,10 +12881,10 @@ sub_80DE224: @ 80DE224
ldrh r1, [r5]
movs r0, 0xC
bl SetGpuReg
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
movs r0, 0xF0
strh r0, [r1]
- ldr r4, =gUnknown_02022E1A
+ ldr r4, =gBattle_BG1_Y
movs r0, 0xA0
strh r0, [r4]
movs r0, 0x14
@@ -12896,7 +12896,7 @@ sub_80DE224: @ 80DE224
movs r0, 0
str r0, [sp, 0x8]
add r0, sp, 0x8
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r1, [r4]
ldr r1, [r1, 0x28]
ldr r2, =0x05000400
@@ -12963,7 +12963,7 @@ sub_80DE350: @ 80DE350
bl RequestDma3Fill
movs r5, 0
str r5, [sp]
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r0, [r6]
ldr r1, [r0, 0x28]
ldr r2, =0x05000400
@@ -13004,9 +13004,9 @@ sub_80DE350: @ 80DE350
ldrh r1, [r3]
movs r0, 0xA
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r5, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r5, [r0]
ldr r7, =gSprites
_080DE3CA:
@@ -13051,10 +13051,10 @@ sub_80DE424: @ 80DE424
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
movs r0, 0
strh r0, [r1]
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
movs r0, 0xA0
strh r0, [r1]
movs r0, 0x62
@@ -13078,7 +13078,7 @@ sub_80DE464: @ 80DE464
push {lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldrh r0, [r1]
subs r0, 0x7
strh r0, [r1]
@@ -13136,7 +13136,7 @@ _080DE4D0:
_080DE4DA:
movs r2, 0
adds r6, r3, 0
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r3, =gUnknown_02039F26
_080DE4E2:
ldr r0, [r5]
@@ -13170,7 +13170,7 @@ _080DE52C:
ands r1, r0
cmp r1, 0
beq _080DE584
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r0, [r2, 0x7]
@@ -13201,7 +13201,7 @@ _080DE584:
bl sub_80DBAA0
b _080DE59A
_080DE58A:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
ldrb r1, [r0, 0x7]
@@ -13233,7 +13233,7 @@ sub_80DE5C0: @ 80DE5C0
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
ldrh r0, [r1]
adds r0, 0x7
strh r0, [r1]
@@ -13356,7 +13356,7 @@ sub_80DE69C: @ 80DE69C
mov r8, r0
movs r7, 0
ldr r6, =gSprites
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
_080DE6AE:
bl AllocOamMatrix
ldr r1, [r5]
@@ -13450,7 +13450,7 @@ _080DE74C:
adds r1, r2
mov r0, r8
strh r0, [r1, 0x8]
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0]
ldrb r0, [r2, 0x7]
@@ -13471,7 +13471,7 @@ sub_80DE794: @ 80DE794
lsls r0, 24
lsrs r6, r0, 24
ldr r2, =gSprites
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r0, [r3]
ldr r0, [r0, 0x14]
ldrb r1, [r0]
@@ -13515,7 +13515,7 @@ _080DE7CC:
_080DE7EC:
movs r4, 0
_080DE7EE:
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0x14]
lsls r0, r4, 2
@@ -13583,7 +13583,7 @@ sub_80DE864: @ 80DE864
push {r4-r7,lr}
lsls r0, 24
lsrs r7, r0, 24
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r1, [r0, 0x4]
lsls r0, r7, 3
@@ -13606,7 +13606,7 @@ sub_80DE864: @ 80DE864
movs r1, 0
movs r2, 0x14
bl memset
- bl sub_80A3934
+ bl ClearBattleAnimationVars
ldr r1, =gBattleMonForms
movs r2, 0
adds r0, r1, 0x3
@@ -13662,12 +13662,12 @@ _080DE8FA:
cmp r0, 0x7
bne _080DE99C
_080DE910:
- ldr r1, =gUnknown_02038432
+ ldr r1, =gAnimMoveTurn
movs r0, 0
b _080DE9A0
.pool
_080DE920:
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r0, [r6]
ldr r1, [r0, 0x4]
lsls r0, r7, 3
@@ -13695,17 +13695,17 @@ _080DE920:
b _080DE9A2
.pool
_080DE960:
- ldr r1, =gHappinessMoveAnim
+ ldr r1, =gAnimFriendship
movs r0, 0xFF
b _080DE9A0
.pool
_080DE96C:
- ldr r1, =gHappinessMoveAnim
+ ldr r1, =gAnimFriendship
movs r0, 0
b _080DE9A0
.pool
_080DE978:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0]
adds r2, r0, 0
@@ -13715,12 +13715,12 @@ _080DE978:
bne _080DE99C
movs r0, 0x2
strb r0, [r2]
- ldr r0, =gUnknown_02038432
+ ldr r0, =gAnimMoveTurn
strb r1, [r0]
b _080DE9A2
.pool
_080DE99C:
- ldr r1, =gUnknown_02038432
+ ldr r1, =gAnimMoveTurn
movs r0, 0x1
_080DE9A0:
strb r0, [r1]
@@ -13735,7 +13735,7 @@ _080DE9A2:
thumb_func_start sub_80DE9B0
sub_80DE9B0: @ 80DE9B0
push {r4,lr}
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0x18]
movs r1, 0
@@ -13763,7 +13763,7 @@ sub_80DE9DC: @ 80DE9DC
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r0, [r6]
ldr r0, [r0, 0x18]
strb r4, [r0, 0x5]
@@ -14260,7 +14260,7 @@ _080DEDE6:
b _080DEF90
.pool
_080DEE00:
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
cmp r0, 0x4
bhi _080DEE4C
@@ -14383,7 +14383,7 @@ _080DEF02:
mov r2, r9
lsls r1, r2, 5
adds r0, r1
- ldr r1, =gUnknown_02039F2C
+ ldr r1, =gScriptContestCategory
ldrh r1, [r1]
ldr r3, =0x00002e9a
adds r0, r3
@@ -14485,7 +14485,7 @@ _080DEFE6:
b _080DF03A
.pool
_080DEFF8:
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
cmp r0, 0x4
bhi _080DF038
@@ -14558,7 +14558,7 @@ sub_80DF080: @ 80DF080
push {r4-r7,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r3, [r2]
ldr r5, [r3, 0x10]
ldrb r1, [r5, 0x1]
@@ -14810,7 +14810,7 @@ sub_80DF250: @ 80DF250
movs r0, 0
str r0, [sp, 0x20]
movs r4, 0
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
mov r2, sp
adds r2, 0xC
str r2, [sp, 0x28]
@@ -14871,7 +14871,7 @@ _080DF2C2:
subs r2, r0
cmp r2, 0x32
bgt _080DF2EE
- ldr r7, =gUnknown_02039F34
+ ldr r7, =gContestResources
ldr r0, [r7]
ldr r2, [r0, 0x1C]
add r2, r9
@@ -14880,7 +14880,7 @@ _080DF2C2:
orrs r0, r1
strb r0, [r2, 0xD]
_080DF2EE:
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r0, [r1]
ldr r0, [r0, 0x1C]
mov r3, r9
@@ -14926,7 +14926,7 @@ _080DF336:
ldrb r0, [r0]
cmp r0, 0
beq _080DF354
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r2, [r0, 0x1C]
add r2, r9
@@ -14978,7 +14978,7 @@ _080DF38E:
mov r2, r8
cmp r2, 0
bne _080DF3B4
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r0, [r3]
ldr r2, [r0, 0x1C]
add r2, r9
@@ -14987,7 +14987,7 @@ _080DF38E:
orrs r0, r1
strb r0, [r2, 0xD]
_080DF3B4:
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r0, [r6]
ldr r0, [r0, 0x1C]
mov r7, r9
@@ -15031,7 +15031,7 @@ _080DF3EA:
ldr r2, [sp, 0x28]
strb r0, [r2, 0x5]
movs r4, 0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
mov r8, r0
ldr r7, [sp, 0x30]
@@ -15046,7 +15046,7 @@ _080DF40E:
mov r12, r4
cmp r0, 0
beq _080DF450
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r6, [r0]
ldr r3, [sp, 0x28]
mov r4, sp
@@ -15123,7 +15123,7 @@ _080DF4B6:
bne _080DF478
_080DF4C0:
bl Random
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r4, [r1, 0x1C]
ldr r1, [sp, 0x30]
@@ -15167,7 +15167,7 @@ sub_80DF4F8: @ 80DF4F8
_080DF514:
movs r7, 0
movs r3, 0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
mov r12, r0
_080DF51C:
adds r0, r3, r1
@@ -15253,7 +15253,7 @@ _080DF5A0:
bl __modsi3
lsls r0, 24
lsrs r5, r0, 24
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x1C]
add r0, r8
@@ -15295,7 +15295,7 @@ _080DF5F6:
bne _080DF628
mov r0, sp
strb r1, [r0]
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r0, [r1]
ldr r0, [r0, 0x1C]
ldrb r4, [r0, 0x1D]
@@ -15306,7 +15306,7 @@ _080DF628:
mov r1, sp
movs r0, 0
strb r0, [r1]
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r0, [r1]
ldr r0, [r0, 0x1C]
ldrb r4, [r0, 0xD]
@@ -15360,7 +15360,7 @@ _080DF682:
ldrb r6, [r0]
movs r2, 0x80
movs r3, 0
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r0, [r0, 0x1C]
lsls r1, r6, 4
@@ -15385,21 +15385,21 @@ _080DF6AE:
beq _080DF6AE
_080DF6C4:
mov r0, r9
- bl sub_80ECDA4
+ bl ContestLiveUpdates_BeforeInterview_1
mov r0, r10
- bl sub_80ECDF4
+ bl ContestLiveUpdates_BeforeInterview_2
ldr r5, [sp, 0x4]
lsrs r0, r5, 24
- bl sub_80ECE34
- ldr r0, =gUnknown_02039F34
+ bl ContestLiveUpdates_BeforeInterview_3
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x1C]
add r0, r8
ldrh r0, [r0, 0xA]
- bl sub_80ECE74
+ bl ContestLiveUpdates_BeforeInterview_4
adds r0, r4, 0
adds r1, r6, 0
- bl sub_80ECEB4
+ bl ContestLiveUpdates_BeforeInterview_5
_080DF6EE:
add sp, 0xC
pop {r3-r5}
@@ -15519,7 +15519,7 @@ _080DF7AE:
movs r2, 0x5
movs r3, 0x1
bl sub_80DEBD0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x1C]
lsls r0, r7, 4
@@ -15606,7 +15606,7 @@ _080DF884:
add r0, sp, 0x4
ldr r1, =gText_BDot
bl StringCopy
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x1C]
lsls r0, r7, 4
diff --git a/asm/contest_ai.s b/asm/contest_ai.s
index f28492886..a213c393c 100644
--- a/asm/contest_ai.s
+++ b/asm/contest_ai.s
@@ -10,7 +10,7 @@ sub_81562C4: @ 81562C4
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0xC]
movs r1, 0
@@ -57,7 +57,7 @@ _081562DE:
thumb_func_start sub_8156324
sub_8156324: @ 8156324
push {r4-r6,lr}
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r0, [r1]
ldr r0, [r0, 0xC]
ldr r0, [r0, 0x14]
@@ -98,7 +98,7 @@ _0815636C:
bl Random
adds r5, r0, 0
ands r5, r6
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r1, [r0, 0xC]
adds r0, r1, 0x5
@@ -135,7 +135,7 @@ sub_81563B0: @ 81563B0
push {r4-r7,lr}
mov r7, r8
push {r7}
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r0, [r0, 0xC]
ldrb r0, [r0]
@@ -144,7 +144,7 @@ sub_81563B0: @ 81563B0
beq _081564A0
adds r7, r5, 0
ldr r6, =gAIScriptPtr
- ldr r0, =gUnknown_02039E1E
+ ldr r0, =gUnknown_02039E00 + 30
mov r8, r0
_081563CC:
ldr r0, [r7]
@@ -211,7 +211,7 @@ _08156444:
orrs r0, r1
strb r0, [r2, 0x9]
_08156458:
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r3, [r0, 0xC]
ldrb r1, [r3, 0x9]
@@ -263,7 +263,7 @@ sub_81564AC: @ 81564AC
lsls r0, 24
lsrs r2, r0, 24
movs r1, 0
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r0, [r3]
ldr r0, [r0, 0x8]
b _081564CC
@@ -289,7 +289,7 @@ _081564D2:
thumb_func_start sub_81564DC
sub_81564DC: @ 81564DC
push {r4,lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r0, [r3]
ldr r0, [r0, 0xC]
adds r1, r0, 0x5
@@ -331,7 +331,7 @@ _08156516:
thumb_func_start sub_8156530
sub_8156530: @ 8156530
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
ldr r0, [r0]
@@ -349,7 +349,7 @@ sub_8156530: @ 8156530
sub_8156550: @ 8156550
push {lr}
bl sub_8156530
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -384,7 +384,7 @@ _08156590:
sub_8156594: @ 8156594
push {lr}
bl sub_8156530
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -419,7 +419,7 @@ _081565D4:
sub_81565D8: @ 81565D8
push {lr}
bl sub_8156530
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -454,7 +454,7 @@ _08156618:
sub_815661C: @ 815661C
push {lr}
bl sub_8156530
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -487,7 +487,7 @@ _0815665C:
thumb_func_start sub_8156660
sub_8156660: @ 8156660
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
ldr r0, [r0]
@@ -507,7 +507,7 @@ sub_8156660: @ 8156660
sub_8156684: @ 8156684
push {lr}
bl sub_8156660
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -542,7 +542,7 @@ _081566C4:
sub_81566C8: @ 81566C8
push {lr}
bl sub_8156660
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -577,7 +577,7 @@ _08156708:
sub_815670C: @ 815670C
push {lr}
bl sub_8156660
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -612,7 +612,7 @@ _0815674C:
sub_8156750: @ 8156750
push {lr}
bl sub_8156660
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -645,7 +645,7 @@ _08156790:
thumb_func_start sub_8156794
sub_8156794: @ 8156794
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r0, [r0, 0x8]
@@ -667,7 +667,7 @@ sub_8156794: @ 8156794
sub_81567BC: @ 81567BC
push {lr}
bl sub_8156794
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -702,7 +702,7 @@ _081567FC:
sub_8156800: @ 8156800
push {lr}
bl sub_8156794
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -737,7 +737,7 @@ _08156840:
sub_8156844: @ 8156844
push {lr}
bl sub_8156794
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -772,7 +772,7 @@ _08156884:
sub_8156888: @ 8156888
push {lr}
bl sub_8156794
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -806,7 +806,7 @@ _081568C8:
thumb_func_start sub_81568CC
sub_81568CC: @ 81568CC
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r4, [r0, 0xC]
adds r1, r4, 0
@@ -839,7 +839,7 @@ sub_81568CC: @ 81568CC
sub_815690C: @ 815690C
push {lr}
bl sub_81568CC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -874,7 +874,7 @@ _0815694C:
sub_8156950: @ 8156950
push {lr}
bl sub_81568CC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -909,7 +909,7 @@ _08156990:
sub_8156994: @ 8156994
push {lr}
bl sub_81568CC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -944,7 +944,7 @@ _081569D4:
sub_81569D8: @ 81569D8
push {lr}
bl sub_81568CC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -977,7 +977,7 @@ _08156A18:
thumb_func_start sub_8156A1C
sub_8156A1C: @ 8156A1C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r3, [r0, 0xC]
adds r1, r3, 0
@@ -1002,7 +1002,7 @@ sub_8156A1C: @ 8156A1C
sub_8156A48: @ 8156A48
push {r4,r5,lr}
bl sub_8156A1C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -1043,7 +1043,7 @@ _08156A90:
sub_8156A98: @ 8156A98
push {r4,r5,lr}
bl sub_8156A1C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -1084,7 +1084,7 @@ _08156AE0:
sub_8156AE8: @ 8156AE8
push {r4,r5,lr}
bl sub_8156A1C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -1125,7 +1125,7 @@ _08156B30:
sub_8156B38: @ 8156B38
push {r4,r5,lr}
bl sub_8156A1C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -1164,7 +1164,7 @@ _08156B80:
thumb_func_start sub_8156B88
sub_8156B88: @ 8156B88
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r1, =gUnknown_02039F00
@@ -1187,7 +1187,7 @@ sub_8156B88: @ 8156B88
sub_8156BB4: @ 8156BB4
push {r4,r5,lr}
bl sub_8156B88
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -1228,7 +1228,7 @@ _08156BFC:
sub_8156C04: @ 8156C04
push {r4,r5,lr}
bl sub_8156B88
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -1269,7 +1269,7 @@ _08156C4C:
sub_8156C54: @ 8156C54
push {r4,r5,lr}
bl sub_8156B88
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -1310,7 +1310,7 @@ _08156C9C:
sub_8156CA4: @ 8156CA4
push {r4,r5,lr}
bl sub_8156B88
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -1349,10 +1349,10 @@ _08156CEC:
thumb_func_start sub_8156CF4
sub_8156CF4: @ 8156CF4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
strh r0, [r1, 0x18]
ldr r1, =gAIScriptPtr
@@ -1367,7 +1367,7 @@ sub_8156CF4: @ 8156CF4
sub_8156D18: @ 8156D18
push {lr}
bl sub_8156CF4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -1402,7 +1402,7 @@ _08156D58:
sub_8156D5C: @ 8156D5C
push {lr}
bl sub_8156CF4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -1437,7 +1437,7 @@ _08156D9C:
sub_8156DA0: @ 8156DA0
push {r4,lr}
ldr r2, =gUnknown_02039E00
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0xC]
ldrb r1, [r0, 0x4]
@@ -1469,7 +1469,7 @@ sub_8156DA0: @ 8156DA0
sub_8156DE4: @ 8156DE4
push {r4,lr}
bl sub_8156DA0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
ldr r3, =gAIScriptPtr
@@ -1506,7 +1506,7 @@ _08156E24:
sub_8156E2C: @ 8156E2C
push {r4,lr}
bl sub_8156DA0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
ldr r3, =gAIScriptPtr
@@ -1543,7 +1543,7 @@ _08156E6C:
sub_8156E74: @ 8156E74
push {r4,lr}
bl sub_8156DA0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
ldr r3, =gAIScriptPtr
@@ -1580,7 +1580,7 @@ _08156EB4:
sub_8156EBC: @ 8156EBC
push {r4,lr}
bl sub_8156DA0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
ldr r3, =gAIScriptPtr
@@ -1616,7 +1616,7 @@ _08156EFC:
thumb_func_start sub_8156F04
sub_8156F04: @ 8156F04
ldr r2, =gUnknown_02039E00
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r3, [r0, 0xC]
ldrb r1, [r3, 0x4]
@@ -1646,7 +1646,7 @@ sub_8156F04: @ 8156F04
sub_8156F44: @ 8156F44
push {lr}
bl sub_8156F04
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -1681,7 +1681,7 @@ _08156F84:
sub_8156F88: @ 8156F88
push {lr}
bl sub_8156F04
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -1715,7 +1715,7 @@ _08156FC8:
thumb_func_start sub_8156FCC
sub_8156FCC: @ 8156FCC
ldr r2, =gUnknown_02039E00
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r3, [r0, 0xC]
ldrb r1, [r3, 0x4]
@@ -1749,7 +1749,7 @@ sub_8156FCC: @ 8156FCC
sub_8157018: @ 8157018
push {lr}
bl sub_8156FCC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -1784,7 +1784,7 @@ _08157058:
sub_815705C: @ 815705C
push {lr}
bl sub_8156FCC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -1819,7 +1819,7 @@ _0815709C:
sub_81570A0: @ 81570A0
push {r4-r7,lr}
ldr r2, =gUnknown_02039E00
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0xC]
ldrb r0, [r1, 0x4]
@@ -1887,7 +1887,7 @@ _0815711A:
sub_815712C: @ 815712C
push {lr}
bl sub_81570A0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -1924,7 +1924,7 @@ _0815716C:
sub_8157174: @ 8157174
push {r4-r7,lr}
ldr r2, =gUnknown_02039E00
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0xC]
ldrb r0, [r1, 0x4]
@@ -1992,7 +1992,7 @@ _081571EE:
sub_8157200: @ 8157200
push {lr}
bl sub_8157174
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2029,7 +2029,7 @@ _08157240:
sub_8157248: @ 8157248
push {r4,lr}
ldr r2, =gUnknown_02039E00
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r4, [r0, 0xC]
ldrb r1, [r4, 0x4]
@@ -2069,7 +2069,7 @@ sub_8157248: @ 8157248
sub_81572A4: @ 81572A4
push {lr}
bl sub_8157248
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2104,7 +2104,7 @@ _081572E4:
sub_81572E8: @ 81572E8
push {lr}
bl sub_8157248
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2139,7 +2139,7 @@ _08157328:
sub_815732C: @ 815732C
push {lr}
bl sub_8157248
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2174,7 +2174,7 @@ _0815736C:
sub_8157370: @ 8157370
push {lr}
bl sub_8157248
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2209,7 +2209,7 @@ _081573B0:
sub_81573B4: @ 81573B4
push {r4,lr}
ldr r2, =gUnknown_02039E00
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r4, [r0, 0xC]
ldrb r1, [r4, 0x4]
@@ -2249,7 +2249,7 @@ sub_81573B4: @ 81573B4
sub_8157410: @ 8157410
push {lr}
bl sub_81573B4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2284,7 +2284,7 @@ _08157450:
sub_8157454: @ 8157454
push {lr}
bl sub_81573B4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2319,7 +2319,7 @@ _08157494:
sub_8157498: @ 8157498
push {lr}
bl sub_81573B4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2354,7 +2354,7 @@ _081574D8:
sub_81574DC: @ 81574DC
push {lr}
bl sub_81573B4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2389,7 +2389,7 @@ _0815751C:
sub_8157520: @ 8157520
push {r4,r5,lr}
ldr r3, =gUnknown_02039E00
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r4, [r5]
ldr r1, [r4, 0xC]
ldrb r0, [r1, 0x4]
@@ -2435,7 +2435,7 @@ _08157560:
sub_8157578: @ 8157578
push {lr}
bl sub_8157520
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2470,7 +2470,7 @@ _081575B8:
sub_81575BC: @ 81575BC
push {lr}
bl sub_8157520
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2505,7 +2505,7 @@ _081575FC:
sub_8157600: @ 8157600
push {lr}
bl sub_8157520
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2540,7 +2540,7 @@ _08157640:
sub_8157644: @ 8157644
push {lr}
bl sub_8157520
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2576,7 +2576,7 @@ sub_8157688: @ 8157688
push {r4-r6,lr}
movs r3, 0
ldr r2, =gUnknown_02039E00
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
ldrb r1, [r0, 0x4]
@@ -2592,7 +2592,7 @@ sub_8157688: @ 8157688
adds r6, r2, 0
_081576AA:
lsls r1, r4, 1
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
adds r0, 0x41
@@ -2619,7 +2619,7 @@ _081576D2:
_081576DC:
movs r3, 0x1
_081576DE:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
strh r3, [r0, 0x18]
@@ -2637,7 +2637,7 @@ _081576DE:
sub_8157700: @ 8157700
push {lr}
bl sub_8157688
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2674,7 +2674,7 @@ _08157740:
sub_8157748: @ 8157748
push {lr}
bl sub_8157688
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2712,7 +2712,7 @@ sub_8157790: @ 8157790
push {r4-r6,lr}
movs r3, 0
ldr r2, =gUnknown_02039E00
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
ldrb r1, [r0, 0x4]
@@ -2728,7 +2728,7 @@ sub_8157790: @ 8157790
adds r6, r2, 0
_081577B2:
lsls r1, r4, 1
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
adds r0, 0x41
@@ -2754,7 +2754,7 @@ _081577D8:
_081577E2:
movs r3, 0x1
_081577E4:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
strh r3, [r0, 0x18]
@@ -2772,7 +2772,7 @@ _081577E4:
sub_8157808: @ 8157808
push {lr}
bl sub_8157790
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2809,7 +2809,7 @@ _08157848:
sub_8157850: @ 8157850
push {lr}
bl sub_8157790
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2847,7 +2847,7 @@ sub_8157898: @ 8157898
push {r4-r6,lr}
movs r5, 0
ldr r3, =gUnknown_02039E00
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r4, [r6]
ldr r1, [r4, 0xC]
ldrb r0, [r1, 0x4]
@@ -2893,7 +2893,7 @@ _081578D6:
sub_81578F8: @ 81578F8
push {lr}
bl sub_8157898
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2930,7 +2930,7 @@ _08157938:
sub_8157940: @ 8157940
push {lr}
bl sub_8157898
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -2972,7 +2972,7 @@ sub_8157988: @ 8157988
bl sub_81564AC
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r5, [r1, 0xC]
ldr r2, [r1, 0x4]
@@ -3000,7 +3000,7 @@ sub_8157988: @ 8157988
sub_81579CC: @ 81579CC
push {lr}
bl sub_8157988
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3035,7 +3035,7 @@ _08157A0C:
sub_8157A10: @ 8157A10
push {lr}
bl sub_8157988
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3070,7 +3070,7 @@ _08157A50:
sub_8157A54: @ 8157A54
push {lr}
bl sub_8157988
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3105,7 +3105,7 @@ _08157A94:
sub_8157A98: @ 8157A98
push {lr}
bl sub_8157988
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3152,7 +3152,7 @@ sub_8157ADC: @ 8157ADC
cmp r0, 0
beq _08157B18
ldr r2, =gContestMoves
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r4, 3
@@ -3167,7 +3167,7 @@ sub_8157ADC: @ 8157ADC
orrs r0, r1
lsrs r6, r0, 31
_08157B18:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
strh r6, [r0, 0x18]
@@ -3184,7 +3184,7 @@ _08157B18:
sub_8157B38: @ 8157B38
push {lr}
bl sub_8157ADC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3219,7 +3219,7 @@ _08157B78:
sub_8157B7C: @ 8157B7C
push {lr}
bl sub_8157ADC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3254,7 +3254,7 @@ _08157BBC:
sub_8157BC0: @ 8157BC0
push {lr}
bl sub_8157ADC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3289,7 +3289,7 @@ _08157C00:
sub_8157C04: @ 8157C04
push {lr}
bl sub_8157ADC
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3333,14 +3333,14 @@ sub_8157C48: @ 8157C48
lsls r0, 24
cmp r0, 0
beq _08157C74
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
movs r0, 0
b _08157C7C
.pool
_08157C74:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
movs r0, 0x1
@@ -3359,7 +3359,7 @@ _08157C7C:
sub_8157C94: @ 8157C94
push {lr}
bl sub_8157C48
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3396,7 +3396,7 @@ _08157CD4:
sub_8157CDC: @ 8157CDC
push {lr}
bl sub_8157C48
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3438,7 +3438,7 @@ sub_8157D24: @ 8157D24
bl sub_81564AC
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r3, [r1, 0xC]
ldr r2, [r1, 0x4]
@@ -3463,7 +3463,7 @@ sub_8157D24: @ 8157D24
sub_8157D60: @ 8157D60
push {lr}
bl sub_8157D24
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3500,7 +3500,7 @@ _08157DA0:
sub_8157DA8: @ 8157DA8
push {lr}
bl sub_8157D24
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3542,7 +3542,7 @@ sub_8157DF0: @ 8157DF0
bl sub_81564AC
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r5, [r1, 0xC]
ldr r3, [r1, 0x4]
@@ -3574,7 +3574,7 @@ sub_8157DF0: @ 8157DF0
sub_8157E3C: @ 8157E3C
push {lr}
bl sub_8157DF0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3611,7 +3611,7 @@ _08157E7C:
sub_8157E84: @ 8157E84
push {lr}
bl sub_8157DF0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3648,7 +3648,7 @@ _08157EC4:
sub_8157ECC: @ 8157ECC
push {lr}
bl sub_8157DF0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3685,7 +3685,7 @@ _08157F0C:
sub_8157F14: @ 8157F14
push {lr}
bl sub_8157DF0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3726,7 +3726,7 @@ sub_8157F5C: @ 8157F5C
ldrb r0, [r0, 0x1]
bl sub_81564AC
lsls r0, 24
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r3, [r1, 0xC]
ldr r2, =gUnknown_02039F00
@@ -3754,7 +3754,7 @@ sub_8157F5C: @ 8157F5C
sub_8157FA0: @ 8157FA0
push {lr}
bl sub_8157F5C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3791,7 +3791,7 @@ _08157FE0:
sub_8157FE8: @ 8157FE8
push {lr}
bl sub_8157F5C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3828,7 +3828,7 @@ _08158028:
sub_8158030: @ 8158030
push {lr}
bl sub_8157F5C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3865,7 +3865,7 @@ _08158070:
sub_8158078: @ 8158078
push {lr}
bl sub_8157F5C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3908,7 +3908,7 @@ sub_81580C0: @ 81580C0
lsls r0, 24
ldr r3, [r5]
ldrb r2, [r3, 0x2]
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r4, [r1]
ldr r1, [r4]
lsrs r0, 23
@@ -3935,7 +3935,7 @@ sub_81580C0: @ 81580C0
sub_8158108: @ 8158108
push {lr}
bl sub_81580C0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -3970,7 +3970,7 @@ _08158148:
sub_815814C: @ 815814C
push {lr}
bl sub_81580C0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4005,7 +4005,7 @@ _0815818C:
sub_8158190: @ 8158190
push {lr}
bl sub_81580C0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4040,7 +4040,7 @@ _081581D0:
sub_81581D4: @ 81581D4
push {lr}
bl sub_81580C0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4082,7 +4082,7 @@ sub_8158218: @ 8158218
lsrs r0, 24
ldr r3, [r5]
ldrb r2, [r3, 0x2]
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r4, [r1]
ldr r1, [r4]
lsls r2, 2
@@ -4105,7 +4105,7 @@ sub_8158218: @ 8158218
sub_8158254: @ 8158254
push {lr}
bl sub_8158218
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4140,7 +4140,7 @@ _08158294:
sub_8158298: @ 8158298
push {lr}
bl sub_8158218
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4175,7 +4175,7 @@ _081582D8:
sub_81582DC: @ 81582DC
push {lr}
bl sub_8158218
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4210,7 +4210,7 @@ _0815831C:
sub_8158320: @ 8158320
push {lr}
bl sub_8158218
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4251,7 +4251,7 @@ sub_8158364: @ 8158364
lsls r0, 24
ldr r3, [r5]
ldrb r2, [r3, 0x2]
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r4, [r1]
ldr r1, [r4]
lsrs r0, 23
@@ -4282,7 +4282,7 @@ sub_8158364: @ 8158364
sub_81583B8: @ 81583B8
push {lr}
bl sub_8158364
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4317,7 +4317,7 @@ _081583F8:
sub_81583FC: @ 81583FC
push {lr}
bl sub_8158364
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -4351,7 +4351,7 @@ _0815843C:
thumb_func_start sub_8158440
sub_8158440: @ 8158440
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r3, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4374,7 +4374,7 @@ sub_8158440: @ 8158440
thumb_func_start sub_815846C
sub_815846C: @ 815846C
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r3, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4399,7 +4399,7 @@ sub_815846C: @ 815846C
thumb_func_start sub_815849C
sub_815849C: @ 815849C
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4427,7 +4427,7 @@ sub_815849C: @ 815849C
thumb_func_start sub_81584D4
sub_81584D4: @ 81584D4
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4454,7 +4454,7 @@ sub_81584D4: @ 81584D4
thumb_func_start sub_8158508
sub_8158508: @ 8158508
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4481,7 +4481,7 @@ sub_8158508: @ 8158508
thumb_func_start sub_815853C
sub_815853C: @ 815853C
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4524,7 +4524,7 @@ _08158586:
thumb_func_start sub_815858C
sub_815858C: @ 815858C
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4567,7 +4567,7 @@ _081585D6:
thumb_func_start sub_81585DC
sub_81585DC: @ 81585DC
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4610,7 +4610,7 @@ _08158626:
thumb_func_start sub_815862C
sub_815862C: @ 815862C
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4653,7 +4653,7 @@ _08158676:
thumb_func_start sub_815867C
sub_815867C: @ 815867C
push {r4,r5,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4696,7 +4696,7 @@ _081586C8:
thumb_func_start sub_81586D0
sub_81586D0: @ 81586D0
push {r4,r5,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4739,7 +4739,7 @@ _0815871C:
thumb_func_start sub_8158724
sub_8158724: @ 8158724
push {r4,r5,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4782,7 +4782,7 @@ _08158770:
thumb_func_start sub_8158778
sub_8158778: @ 8158778
push {r4,r5,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4828,7 +4828,7 @@ sub_81587CC: @ 81587CC
bl Random
movs r2, 0xFF
ands r2, r0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4869,7 +4869,7 @@ sub_815881C: @ 815881C
bl Random
movs r2, 0xFF
ands r2, r0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0xC]
ldr r4, =gAIScriptPtr
@@ -4955,7 +4955,7 @@ sub_81588BC: @ 81588BC
lsls r0, 24
cmp r0, 0
bne _081588D6
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0xC]
ldrb r1, [r2, 0x9]
@@ -4971,7 +4971,7 @@ _081588D6:
thumb_func_start sub_81588E0
sub_81588E0: @ 81588E0
push {r4,lr}
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r1, [r1]
ldr r3, [r1, 0xC]
adds r4, r3, 0
@@ -4993,7 +4993,7 @@ sub_81588E0: @ 81588E0
thumb_func_start sub_8158908
sub_8158908: @ 8158908
push {lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r0, [r3]
ldr r0, [r0, 0xC]
adds r1, r0, 0
@@ -5030,10 +5030,10 @@ sub_8158948: @ 8158948
push {r4-r6,lr}
movs r5, 0
movs r4, 0
- ldr r6, =gUnknown_02039E1E
+ ldr r6, =gUnknown_02039E00 + 30
_08158950:
lsls r1, r4, 1
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
adds r0, 0x41
@@ -5057,7 +5057,7 @@ _08158980:
cmp r4, 0x3
ble _08158950
_08158986:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
strh r5, [r0, 0x18]
@@ -5075,7 +5075,7 @@ _08158986:
sub_81589A4: @ 81589A4
push {lr}
bl sub_8158948
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -5112,7 +5112,7 @@ _081589E4:
sub_81589EC: @ 81589EC
push {lr}
bl sub_8158948
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -5158,7 +5158,7 @@ sub_8158A34: @ 8158A34
movs r4, 0
ldr r0, =gUnknown_02039E00
mov r12, r0
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r0, [r0, 0xC]
adds r0, 0x41
@@ -5205,7 +5205,7 @@ _08158A8E:
sub_8158AA0: @ 8158AA0
push {lr}
bl sub_8158A34
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
@@ -5242,7 +5242,7 @@ _08158AE0:
sub_8158AE8: @ 8158AE8
push {lr}
bl sub_8158A34
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0xC]
movs r1, 0x18
diff --git a/asm/contest_effect.s b/asm/contest_effect.s
index 09c06b079..f3c234503 100644
--- a/asm/contest_effect.s
+++ b/asm/contest_effect.s
@@ -68,7 +68,7 @@ ContestEffectFunc_080E547C: @ 80E547C
thumb_func_start ContestEffectFunc_080E5480
ContestEffectFunc_080E5480: @ 80E5480
push {lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r1, [r3]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -94,7 +94,7 @@ ContestEffectFunc_080E5480: @ 80E5480
thumb_func_start ContestEffectFunc_080E54B0
ContestEffectFunc_080E54B0: @ 80E54B0
push {lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r1, [r3]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -119,7 +119,7 @@ ContestEffectFunc_080E54B0: @ 80E54B0
thumb_func_start ContestEffectFunc_080E54E0
ContestEffectFunc_080E54E0: @ 80E54E0
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r1, [r3]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -165,7 +165,7 @@ ContestEffectFunc_080E54E0: @ 80E54E0
thumb_func_start ContestEffectFunc_080E5534
ContestEffectFunc_080E5534: @ 80E5534
push {lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r1, [r3]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -189,7 +189,7 @@ ContestEffectFunc_080E5534: @ 80E5534
thumb_func_start ContestEffectFunc_080E5560
ContestEffectFunc_080E5560: @ 80E5560
push {lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r1, [r3]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -215,7 +215,7 @@ ContestEffectFunc_080E5560: @ 80E5560
thumb_func_start ContestEffectFunc_080E5590
ContestEffectFunc_080E5590: @ 80E5590
push {lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r1, [r3]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -239,7 +239,7 @@ ContestEffectFunc_080E5590: @ 80E5590
thumb_func_start ContestEffectFunc_080E55BC
ContestEffectFunc_080E55BC: @ 80E55BC
push {lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r1, [r3]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -266,7 +266,7 @@ ContestEffectFunc_080E55BC: @ 80E55BC
ContestEffectFunc_080E55EC: @ 80E55EC
push {r4,r5,lr}
movs r2, 0
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
ldr r0, [r5]
ldr r1, [r0, 0x8]
ldrb r4, [r1, 0x11]
@@ -293,7 +293,7 @@ _080E560A:
cmp r0, r1
bne _080E560A
_080E5622:
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r0, [r1]
ldr r0, [r0, 0x8]
strb r2, [r0, 0x8]
@@ -307,14 +307,14 @@ _080E5622:
_080E563A:
cmp r2, 0
bne _080E564C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
movs r1, 0x36
bl sub_80DD3F0
_080E564C:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -330,7 +330,7 @@ _080E564C:
ContestEffectFunc_080E5664: @ 80E5664
push {r4-r6,lr}
movs r1, 0
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r0, [r0, 0x8]
ldrb r5, [r0, 0x11]
@@ -359,7 +359,7 @@ _080E5698:
adds r3, 0x1
cmp r3, 0x3
ble _080E567E
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
adds r0, 0x8
@@ -372,14 +372,14 @@ _080E5698:
_080E56B4:
cmp r1, 0
bne _080E56C6
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
movs r1, 0x36
bl sub_80DD3F0
_080E56C6:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -409,7 +409,7 @@ ContestEffectFunc_080E56E0: @ 80E56E0
bhi _080E5702
movs r1, 0x28
_080E5702:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
strh r1, [r0, 0x4]
@@ -425,7 +425,7 @@ ContestEffectFunc_080E5718: @ 80E5718
mov r7, r8
push {r7}
movs r7, 0
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r0, [r1]
ldr r0, [r0, 0x8]
ldrb r5, [r0, 0x11]
@@ -521,7 +521,7 @@ ContestEffectFunc_080E57CC: @ 80E57CC
push {r5-r7}
movs r0, 0
mov r9, r0
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r0, [r1]
ldr r0, [r0, 0x8]
ldrb r2, [r0, 0x11]
@@ -619,7 +619,7 @@ ContestEffectFunc_080E588C: @ 80E588C
push {r6,r7}
movs r0, 0
mov r9, r0
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r0, [r1]
ldr r0, [r0, 0x8]
ldrb r7, [r0, 0x11]
@@ -674,7 +674,7 @@ _080E58DA:
_080E5900:
adds r6, 0x1C
adds r5, 0x1
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
cmp r5, 0x3
ble _080E58B0
_080E590A:
@@ -704,7 +704,7 @@ _080E5928:
thumb_func_start ContestEffectFunc_080E5938
ContestEffectFunc_080E5938: @ 80E5938
push {r4,lr}
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r1, [r4]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -732,7 +732,7 @@ ContestEffectFunc_080E5938: @ 80E5938
thumb_func_start ContestEffectFunc_080E5970
ContestEffectFunc_080E5970: @ 80E5970
push {r4,lr}
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r1, [r4]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -765,7 +765,7 @@ ContestEffectFunc_080E59B0: @ 80E59B0
push {lr}
movs r0, 0
bl sub_80E6934
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -781,7 +781,7 @@ ContestEffectFunc_080E59D0: @ 80E59D0
push {lr}
movs r0, 0x1
bl sub_80E6934
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -797,7 +797,7 @@ ContestEffectFunc_080E59F0: @ 80E59F0
push {lr}
movs r0, 0x2
bl sub_80E6934
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -813,7 +813,7 @@ ContestEffectFunc_080E5A10: @ 80E5A10
push {lr}
movs r0, 0x3
bl sub_80E6934
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -829,7 +829,7 @@ ContestEffectFunc_080E5A30: @ 80E5A30
push {lr}
movs r0, 0x4
bl sub_80E6934
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -844,7 +844,7 @@ ContestEffectFunc_080E5A30: @ 80E5A30
ContestEffectFunc_080E5A50: @ 80E5A50
push {r4-r6,lr}
movs r4, 0
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r0, [r0, 0x8]
ldrb r1, [r0, 0x11]
@@ -855,7 +855,7 @@ ContestEffectFunc_080E5A50: @ 80E5A50
beq _080E5AB0
movs r5, 0
_080E5A68:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r1, [r0, 0x8]
ldrb r0, [r1, 0x11]
@@ -932,7 +932,7 @@ ContestEffectFunc_080E5AD4: @ 80E5AD4
mov r10, r3
movs r6, 0
_080E5B00:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r2, [r0]
ldr r1, [r2, 0x8]
ldrb r0, [r1, 0x11]
@@ -1000,7 +1000,7 @@ _080E5B76:
bge _080E5B76
_080E5B7E:
movs r5, 0
- ldr r7, =gUnknown_02039F34
+ ldr r7, =gContestResources
movs r6, 0
mov r4, r10
_080E5B86:
@@ -1125,7 +1125,7 @@ _080E5C70:
lsrs r0, 24
mov r9, r0
_080E5C86:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
adds r0, 0xD
@@ -1139,7 +1139,7 @@ _080E5C86:
cmp r0, 0xFF
bne _080E5C16
_080E5CA0:
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r0, [r6]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -1173,7 +1173,7 @@ ContestEffectFunc_080E5CD4: @ 80E5CD4
movs r0, 0
mov r8, r0
movs r6, 0
- ldr r7, =gUnknown_02039F34
+ ldr r7, =gContestResources
movs r5, 0
_080E5CE4:
ldr r2, [r7]
@@ -1228,7 +1228,7 @@ _080E5D46:
adds r6, 0x1
cmp r6, 0x3
ble _080E5CE4
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -1256,7 +1256,7 @@ ContestEffectFunc_080E5D7C: @ 80E5D7C
push {r4-r7,lr}
movs r7, 0
movs r4, 0
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
movs r6, 0
_080E5D86:
ldr r3, [r5]
@@ -1301,7 +1301,7 @@ _080E5DD2:
adds r4, 0x1
cmp r4, 0x3
ble _080E5D86
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -1325,7 +1325,7 @@ _080E5DF8:
ContestEffectFunc_080E5E04: @ 80E5E04
push {r4,lr}
ldr r1, =gUnknown_02039F26
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r4, [r0]
ldr r0, [r4, 0x8]
ldrb r2, [r0, 0x11]
@@ -1366,7 +1366,7 @@ _080E5E46:
ContestEffectFunc_080E5E5C: @ 80E5E5C
push {r4,lr}
ldr r1, =gUnknown_02039F26
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r4, [r0]
ldr r0, [r4, 0x8]
ldrb r2, [r0, 0x11]
@@ -1408,7 +1408,7 @@ ContestEffectFunc_080E5EB4: @ 80E5EB4
push {r4-r7,lr}
movs r1, 0
movs r5, 0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r4, [r0]
ldr r2, [r4, 0x8]
ldrb r0, [r2, 0x11]
@@ -1434,7 +1434,7 @@ _080E5EDA:
bge _080E5EE8
movs r5, 0
_080E5EE8:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r3, [r0]
ldr r0, [r3, 0x8]
ldrb r2, [r0, 0x11]
@@ -1467,7 +1467,7 @@ _080E5F0C:
movs r1, 0x11
bl sub_80DD3D4
_080E5F2C:
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r1, [r4]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -1498,7 +1498,7 @@ _080E5F2C:
ContestEffectFunc_080E5F64: @ 80E5F64
push {r4-r7,lr}
movs r6, 0
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r4, [r0]
ldr r2, [r4, 0x8]
ldrb r1, [r2, 0x11]
@@ -1567,7 +1567,7 @@ _080E5FDE:
thumb_func_start ContestEffectFunc_080E5FE4
ContestEffectFunc_080E5FE4: @ 80E5FE4
push {r4,r5,lr}
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
ldr r3, [r1]
ldr r0, [r3, 0x8]
ldrb r2, [r0, 0x11]
@@ -1647,7 +1647,7 @@ ContestEffectFunc_080E6068: @ 80E6068
cmp r0, 0x2
bhi _080E6098
movs r4, 0xA
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -1659,7 +1659,7 @@ _080E6098:
cmp r0, 0x5
bhi _080E60B4
movs r4, 0x14
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -1671,7 +1671,7 @@ _080E60B4:
cmp r0, 0x7
bhi _080E60D0
movs r4, 0x28
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -1683,7 +1683,7 @@ _080E60D0:
cmp r1, 0x8
bhi _080E60EC
movs r4, 0x3C
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -1693,14 +1693,14 @@ _080E60D0:
.pool
_080E60EC:
movs r4, 0x50
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
movs r1, 0x1E
bl sub_80DD3D4
_080E60FC:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r1, [r0]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -1721,7 +1721,7 @@ ContestEffectFunc_080E611C: @ 80E611C
push {r4-r7,lr}
mov r7, r8
push {r7}
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r3, [r0, 0x8]
ldrb r0, [r3, 0x11]
@@ -1743,7 +1743,7 @@ _080E6140:
adds r5, r0, 0
cmp r6, r1
beq _080E616A
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
_080E614E:
lsls r0, r2, 24
movs r2, 0x80
@@ -1845,7 +1845,7 @@ ContestEffectFunc_080E620C: @ 80E620C
mov r7, r9
mov r6, r8
push {r6,r7}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r3, [r0]
ldr r1, [r3, 0x8]
ldrb r2, [r1, 0x11]
@@ -1928,7 +1928,7 @@ _080E62AC:
thumb_func_start ContestEffectFunc_080E62B8
ContestEffectFunc_080E62B8: @ 80E62B8
push {r4-r7,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r1, [r0, 0x11]
@@ -1939,7 +1939,7 @@ ContestEffectFunc_080E62B8: @ 80E62B8
movs r5, 0
movs r6, 0
_080E62CE:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r4, [r0]
ldr r1, [r4, 0x8]
ldrb r2, [r1, 0x11]
@@ -1994,7 +1994,7 @@ _080E632E:
thumb_func_start ContestEffectFunc_080E6334
ContestEffectFunc_080E6334: @ 80E6334
push {r4,lr}
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r1, [r4]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -2046,7 +2046,7 @@ _080E6390:
thumb_func_start ContestEffectFunc_080E6398
ContestEffectFunc_080E6398: @ 80E6398
push {lr}
- ldr r3, =gUnknown_02039F34
+ ldr r3, =gContestResources
ldr r1, [r3]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -2090,7 +2090,7 @@ _080E63E4:
ContestEffectFunc_080E63E8: @ 80E63E8
push {r4-r7,lr}
sub sp, 0x4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r2, [r0]
ldr r1, [r2]
ldrb r1, [r1, 0x1]
@@ -2258,7 +2258,7 @@ ContestEffectFunc_080E6520: @ 80E6520
mov r7, r8
push {r7}
sub sp, 0x4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r2, [r0]
ldr r1, [r2]
ldrb r1, [r1, 0x1]
@@ -2434,7 +2434,7 @@ ContestEffectFunc_080E6664: @ 80E6664
ContestEffectFunc_080E6668: @ 80E6668
push {r4-r7,lr}
sub sp, 0x8
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r1, [r0]
ldr r0, [r1]
ldrb r0, [r0, 0x1]
@@ -2517,7 +2517,7 @@ _080E66FC:
cmp r0, 0x3
ble _080E66AA
movs r6, 0
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
adds r4, r5, 0
_080E6712:
ldr r0, [r4]
@@ -2576,7 +2576,7 @@ _080E676C:
ContestEffectFunc_080E6778: @ 80E6778
push {lr}
ldr r3, =gContestMoves
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r1, [r0]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -2590,7 +2590,7 @@ ContestEffectFunc_080E6778: @ 80E6778
adds r0, r3
ldrb r0, [r0, 0x1]
lsls r0, 29
- ldr r1, =gUnknown_02039F2C
+ ldr r1, =gScriptContestCategory
lsrs r0, 29
ldrh r1, [r1]
cmp r0, r1
@@ -2613,7 +2613,7 @@ ContestEffectFunc_080E67BC: @ 80E67BC
movs r0, 0
mov r8, r0
movs r4, 0
- ldr r5, =gUnknown_02039F34
+ ldr r5, =gContestResources
movs r6, 0
_080E67CC:
ldr r3, [r5]
@@ -2672,14 +2672,14 @@ _080E682E:
mov r7, r8
cmp r7, 0
bne _080E684A
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
movs r1, 0x36
bl sub_80DD3F0
_080E684A:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -2696,7 +2696,7 @@ _080E684A:
thumb_func_start ContestEffectFunc_080E6868
ContestEffectFunc_080E6868: @ 80E6868
push {r4,lr}
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r1, [r0]
ldr r0, [r1]
ldrb r0, [r0, 0x13]
@@ -2745,7 +2745,7 @@ _080E68C2:
movs r1, 0x1E
bl sub_80DD3D4
_080E68CE:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r1, [r0]
ldr r0, [r1, 0x8]
ldrb r2, [r0, 0x11]
@@ -2764,7 +2764,7 @@ _080E68CE:
thumb_func_start ContestEffectFunc_080E68EC
ContestEffectFunc_080E68EC: @ 80E68EC
push {r4,lr}
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r2, [r0, 0x10]
ldrb r1, [r2, 0x1]
@@ -2811,7 +2811,7 @@ sub_80E6934: @ 80E6934
mov r8, r0
movs r7, 0
movs r4, 0
- ldr r6, =gUnknown_02039F34
+ ldr r6, =gContestResources
ldr r0, =gContestMoves
mov r9, r0
movs r5, 0
@@ -2861,7 +2861,7 @@ _080E699E:
ble _080E694E
cmp r7, 0
bne _080E69B8
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x11]
@@ -2882,7 +2882,7 @@ sub_80E69C8: @ 80E69C8
push {lr}
lsls r0, 24
lsrs r3, r0, 24
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r0, [r2]
ldr r0, [r0, 0x8]
adds r0, 0xD
@@ -2945,7 +2945,7 @@ sub_80E6A2C: @ 80E6A2C
movs r2, 0x8
bl memset
movs r7, 0
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0x8]
ldrb r0, [r0, 0x8]
@@ -3040,7 +3040,7 @@ _080E6AD6:
strh r0, [r1]
_080E6AFE:
adds r7, 0x1
- ldr r4, =gUnknown_02039F34
+ ldr r4, =gContestResources
ldr r0, [r4]
ldr r0, [r0, 0x8]
adds r0, 0x8
@@ -3081,7 +3081,7 @@ sub_80E6B3C: @ 80E6B3C
lsrs r0, 24
lsls r1, 24
lsrs r1, 24
- ldr r2, =gUnknown_02039F34
+ ldr r2, =gContestResources
ldr r4, [r2]
ldr r3, [r4, 0x4]
lsls r2, r0, 3
diff --git a/asm/contest_link_80F57C4.s b/asm/contest_link_80F57C4.s
index 864f16c5e..f20070978 100644
--- a/asm/contest_link_80F57C4.s
+++ b/asm/contest_link_80F57C4.s
@@ -92,30 +92,30 @@ _080F57E0:
lsls r1, 8
movs r0, 0
bl SetGpuRegBits
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
strh r1, [r0]
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
strh r1, [r0]
- ldr r0, =gUnknown_02022E28
+ ldr r0, =gBattle_WIN1H
strh r1, [r0]
- ldr r0, =gUnknown_02022E2A
+ ldr r0, =gBattle_WIN1V
strh r1, [r0]
pop {r4}
pop {r0}
@@ -387,10 +387,10 @@ sub_80F5B00: @ 80F5B00
strb r0, [r1, 0x2]
ldr r0, =sub_80F5C00
bl SetMainCallback2
- ldr r1, =gUnknown_02022E28
+ ldr r1, =gBattle_WIN1H
movs r0, 0xF0
strh r0, [r1]
- ldr r1, =gUnknown_02022E2A
+ ldr r1, =gBattle_WIN1V
ldr r2, =0x000080a0
adds r0, r2, 0
strh r0, [r1]
@@ -441,51 +441,51 @@ sub_80F5C00: @ 80F5C00
thumb_func_start sub_80F5C24
sub_80F5C24: @ 80F5C24
push {lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
ldrh r1, [r0]
movs r0, 0x10
bl SetGpuReg
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
ldrh r1, [r0]
movs r0, 0x12
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r1, [r0]
movs r0, 0x14
bl SetGpuReg
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r1, [r0]
movs r0, 0x16
bl SetGpuReg
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r1, [r0]
movs r0, 0x18
bl SetGpuReg
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
ldrh r1, [r0]
movs r0, 0x1A
bl SetGpuReg
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
ldrh r1, [r0]
movs r0, 0x1C
bl SetGpuReg
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
ldrh r1, [r0]
movs r0, 0x1E
bl SetGpuReg
- ldr r0, =gUnknown_02022E24
+ ldr r0, =gBattle_WIN0H
ldrh r1, [r0]
movs r0, 0x40
bl SetGpuReg
- ldr r0, =gUnknown_02022E26
+ ldr r0, =gBattle_WIN0V
ldrh r1, [r0]
movs r0, 0x44
bl SetGpuReg
- ldr r0, =gUnknown_02022E28
+ ldr r0, =gBattle_WIN1H
ldrh r1, [r0]
movs r0, 0x42
bl SetGpuReg
- ldr r0, =gUnknown_02022E2A
+ ldr r0, =gBattle_WIN1V
ldrh r1, [r0]
movs r0, 0x46
bl SetGpuReg
@@ -702,7 +702,7 @@ sub_80F5ED8: @ 80F5ED8
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080F5EFC
@@ -1239,7 +1239,7 @@ _080F6334:
ldr r1, =gUnknown_02039F20
ldrb r0, [r1]
ldr r7, =gStringVar1
- ldr r2, =gUnknown_02039E0D
+ ldr r2, =gUnknown_02039E00 + 13
mov r8, r2
cmp r0, 0
beq _080F636E
@@ -1347,10 +1347,10 @@ _080F643C:
.4byte _080F6638
.4byte _080F667C
_080F6454:
- ldr r1, =gUnknown_02022E24
+ ldr r1, =gBattle_WIN0H
movs r0, 0xF0
strh r0, [r1]
- ldr r1, =gUnknown_02022E26
+ ldr r1, =gBattle_WIN0V
ldr r3, =0x00005050
adds r0, r3, 0
strh r0, [r1]
@@ -1364,7 +1364,7 @@ _080F6454:
mov r9, r4
ldr r4, =gMonFrontPicTable
mov r12, r4
- ldr r4, =gBattleSpritesGfx
+ ldr r4, =gMonSpritesGfxPtr
mov r8, r4
cmp r0, 0
beq _080F648C
@@ -1494,7 +1494,7 @@ _080F65A4:
strh r0, [r4, 0xC]
_080F65BA:
ldrb r2, [r4, 0xC]
- ldr r3, =gUnknown_02022E26
+ ldr r3, =gBattle_WIN0V
movs r0, 0x50
subs r0, r2
lsls r0, 8
@@ -1556,7 +1556,7 @@ _080F6638:
ldrb r0, [r0, 0x6]
cmp r0, 0x2
bne _080F669C
- ldr r3, =gUnknown_02022E26
+ ldr r3, =gBattle_WIN0V
ldrh r0, [r3]
lsrs r2, r0, 8
adds r0, r2, 0x2
@@ -1706,7 +1706,7 @@ sub_80F677C: @ 80F677C
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080F67AC
@@ -1750,7 +1750,7 @@ task_repel: @ 80F67C4
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
- bl sub_80ED090
+ bl BravoTrainerPokemonProfile_BeforeInterview2
_080F67E6:
movs r0, 0
str r0, [sp]
@@ -1838,11 +1838,11 @@ _080F68A8:
thumb_func_start sub_80F68B4
sub_80F68B4: @ 80F68B4
push {r4,r5,lr}
- ldr r2, =gUnknown_02022E20
+ ldr r2, =gBattle_BG3_X
ldrh r3, [r2]
adds r0, r3, 0x2
strh r0, [r2]
- ldr r4, =gUnknown_02022E22
+ ldr r4, =gBattle_BG3_Y
ldrh r5, [r4]
adds r1, r5, 0x1
strh r1, [r4]
@@ -1989,7 +1989,7 @@ sub_80F69B8: @ 80F69B8
_080F69DE:
adds r0, r7, 0
ldr r1, [sp, 0x28]
- bl sub_80D2EDC
+ bl GetMonIconPtr
adds r3, r0, 0
lsls r0, r5, 9
adds r0, 0x80
@@ -2870,10 +2870,10 @@ _080F70BE:
adds r5, 0x1
cmp r5, 0x2
ble _080F70BE
- ldr r1, =gUnknown_02022E24
+ ldr r1, =gBattle_WIN0H
movs r0, 0xF0
strh r0, [r1]
- ldr r2, =gUnknown_02022E26
+ ldr r2, =gBattle_WIN0V
ldrh r1, [r4, 0x22]
adds r0, r1, 0
subs r0, 0x10
@@ -2910,8 +2910,8 @@ sub_80F7144: @ 80F7144
orrs r0, r1
mov r1, r12
strb r0, [r1]
- ldr r7, =gUnknown_02022E24
- ldr r6, =gUnknown_02022E26
+ ldr r7, =gBattle_WIN0H
+ ldr r6, =gBattle_WIN0V
adds r5, r3, 0
movs r4, 0x4
adds r2, 0x2E
@@ -3008,7 +3008,7 @@ _080F7236:
bl CopyToBgTilemapBufferRect
movs r5, 0xF
_080F7240:
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
cmp r0, 0
bne _080F725C
@@ -4522,7 +4522,7 @@ sub_80F7DF4: @ 80F7DF4
bl AllocZeroed
ldr r1, [r4]
str r0, [r1, 0x1C]
- bl init_uns_table_pokemon_copy
+ bl AllocateMonSpritesGfx
pop {r4,r5}
pop {r0}
bx r0
@@ -4569,7 +4569,7 @@ sub_80F7E64: @ 80F7E64
str r4, [r0, 0x1C]
bl Free
str r4, [r5]
- bl sub_805F094
+ bl FreeMonSpritesGfx
pop {r4,r5}
pop {r0}
bx r0
@@ -4640,7 +4640,7 @@ sub_80F7F30: @ 80F7F30
adds r5, r0, 0
cmp r5, 0
beq _080F7F5E
- ldr r4, =gUnknown_02039F2C
+ ldr r4, =gScriptContestCategory
ldrb r0, [r4]
ldr r1, =gUnknown_02039F2E
ldrb r1, [r1]
@@ -4666,7 +4666,7 @@ sub_80F7F7C: @ 80F7F7C
muls r1, r0
ldr r0, =gPlayerParty
adds r2, r1, r0
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
cmp r0, 0x4
bhi _080F7FEE
@@ -4730,7 +4730,7 @@ sub_80F7FFC: @ 80F7FFC
beq _080F8010
b _080F8250
_080F8010:
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
cmp r0, 0x4
bls _080F801A
@@ -4785,7 +4785,7 @@ _080F8074:
ldrb r0, [r6]
muls r0, r5
adds r0, r4
- bl sub_80EE5A4
+ bl GetRibbonCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -4834,7 +4834,7 @@ _080F80E2:
ldrb r0, [r7]
muls r0, r6
adds r0, r5
- bl sub_80EE5A4
+ bl GetRibbonCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -4883,7 +4883,7 @@ _080F814E:
ldrb r0, [r7]
muls r0, r6
adds r0, r5
- bl sub_80EE5A4
+ bl GetRibbonCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -4926,7 +4926,7 @@ _080F8190:
ldrb r0, [r7]
muls r0, r6
adds r0, r5
- bl sub_80EE5A4
+ bl GetRibbonCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -4969,7 +4969,7 @@ _080F81F8:
ldrb r0, [r7]
muls r0, r6
adds r0, r5
- bl sub_80EE5A4
+ bl GetRibbonCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -4994,7 +4994,7 @@ sub_80F8264: @ 80F8264
ldr r0, =gSpecialVar_0x8006
ldrh r1, [r0]
lsls r1, 6
- ldr r0, =gUnknown_02039E0D
+ ldr r0, =gUnknown_02039E00 + 13
adds r1, r0
adds r0, r4, 0
bl StringCopy
@@ -5013,7 +5013,7 @@ sub_80F8290: @ 80F8290
ldr r1, =gSpecialVar_0x8006
ldrh r1, [r1]
lsls r1, 6
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
adds r1, r2
bl StringCopy
pop {r0}
@@ -5104,7 +5104,7 @@ sub_80F834C: @ 80F834C
ldr r2, =gUnknown_02039F20
ldrb r0, [r2]
ldr r4, =gStringVar3
- ldr r3, =gUnknown_02039E0D
+ ldr r3, =gUnknown_02039E00 + 13
cmp r0, 0
beq _080F836E
_080F835C:
@@ -5137,7 +5137,7 @@ sub_80F8390: @ 80F8390
ldr r2, =gUnknown_02039F20
ldrb r0, [r2]
ldr r4, =gStringVar1
- ldr r3, =gUnknown_02039E02
+ ldr r3, =gUnknown_02039E00 + 2
cmp r0, 0
beq _080F83B2
_080F83A0:
@@ -5488,7 +5488,7 @@ _080F8678:
bl sub_80F86E0
ldr r1, =gUnknown_02039F2B
strb r0, [r1]
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrb r0, [r0]
bl sub_80DB09C
ldr r1, =sub_80FCF40
@@ -5578,7 +5578,7 @@ sub_80F8714: @ 80F8714
b _080F877E
.pool
_080F8748:
- ldr r5, =gUnknown_02039E02
+ ldr r5, =gUnknown_02039E00 + 2
movs r4, 0x3
_080F874C:
adds r0, r5, 0
@@ -5633,7 +5633,7 @@ sub_80F87B4: @ 80F87B4
push {lr}
lsls r0, 24
lsrs r1, r0, 24
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080F87D0
diff --git a/asm/contest_link_80FC4F4.s b/asm/contest_link_80FC4F4.s
index 0d6116766..f1e2019da 100644
--- a/asm/contest_link_80FC4F4.s
+++ b/asm/contest_link_80FC4F4.s
@@ -21,7 +21,7 @@ sub_80FC4F4: @ 80FC4F4
lsrs r0, 24
adds r1, r5, 0
adds r2, r4, 0
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
bne _080FC528
@@ -45,12 +45,12 @@ sub_80FC530: @ 80FC530
lsls r4, 17
lsls r4, r5
lsrs r4, 24
- bl sub_800A550
+ bl GetBlockReceivedStatus
ands r4, r0
cmp r4, 0
beq _080FC552
adds r0, r5, 0
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
movs r0, 0x1
b _080FC554
_080FC552:
@@ -64,7 +64,7 @@ _080FC554:
thumb_func_start sub_80FC55C
sub_80FC55C: @ 80FC55C
push {r4,lr}
- bl sub_800A550
+ bl GetBlockReceivedStatus
adds r4, r0, 0
bl sub_800A9D8
lsls r4, 24
@@ -74,7 +74,7 @@ sub_80FC55C: @ 80FC55C
movs r0, 0
b _080FC57A
_080FC574:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
movs r0, 0x1
_080FC57A:
pop {r4}
@@ -90,7 +90,7 @@ sub_80FC580: @ 80FC580
movs r1, 0
ldr r5, =gTasks
ldr r6, =sub_80FC5C0
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
movs r3, 0xFF
_080FC590:
lsls r0, r1, 8
@@ -134,14 +134,14 @@ sub_80FC5DC: @ 80FC5DC
push {r4-r7,lr}
lsls r0, 24
lsrs r7, r0, 24
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080FC650
bl GetMultiplayerId
ldr r1, =gUnknown_02039F25
strb r0, [r1]
- bl sub_8009FCC
+ bl GetLinkPlayerCount
ldr r4, =gUnknown_02039F30
strb r0, [r4]
ldr r1, =gUnknown_02039F2A
@@ -324,7 +324,7 @@ _080FC770:
ldr r0, =gUnknown_02039E00
adds r4, r0
lsls r1, r5, 8
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
adds r1, r0
adds r0, r4, 0
movs r2, 0x40
@@ -430,7 +430,7 @@ _080FC858:
cmp r0, 0
beq _080FC880
ldr r0, =gRngValue
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
adds r1, r4, 0
movs r2, 0x4
bl memcpy
@@ -517,7 +517,7 @@ _080FC90C:
ldrb r0, [r1]
cmp r3, r0
bge _080FC93A
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
adds r0, r7, 0x2
adds r2, r5, r0
movs r5, 0x80
@@ -657,7 +657,7 @@ _080FCA30:
lsls r0, 24
cmp r0, 0
beq _080FCAB2
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r2, [r0]
ldr r0, =gUnknown_02039F25
ldrb r0, [r0]
@@ -688,9 +688,9 @@ _080FCA68:
ldrb r0, [r6]
cmp r2, r0
bge _080FCAA4
- ldr r1, =gUnknown_02039F34
+ ldr r1, =gContestResources
mov r8, r1
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
movs r3, 0
movs r7, 0x80
lsls r7, 1
@@ -784,7 +784,7 @@ _080FCB50:
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x8
b _080FCC50
@@ -827,7 +827,7 @@ _080FCBA4:
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x8
b _080FCC50
@@ -850,7 +850,7 @@ _080FCBE0:
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x8
b _080FCC50
@@ -885,7 +885,7 @@ _080FCC38:
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x4
_080FCC50:
@@ -955,7 +955,7 @@ _080FCCE8:
bne _080FCCF4
b _080FCE42
_080FCCF4:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x4]
movs r1, 0x70
@@ -968,13 +968,13 @@ _080FCD04:
bne _080FCD10
b _080FCE42
_080FCD10:
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x4]
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x70
b _080FCE10
@@ -1004,7 +1004,7 @@ _080FCD54:
lsls r0, 24
cmp r0, 0
beq _080FCE42
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
movs r1, 0x14
@@ -1015,13 +1015,13 @@ _080FCD6C:
lsls r0, 24
cmp r0, 0
beq _080FCE42
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x14
b _080FCE10
@@ -1031,7 +1031,7 @@ _080FCD98:
lsls r0, 24
cmp r0, 0
beq _080FCE42
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x10]
b _080FCDD4
@@ -1041,7 +1041,7 @@ _080FCDB0:
lsls r0, 24
cmp r0, 0
beq _080FCE42
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x10]
b _080FCE04
@@ -1078,7 +1078,7 @@ _080FCE04:
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x4
_080FCE10:
@@ -1169,7 +1169,7 @@ _080FCEC0:
beq _080FCF2E
mov r1, r8
mov r8, r9
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
adds r0, r7, 0
adds r0, 0xA
adds r2, r5, r0
@@ -1278,7 +1278,7 @@ _080FCF9C:
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x8
bl memcpy
@@ -1344,7 +1344,7 @@ _080FD02C:
ldr r1, =gUnknown_02039F2B
ldrb r1, [r1]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x4
bl memcpy
diff --git a/asm/contest_link_81D9DE4.s b/asm/contest_link_81D9DE4.s
index cec1c6e5d..5f9c25d7c 100755
--- a/asm/contest_link_81D9DE4.s
+++ b/asm/contest_link_81D9DE4.s
@@ -370,7 +370,7 @@ sub_81DA10C: @ 81DA10C
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrb r0, [r0]
bl sub_80DB09C
ldr r1, =sub_80FCF40
@@ -469,7 +469,7 @@ _081DA1EC:
ldr r0, =gUnknown_02039E00
adds r4, r0
lsls r1, r5, 8
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
adds r1, r0
adds r0, r4, 0
movs r2, 0x40
@@ -554,7 +554,7 @@ _081DA2AC:
cmp r0, 0
beq _081DA2D4
ldr r0, =gRngValue
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
adds r1, r4, 0
movs r2, 0x4
bl memcpy
@@ -641,7 +641,7 @@ _081DA35A:
mov r0, r8
adds r0, 0xA
adds r3, r5, r0
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
mov r2, sp
movs r5, 0x80
lsls r5, 1
@@ -744,7 +744,7 @@ _081DA42A:
mov r0, r8
adds r0, 0x2
adds r3, r5, r0
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
mov r2, sp
movs r5, 0x80
lsls r5, 1
@@ -849,7 +849,7 @@ _081DA50C:
lsls r0, r3, 6
ldr r5, =gUnknown_02039E00
adds r0, r5
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
movs r2, 0x4
subs r2, r3
lsls r2, 6
diff --git a/asm/contest_painting.s b/asm/contest_painting.s
index 62359497c..2caf15194 100644
--- a/asm/contest_painting.s
+++ b/asm/contest_painting.s
@@ -72,7 +72,7 @@ sub_812FE0C: @ 812FE0C
movs r0, 0x1
bl GetBgTilemapBuffer
bl Free
- bl sub_805F094
+ bl FreeMonSpritesGfx
pop {r4,r5}
pop {r0}
bx r0
@@ -110,7 +110,7 @@ _0812FE94:
bl remove_some_task
movs r0, 0
bl SetVBlankCallback
- bl init_uns_table_pokemon_copy
+ bl AllocateMonSpritesGfx
ldr r1, =gUnknown_030061C0
ldr r0, =gUnknown_02039F3C
str r0, [r1]
@@ -581,7 +581,7 @@ sub_81302E8: @ 81302E8
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r4, =gBattleSpritesGfx
+ ldr r4, =gMonSpritesGfxPtr
ldr r1, [r4]
ldr r1, [r1, 0x8]
ldr r2, [r6]
@@ -600,7 +600,7 @@ _08130348:
lsls r0, r5, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r4, =gBattleSpritesGfx
+ ldr r4, =gMonSpritesGfxPtr
ldr r1, [r4]
ldr r1, [r1, 0x4]
ldr r2, [r6]
diff --git a/asm/credits.s b/asm/credits.s
index 0a568a3ae..0b2da16b8 100644
--- a/asm/credits.s
+++ b/asm/credits.s
@@ -491,14 +491,14 @@ _08175906:
ldr r1, =gReservedSpritePaletteCount
movs r0, 0x8
strb r0, [r1]
- ldr r0, =gUnknown_085B0E04
+ ldr r0, =gBirchHelpGfx
movs r1, 0xC0
lsls r1, 19
bl LZ77UnCompVram
- ldr r0, =gUnknown_085B0C0C
+ ldr r0, =gBirchGrassTilemap
ldr r1, =0x06003800
bl LZ77UnCompVram
- ldr r0, =gUnknown_085B0A02
+ ldr r0, =gBirchBagGrassPal + 0x2
movs r1, 0x1
movs r2, 0x3E
bl LoadPalette
diff --git a/asm/crt0.s b/asm/crt0.s
index 3ece5c7d0..0b14a1469 100644
--- a/asm/crt0.s
+++ b/asm/crt0.s
@@ -163,7 +163,7 @@ IntrMain: @ 8000248
IntrMain_FoundIntr:
strh r0, [r3, OFFSET_REG_IF - 0x200]
bic r2, r2, r0
- ldr r0, =gUnknown_03007868
+ ldr r0, =gRfuState
ldr r0, [r0]
ldrb r0, [r0, 0xA]
mov r1, 0x8
diff --git a/asm/decoration.s b/asm/decoration.s
deleted file mode 100644
index 9b65c7c79..000000000
--- a/asm/decoration.s
+++ /dev/null
@@ -1,7167 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8126968
-sub_8126968: @ 8126968
- push {lr}
- ldr r3, =gUnknown_0203A173
- ldrb r0, [r3]
- cmp r0, 0x7
- bhi _0812697E
- ldr r2, =gUnknown_0203A14C
- ldr r1, =gDecorationInventories
- lsls r0, 3
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
-_0812697E:
- ldr r2, =gUnknown_0203A17C
- ldrb r0, [r2, 0x9]
- cmp r0, 0
- bne _08126996
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r3, =0x00001aae
- adds r1, r0, r3
- str r1, [r2]
- ldr r1, =0x00001abe
- adds r0, r1
- str r0, [r2, 0x4]
-_08126996:
- ldrb r0, [r2, 0x9]
- cmp r0, 0x1
- bne _081269AC
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r3, =0x0000271c
- adds r1, r0, r3
- str r1, [r2]
- ldr r1, =0x00002728
- adds r0, r1
- str r0, [r2, 0x4]
-_081269AC:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126968
-
- thumb_func_start sub_81269D4
-sub_81269D4: @ 81269D4
- push {r4,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r0, =gUnknown_0203A188
- adds r4, r1, r0
- cmp r1, 0
- bne _08126A28
- ldr r0, =gUnknown_085A6B90
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- ldr r0, =gUnknown_085A6B48
- movs r1, 0x4
- bl GetMaxWidthInMenuTable
- lsls r0, 24
- ldr r2, =0x00ffffff
- ldr r1, [sp]
- ands r1, r2
- orrs r1, r0
- str r1, [sp]
- lsrs r0, r1, 24
- cmp r0, 0x12
- bls _08126A14
- adds r0, r2, 0
- ands r0, r1
- movs r1, 0x90
- lsls r1, 21
- orrs r0, r1
- str r0, [sp]
-_08126A14:
- mov r0, sp
- b _08126A2E
- .pool
-_08126A28:
- lsls r0, r1, 3
- ldr r1, =gUnknown_085A6B90
- adds r0, r1
-_08126A2E:
- bl AddWindow
- strb r0, [r4]
- ldrb r0, [r4]
- movs r2, 0x85
- lsls r2, 2
- movs r1, 0
- movs r3, 0xE
- bl SetWindowBorderStyle
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- ldrb r0, [r4]
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81269D4
-
- thumb_func_start sub_8126A58
-sub_8126A58: @ 8126A58
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_0203A188
- adds r4, r0
- ldrb r0, [r4]
- movs r1, 0
- bl sub_8198070
- ldrb r0, [r4]
- bl ClearWindowTilemap
- ldrb r0, [r4]
- bl RemoveWindow
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126A58
-
- thumb_func_start sub_8126A88
-sub_8126A88: @ 8126A88
- push {r4,lr}
- movs r0, 0
- bl sub_81269D4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r2, =gUnknown_085A6B48
- adds r0, r4, 0
- movs r1, 0x4
- bl PrintMenuTable
- ldr r0, =gUnknown_0203A150
- ldrb r2, [r0]
- adds r0, r4, 0
- movs r1, 0x4
- bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126A88
-
- thumb_func_start sub_8126ABC
-sub_8126ABC: @ 8126ABC
- push {lr}
- ldr r1, =gUnknown_0203A150
- movs r0, 0
- strb r0, [r1]
- bl ScriptContext2_Enable
- bl sub_8126A88
- bl sub_8126C08
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126ABC
-
- thumb_func_start sub_8126AD8
-sub_8126AD8: @ 8126AD8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8126ABC
- ldr r2, =gUnknown_0203A17C
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r3, =0x00001aae
- adds r1, r0, r3
- str r1, [r2]
- ldr r1, =0x00001abe
- adds r0, r1
- str r0, [r2, 0x4]
- movs r1, 0
- movs r0, 0x10
- strb r0, [r2, 0x8]
- strb r1, [r2, 0x9]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8126B80
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126AD8
-
- thumb_func_start sub_8126B2C
-sub_8126B2C: @ 8126B2C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8126ABC
- ldr r2, =gUnknown_0203A17C
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r3, =0x0000271c
- adds r1, r0, r3
- str r1, [r2]
- ldr r1, =0x00002728
- adds r0, r1
- str r0, [r2, 0x4]
- movs r0, 0xC
- strb r0, [r2, 0x8]
- movs r0, 0x1
- strb r0, [r2, 0x9]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8126B80
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126B2C
-
- thumb_func_start sub_8126B80
-sub_8126B80: @ 8126B80
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08126C00
- bl GetMenuCursorPos
- lsls r0, 24
- lsrs r4, r0, 24
- bl ProcessMenuInput
- lsls r0, 24
- asrs r1, r0, 24
- movs r0, 0x2
- negs r0, r0
- cmp r1, r0
- beq _08126BD8
- adds r0, 0x1
- cmp r1, r0
- beq _08126BF4
- movs r0, 0x5
- bl PlaySE
- ldr r1, =gUnknown_085A6B48
- ldr r0, =gUnknown_0203A150
- ldrb r0, [r0]
- lsls r0, 3
- adds r1, 0x4
- adds r0, r1
- ldr r1, [r0]
- adds r0, r5, 0
- bl _call_via_r1
- b _08126C00
- .pool
-_08126BD8:
- bl GetMenuCursorPos
- ldr r1, =gUnknown_0203A150
- strb r0, [r1]
- lsls r0, r4, 24
- asrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- beq _08126C00
- bl sub_8126C08
- b _08126C00
- .pool
-_08126BF4:
- movs r0, 0x5
- bl PlaySE
- adds r0, r5, 0
- bl sub_8126D6C
-_08126C00:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8126B80
-
- thumb_func_start sub_8126C08
-sub_8126C08: @ 8126C08
- push {lr}
- sub sp, 0x10
- movs r0, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r1, =gUnknown_085A6B68
- ldr r0, =gUnknown_0203A150
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r2, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x3
- str r0, [sp, 0xC]
- movs r0, 0
- movs r1, 0x1
- movs r3, 0
- bl AddTextPrinterParametrized
- add sp, 0x10
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126C08
-
- thumb_func_start sub_8126C48
-sub_8126C48: @ 8126C48
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_8161B10
- lsls r0, 24
- cmp r0, 0
- bne _08126C7C
- ldr r4, =gStringVar4
- ldr r1, =gText_NoDecorations
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8126DA4
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
- b _08126C96
- .pool
-_08126C7C:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- movs r1, 0
- strh r1, [r0, 0x1E]
- ldr r0, =gUnknown_0203A173
- strb r2, [r0]
- adds r0, r5, 0
- bl sub_8126DCC
-_08126C96:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126C48
-
- thumb_func_start sub_8126CA4
-sub_8126CA4: @ 8126CA4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r5, 0
- bl sub_81299AC
- lsls r0, 24
- cmp r0, 0
- bne _08126CD8
- ldr r4, =gStringVar4
- ldr r1, =gText_NoDecorationsInUse
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8126DA4
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
- b _08126D00
- .pool
-_08126CD8:
- movs r0, 0
- bl sub_8126A58
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xC]
- ldr r1, =sub_8129ABC
- str r1, [r0]
-_08126D00:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126CA4
-
- thumb_func_start sub_8126D10
-sub_8126D10: @ 8126D10
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_8161B10
- lsls r0, 24
- cmp r0, 0
- bne _08126D44
- ldr r4, =gStringVar4
- ldr r1, =gText_NoDecorations
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8126DA4
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
- b _08126D5E
- .pool
-_08126D44:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- movs r1, 0x1
- strh r1, [r0, 0x1E]
- ldr r0, =gUnknown_0203A173
- strb r2, [r0]
- adds r0, r5, 0
- bl sub_8126DCC
-_08126D5E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126D10
-
- thumb_func_start sub_8126D6C
-sub_8126D6C: @ 8126D6C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- bl sub_8126A58
- ldr r0, =gUnknown_0203A17C
- ldrb r0, [r0, 0x9]
- cmp r0, 0
- bne _08126D98
- ldr r0, =gUnknown_0823B4E8
- bl ScriptContext1_SetupScript
- adds r0, r4, 0
- bl DestroyTask
- b _08126D9E
- .pool
-_08126D98:
- adds r0, r4, 0
- bl sub_816B060
-_08126D9E:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8126D6C
-
- thumb_func_start sub_8126DA4
-sub_8126DA4: @ 8126DA4
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8126C08
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8126B80
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126DA4
-
- thumb_func_start sub_8126DCC
-sub_8126DCC: @ 8126DCC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_085A6BB0
- movs r1, 0xD0
- movs r2, 0x20
- bl LoadPalette
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- movs r0, 0
- bl sub_8126A58
- adds r0, r4, 0
- bl sub_8126DFC
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126DCC
-
- thumb_func_start sub_8126DFC
-sub_8126DFC: @ 8126DFC
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- movs r0, 0x1
- bl sub_81269D4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- bl sub_8126E8C
- ldr r0, =gUnknown_0203A173
- ldrb r2, [r0]
- adds r0, r4, 0
- movs r1, 0x9
- bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8127088
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126DFC
-
- thumb_func_start sub_8126E44
-sub_8126E44: @ 8126E44
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r5, =gUnknown_0203A188
- ldrb r0, [r5, 0x1]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- adds r0, r4, 0
- bl sub_8126E8C
- ldrb r0, [r5, 0x1]
- ldr r1, =gUnknown_0203A173
- ldrb r2, [r1]
- movs r1, 0x9
- bl InitMenuInUpperLeftCornerPlaySoundWhenAPressed
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8127088
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126E44
-
- thumb_func_start sub_8126E8C
-sub_8126E8C: @ 8126E8C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r1, r0, r1
- ldr r0, =gUnknown_0203A188
- ldrb r5, [r0, 0x1]
- ldr r0, =gUnknown_0203A17C
- ldrb r0, [r0, 0x9]
- movs r2, 0
- mov r8, r2
- cmp r0, 0x1
- bne _08126EC0
- movs r2, 0x16
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _08126EC0
- movs r0, 0x1
- mov r8, r0
-_08126EC0:
- movs r4, 0
- lsls r2, r6, 2
- mov r9, r2
- movs r7, 0xFF
-_08126EC8:
- mov r0, r8
- cmp r0, 0x1
- bne _08126EF8
- cmp r4, 0x6
- beq _08126EF8
- cmp r4, 0x7
- beq _08126EF8
- lsls r3, r4, 28
- lsrs r3, 24
- str r0, [sp]
- str r7, [sp, 0x4]
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x8
- bl sub_8126F68
- b _08126F0C
- .pool
-_08126EF8:
- lsls r3, r4, 28
- lsrs r3, 24
- movs r0, 0
- str r0, [sp]
- str r7, [sp, 0x4]
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x8
- bl sub_8126F68
-_08126F0C:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _08126EC8
- ldr r0, =gTasks
- mov r2, r9
- adds r1, r2, r6
- lsls r1, 3
- adds r1, r0
- movs r2, 0x1E
- ldrsh r0, [r1, r2]
- ldr r2, =gText_Cancel
- cmp r0, 0x2
- bne _08126F2C
- ldr r2, =gText_Exit
-_08126F2C:
- lsls r0, r4, 4
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- adds r0, r5, 0
- movs r1, 0x1
- movs r3, 0x8
- bl PrintTextOnWindow
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- add sp, 0xC
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126E8C
-
- thumb_func_start sub_8126F68
-sub_8126F68: @ 8126F68
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x18
- ldr r4, [sp, 0x38]
- ldr r6, [sp, 0x3C]
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0xC]
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- lsls r2, 24
- lsrs r7, r2, 24
- lsls r3, 24
- lsrs r5, r3, 24
- lsls r4, 24
- lsrs r1, r4, 24
- lsls r6, 24
- lsrs r6, 24
- mov r9, r6
- movs r0, 0x60
- str r0, [sp, 0x14]
- cmp r7, 0x8
- bne _08126FA2
- movs r2, 0x68
- str r2, [sp, 0x14]
-_08126FA2:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gStringVar4
- adds r0, r4, 0
- bl sub_8127058
- adds r0, r4, 0
- bl StringLength
- lsls r0, 16
- lsrs r0, 16
- adds r6, r0, r4
- ldr r1, =gUnknown_085A6B28
- mov r2, r8
- lsls r0, r2, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r6, 0
- bl StringCopy
- str r5, [sp]
- mov r0, r9
- str r0, [sp, 0x4]
- movs r2, 0
- mov r10, r2
- str r2, [sp, 0x8]
- ldr r0, [sp, 0xC]
- movs r1, 0x1
- adds r2, r4, 0
- adds r3, r7, 0
- bl PrintTextOnWindow
- mov r0, r8
- bl sub_8161AD0
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- movs r2, 0x1
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- adds r6, r0, 0
- movs r0, 0xBA
- strb r0, [r6]
- adds r6, 0x1
- ldr r1, =gDecorationInventories
- mov r2, r8
- lsls r0, r2, 3
- adds r0, r1
- ldrb r1, [r0, 0x4]
- adds r0, r6, 0
- movs r2, 0x1
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- movs r0, 0x1
- adds r1, r4, 0
- ldr r2, [sp, 0x14]
- bl GetStringRightAlignXOffset
- lsls r0, 24
- lsrs r7, r0, 24
- str r5, [sp]
- mov r0, r9
- str r0, [sp, 0x4]
- mov r2, r10
- str r2, [sp, 0x8]
- ldr r0, [sp, 0xC]
- movs r1, 0x1
- adds r2, r4, 0
- adds r3, r7, 0
- bl PrintTextOnWindow
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8126F68
-
- thumb_func_start sub_8127058
-sub_8127058: @ 8127058
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r4, r1, 24
- lsrs r4, 24
- ldr r1, =gText_Color161Shadow161
- bl StringCopy
- cmp r4, 0x1
- bne _08127078
- movs r0, 0x4
- strb r0, [r5, 0x2]
- movs r0, 0x5
- b _0812707E
- .pool
-_08127078:
- movs r0, 0x2
- strb r0, [r5, 0x2]
- movs r0, 0x3
-_0812707E:
- strb r0, [r5, 0x5]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8127058
-
- thumb_func_start sub_8127088
-sub_8127088: @ 8127088
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _081270DE
- bl ProcessMenuInput
- lsls r0, 24
- lsrs r4, r0, 24
- asrs r1, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _081270C0
- cmp r1, r0
- bgt _081270BC
- subs r0, 0x1
- cmp r1, r0
- beq _081270DE
- b _081270CE
- .pool
-_081270BC:
- cmp r1, 0x8
- bne _081270CE
-_081270C0:
- movs r0, 0x5
- bl PlaySE
- adds r0, r5, 0
- bl sub_812719C
- b _081270DE
-_081270CE:
- movs r0, 0x5
- bl PlaySE
- ldr r0, =gUnknown_0203A173
- strb r4, [r0]
- adds r0, r5, 0
- bl sub_81270E8
-_081270DE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127088
-
- thumb_func_start sub_81270E8
-sub_81270E8: @ 81270E8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gUnknown_0203A173
- ldrb r0, [r4]
- bl sub_8161AD0
- ldr r1, =gUnknown_0203A151
- strb r0, [r1]
- lsls r0, 24
- cmp r0, 0
- beq _08127154
- ldrb r0, [r4]
- bl sub_8161A38
- ldr r2, =gUnknown_0203A14C
- ldr r1, =gDecorationInventories
- ldrb r0, [r4]
- lsls r0, 3
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
- adds r0, r5, 0
- bl sub_81279B4
- ldr r0, =gUnknown_0203A170
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_0203A16E
- strh r1, [r0]
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8127620
- str r1, [r0]
- b _0812716E
- .pool
-_08127154:
- movs r0, 0x1
- bl sub_8126A58
- ldr r4, =gStringVar4
- ldr r1, =gText_NoDecorations
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8127180
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
-_0812716E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81270E8
-
- thumb_func_start sub_8127180
-sub_8127180: @ 8127180
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- adds r0, r4, 0
- bl sub_8126DFC
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8127180
-
- thumb_func_start sub_812719C
-sub_812719C: @ 812719C
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- movs r1, 0x1E
- ldrsh r0, [r0, r1]
- cmp r0, 0x2
- beq _081271C0
- adds r0, r2, 0
- bl sub_81271CC
- b _081271C6
- .pool
-_081271C0:
- adds r0, r2, 0
- bl sub_8127268
-_081271C6:
- pop {r0}
- bx r0
- thumb_func_end sub_812719C
-
- thumb_func_start sub_81271CC
-sub_81271CC: @ 81271CC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- bl sub_8126A58
- bl sub_8126A88
- movs r0, 0
- movs r1, 0
- bl sub_81973C4
- bl sub_8126C08
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8126B80
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81271CC
-
- thumb_func_start sub_8127208
-sub_8127208: @ 8127208
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_085A6BB0
- movs r1, 0xD0
- movs r2, 0x20
- bl LoadPalette
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- movs r1, 0x2
- strh r1, [r0, 0x1E]
- ldr r0, =gUnknown_0203A173
- strb r2, [r0]
- adds r0, r4, 0
- bl sub_8126DFC
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127208
-
- thumb_func_start sub_8127250
-sub_8127250: @ 8127250
- push {lr}
- lsls r1, 24
- ldr r2, =gUnknown_085A6B28
- lsrs r1, 22
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127250
-
- thumb_func_start sub_8127268
-sub_8127268: @ 8127268
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- bl sub_8126A58
- adds r0, r4, 0
- bl sub_8133E1C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8127268
-
- thumb_func_start sub_8127284
-sub_8127284: @ 8127284
- push {lr}
- ldr r3, =gUnknown_0203A18C
- ldr r2, [r3]
- ldr r0, =gUnknown_0203A151
- ldrb r0, [r0]
- adds r0, 0x1
- movs r1, 0xA4
- lsls r1, 3
- adds r2, r1
- strb r0, [r2]
- ldr r0, [r3]
- adds r1, r0, r1
- ldrb r1, [r1]
- cmp r1, 0x8
- bls _081272B8
- ldr r2, =0x00000521
- adds r1, r0, r2
- movs r0, 0x8
- strb r0, [r1]
- b _081272BE
- .pool
-_081272B8:
- ldr r2, =0x00000521
- adds r0, r2
- strb r1, [r0]
-_081272BE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127284
-
- thumb_func_start sub_81272C8
-sub_81272C8: @ 81272C8
- push {r4,lr}
- ldr r0, =gUnknown_0203A170
- ldr r1, =gUnknown_0203A16E
- ldr r2, =gUnknown_0203A18C
- ldr r3, [r2]
- ldr r4, =0x00000521
- adds r2, r3, r4
- ldrb r2, [r2]
- subs r4, 0x1
- adds r3, r4
- ldrb r3, [r3]
- bl sub_812225C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81272C8
-
- thumb_func_start sub_81272F8
-sub_81272F8: @ 81272F8
- push {r4,lr}
- sub sp, 0x4
- ldr r0, =gUnknown_0203A170
- ldr r1, =gUnknown_0203A16E
- ldr r2, =gUnknown_0203A18C
- ldr r3, [r2]
- ldr r4, =0x00000521
- adds r2, r3, r4
- ldrb r2, [r2]
- subs r4, 0x1
- adds r3, r4
- ldrb r3, [r3]
- movs r4, 0x8
- str r4, [sp]
- bl sub_8122298
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81272F8
-
- thumb_func_start sub_8127330
-sub_8127330: @ 8127330
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r1, r0
- ldr r0, =gUnknown_0203A173
- ldrb r0, [r0]
- subs r0, 0x6
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _08127378
- ldr r0, =gUnknown_0203A17C
- ldrb r0, [r0, 0x9]
- cmp r0, 0x1
- bne _08127378
- movs r2, 0x16
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _08127378
- ldr r0, =gStringVar1
- movs r1, 0x1
- bl sub_8127058
- b _08127380
- .pool
-_08127378:
- ldr r0, =gStringVar1
- movs r1, 0
- bl sub_8127058
-_08127380:
- movs r6, 0
- ldr r1, =gUnknown_0203A18C
- ldr r0, [r1]
- movs r3, 0xA4
- lsls r3, 3
- adds r0, r3
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r6, r0
- bge _081273D6
- adds r5, r1, 0
-_08127396:
- lsls r4, r6, 1
- adds r4, r6
- lsls r4, 3
- movs r0, 0xA4
- lsls r0, 1
- adds r4, r0
- ldr r0, [r5]
- adds r0, r4
- ldr r1, =gUnknown_0203A14C
- ldr r1, [r1]
- adds r1, r6
- ldrb r1, [r1]
- bl sub_8127454
- ldr r1, [r5]
- lsls r2, r6, 3
- adds r0, r1, r2
- adds r4, r1, r4
- str r4, [r0]
- adds r0, r1, 0x4
- adds r0, r2
- str r6, [r0]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- movs r2, 0xA4
- lsls r2, 3
- adds r1, r2
- ldrb r0, [r1]
- subs r0, 0x1
- cmp r6, r0
- blt _08127396
-_081273D6:
- ldr r5, =gUnknown_0203A18C
- lsls r4, r6, 1
- adds r4, r6
- lsls r4, 3
- movs r3, 0xA4
- lsls r3, 1
- adds r4, r3
- ldr r0, [r5]
- adds r0, r4
- ldr r1, =gText_Cancel
- bl StringCopy
- ldr r0, [r5]
- lsls r2, r6, 3
- adds r1, r0, r2
- adds r4, r0, r4
- str r4, [r1]
- adds r0, 0x4
- adds r0, r2
- movs r1, 0x2
- negs r1, r1
- str r1, [r0]
- ldr r2, =gUnknown_03006310
- adds r1, r2, 0
- ldr r0, =gUnknown_085A6BD0
- ldm r0!, {r3,r4,r6}
- stm r1!, {r3,r4,r6}
- ldm r0!, {r3,r4,r6}
- stm r1!, {r3,r4,r6}
- ldr r0, =gUnknown_0203A188
- ldrb r0, [r0, 0x1]
- strb r0, [r2, 0x10]
- ldr r0, [r5]
- movs r4, 0xA4
- lsls r4, 3
- adds r1, r0, r4
- ldrb r1, [r1]
- strh r1, [r2, 0xC]
- str r0, [r2]
- ldr r6, =0x00000521
- adds r0, r6
- ldrb r0, [r0]
- strh r0, [r2, 0xE]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127330
-
- thumb_func_start sub_8127454
-sub_8127454: @ 8127454
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r4, r1, 16
- lsrs r4, 16
- ldr r1, =gStringVar1
- bl StringCopy
- lsls r4, 5
- ldr r0, =gDecorations + 1
- adds r4, r0
- adds r0, r5, 0
- adds r1, r4, 0
- bl StringAppend
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127454
-
- thumb_func_start sub_8127480
-sub_8127480: @ 8127480
- push {r4,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x1
- beq _08127492
- movs r0, 0x5
- bl PlaySE
-_08127492:
- adds r0, r4, 0
- bl sub_8127744
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8127480
-
- thumb_func_start sub_81274A0
-sub_81274A0: @ 81274A0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- mov r8, r6
- lsls r2, 24
- lsrs r5, r2, 24
- adds r7, r5, 0
- movs r0, 0x2
- negs r0, r0
- cmp r1, r0
- beq _081274F6
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_81277BC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081274DC
- adds r3, r5, 0x2
- adds r0, r6, 0
- movs r1, 0x18
- movs r2, 0x5C
- bl blit_move_info_icon
- b _081274F6
-_081274DC:
- adds r0, r4, 0
- bl sub_81277E8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081274F6
- adds r3, r7, 0x2
- mov r0, r8
- movs r1, 0x19
- movs r2, 0x5C
- bl blit_move_info_icon
-_081274F6:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81274A0
-
- thumb_func_start sub_8127500
-sub_8127500: @ 8127500
- push {r4,lr}
- sub sp, 0x10
- ldr r4, =gUnknown_0203A18C
- ldr r1, [r4]
- ldr r2, =0x00000522
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08127540
- subs r2, 0x2
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- subs r0, r1
- str r0, [sp]
- movs r0, 0x6E
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- ldr r0, =gUnknown_0203A170
- str r0, [sp, 0xC]
- movs r0, 0x2
- movs r1, 0x3C
- movs r2, 0xC
- movs r3, 0x94
- bl AddScrollIndicatorArrowPairParametrized
- ldr r1, [r4]
- ldr r2, =0x00000522
- adds r1, r2
- strb r0, [r1]
-_08127540:
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127500
-
- thumb_func_start sub_8127554
-sub_8127554: @ 8127554
- push {r4,lr}
- ldr r4, =gUnknown_0203A18C
- ldr r0, [r4]
- ldr r2, =0x00000522
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _08127572
- bl RemoveScrollIndicatorArrowPair
- ldr r0, [r4]
- ldr r1, =0x00000522
- adds r0, r1
- movs r1, 0xFF
- strb r1, [r0]
-_08127572:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127554
-
- thumb_func_start sub_8127580
-sub_8127580: @ 8127580
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- bl sub_81269D4
- adds r0, r4, 0
- bl sub_812759C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8127580
-
- thumb_func_start sub_812759C
-sub_812759C: @ 812759C
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r5, r4, 2
- adds r5, r4
- lsls r5, 3
- ldr r0, =gTasks + 0x8
- adds r5, r0
- movs r0, 0x3
- bl sub_81269D4
- ldr r0, =gUnknown_0203A173
- ldrb r0, [r0]
- bl sub_8127718
- ldr r6, =gUnknown_0203A18C
- ldr r0, =0x00000524
- bl AllocZeroed
- str r0, [r6]
- ldr r1, =0x00000522
- adds r0, r1
- movs r1, 0xFF
- strb r1, [r0]
- bl sub_8127284
- bl sub_81272C8
- bl sub_81272F8
- adds r0, r4, 0
- bl sub_8127330
- ldr r0, =gUnknown_03006310
- ldr r1, =gUnknown_0203A170
- ldrh r1, [r1]
- ldr r2, =gUnknown_0203A16E
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x1A]
- bl sub_8127500
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812759C
-
- thumb_func_start sub_8127620
-sub_8127620: @ 8127620
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_812759C
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_812764C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127620
-
- thumb_func_start sub_812764C
-sub_812764C: @ 812764C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r5, r0, r1
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08127700
- ldrb r0, [r5, 0x1A]
- bl ListMenuHandleInput
- adds r4, r0, 0
- ldrb r0, [r5, 0x1A]
- ldr r7, =gUnknown_0203A170
- ldr r1, =gUnknown_0203A16E
- mov r8, r1
- adds r1, r7, 0
- mov r2, r8
- bl get_coro_args_x18_x1A
- movs r0, 0x2
- negs r0, r0
- cmp r4, r0
- beq _081276A4
- adds r0, 0x1
- cmp r4, r0
- bne _081276C4
- b _08127700
- .pool
-_081276A4:
- movs r0, 0x5
- bl PlaySE
- ldr r0, =gUnknown_085A6B78
- movs r2, 0x16
- ldrsh r1, [r5, r2]
- lsls r1, 3
- adds r0, 0x4
- adds r1, r0
- ldr r1, [r1]
- adds r0, r6, 0
- bl _call_via_r1
- b _08127700
- .pool
-_081276C4:
- movs r0, 0x5
- bl PlaySE
- ldr r0, =gUnknown_0203A172
- strb r4, [r0]
- bl sub_8127554
- ldrb r0, [r5, 0x1A]
- adds r1, r7, 0
- mov r2, r8
- bl sub_81AE6C8
- movs r0, 0x1
- bl sub_8126A58
- bl sub_81277A8
- ldr r0, =gUnknown_0203A18C
- ldr r0, [r0]
- bl Free
- ldr r1, =gUnknown_085A6B78
- movs r2, 0x16
- ldrsh r0, [r5, r2]
- lsls r0, 3
- adds r0, r1
- ldr r1, [r0]
- adds r0, r6, 0
- bl _call_via_r1
-_08127700:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812764C
-
- thumb_func_start sub_8127718
-sub_8127718: @ 8127718
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x2
- bl sub_81269D4
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- str r1, [sp]
- str r1, [sp, 0x4]
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0
- bl sub_8126F68
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8127718
-
- thumb_func_start sub_8127744
-sub_8127744: @ 8127744
- push {r4,r5,lr}
- sub sp, 0xC
- adds r4, r0, 0
- ldr r0, =gUnknown_0203A188
- ldrb r5, [r0, 0x3]
- adds r0, r5, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, =gUnknown_0203A151
- ldrb r0, [r0]
- cmp r4, r0
- bcc _08127770
- ldr r2, =gText_GoBackPrevMenu
- b _08127782
- .pool
-_08127770:
- ldr r1, =gDecorations
- ldr r0, =gUnknown_0203A14C
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- lsls r0, 5
- adds r1, 0x18
- adds r0, r1
- ldr r2, [r0]
-_08127782:
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- adds r0, r5, 0
- movs r1, 0x1
- movs r3, 0
- bl PrintTextOnWindow
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127744
-
- thumb_func_start sub_81277A8
-sub_81277A8: @ 81277A8
- push {lr}
- movs r0, 0x3
- bl sub_8126A58
- movs r0, 0x2
- bl sub_8126A58
- pop {r0}
- bx r0
- thumb_func_end sub_81277A8
-
- thumb_func_start sub_81277BC
-sub_81277BC: @ 81277BC
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r3, =gUnknown_0203A152
-_081277C6:
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _081277D8
- movs r0, 0x1
- b _081277E4
- .pool
-_081277D8:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xF
- bls _081277C6
- movs r0, 0
-_081277E4:
- pop {r1}
- bx r1
- thumb_func_end sub_81277BC
-
- thumb_func_start sub_81277E8
-sub_81277E8: @ 81277E8
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r3, =gUnknown_0203A162
-_081277F2:
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _08127804
- movs r0, 0x1
- b _08127810
- .pool
-_08127804:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xB
- bls _081277F2
- movs r0, 0
-_08127810:
- pop {r1}
- bx r1
- thumb_func_end sub_81277E8
-
- thumb_func_start sub_8127814
-sub_8127814: @ 8127814
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r5, 0
- ldr r0, =gUnknown_0203A152
- movs r1, 0
- movs r2, 0x10
- bl memset
- ldr r0, =gUnknown_0203A162
- movs r1, 0
- movs r2, 0xC
- bl memset
- movs r6, 0
- ldr r0, =gSaveBlock1Ptr
- mov r10, r0
- ldr r1, =0x00001aae
- mov r9, r1
- ldr r3, =gUnknown_0203A173
- mov r8, r3
-_08127842:
- mov r1, r10
- ldr r0, [r1]
- add r0, r9
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0
- beq _081278E2
- movs r2, 0
- mov r3, r8
- ldrb r0, [r3]
- lsls r0, 3
- ldr r1, =gDecorationInventories
- adds r0, r1
- ldrb r0, [r0, 0x4]
- cmp r2, r0
- bcs _081278E2
- ldr r7, =gUnknown_0203A152
- adds r3, r1, 0
- mov r12, r3
-_08127868:
- ldr r0, =gUnknown_0203A14C
- ldr r1, [r0]
- adds r1, r2
- mov r3, r10
- ldr r0, [r3]
- add r0, r9
- adds r0, r6
- ldrb r1, [r1]
- adds r4, r2, 0x1
- ldrb r0, [r0]
- cmp r1, r0
- bne _081278D0
- movs r1, 0
- cmp r1, r5
- bcs _081278A2
- ldrb r0, [r7]
- cmp r0, r4
- beq _081278A2
- ldr r3, =gUnknown_0203A152
- adds r2, r4, 0
-_08127890:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r5
- bcs _081278A2
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _08127890
-_081278A2:
- cmp r1, r5
- bne _081278D0
- adds r0, r5, r7
- strb r4, [r0]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- b _081278E2
- .pool
-_081278D0:
- lsls r0, r4, 16
- lsrs r2, r0, 16
- mov r1, r8
- ldrb r0, [r1]
- lsls r0, 3
- add r0, r12
- ldrb r0, [r0, 0x4]
- cmp r2, r0
- bcc _08127868
-_081278E2:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0xF
- bls _08127842
- movs r5, 0
- movs r6, 0
- ldr r3, =gDecorationInventories
- mov r8, r3
-_081278F4:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x0000271c
- adds r0, r1
- adds r0, r6
- ldrb r0, [r0]
- adds r7, r6, 0x1
- cmp r0, 0
- beq _0812799A
- movs r2, 0
- b _0812798C
- .pool
-_08127918:
- ldr r0, =gUnknown_0203A14C
- ldr r1, [r0]
- adds r1, r2
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r3, =0x0000271c
- adds r0, r3
- adds r0, r6
- ldrb r1, [r1]
- adds r4, r2, 0x1
- ldrb r0, [r0]
- cmp r1, r0
- bne _08127988
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_81277BC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08127988
- movs r1, 0
- cmp r1, r5
- bcs _08127966
- ldr r2, =gUnknown_0203A162
- ldrb r0, [r2]
- cmp r0, r4
- beq _08127966
- adds r3, r2, 0
- adds r2, r4, 0
-_08127954:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r5
- bcs _08127966
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _08127954
-_08127966:
- cmp r1, r5
- bne _08127988
- ldr r0, =gUnknown_0203A162
- adds r0, r5, r0
- strb r4, [r0]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- b _0812799A
- .pool
-_08127988:
- lsls r0, r4, 16
- lsrs r2, r0, 16
-_0812798C:
- ldr r0, =gUnknown_0203A173
- ldrb r0, [r0]
- lsls r0, 3
- add r0, r8
- ldrb r0, [r0, 0x4]
- cmp r2, r0
- bcc _08127918
-_0812799A:
- lsls r0, r7, 16
- lsrs r6, r0, 16
- cmp r6, 0xB
- bls _081278F4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127814
-
- thumb_func_start sub_81279B4
-sub_81279B4: @ 81279B4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl sub_8127814
- pop {r0}
- bx r0
- thumb_func_end sub_81279B4
-
- thumb_func_start sub_81279C4
-sub_81279C4: @ 81279C4
- push {r4,lr}
- movs r2, 0
- ldr r0, =gUnknown_0203A170
- ldrh r0, [r0]
- ldr r1, =gUnknown_0203A16E
- ldrh r1, [r1]
- adds r0, r1
- adds r1, r0, 0x1
- ldr r4, =gUnknown_0203A152
- ldr r3, =gUnknown_0203A162
-_081279D8:
- adds r0, r2, r4
- ldrb r0, [r0]
- cmp r0, r1
- beq _081279EC
- cmp r2, 0xB
- bhi _08127A00
- adds r0, r2, r3
- ldrb r0, [r0]
- cmp r0, r1
- bne _08127A00
-_081279EC:
- movs r0, 0
- b _08127A0C
- .pool
-_08127A00:
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0xF
- bls _081279D8
- movs r0, 0x1
-_08127A0C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81279C4
-
- thumb_func_start sub_8127A14
-sub_8127A14: @ 8127A14
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- bl sub_81269D4
- adds r0, r4, 0
- bl sub_8127620
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8127A14
-
- thumb_func_start sub_8127A30
-sub_8127A30: @ 8127A30
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8127A14
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127A30
-
- thumb_func_start sub_8127A5C
-sub_8127A5C: @ 8127A5C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _08127A82
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- movs r0, 0x1
- bl sub_81269D4
- adds r0, r4, 0
- bl sub_8127620
-_08127A82:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127A5C
-
- thumb_func_start sub_8127A8C
-sub_8127A8C: @ 8127A8C
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, =gTasks + 0x8
- adds r4, r0
- bl sub_8127554
- bl sub_81277A8
- ldrb r0, [r4, 0x1A]
- movs r1, 0
- movs r2, 0
- bl sub_81AE6C8
- ldr r0, =gUnknown_0203A18C
- ldr r0, [r0]
- bl Free
- adds r0, r5, 0
- bl sub_8126E44
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127A8C
-
- thumb_func_start sub_8127ACC
-sub_8127ACC: @ 8127ACC
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r4, r2, r3
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldrh r0, [r1]
- strh r0, [r4, 0xE]
- ldrh r0, [r1, 0x2]
- strh r0, [r4, 0x10]
- adds r3, 0x8
- adds r2, r3
- adds r1, r2, 0x2
- adds r0, r2, 0
- bl PlayerGetDestCoords
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127ACC
-
- thumb_func_start sub_8127B04
-sub_8127B04: @ 8127B04
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- bl DrawWholeMapView
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- ldrb r1, [r1, 0x5]
- lsls r1, 24
- asrs r1, 24
- movs r2, 0x1
- negs r2, r2
- ldr r3, =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r3
- movs r3, 0xE
- ldrsb r3, [r4, r3]
- ldrb r4, [r4, 0x10]
- lsls r4, 24
- asrs r4, 24
- str r4, [sp]
- bl warp1_set
- bl warp_in
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127B04
-
- thumb_func_start sub_8127B54
-sub_8127B54: @ 8127B54
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r0, =0x0000ffff
- cmp r2, 0x22
- beq _08127B7C
- cmp r2, 0x26
- bne _08127B86
- ldr r0, =gUnknown_085A72E4
- adds r0, r1, r0
- ldrb r0, [r0]
- lsls r0, 28
- lsrs r0, 16
- b _08127B86
- .pool
-_08127B7C:
- ldr r0, =gUnknown_085A72EC
- adds r0, r1, r0
- ldrb r0, [r0]
- lsls r0, 28
- lsrs r0, 16
-_08127B86:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8127B54
-
- thumb_func_start sub_8127B90
-sub_8127B90: @ 8127B90
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x34
- ldr r4, [sp, 0x54]
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp]
- lsls r1, 16
- lsrs r1, 16
- str r1, [sp, 0x4]
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x8]
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp, 0xC]
- lsls r4, 16
- lsrs r4, 16
- str r4, [sp, 0x10]
- movs r2, 0
- lsls r0, r3, 16
- cmp r2, r3
- bcc _08127BC6
- b _08127D28
-_08127BC6:
- ldr r1, [sp, 0x8]
- str r1, [sp, 0x28]
- str r0, [sp, 0x2C]
-_08127BCC:
- ldr r3, [sp, 0x4]
- ldr r4, [sp, 0xC]
- subs r1, r3, r4
- lsls r0, r2, 16
- asrs r0, 16
- adds r0, 0x1
- adds r1, r0
- lsls r1, 16
- lsrs r1, 16
- str r1, [sp, 0x14]
- movs r0, 0
- mov r10, r0
- adds r1, r2, 0x1
- str r1, [sp, 0x30]
- ldr r3, [sp, 0x28]
- cmp r10, r3
- bcc _08127BF0
- b _08127D18
-_08127BF0:
- ldr r4, [sp, 0x10]
- lsls r4, 5
- str r4, [sp, 0x18]
- ldr r0, =gUnknown_085A5C24
- adds r0, r4, r0
- str r0, [sp, 0x1C]
- ldr r0, =gDecorations
- adds r0, r4, r0
- str r0, [sp, 0x24]
- ldr r3, [sp, 0x8]
- adds r1, r2, 0
- muls r1, r3
- str r1, [sp, 0x20]
-_08127C0A:
- ldr r0, [sp]
- add r0, r10
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r1, [sp, 0x20]
- add r1, r10
- ldr r4, [sp, 0x1C]
- ldr r0, [r4]
- lsls r1, 1
- adds r1, r0
- movs r2, 0x80
- lsls r2, 2
- adds r0, r2, 0
- ldrh r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bl GetBehaviorByMetatileId
- lsls r4, r0, 16
- lsls r0, r4, 8
- lsrs r0, 24
- bl sub_80892D8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08127C50
- ldr r3, [sp, 0x24]
- ldrb r0, [r3, 0x11]
- cmp r0, 0x1
- beq _08127C60
- lsrs r0, r4, 28
- cmp r0, 0
- beq _08127C60
-_08127C50:
- movs r4, 0xC0
- lsls r4, 4
- mov r8, r4
- b _08127C64
- .pool
-_08127C60:
- movs r0, 0
- mov r8, r0
-_08127C64:
- ldr r1, [sp, 0x24]
- ldrb r0, [r1, 0x11]
- lsls r7, r5, 16
- ldr r2, [sp, 0x14]
- lsls r2, 16
- mov r9, r2
- cmp r0, 0x3
- beq _08127C8E
- asrs r0, r7, 16
- asrs r1, r2, 16
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl sub_8089328
- lsls r0, 24
- lsrs r0, 24
- movs r6, 0x1
- cmp r0, 0x1
- beq _08127C90
-_08127C8E:
- movs r6, 0
-_08127C90:
- ldr r3, [sp, 0x18]
- ldr r4, =gDecorations
- adds r0, r3, r4
- ldrb r0, [r0]
- ldr r4, [sp, 0x20]
- add r4, r10
- lsls r1, r4, 24
- lsrs r1, 24
- bl sub_8127B54
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, =0x0000ffff
- cmp r5, r0
- beq _08127CE0
- asrs r0, r7, 16
- mov r2, r9
- asrs r1, r2, 16
- ldr r3, [sp, 0x1C]
- ldr r2, [r3]
- lsls r3, r4, 1
- adds r3, r2
- movs r4, 0x80
- lsls r4, 2
- adds r2, r4, 0
- orrs r6, r2
- ldrh r3, [r3]
- adds r2, r6, r3
- mov r3, r8
- orrs r3, r2
- orrs r3, r5
- lsls r2, r3, 16
- lsrs r2, 16
- bl MapGridSetMetatileEntryAt
- b _08127D06
- .pool
-_08127CE0:
- asrs r0, r7, 16
- mov r2, r9
- asrs r1, r2, 16
- ldr r3, [sp, 0x1C]
- ldr r2, [r3]
- lsls r3, r4, 1
- adds r3, r2
- movs r4, 0x80
- lsls r4, 2
- adds r2, r4, 0
- orrs r6, r2
- ldrh r3, [r3]
- adds r2, r6, r3
- mov r3, r8
- orrs r3, r2
- lsls r2, r3, 16
- lsrs r2, 16
- bl MapGridSetMetatileIdAt
-_08127D06:
- mov r0, r10
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- ldr r4, [sp, 0x28]
- cmp r10, r4
- bcs _08127D18
- b _08127C0A
-_08127D18:
- ldr r1, [sp, 0x30]
- lsls r0, r1, 16
- lsrs r2, r0, 16
- ldr r3, [sp, 0x2C]
- lsrs r0, r3, 16
- cmp r2, r0
- bcs _08127D28
- b _08127BCC
-_08127D28:
- add sp, 0x34
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8127B90
-
- thumb_func_start sub_8127D38
-sub_8127D38: @ 8127D38
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 16
- lsrs r2, 16
- ldr r1, =gDecorations
- lsls r0, r2, 5
- adds r0, r1
- ldrb r0, [r0, 0x12]
- cmp r0, 0x9
- bhi _08127E10
- lsls r0, 2
- ldr r1, =_08127D68
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08127D68:
- .4byte _08127D90
- .4byte _08127D9A
- .4byte _08127DA4
- .4byte _08127DB4
- .4byte _08127DBE
- .4byte _08127DC8
- .4byte _08127DD8
- .4byte _08127DE2
- .4byte _08127DF2
- .4byte _08127E02
-_08127D90:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x1
- b _08127DAC
-_08127D9A:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x2
- b _08127DAC
-_08127DA4:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x3
-_08127DAC:
- movs r3, 0x1
- bl sub_8127B90
- b _08127E10
-_08127DB4:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x4
- b _08127DD0
-_08127DBE:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x2
- b _08127DD0
-_08127DC8:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x1
-_08127DD0:
- movs r3, 0x2
- bl sub_8127B90
- b _08127E10
-_08127DD8:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x1
- b _08127DFA
-_08127DE2:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x2
- movs r3, 0x4
- bl sub_8127B90
- b _08127E10
-_08127DF2:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x3
-_08127DFA:
- movs r3, 0x3
- bl sub_8127B90
- b _08127E10
-_08127E02:
- str r2, [sp]
- adds r0, r3, 0
- adds r1, r4, 0
- movs r2, 0x3
- movs r3, 0x2
- bl sub_8127B90
-_08127E10:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8127D38
-
- thumb_func_start sub_8127E18
-sub_8127E18: @ 8127E18
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r6, 0
- ldr r7, =gMapHeader
- ldr r0, =gSpecialVar_0x8005
- mov r8, r0
- ldr r1, =gSpecialVar_0x8006
- mov r10, r1
- ldr r2, =gSaveBlock1Ptr
- mov r9, r2
-_08127E34:
- adds r5, r6, 0
- adds r5, 0xAE
- adds r4, r5, 0
- adds r0, r4, 0
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08127F1C
- adds r0, r4, 0
- bl FlagReset
- movs r2, 0
- ldr r0, [r7, 0x4]
- ldrb r4, [r0]
- cmp r2, r4
- bcs _08127E82
- ldr r0, [r0, 0x4]
- ldrh r0, [r0, 0x14]
- cmp r0, r5
- beq _08127E82
- ldr r0, =gMapHeader
- ldr r3, [r0, 0x4]
- ldrb r6, [r3]
- adds r4, r5, 0
-_08127E68:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, r6
- bcs _08127E82
- ldr r0, [r3, 0x4]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x14]
- cmp r0, r4
- bne _08127E68
-_08127E82:
- ldr r0, [r7, 0x4]
- ldr r1, [r0, 0x4]
- lsls r4, r2, 1
- adds r4, r2
- lsls r4, 3
- adds r1, r4, r1
- ldr r5, =0x00003f20
- adds r0, r5, 0
- ldrb r1, [r1, 0x1]
- adds r0, r1
- ldr r1, =gUnknown_0203A190
- ldr r1, [r1]
- ldr r1, [r1, 0x1C]
- ldrh r1, [r1]
- bl VarSet
- ldr r0, [r7, 0x4]
- ldr r0, [r0, 0x4]
- adds r4, r0
- ldrb r0, [r4]
- mov r6, r8
- strh r0, [r6]
- ldr r1, =gUnknown_0203AA34
- ldrh r1, [r1]
- mov r2, r10
- strh r1, [r2]
- ldr r1, =gUnknown_0203AA36
- ldrh r1, [r1]
- ldr r4, =gSpecialVar_0x8007
- strh r1, [r4]
- mov r5, r9
- ldr r2, [r5]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl show_sprite
- ldrb r0, [r6]
- ldr r2, [r5]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- mov r6, r10
- movs r4, 0
- ldrsh r3, [r6, r4]
- ldr r5, =gSpecialVar_0x8007
- movs r6, 0
- ldrsh r4, [r5, r6]
- str r4, [sp]
- bl sub_808EBA8
- mov r1, r8
- ldrb r0, [r1]
- mov r4, r9
- ldr r2, [r4]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl sub_808F254
- b _08127F26
- .pool
-_08127F1C:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0xD
- bls _08127E34
-_08127F26:
- 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_8127E18
-
- thumb_func_start sub_8127F38
-sub_8127F38: @ 8127F38
- push {lr}
- movs r1, 0
- ldr r0, =gUnknown_0203A17C
- ldrb r2, [r0, 0x8]
- cmp r1, r2
- bcs _08127F62
- ldr r3, [r0]
-_08127F46:
- adds r0, r3, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08127F58
- movs r0, 0x1
- b _08127F64
- .pool
-_08127F58:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r2
- bcc _08127F46
-_08127F62:
- movs r0, 0
-_08127F64:
- pop {r1}
- bx r1
- thumb_func_end sub_8127F38
-
- thumb_func_start sub_8127F68
-sub_8127F68: @ 8127F68
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gUnknown_0203A17C
- ldrb r0, [r0, 0x9]
- cmp r0, 0x1
- bne _08127FAC
- ldr r0, =gUnknown_0203A173
- ldrb r0, [r0]
- cmp r0, 0x6
- beq _08127FAC
- cmp r0, 0x7
- beq _08127FAC
- ldr r4, =gStringVar4
- ldr r1, =gText_CantPlaceInRoom
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8127A5C
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
- b _0812804C
- .pool
-_08127FAC:
- bl sub_81279C4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08128038
- bl sub_8127F38
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08127FE8
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xC]
- ldr r1, =sub_8128060
- str r1, [r0]
- b _0812804C
- .pool
-_08127FE8:
- ldr r0, =gStringVar1
- ldr r4, =gUnknown_0203A17C
- ldrb r1, [r4, 0x8]
- movs r2, 0x1
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldrb r0, [r4, 0x9]
- cmp r0, 0
- bne _08128018
- ldr r0, =gStringVar4
- ldr r1, =gText_NoMoreDecorations
- bl StringExpandPlaceholders
- b _08128020
- .pool
-_08128018:
- ldr r0, =gStringVar4
- ldr r1, =gText_NoMoreDecorations2
- bl StringExpandPlaceholders
-_08128020:
- ldr r1, =gStringVar4
- ldr r2, =sub_8127A5C
- adds r0, r5, 0
- bl DisplayItemMessageOnField
- b _0812804C
- .pool
-_08128038:
- ldr r4, =gStringVar4
- ldr r1, =gText_InUseAlready
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8127A5C
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
-_0812804C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8127F68
-
- thumb_func_start sub_8128060
-sub_8128060: @ 8128060
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r7, r0, r1
- movs r1, 0xC
- ldrsh r0, [r7, r1]
- cmp r0, 0x1
- beq _081280AC
- cmp r0, 0x1
- bgt _08128088
- cmp r0, 0
- beq _0812808E
- b _08128112
- .pool
-_08128088:
- cmp r0, 0x2
- beq _081280FC
- b _08128112
-_0812808E:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08128112
- adds r0, r6, 0
- bl sub_8127ACC
- movs r0, 0x1
- strh r0, [r7, 0xC]
- b _08128112
- .pool
-_081280AC:
- ldr r4, =gPaletteFade
- ldrb r0, [r4, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r4, 0x8]
- ldr r5, =gUnknown_0203A190
- ldr r0, =gUnknown_0203A172
- ldrb r1, [r0]
- ldr r0, =gUnknown_0203A14C
- ldr r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- adds r0, r5, 0
- bl ConfigureCameraObjectForPlacingDecoration
- adds r0, r6, 0
- bl sub_812826C
- adds r0, r6, 0
- adds r1, r5, 0
- bl SetUpPlacingDecorationPlayerAvatar
- bl pal_fill_black
- ldrb r1, [r4, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r4, 0x8]
- movs r0, 0x2
- strh r0, [r7, 0xC]
- b _08128112
- .pool
-_081280FC:
- bl sub_80ABDFC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08128112
- movs r0, 0
- strh r0, [r7, 0x20]
- adds r0, r6, 0
- bl sub_8128FD8
-_08128112:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8128060
-
- thumb_func_start ConfigureCameraObjectForPlacingDecoration
-ConfigureCameraObjectForPlacingDecoration: @ 8128118
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, =gUnknown_0203AA38
- ldr r4, =gSprites
- ldr r5, =gUnknown_03005DD0
- ldr r2, [r5, 0x4]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x2E]
- strb r0, [r3]
- adds r0, r6, 0
- bl gpu_pal_decompress_alloc_tag_and_upload
- lsls r0, 24
- lsrs r0, 24
- str r0, [r5, 0x4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1, 0x5]
- ldr r0, [r5, 0x4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r0, r4, 0
- adds r0, 0x1C
- adds r0, r2, r0
- ldr r1, =sub_81292D0
- str r1, [r0]
- adds r2, r4
- ldr r3, =gUnknown_085A7250
- ldr r0, [r6]
- ldrb r0, [r0, 0x12]
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x2]
- strh r0, [r2, 0x20]
- ldr r0, [r5, 0x4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldr r0, [r6]
- ldrb r0, [r0, 0x12]
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x3]
- strh r0, [r1, 0x22]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ConfigureCameraObjectForPlacingDecoration
-
- thumb_func_start SetUpPlacingDecorationPlayerAvatar
-SetUpPlacingDecorationPlayerAvatar: @ 81281A8
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r2, r3
- ldrb r2, [r2, 0x12]
- ldr r3, =gUnknown_085A7250
- ldr r0, [r1]
- ldrb r4, [r0, 0x12]
- lsls r1, r4, 2
- adds r1, r3
- lsls r0, r2, 4
- ldrb r1, [r1, 0x2]
- adds r0, r1
- subs r2, 0x1
- lsls r2, 3
- subs r0, r2
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r4, 0x2
- beq _081281E2
- cmp r4, 0x8
- beq _081281E2
- cmp r4, 0x9
- bne _081281EA
-_081281E2:
- adds r0, r2, 0
- subs r0, 0x8
- lsls r0, 24
- lsrs r2, r0, 24
-_081281EA:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _0812820C
- ldr r1, =SpriteCallbackDummy
- str r0, [sp]
- movs r0, 0xC1
- b _08128214
- .pool
-_0812820C:
- ldr r1, =SpriteCallbackDummy
- movs r0, 0
- str r0, [sp]
- movs r0, 0xC2
-_08128214:
- movs r3, 0x48
- bl AddPseudoFieldObject
- ldr r1, =gUnknown_0203AA39
- strb r0, [r1]
- ldr r3, =gSprites
- ldr r0, =gUnknown_0203AA39
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r2, [r0, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r2
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0, 0x5]
- ldr r4, =gUnknown_0203AA38
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- bl DestroySprite
- ldr r0, =gUnknown_03005DD0
- ldr r0, [r0, 0x4]
- strb r0, [r4]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetUpPlacingDecorationPlayerAvatar
-
- thumb_func_start sub_812826C
-sub_812826C: @ 812826C
- push {lr}
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r2, =gDecorations
- ldr r0, =gUnknown_0203A172
- ldrb r1, [r0]
- ldr r0, =gUnknown_0203A14C
- ldr r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 5
- adds r0, r2
- ldrb r0, [r0, 0x12]
- cmp r0, 0x9
- bls _0812828C
- b _081283B2
-_0812828C:
- lsls r0, 2
- ldr r1, =_081282A8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081282A8:
- .4byte _081282D0
- .4byte _081282E4
- .4byte _081282FC
- .4byte _08128314
- .4byte _08128328
- .4byte _0812833C
- .4byte _08128350
- .4byte _08128370
- .4byte _08128388
- .4byte _081283A0
-_081282D0:
- ldr r0, =gTasks
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 3
- adds r1, r0
- movs r0, 0x1
- b _08128394
- .pool
-_081282E4:
- ldr r1, =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- movs r1, 0x2
- strh r1, [r0, 0x12]
- movs r1, 0x1
- b _081283B0
- .pool
-_081282FC:
- ldr r1, =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- movs r1, 0x3
- strh r1, [r0, 0x12]
- movs r1, 0x1
- b _081283B0
- .pool
-_08128314:
- ldr r1, =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- movs r1, 0x4
- b _081283AC
- .pool
-_08128328:
- ldr r0, =gTasks
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 3
- adds r1, r0
- movs r0, 0x2
- b _08128394
- .pool
-_0812833C:
- ldr r1, =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- movs r1, 0x1
- b _081283AC
- .pool
-_08128350:
- ldr r0, =gTasks
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 3
- adds r1, r0
- movs r0, 0x1
- strh r0, [r1, 0x12]
- movs r0, 0x3
- strh r0, [r1, 0x14]
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- strh r0, [r1, 0xA]
- b _081283B2
- .pool
-_08128370:
- ldr r1, =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- movs r1, 0x2
- strh r1, [r0, 0x12]
- movs r1, 0x4
- b _081283B0
- .pool
-_08128388:
- ldr r0, =gTasks
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 3
- adds r1, r0
- movs r0, 0x3
-_08128394:
- strh r0, [r1, 0x12]
- strh r0, [r1, 0x14]
- b _081283B2
- .pool
-_081283A0:
- ldr r1, =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r0, r1
- movs r1, 0x3
-_081283AC:
- strh r1, [r0, 0x12]
- movs r1, 0x2
-_081283B0:
- strh r1, [r0, 0x14]
-_081283B2:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812826C
-
- thumb_func_start sub_81283BC
-sub_81283BC: @ 81283BC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x1C]
- ldr r3, =gSprites
- ldr r0, =gUnknown_0203AA38
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r2, 0x1
- strh r2, [r0, 0x3C]
- ldr r0, =gUnknown_0203AA39
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- strh r2, [r0, 0x3C]
- bl sub_8128DE0
- adds r0, r4, 0
- bl sub_8128950
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81283BC
-
- thumb_func_start sub_8128414
-sub_8128414: @ 8128414
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x1C]
- ldr r3, =gSprites
- ldr r0, =gUnknown_0203AA38
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r2, 0x1
- strh r2, [r0, 0x3C]
- ldr r0, =gUnknown_0203AA39
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- strh r2, [r0, 0x3C]
- bl sub_8128DE0
- ldr r5, =gStringVar4
- ldr r1, =gText_CancelDecorating
- adds r0, r5, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8128B80
- adds r0, r4, 0
- adds r1, r5, 0
- bl DisplayItemMessageOnField
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128414
-
- thumb_func_start sub_8128484
-sub_8128484: @ 8128484
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- bl sub_80892C4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812849E
- cmp r4, 0
- beq _081284A2
-_0812849E:
- movs r0, 0
- b _081284A4
-_081284A2:
- movs r0, 0x1
-_081284A4:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8128484
-
- thumb_func_start sub_81284AC
-sub_81284AC: @ 81284AC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r4, r2, 16
- lsls r3, 16
- lsrs r5, r3, 16
- lsls r1, 16
- asrs r1, 16
- ldr r3, =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r2, r3
- movs r3, 0xE
- ldrsh r0, [r2, r3]
- adds r0, 0x7
- cmp r1, r0
- bne _081284EC
- lsls r1, r4, 16
- asrs r1, 16
- movs r3, 0x10
- ldrsh r0, [r2, r3]
- adds r0, 0x7
- cmp r1, r0
- bne _081284EC
- cmp r5, 0
- beq _081284EC
- movs r0, 0
- b _081284EE
- .pool
-_081284EC:
- movs r0, 0x1
-_081284EE:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_81284AC
-
- thumb_func_start sub_81284F4
-sub_81284F4: @ 81284F4
- push {r4-r6,lr}
- adds r5, r1, 0
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r0, r6, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_80892C4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08128534
- ldrb r0, [r5]
- cmp r0, 0x21
- bne _08128522
- adds r0, r4, 0
- bl sub_8089378
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08128530
-_08128522:
- lsls r0, r6, 24
- lsrs r0, 24
- bl sub_8089314
- lsls r0, 24
- cmp r0, 0
- beq _08128534
-_08128530:
- movs r0, 0x1
- b _08128536
-_08128534:
- movs r0, 0
-_08128536:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_81284F4
-
- thumb_func_start sub_812853C
-sub_812853C: @ 812853C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x24
- str r1, [sp]
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- ldr r1, =gTasks
- lsls r0, 2
- add r0, r10
- lsls r0, 3
- adds r0, r1
- ldrb r2, [r0, 0x14]
- str r2, [sp, 0x4]
- ldrb r0, [r0, 0x12]
- str r0, [sp, 0x8]
- ldr r3, [sp]
- ldrb r0, [r3, 0x11]
- adds r2, r1, 0
- cmp r0, 0x4
- bls _0812856E
- b _0812893C
-_0812856E:
- lsls r0, 2
- ldr r1, =_08128580
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08128580:
- .4byte _08128594
- .4byte _08128594
- .4byte _08128680
- .4byte _08128834
- .4byte _081288B8
-_08128594:
- movs r6, 0
- ldr r0, [sp, 0x4]
- cmp r6, r0
- bcc _0812859E
- b _0812893C
-_0812859E:
- mov r1, r10
- lsls r1, 2
- str r1, [sp, 0x1C]
-_081285A4:
- mov r2, r10
- lsls r0, r2, 2
- add r0, r10
- lsls r0, 3
- ldr r3, =gTasks
- adds r0, r3
- ldrh r0, [r0, 0xA]
- subs r0, r6
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- movs r7, 0
- adds r6, 0x1
- str r6, [sp, 0x14]
- ldr r0, [sp, 0x8]
- cmp r7, r0
- bcs _0812866E
- mov r1, r9
- lsls r1, 16
- str r1, [sp, 0xC]
- asrs r1, 16
- mov r9, r1
-_081285D0:
- ldr r0, [sp, 0x1C]
- add r0, r10
- lsls r0, 3
- ldr r2, =gTasks
- adds r0, r2
- ldrh r0, [r0, 0x8]
- adds r0, r7
- lsls r0, 16
- mov r8, r0
- asrs r6, r0, 16
- adds r0, r6, 0
- mov r1, r9
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r3, [sp, 0x4]
- ldr r1, [sp, 0x14]
- subs r0, r3, r1
- ldr r2, [sp, 0x8]
- adds r1, r0, 0
- muls r1, r2
- adds r1, r7
- ldr r3, [sp]
- ldr r0, [r3, 0x1C]
- lsls r1, 1
- adds r1, r0
- movs r2, 0x80
- lsls r2, 2
- adds r0, r2, 0
- ldrh r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bl GetBehaviorByMetatileId
- movs r3, 0xF0
- lsls r3, 8
- adds r1, r3, 0
- adds r5, r1, 0
- ands r5, r0
- adds r0, r4, 0
- ldr r1, [sp]
- bl sub_81284F4
- lsls r0, 24
- cmp r0, 0
- bne _08128632
- b _0812890C
-_08128632:
- mov r0, r10
- adds r1, r6, 0
- mov r2, r9
- adds r3, r5, 0
- bl sub_81284AC
- lsls r0, 24
- cmp r0, 0
- bne _08128646
- b _0812890C
-_08128646:
- mov r1, r8
- lsrs r0, r1, 16
- ldr r2, [sp, 0xC]
- lsrs r1, r2, 16
- movs r2, 0
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _08128662
- cmp r4, 0x10
- beq _08128662
- b _0812890C
-_08128662:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r3, [sp, 0x8]
- cmp r7, r3
- bcc _081285D0
-_0812866E:
- ldr r1, [sp, 0x14]
- lsls r0, r1, 24
- lsrs r6, r0, 24
- ldr r2, [sp, 0x4]
- cmp r6, r2
- bcc _081285A4
- b _0812893C
- .pool
-_08128680:
- movs r6, 0
- mov r3, r10
- lsls r3, 2
- str r3, [sp, 0x1C]
- ldr r0, [sp, 0x4]
- subs r0, 0x1
- str r0, [sp, 0x18]
- cmp r6, r0
- bge _0812876C
- adds r0, r3, 0
- add r0, r10
- lsls r0, 3
- str r0, [sp, 0x10]
-_0812869A:
- ldr r1, [sp, 0x10]
- adds r0, r1, r2
- ldrh r0, [r0, 0xA]
- subs r0, r6
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- movs r7, 0
- adds r6, 0x1
- str r6, [sp, 0x14]
- ldr r3, [sp, 0x8]
- cmp r7, r3
- bcs _08128760
- lsls r0, 16
- str r0, [sp, 0x20]
-_081286B8:
- ldr r1, [sp, 0x10]
- adds r0, r1, r2
- ldrh r0, [r0, 0x8]
- adds r0, r7
- lsls r0, 16
- mov r8, r0
- asrs r6, r0, 16
- mov r2, r9
- lsls r1, r2, 16
- adds r0, r6, 0
- asrs r1, 16
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r3, [sp, 0x4]
- ldr r1, [sp, 0x14]
- subs r0, r3, r1
- ldr r2, [sp, 0x8]
- adds r1, r0, 0
- muls r1, r2
- adds r1, r7
- ldr r3, [sp]
- ldr r0, [r3, 0x1C]
- lsls r1, 1
- adds r1, r0
- movs r2, 0x80
- lsls r2, 2
- adds r0, r2, 0
- ldrh r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bl GetBehaviorByMetatileId
- movs r3, 0xF0
- lsls r3, 8
- adds r1, r3, 0
- adds r5, r1, 0
- ands r5, r0
- adds r0, r4, 0
- bl sub_8089314
- lsls r0, 24
- cmp r0, 0
- bne _08128724
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_8128484
- lsls r0, 24
- cmp r0, 0
- bne _08128724
- b _0812890C
-_08128724:
- mov r0, r10
- adds r1, r6, 0
- ldr r3, [sp, 0x20]
- asrs r2, r3, 16
- adds r3, r5, 0
- bl sub_81284AC
- lsls r0, 24
- cmp r0, 0
- bne _0812873A
- b _0812890C
-_0812873A:
- mov r1, r8
- lsrs r0, r1, 16
- ldr r2, [sp, 0x20]
- lsrs r1, r2, 16
- movs r2, 0
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _08128752
- b _0812890C
-_08128752:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r2, =gTasks
- ldr r3, [sp, 0x8]
- cmp r7, r3
- bcc _081286B8
-_08128760:
- ldr r1, [sp, 0x14]
- lsls r0, r1, 24
- lsrs r6, r0, 24
- ldr r3, [sp, 0x18]
- cmp r6, r3
- blt _0812869A
-_0812876C:
- ldr r0, [sp, 0x1C]
- add r0, r10
- lsls r0, 3
- adds r0, r2
- ldrh r0, [r0, 0xA]
- ldr r1, [sp, 0x4]
- subs r0, r1
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- movs r7, 0
- ldr r3, [sp, 0x8]
- cmp r7, r3
- bcc _0812878C
- b _0812893C
-_0812878C:
- lsls r0, 16
- str r0, [sp, 0x20]
-_08128790:
- ldr r0, [sp, 0x1C]
- add r0, r10
- lsls r0, 3
- ldr r1, =gTasks
- adds r0, r1
- ldrh r0, [r0, 0x8]
- adds r0, r7
- lsls r0, 16
- mov r8, r0
- asrs r6, r0, 16
- mov r2, r9
- lsls r1, r2, 16
- adds r0, r6, 0
- asrs r1, 16
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r3, [sp]
- ldr r0, [r3, 0x1C]
- lsls r1, r7, 1
- adds r1, r0
- movs r2, 0x80
- lsls r2, 2
- adds r0, r2, 0
- ldrh r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bl GetBehaviorByMetatileId
- movs r3, 0xF0
- lsls r3, 8
- adds r1, r3, 0
- adds r5, r1, 0
- ands r5, r0
- adds r0, r4, 0
- bl sub_8089314
- lsls r0, 24
- cmp r0, 0
- bne _081287F2
- adds r0, r4, 0
- bl sub_8089328
- lsls r0, 24
- cmp r0, 0
- bne _081287F2
- b _0812890C
-_081287F2:
- mov r0, r10
- adds r1, r6, 0
- ldr r3, [sp, 0x20]
- asrs r2, r3, 16
- adds r3, r5, 0
- bl sub_81284AC
- lsls r0, 24
- cmp r0, 0
- bne _08128808
- b _0812890C
-_08128808:
- mov r1, r8
- lsrs r0, r1, 16
- ldr r2, [sp, 0x20]
- lsrs r1, r2, 16
- movs r2, 0
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _08128822
- cmp r4, 0x10
- bne _0812890C
-_08128822:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r3, [sp, 0x8]
- cmp r7, r3
- bcc _08128790
- b _0812893C
- .pool
-_08128834:
- movs r6, 0
- ldr r0, [sp, 0x4]
- cmp r6, r0
- bcc _0812883E
- b _0812893C
-_0812883E:
- mov r1, r10
- lsls r0, r1, 2
- add r0, r10
- lsls r1, r0, 3
- ldr r2, =gTasks
- adds r0, r1, r2
- ldrh r0, [r0, 0xA]
- subs r0, r6
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- movs r7, 0
- ldr r3, [sp, 0x8]
- cmp r7, r3
- bcs _081288A4
- adds r0, r2, 0
- adds r1, r0
- mov r8, r1
- mov r1, r9
- lsls r0, r1, 16
- asrs r5, r0, 16
-_08128868:
- mov r2, r8
- ldrh r0, [r2, 0x8]
- adds r0, r7
- lsls r0, 16
- asrs r4, r0, 16
- adds r0, r4, 0
- adds r1, r5, 0
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl sub_8089328
- lsls r0, 24
- cmp r0, 0
- beq _0812890C
- adds r0, r4, 0
- adds r1, r5, 0x1
- bl MapGridGetMetatileIdAt
- movs r1, 0xA3
- lsls r1, 2
- cmp r0, r1
- beq _0812890C
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r3, [sp, 0x8]
- cmp r7, r3
- bcc _08128868
-_081288A4:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, [sp, 0x4]
- cmp r6, r0
- bcc _0812883E
- b _0812893C
- .pool
-_081288B8:
- mov r3, r10
- lsls r1, r3, 2
- adds r0, r1, r3
- lsls r0, 3
- adds r0, r2
- ldrh r0, [r0, 0xA]
- mov r9, r0
- movs r7, 0
- str r1, [sp, 0x1C]
- ldr r0, [sp, 0x8]
- cmp r7, r0
- bcs _0812893C
- adds r6, r2, 0
- mov r1, r9
- lsls r1, 16
- str r1, [sp, 0x20]
-_081288D8:
- ldr r0, [sp, 0x1C]
- add r0, r10
- lsls r0, 3
- adds r0, r6
- ldrh r0, [r0, 0x8]
- adds r0, r7
- lsls r0, 16
- lsrs r5, r0, 16
- asrs r0, 16
- mov r2, r9
- lsls r1, r2, 16
- asrs r1, 16
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r3, [sp]
- ldrb r0, [r3, 0x12]
- cmp r0, 0x5
- bne _08128910
-_08128900:
- adds r0, r4, 0
- bl sub_8089364
- lsls r0, 24
- cmp r0, 0
- bne _0812891C
-_0812890C:
- movs r0, 0
- b _0812893E
-_08128910:
- adds r0, r4, 0
- bl sub_8089350
- lsls r0, 24
- cmp r0, 0
- beq _08128900
-_0812891C:
- adds r0, r5, 0
- ldr r2, [sp, 0x20]
- lsrs r1, r2, 16
- movs r2, 0
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- bne _0812890C
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r3, [sp, 0x8]
- cmp r7, r3
- bcc _081288D8
-_0812893C:
- movs r0, 0x1
-_0812893E:
- add sp, 0x24
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_812853C
-
- thumb_func_start sub_8128950
-sub_8128950: @ 8128950
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gUnknown_0203A172
- ldrb r1, [r0]
- ldr r0, =gUnknown_0203A14C
- ldr r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- lsls r1, 5
- ldr r0, =gDecorations
- adds r1, r0
- adds r0, r5, 0
- bl sub_812853C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081289A4
- ldr r4, =gStringVar4
- ldr r1, =gText_PlaceItHere
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_81289D0
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
- b _081289BE
- .pool
-_081289A4:
- movs r0, 0x20
- bl PlaySE
- ldr r4, =gStringVar4
- ldr r1, =gText_CantBePlacedHere
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8129020
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
-_081289BE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128950
-
- thumb_func_start sub_81289D0
-sub_81289D0: @ 81289D0
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8197930
- ldr r1, =gUnknown_085A72C4
- adds r0, r4, 0
- bl sub_8121F68
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81289D0
-
- thumb_func_start sub_81289F0
-sub_81289F0: @ 81289F0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- adds r0, r4, 0
- bl sub_8128AAC
- ldr r2, =gDecorations
- ldr r0, =gUnknown_0203A172
- ldrb r1, [r0]
- ldr r0, =gUnknown_0203A14C
- ldr r0, [r0]
- adds r0, r1
- ldrb r3, [r0]
- lsls r0, r3, 5
- adds r0, r2
- ldrb r0, [r0, 0x11]
- cmp r0, 0x4
- beq _08128A44
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- ldrh r1, [r1, 0xA]
- adds r2, r3, 0
- bl sub_8127D38
- b _08128A64
- .pool
-_08128A44:
- ldr r2, =gUnknown_0203AA34
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- subs r0, 0x7
- strh r0, [r2]
- ldr r2, =gUnknown_0203AA36
- ldrh r0, [r1, 0xA]
- subs r0, 0x7
- strh r0, [r2]
- ldr r0, =gUnknown_08275D1F
- bl ScriptContext1_SetupScript
-_08128A64:
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203AA38
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x22]
- adds r1, 0x2
- strh r1, [r0, 0x22]
- ldr r0, =gMapHeader
- ldrb r0, [r0, 0x14]
- cmp r0, 0x56
- bne _08128A84
- bl sub_80EE104
-_08128A84:
- adds r0, r4, 0
- bl sub_8128BBC
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81289F0
-
- thumb_func_start sub_8128AAC
-sub_8128AAC: @ 8128AAC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r3, 0
- ldr r0, =gUnknown_0203A17C
- ldrb r1, [r0, 0x8]
- adds r5, r0, 0
- cmp r3, r1
- bcs _08128AD2
- ldr r4, [r5]
-_08128AC0:
- adds r2, r4, r3
- ldrb r0, [r2]
- cmp r0, 0
- beq _08128AF0
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, r1
- bcc _08128AC0
-_08128AD2:
- ldrb r0, [r5, 0x9]
- cmp r0, 0
- bne _08128B3C
- movs r3, 0
- ldr r0, =gUnknown_0203A152
- ldrb r1, [r0]
- adds r2, r0, 0
- cmp r1, 0
- bne _08128B28
- b _08128B48
- .pool
-_08128AF0:
- ldr r0, =gUnknown_0203A172
- ldrb r1, [r0]
- ldr r0, =gUnknown_0203A14C
- ldr r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r2, [r5, 0x4]
- adds r2, r3
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldrb r0, [r1, 0x8]
- subs r0, 0x7
- lsls r0, 4
- ldrb r1, [r1, 0xA]
- subs r1, 0x7
- adds r0, r1
- strb r0, [r2]
- b _08128AD2
- .pool
-_08128B28:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0xF
- bhi _08128B76
- adds r1, r3, r2
- ldrb r0, [r1]
- cmp r0, 0
- bne _08128B28
- b _08128B6E
-_08128B3C:
- movs r3, 0
- ldr r0, =gUnknown_0203A162
- ldrb r1, [r0]
- adds r2, r0, 0
- cmp r1, 0
- bne _08128B5C
-_08128B48:
- ldr r0, =gUnknown_0203A172
- ldrb r0, [r0]
- adds r0, 0x1
- strb r0, [r2]
- b _08128B76
- .pool
-_08128B5C:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0xB
- bhi _08128B76
- adds r1, r3, r2
- ldrb r0, [r1]
- cmp r0, 0
- bne _08128B5C
-_08128B6E:
- ldr r0, =gUnknown_0203A172
- ldrb r0, [r0]
- adds r0, 0x1
- strb r0, [r1]
-_08128B76:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128AAC
-
- thumb_func_start sub_8128B80
-sub_8128B80: @ 8128B80
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8197930
- ldr r1, =gUnknown_085A72CC
- adds r0, r4, 0
- bl sub_8121F68
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128B80
-
- thumb_func_start sub_8128BA0
-sub_8128BA0: @ 8128BA0
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- adds r0, r4, 0
- bl sub_8128BBC
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8128BA0
-
- thumb_func_start sub_8128BBC
-sub_8128BBC: @ 8128BBC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xC]
- ldr r1, =c1_overworld_prev_quest
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128BBC
-
- thumb_func_start c1_overworld_prev_quest
-c1_overworld_prev_quest: @ 8128BEC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r5, r0, r1
- movs r1, 0xC
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _08128C10
- cmp r0, 0x1
- beq _08128C30
- b _08128C4C
- .pool
-_08128C10:
- bl ScriptContext2_Enable
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08128C4C
- adds r0, r4, 0
- bl sub_8127B04
- movs r0, 0x1
- strh r0, [r5, 0xC]
- b _08128C4C
- .pool
-_08128C30:
- bl sub_812A3C8
- ldr r0, =0x00000be5
- bl FreeSpritePaletteByTag
- ldr r1, =gFieldCallback
- ldr r0, =sub_8128CD4
- str r0, [r1]
- ldr r0, =c2_exit_to_overworld_2_switch
- bl SetMainCallback2
- adds r0, r4, 0
- bl DestroyTask
-_08128C4C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c1_overworld_prev_quest
-
- thumb_func_start sub_8128C64
-sub_8128C64: @ 8128C64
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r5, r1, 3
- ldr r6, =gTasks + 0x8
- adds r4, r5, r6
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08128C9C
- cmp r0, 0x1
- bgt _08128C8C
- cmp r0, 0
- beq _08128C96
- b _08128CCA
- .pool
-_08128C8C:
- cmp r0, 0x2
- beq _08128CA8
- cmp r0, 0x3
- beq _08128CB4
- b _08128CCA
-_08128C96:
- bl sub_80E9578
- b _08128CAC
-_08128C9C:
- ldr r0, =gUnknown_08275D0C
- bl ScriptContext1_SetupScript
- b _08128CAC
- .pool
-_08128CA8:
- bl ScriptContext2_Enable
-_08128CAC:
- ldrh r0, [r4, 0x4]
- adds r0, 0x1
- strh r0, [r4, 0x4]
- b _08128CCA
-_08128CB4:
- bl sub_80ABDFC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08128CCA
- adds r0, r6, 0
- subs r0, 0x8
- adds r0, r5, r0
- ldr r1, =sub_812764C
- str r1, [r0]
-_08128CCA:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128C64
-
- thumb_func_start sub_8128CD4
-sub_8128CD4: @ 8128CD4
- push {r4,lr}
- bl ScriptContext2_Enable
- bl pal_fill_black
- ldr r0, =sub_8128C64
- movs r1, 0x8
- bl CreateTask
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_8127580
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xC]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128CD4
-
- thumb_func_start sub_8128D10
-sub_8128D10: @ 8128D10
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r2, r1, r0
- ldr r0, =gUnknown_0203AA3A
- ldrb r1, [r0]
- adds r3, r0, 0
- cmp r1, 0x1
- bne _08128D48
- movs r1, 0x2
- ldrsh r0, [r2, r1]
- movs r4, 0xC
- ldrsh r1, [r2, r4]
- subs r0, r1
- subs r0, 0x6
- cmp r0, 0
- bge _08128D48
- ldrh r0, [r2, 0x2]
- adds r0, 0x1
- b _08128D62
- .pool
-_08128D48:
- ldrb r0, [r3]
- cmp r0, 0x2
- bne _08128D6C
- movs r0, 0x2
- ldrsh r1, [r2, r0]
- subs r1, 0x7
- ldr r0, =gMapHeader
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- cmp r1, r0
- blt _08128D6C
- ldrh r0, [r2, 0x2]
- subs r0, 0x1
-_08128D62:
- strh r0, [r2, 0x2]
- movs r0, 0
- b _08128DAE
- .pool
-_08128D6C:
- ldrb r0, [r3]
- cmp r0, 0x3
- bne _08128D82
- movs r1, 0
- ldrsh r0, [r2, r1]
- subs r0, 0x7
- cmp r0, 0
- bge _08128D82
- ldrh r0, [r2]
- adds r0, 0x1
- b _08128DA2
-_08128D82:
- ldrb r0, [r3]
- cmp r0, 0x4
- bne _08128DAC
- movs r3, 0
- ldrsh r1, [r2, r3]
- movs r4, 0xA
- ldrsh r0, [r2, r4]
- adds r1, r0
- subs r1, 0x8
- ldr r0, =gMapHeader
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r1, r0
- blt _08128DAC
- ldrh r0, [r2]
- subs r0, 0x1
-_08128DA2:
- strh r0, [r2]
- movs r0, 0
- b _08128DAE
- .pool
-_08128DAC:
- movs r0, 0x1
-_08128DAE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8128D10
-
- thumb_func_start sub_8128DB4
-sub_8128DB4: @ 8128DB4
- push {lr}
- ldr r0, =gMain
- ldrh r0, [r0, 0x2C]
- movs r1, 0xF0
- ands r1, r0
- cmp r1, 0x40
- beq _08128DD8
- cmp r1, 0x80
- beq _08128DD8
- cmp r1, 0x20
- beq _08128DD8
- cmp r1, 0x10
- beq _08128DD8
- movs r0, 0
- b _08128DDA
- .pool
-_08128DD8:
- movs r0, 0x1
-_08128DDA:
- pop {r1}
- bx r1
- thumb_func_end sub_8128DB4
-
- thumb_func_start sub_8128DE0
-sub_8128DE0: @ 8128DE0
- push {r4,lr}
- ldr r1, =gUnknown_0203AA3A
- movs r0, 0
- strb r0, [r1]
- ldr r4, =gSprites
- ldr r3, =gUnknown_0203AA38
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r2, 0
- strh r2, [r0, 0x32]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r2, [r0, 0x34]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128DE0
-
- thumb_func_start sub_8128E18
-sub_8128E18: @ 8128E18
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r2, r0, 24
- mov r8, r2
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldr r5, =gSprites
- ldr r3, =gUnknown_0203AA38
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x36
- ldrsh r6, [r0, r1]
- cmp r6, 0
- beq _08128E46
- b _08128F66
-_08128E46:
- movs r1, 0x14
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bne _08128E68
- ldr r0, =gUnknown_085A72D4
- movs r3, 0x18
- ldrsh r1, [r4, r3]
- lsls r1, 3
- b _08128E76
- .pool
-_08128E68:
- cmp r0, 0x2
- bne _08128E88
- ldr r0, =gUnknown_085A72D4
- movs r3, 0x18
- ldrsh r1, [r4, r3]
- lsls r1, 3
- adds r0, 0x4
-_08128E76:
- adds r1, r0
- ldr r1, [r1]
- adds r0, r2, 0
- bl _call_via_r1
- b _08128FBA
- .pool
-_08128E88:
- ldr r2, =gMain
- ldrh r1, [r2, 0x2C]
- movs r7, 0xF0
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0x40
- bne _08128EBC
- ldr r1, =gUnknown_0203AA3A
- movs r0, 0x1
- strb r0, [r1]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r6, [r0, 0x32]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, =0x0000fffe
- strh r1, [r0, 0x34]
- ldrh r0, [r4, 0x2]
- subs r0, 0x1
- strh r0, [r4, 0x2]
-_08128EBC:
- ldrh r1, [r2, 0x2C]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0x80
- bne _08128EEC
- ldr r1, =gUnknown_0203AA3A
- movs r0, 0x2
- strb r0, [r1]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r6, [r0, 0x32]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x2
- strh r1, [r0, 0x34]
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
-_08128EEC:
- ldrh r1, [r2, 0x2C]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0x20
- bne _08128F1C
- ldr r1, =gUnknown_0203AA3A
- movs r0, 0x3
- strb r0, [r1]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, =0x0000fffe
- strh r1, [r0, 0x32]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r6, [r0, 0x34]
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r4]
-_08128F1C:
- ldrh r1, [r2, 0x2C]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0x10
- bne _08128F4C
- ldr r1, =gUnknown_0203AA3A
- movs r0, 0x4
- strb r0, [r1]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x2
- strh r1, [r0, 0x32]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r6, [r0, 0x34]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_08128F4C:
- bl sub_8128DB4
- lsls r0, 24
- cmp r0, 0
- beq _08128F62
- mov r0, r8
- bl sub_8128D10
- lsls r0, 24
- cmp r0, 0
- bne _08128F66
-_08128F62:
- bl sub_8128DE0
-_08128F66:
- ldr r0, =gUnknown_0203AA3A
- ldrb r0, [r0]
- cmp r0, 0
- beq _08128F94
- ldr r3, =gSprites
- ldr r2, =gUnknown_0203AA38
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x36]
- adds r1, 0x1
- strh r1, [r0, 0x36]
- ldrb r0, [r2]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- ldrh r2, [r1, 0x36]
- movs r0, 0x7
- ands r0, r2
- strh r0, [r1, 0x36]
-_08128F94:
- movs r1, 0x14
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08128FBA
- ldr r3, =gMain
- ldrh r1, [r3, 0x2E]
- movs r2, 0x1
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _08128FAC
- strh r2, [r4, 0x14]
-_08128FAC:
- ldrh r1, [r3, 0x2E]
- movs r2, 0x2
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _08128FBA
- strh r2, [r4, 0x14]
-_08128FBA:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128E18
-
- thumb_func_start sub_8128FD8
-sub_8128FD8: @ 8128FD8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0x1
- bl sub_8197434
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203AA38
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r2, 0
- strh r2, [r0, 0x3C]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r2, [r0, 0x1C]
- ldr r1, =sub_8128E18
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8128FD8
-
- thumb_func_start sub_8129020
-sub_8129020: @ 8129020
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0812903A
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08129040
-_0812903A:
- adds r0, r2, 0
- bl sub_8128FD8
-_08129040:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129020
-
- thumb_func_start sub_8129048
-sub_8129048: @ 8129048
- push {lr}
- sub sp, 0x4
- adds r1, r0, 0
- mov r2, sp
- movs r0, 0
- strh r0, [r2]
- ldr r2, =0x01000452
- mov r0, sp
- bl CpuSet
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129048
-
- thumb_func_start sub_8129068
-sub_8129068: @ 8129068
- push {lr}
- adds r2, r0, 0
- lsls r1, 16
- ldr r0, =gTilesetPointer_SecretBase
- ldr r0, [r0]
- lsrs r1, 11
- ldr r0, [r0, 0x8]
- adds r0, r1
- adds r1, r2, 0
- movs r2, 0x8
- bl CpuFastSet
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129068
-
- thumb_func_start sub_8129088
-sub_8129088: @ 8129088
- push {r4-r7,lr}
- sub sp, 0x20
- adds r7, r0, 0
- lsls r1, 16
- lsrs r2, r1, 16
- lsrs r4, r1, 26
- adds r5, r4, 0
- cmp r2, 0
- beq _0812909E
- ldr r0, =0x000003ff
- ands r2, r0
-_0812909E:
- ldr r0, =gTilesetPointer_SecretBase
- ldr r0, [r0]
- lsls r1, r2, 5
- ldr r0, [r0, 0x4]
- adds r0, r1
- mov r1, sp
- movs r2, 0x8
- bl CpuFastSet
- cmp r4, 0x1
- beq _081290DE
- cmp r4, 0x1
- bgt _081290C8
- cmp r4, 0
- beq _081290D2
- b _0812919A
- .pool
-_081290C8:
- cmp r5, 0x2
- beq _0812913E
- cmp r5, 0x3
- beq _08129176
- b _0812919A
-_081290D2:
- mov r0, sp
- adds r1, r7, 0
- movs r2, 0x8
- bl CpuFastSet
- b _0812919A
-_081290DE:
- movs r5, 0
- movs r6, 0xF
-_081290E2:
- lsls r4, r5, 2
- adds r4, r7
- adds r5, 0x1
- lsls r3, r5, 2
- subs r0, r3, 0x1
- add r0, sp
- ldrb r2, [r0]
- lsrs r1, r2, 4
- adds r0, r6, 0
- ands r0, r2
- lsls r0, 4
- adds r1, r0
- strb r1, [r4]
- subs r0, r3, 0x2
- add r0, sp
- ldrb r2, [r0]
- lsrs r1, r2, 4
- adds r0, r6, 0
- ands r0, r2
- lsls r0, 4
- adds r1, r0
- strb r1, [r4, 0x1]
- subs r0, r3, 0x3
- add r0, sp
- ldrb r2, [r0]
- lsrs r1, r2, 4
- adds r0, r6, 0
- ands r0, r2
- lsls r0, 4
- adds r1, r0
- strb r1, [r4, 0x2]
- subs r3, 0x4
- mov r1, sp
- adds r0, r1, r3
- ldrb r2, [r0]
- lsrs r1, r2, 4
- adds r0, r6, 0
- ands r0, r2
- lsls r0, 4
- adds r1, r0
- strb r1, [r4, 0x3]
- lsls r5, 16
- lsrs r5, 16
- cmp r5, 0x7
- bls _081290E2
- b _0812919A
-_0812913E:
- movs r5, 0
- movs r3, 0x7
-_08129142:
- lsls r2, r5, 2
- adds r2, r7
- subs r1, r3, r5
- lsls r1, 2
- mov r4, sp
- adds r0, r4, r1
- ldrb r0, [r0]
- strb r0, [r2]
- adds r0, r1, 0x1
- add r0, sp
- ldrb r0, [r0]
- strb r0, [r2, 0x1]
- adds r0, r1, 0x2
- add r0, sp
- ldrb r0, [r0]
- strb r0, [r2, 0x2]
- adds r1, 0x3
- adds r0, r4, r1
- ldrb r0, [r0]
- strb r0, [r2, 0x3]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x7
- bls _08129142
- b _0812919A
-_08129176:
- movs r5, 0
- movs r4, 0x1F
- movs r6, 0xF
-_0812917C:
- adds r3, r7, r5
- subs r0, r4, r5
- add r0, sp
- ldrb r2, [r0]
- lsrs r1, r2, 4
- adds r0, r6, 0
- ands r0, r2
- lsls r0, 4
- adds r1, r0
- strb r1, [r3]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x1F
- bls _0812917C
-_0812919A:
- add sp, 0x20
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8129088
-
- thumb_func_start sub_81291A4
-sub_81291A4: @ 81291A4
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r4, 0
-_081291AA:
- lsls r0, r4, 5
- adds r0, 0x84
- adds r0, r5, r0
- lsls r2, r4, 1
- adds r1, r5, 0x4
- adds r1, r2
- ldrh r1, [r1]
- bl sub_8129088
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3F
- bls _081291AA
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_81291A4
-
- thumb_func_start sub_81291CC
-sub_81291CC: @ 81291CC
- lsls r0, 16
- ldr r1, =gTilesetPointer_SecretBaseRedCave
- ldr r1, [r1]
- ldr r1, [r1, 0xC]
- lsrs r0, 15
- adds r0, r1
- ldrh r1, [r0]
- ldr r0, =0x00000fff
- ands r0, r1
- bx lr
- .pool
- thumb_func_end sub_81291CC
-
- thumb_func_start sub_81291E8
-sub_81291E8: @ 81291E8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r0
- ldr r0, [r0]
- ldrb r0, [r0, 0x12]
- movs r6, 0
- ldr r1, =gUnknown_085A71B0
- lsls r5, r0, 4
- adds r0, r5, r1
- ldrb r0, [r0, 0xC]
- cmp r6, r0
- bcs _0812924C
- adds r7, r1, 0
-_08129204:
- mov r4, r8
- ldm r4!, {r1}
- adds r0, r7, 0x4
- adds r0, r5, r0
- ldr r0, [r0]
- adds r0, r6
- ldrb r0, [r0]
- ldr r1, [r1, 0x1C]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- adds r1, r7, 0
- adds r1, 0x8
- adds r1, r5, r1
- ldr r1, [r1]
- adds r1, r6
- lsls r0, 3
- ldrb r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bl sub_81291CC
- adds r2, r5, r7
- ldr r1, [r2]
- adds r1, r6
- ldrb r1, [r1]
- lsls r1, 1
- adds r4, r1
- strh r0, [r4]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- ldrb r2, [r2, 0xC]
- cmp r6, r2
- bcc _08129204
-_0812924C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81291E8
-
- thumb_func_start sub_812925C
-sub_812925C: @ 812925C
- push {r4,r5,lr}
- lsls r0, 24
- ldr r3, =gUnknown_0203AA3C
- movs r1, 0
- strb r1, [r3]
- ldrb r2, [r3, 0x1]
- subs r1, 0x4
- ands r1, r2
- movs r5, 0xD
- negs r5, r5
- ands r1, r5
- movs r2, 0x11
- negs r2, r2
- ands r1, r2
- subs r2, 0x10
- ands r1, r2
- strb r1, [r3, 0x1]
- ldr r1, =gUnknown_085A7250
- lsrs r0, 22
- adds r0, r1
- ldrb r1, [r0]
- movs r4, 0x3F
- lsls r1, 6
- strb r1, [r3, 0x1]
- ldrh r2, [r3, 0x2]
- ldr r1, =0xfffffe00
- ands r1, r2
- strh r1, [r3, 0x2]
- ldrb r2, [r3, 0x3]
- movs r1, 0x3F
- negs r1, r1
- ands r1, r2
- strb r1, [r3, 0x3]
- ldrb r0, [r0, 0x1]
- lsls r0, 6
- ands r4, r1
- orrs r4, r0
- strb r4, [r3, 0x3]
- ldrh r1, [r3, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r1
- strh r0, [r3, 0x4]
- ldrb r0, [r3, 0x5]
- ands r5, r0
- movs r0, 0xF
- ands r5, r0
- strb r5, [r3, 0x5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812925C
-
- thumb_func_start sub_81292D0
-sub_81292D0: @ 81292D0
- movs r1, 0
- strh r1, [r0, 0x32]
- strh r1, [r0, 0x34]
- strh r1, [r0, 0x36]
- strh r1, [r0, 0x38]
- strh r1, [r0, 0x3A]
- strh r1, [r0, 0x3C]
- ldr r1, =sub_81292E8
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_81292D0
-
- thumb_func_start sub_81292E8
-sub_81292E8: @ 81292E8
- push {lr}
- adds r2, r0, 0
- movs r1, 0x3C
- ldrsh r0, [r2, r1]
- cmp r0, 0
- bne _08129322
- movs r1, 0x3A
- ldrsh r0, [r2, r1]
- cmp r0, 0xE
- bgt _0812930A
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r1, [r3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- b _08129314
-_0812930A:
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r1, 0x4
- orrs r0, r1
-_08129314:
- strb r0, [r3]
- ldrh r0, [r2, 0x3A]
- adds r0, 0x1
- movs r1, 0x1F
- ands r0, r1
- strh r0, [r2, 0x3A]
- b _0812932E
-_08129322:
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_0812932E:
- pop {r0}
- bx r0
- thumb_func_end sub_81292E8
-
- thumb_func_start gpu_pal_decompress_alloc_tag_and_upload
-gpu_pal_decompress_alloc_tag_and_upload: @ 8129334
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- lsls r4, r1, 24
- lsrs r4, 24
- bl sub_8129048
- lsls r4, 5
- ldr r0, =gDecorations
- adds r4, r0
- str r4, [r5]
- ldrb r0, [r4, 0x11]
- cmp r0, 0x4
- beq _081293B4
- ldr r0, =0x00000be5
- bl FreeSpritePaletteByTag
- adds r0, r5, 0
- bl sub_81291E8
- ldr r0, [r5]
- ldrb r0, [r0, 0x12]
- bl sub_812925C
- adds r0, r5, 0
- bl sub_81291A4
- ldr r1, =0x00000884
- adds r0, r5, r1
- ldr r1, =gTilesetPointer_SecretBaseRedCave
- ldr r2, [r1]
- ldr r1, [r5]
- ldr r1, [r1, 0x1C]
- ldrh r1, [r1]
- ldr r2, [r2, 0xC]
- lsls r1, 4
- adds r1, r2
- ldrh r1, [r1, 0xE]
- lsrs r1, 12
- bl sub_8129068
- ldr r0, =gUnknown_085A72BC
- bl LoadSpritePalette
- ldr r0, =gUnknown_085A728C
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl CreateSprite
- b _081293C6
- .pool
-_081293B4:
- ldr r0, [r4, 0x1C]
- ldrh r0, [r0]
- ldr r1, =SpriteCallbackDummy
- movs r2, 0x1
- str r2, [sp]
- movs r2, 0
- movs r3, 0
- bl AddPseudoFieldObject
-_081293C6:
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end gpu_pal_decompress_alloc_tag_and_upload
-
- thumb_func_start AddDecorationIconObjectFromIconTable
-@ u8 AddDecorationIconObjectFromIconTable(u16 tilesTag, u16 paletteTag, u8 decorationId)
-AddDecorationIconObjectFromIconTable: @ 81293D8
- push {r4-r7,lr}
- sub sp, 0x10
- lsls r0, 16
- lsrs r7, r0, 16
- lsls r1, 16
- lsrs r6, r1, 16
- lsls r2, 24
- lsrs r5, r2, 24
- bl AllocItemIconTemporaryBuffers
- lsls r0, 24
- cmp r0, 0
- beq _08129490
- adds r0, r5, 0
- movs r1, 0
- bl GetDecorationIconPicOrPalette
- ldr r4, =gUnknown_0203CEBC
- ldr r1, [r4]
- bl LZDecompressWram
- ldr r0, [r4]
- ldr r4, =gUnknown_0203CEC0
- ldr r1, [r4]
- bl CopyItemIconPicTo4x4Buffer
- ldr r0, [r4]
- str r0, [sp]
- ldr r4, =0xffff0000
- ldr r0, [sp, 0x4]
- ands r0, r4
- movs r1, 0x80
- lsls r1, 2
- orrs r0, r1
- lsls r2, r7, 16
- ldr r1, =0x0000ffff
- ands r0, r1
- orrs r0, r2
- str r0, [sp, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- adds r0, r5, 0
- movs r1, 0x1
- bl GetDecorationIconPicOrPalette
- str r0, [sp, 0x8]
- add r0, sp, 0x8
- ldr r1, [r0, 0x4]
- ands r1, r4
- orrs r1, r6
- str r1, [r0, 0x4]
- bl LoadCompressedObjectPalette
- movs r0, 0x18
- bl Alloc
- adds r5, r0, 0
- adds r1, r5, 0
- ldr r0, =gUnknown_08614FF4
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- strh r7, [r5]
- strh r6, [r5, 0x2]
- adds r0, r5, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl CreateSprite
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl FreeItemIconTemporaryBuffers
- adds r0, r5, 0
- bl Free
- adds r0, r4, 0
- b _08129492
- .pool
-_08129490:
- movs r0, 0x40
-_08129492:
- add sp, 0x10
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end AddDecorationIconObjectFromIconTable
-
- thumb_func_start GetDecorationIconPicOrPalette
-@ u32 GetDecorationIconPicOrPalette(u16 decorationId, u8 which)
-GetDecorationIconPicOrPalette: @ 812949C
- push {lr}
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, 24
- lsrs r0, r1, 24
- cmp r3, 0x78
- bls _081294AC
- movs r3, 0
-_081294AC:
- ldr r2, =gUnknown_085A6BE8
- lsls r0, 2
- lsls r1, r3, 3
- adds r0, r1
- adds r0, r2
- ldr r0, [r0]
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetDecorationIconPicOrPalette
-
- thumb_func_start AddDecorationIconObjectFromFieldObject
-@ u8 AddDecorationIconObjectFromFieldObject(u16 tilesTag, u16 paletteTag, u8 decorationId)
-AddDecorationIconObjectFromFieldObject: @ 81294C0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x14
- adds r4, r2, 0
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- lsls r1, 16
- lsrs r7, r1, 16
- lsls r4, 24
- lsrs r4, 24
- ldr r6, =gUnknown_0203A190
- adds r0, r6, 0
- bl sub_8129048
- lsls r4, 5
- ldr r0, =gDecorations
- adds r4, r0
- str r4, [r6]
- ldrb r0, [r4, 0x11]
- cmp r0, 0x4
- beq _081295A4
- adds r0, r6, 0
- bl sub_81291E8
- ldr r0, [r6]
- ldrb r0, [r0, 0x12]
- bl sub_812925C
- adds r0, r6, 0
- bl sub_81291A4
- ldr r0, =0x00000884
- adds r5, r6, r0
- ldr r0, =gTilesetPointer_SecretBaseRedCave
- ldr r1, [r0]
- ldr r0, [r6]
- ldr r0, [r0, 0x1C]
- ldrh r0, [r0]
- ldr r1, [r1, 0xC]
- lsls r0, 4
- adds r0, r1
- ldrh r1, [r0, 0xE]
- lsrs r1, 12
- adds r0, r5, 0
- bl sub_8129068
- adds r0, r6, 0
- adds r0, 0x84
- str r0, [sp, 0x4]
- ldr r1, =gUnknown_085A72F4
- ldr r0, [r6]
- ldrb r0, [r0, 0x12]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- lsls r0, 21
- ldr r4, =0xffff0000
- mov r2, r8
- lsls r1, r2, 16
- lsrs r0, 16
- orrs r0, r1
- str r0, [sp, 0x8]
- add r0, sp, 0x4
- bl LoadSpriteSheet
- str r5, [sp, 0xC]
- add r0, sp, 0xC
- ldr r1, [r0, 0x4]
- ands r1, r4
- orrs r1, r7
- str r1, [r0, 0x4]
- bl LoadSpritePalette
- movs r0, 0x18
- bl Alloc
- adds r4, r0, 0
- adds r1, r4, 0
- ldr r0, =gUnknown_085A72A4
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- mov r3, r8
- strh r3, [r4]
- strh r7, [r4, 0x2]
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0
- bl Free
- b _081295BA
- .pool
-_081295A4:
- ldr r0, [r4, 0x1C]
- ldrh r0, [r0]
- ldr r1, =SpriteCallbackDummy
- movs r2, 0x1
- str r2, [sp]
- movs r2, 0
- movs r3, 0
- bl AddPseudoFieldObject
- lsls r0, 24
- lsrs r5, r0, 24
-_081295BA:
- adds r0, r5, 0
- add sp, 0x14
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end AddDecorationIconObjectFromFieldObject
-
- thumb_func_start AddDecorationIconObject
-@ u8 AddDecorationIconObject(u8 decorationId, u16 x, u16 y, u8 priority, u16 tilesTag, u16 paletteTag)
-AddDecorationIconObject: @ 81295CC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r4, [sp, 0x24]
- ldr r5, [sp, 0x28]
- lsls r0, 24
- lsrs r6, r0, 24
- mov r12, r6
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- mov r9, r8
- lsls r2, 16
- lsrs r7, r2, 16
- mov r10, r7
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp]
- lsls r4, 16
- lsrs r4, 16
- adds r3, r4, 0
- lsls r5, 16
- lsrs r5, 16
- adds r2, r5, 0
- cmp r6, 0x78
- bls _08129634
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0
- bl AddDecorationIconObjectFromIconTable
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x40
- beq _08129696
- ldr r2, =gSprites
- lsls r3, r4, 4
- adds r1, r3, r4
- lsls r1, 2
- adds r1, r2
- mov r5, r8
- lsls r0, r5, 16
- asrs r0, 16
- adds r0, 0x4
- strh r0, [r1, 0x24]
- lsls r0, r7, 16
- b _081296B2
- .pool
-_08129634:
- ldr r0, =gUnknown_085A6BE8
- lsls r1, r6, 3
- adds r1, r0
- ldr r0, [r1]
- cmp r0, 0
- bne _08129684
- adds r0, r4, 0
- adds r1, r5, 0
- adds r2, r6, 0
- bl AddDecorationIconObjectFromFieldObject
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x40
- beq _08129696
- ldr r1, =gSprites
- lsls r2, r4, 4
- adds r0, r2, r4
- lsls r0, 2
- adds r5, r0, r1
- mov r0, r8
- strh r0, [r5, 0x24]
- adds r0, r6, 0
- subs r0, 0x2A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _08129680
- lsls r0, r7, 16
- asrs r0, 16
- subs r0, 0x4
- strh r0, [r5, 0x26]
- b _081296BC
- .pool
-_08129680:
- strh r7, [r5, 0x26]
- b _081296BC
-_08129684:
- adds r0, r3, 0
- adds r1, r2, 0
- mov r2, r12
- bl AddDecorationIconObjectFromIconTable
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x40
- bne _0812969A
-_08129696:
- movs r0, 0x40
- b _081296D8
-_0812969A:
- ldr r2, =gSprites
- lsls r3, r4, 4
- adds r1, r3, r4
- lsls r1, 2
- adds r1, r2
- mov r5, r9
- lsls r0, r5, 16
- asrs r0, 16
- adds r0, 0x4
- strh r0, [r1, 0x24]
- mov r5, r10
- lsls r0, r5, 16
-_081296B2:
- asrs r0, 16
- adds r0, 0x4
- strh r0, [r1, 0x26]
- adds r1, r2, 0
- adds r2, r3, 0
-_081296BC:
- adds r2, r4
- lsls r2, 2
- adds r2, r1
- movs r0, 0x3
- ldr r1, [sp]
- ands r1, r0
- lsls r1, 2
- ldrb r3, [r2, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2, 0x5]
- adds r0, r4, 0
-_081296D8:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end AddDecorationIconObject
-
- thumb_func_start sub_81296EC
-sub_81296EC: @ 81296EC
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gUnknown_0203A17C
- ldr r1, [r3]
- adds r1, r0
- movs r2, 0
- strb r2, [r1]
- ldr r1, [r3, 0x4]
- adds r1, r0
- strb r2, [r1]
- bx lr
- .pool
- thumb_func_end sub_81296EC
-
- thumb_func_start sub_8129708
-sub_8129708: @ 8129708
- push {r4-r6,lr}
- ldr r6, =gSpecialVar_0x8005
- movs r0, 0
- strh r0, [r6]
- ldr r2, =gScriptResult
- strh r0, [r2]
- ldr r4, =gSpecialVar_0x8004
- ldr r1, =gUnknown_0203AAC4
- ldrh r0, [r4]
- ldrb r1, [r1]
- cmp r0, r1
- bne _08129744
- movs r0, 0x1
- strh r0, [r2]
- b _08129796
- .pool
-_08129738:
- ldr r1, =gSpecialVar_0x8006
- ldrb r0, [r2]
- strh r0, [r1]
- b _08129796
- .pool
-_08129744:
- ldr r3, =gDecorations
- ldr r2, =gUnknown_0203A17C
- ldr r1, =gUnknown_0203AA44
- ldrh r0, [r4]
- lsls r0, 3
- adds r4, r0, r1
- ldrb r1, [r4]
- ldr r0, [r2]
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 5
- adds r0, r3
- ldrb r0, [r0, 0x11]
- cmp r0, 0x4
- bne _08129796
- ldrh r0, [r4, 0x4]
- strh r0, [r6]
- ldrb r0, [r4]
- bl sub_81296EC
- movs r1, 0
- ldr r0, =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r2, [r0]
- cmp r1, r2
- bcs _08129796
- ldr r5, [r0, 0x4]
- ldrh r4, [r6]
- adds r3, r2, 0
-_0812977E:
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0, r5
- ldrh r0, [r2, 0x14]
- cmp r0, r4
- beq _08129738
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r3
- bcc _0812977E
-_08129796:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129708
-
- thumb_func_start sub_81297AC
-sub_81297AC: @ 81297AC
- push {r4-r6,lr}
- movs r2, 0
- ldr r0, =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r1, [r0]
- cmp r2, r1
- bcs _081297F0
- adds r3, r0, 0
- ldr r5, [r3, 0x4]
- ldr r0, =gSpecialVar_0x8004
- ldrh r4, [r0]
- ldr r6, =gSpecialVar_0x8005
-_081297C4:
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0, r5
- ldrh r0, [r1, 0x14]
- cmp r0, r4
- bne _081297E4
- ldrb r0, [r1]
- strh r0, [r6]
- b _081297F0
- .pool
-_081297E4:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- ldrb r0, [r3]
- cmp r2, r0
- bcc _081297C4
-_081297F0:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81297AC
-
- thumb_func_start sub_81297F8
-sub_81297F8: @ 81297F8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- movs r6, 0
- b _081298BE
-_08129808:
- ldr r3, =gUnknown_0203AA44
- lsls r5, r6, 3
- adds r4, r5, r3
- ldrb r1, [r4]
- ldr r2, =gUnknown_0203A17C
- ldr r0, [r2]
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 5
- ldr r7, =gDecorations
- adds r0, r7
- ldrb r2, [r0, 0x11]
- ldr r7, =gUnknown_0203A17C
- ldr r0, [r7, 0x4]
- adds r0, r1
- ldrb r0, [r0]
- lsrs r1, r0, 4
- mov r8, r1
- movs r7, 0xF
- adds r1, r7, 0
- ands r1, r0
- str r1, [sp]
- adds r7, r5, 0
- adds r6, 0x1
- str r6, [sp, 0x4]
- cmp r2, 0x4
- beq _081298B8
- movs r6, 0
- ldrb r4, [r4, 0x2]
- cmp r6, r4
- bcs _081298AE
-_08129846:
- movs r4, 0
- adds r0, r5, r3
- adds r2, r6, 0x1
- mov r10, r2
- ldrb r0, [r0, 0x1]
- cmp r4, r0
- bcs _0812989C
- ldr r3, =gUnknown_0203AA44
- adds r3, r7
- mov r9, r3
- subs r5, r6, 0x7
- str r5, [sp, 0x8]
-_0812985E:
- adds r0, r4, 0x7
- add r0, r8
- ldr r1, =gMapHeader
- ldr r3, [r1]
- ldr r1, [sp]
- subs r2, r1, r6
- ldr r1, [r3]
- muls r2, r1
- mov r5, r8
- adds r1, r5, r4
- adds r1, r2
- ldr r2, [r3, 0xC]
- lsls r1, 1
- adds r1, r2
- ldrh r1, [r1]
- movs r3, 0xC0
- lsls r3, 6
- adds r2, r3, 0
- orrs r2, r1
- ldr r5, [sp]
- ldr r3, [sp, 0x8]
- subs r1, r5, r3
- bl MapGridSetMetatileEntryAt
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- mov r5, r9
- ldrb r5, [r5, 0x1]
- cmp r4, r5
- bcc _0812985E
-_0812989C:
- mov r1, r10
- lsls r0, r1, 24
- lsrs r6, r0, 24
- ldr r3, =gUnknown_0203AA44
- adds r5, r7, 0
- adds r0, r7, r3
- ldrb r0, [r0, 0x2]
- cmp r6, r0
- bcc _08129846
-_081298AE:
- ldr r2, =gUnknown_0203AA44
- adds r0, r7, r2
- ldrb r0, [r0]
- bl sub_81296EC
-_081298B8:
- ldr r3, [sp, 0x4]
- lsls r0, r3, 24
- lsrs r6, r0, 24
-_081298BE:
- ldr r0, =gUnknown_0203AAC4
- ldrb r0, [r0]
- cmp r6, r0
- bcc _08129808
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81297F8
-
- thumb_func_start sub_81298EC
-sub_81298EC: @ 81298EC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0xC
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08129928
- cmp r0, 0x1
- bgt _08129914
- cmp r0, 0
- beq _0812991E
- b _08129994
- .pool
-_08129914:
- cmp r0, 0x2
- beq _08129954
- cmp r0, 0x3
- beq _08129968
- b _08129994
-_0812991E:
- bl sub_81297F8
- movs r0, 0x1
- strh r0, [r4, 0xC]
- b _08129994
-_08129928:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08129994
- bl DrawWholeMapView
- ldr r0, =gUnknown_08275D2E
- bl ScriptContext1_SetupScript
- movs r0, 0
- movs r1, 0x1
- bl sub_8197434
- movs r0, 0x2
- strh r0, [r4, 0xC]
- b _08129994
- .pool
-_08129954:
- bl ScriptContext2_Enable
- adds r0, r5, 0
- bl sub_8127814
- bl pal_fill_black
- movs r0, 0x3
- strh r0, [r4, 0xC]
- b _08129994
-_08129968:
- bl sub_80ABDFC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08129994
- ldr r4, =gStringVar4
- ldr r1, =gText_DecorationReturnedToPC
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8129D64
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
- ldr r0, =gMapHeader
- ldrb r0, [r0, 0x14]
- cmp r0, 0x56
- bne _08129994
- bl sub_80EE104
-_08129994:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81298EC
-
- thumb_func_start sub_81299AC
-sub_81299AC: @ 81299AC
- push {lr}
- movs r1, 0
- ldr r0, =gUnknown_0203A17C
- ldrb r2, [r0, 0x8]
- cmp r1, r2
- bcs _081299D6
- ldr r3, [r0]
-_081299BA:
- adds r0, r3, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _081299CC
- movs r0, 0x1
- b _081299D8
- .pool
-_081299CC:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r2
- bcc _081299BA
-_081299D6:
- movs r0, 0
-_081299D8:
- pop {r1}
- bx r1
- thumb_func_end sub_81299AC
-
- thumb_func_start SetUpPuttingAwayDecorationPlayerAvatar
-SetUpPuttingAwayDecorationPlayerAvatar: @ 81299DC
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- bl player_get_direction_lower_nybble
- ldr r3, =gUnknown_0203AA38
- ldr r2, =gSprites
- ldr r4, =gUnknown_03005DD0
- ldr r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r0, [r0, 0x2E]
- strb r0, [r3]
- bl sub_812A39C
- ldr r0, =gUnknown_085A7404
- movs r1, 0x78
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- str r0, [r4, 0x4]
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _08129A3C
- ldr r1, =SpriteCallbackDummy
- str r0, [sp]
- movs r0, 0xC1
- b _08129A44
- .pool
-_08129A3C:
- ldr r1, =SpriteCallbackDummy
- movs r0, 0
- str r0, [sp]
- movs r0, 0xC2
-_08129A44:
- movs r2, 0x88
- movs r3, 0x48
- bl AddPseudoFieldObject
- ldr r1, =gUnknown_0203AA39
- strb r0, [r1]
- ldr r6, =gSprites
- ldr r0, =gUnknown_0203AA39
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r2, [r1, 0x5]
- movs r4, 0xD
- negs r4, r4
- adds r0, r4, 0
- ands r0, r2
- movs r2, 0x4
- mov r8, r2
- mov r2, r8
- orrs r0, r2
- strb r0, [r1, 0x5]
- ldr r5, =gUnknown_0203AA38
- ldrb r1, [r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- bl DestroySprite
- ldr r0, =gUnknown_03005DD0
- ldr r0, [r0, 0x4]
- strb r0, [r5]
- ldrb r1, [r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0, 0x5]
- ands r4, r1
- mov r1, r8
- orrs r4, r1
- strb r4, [r0, 0x5]
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetUpPuttingAwayDecorationPlayerAvatar
-
- thumb_func_start sub_8129ABC
-sub_8129ABC: @ 8129ABC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08129B0C
- cmp r0, 0x1
- bgt _08129AE4
- cmp r0, 0
- beq _08129AEA
- b _08129B2E
- .pool
-_08129AE4:
- cmp r0, 0x2
- beq _08129B1A
- b _08129B2E
-_08129AEA:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08129B2E
- adds r0, r5, 0
- bl sub_8127ACC
- movs r0, 0x1
- strh r0, [r4, 0x4]
- strh r0, [r4, 0xC]
- strh r0, [r4, 0xA]
- b _08129B2E
- .pool
-_08129B0C:
- bl SetUpPuttingAwayDecorationPlayerAvatar
- bl pal_fill_black
- movs r0, 0x2
- strh r0, [r4, 0x4]
- b _08129B2E
-_08129B1A:
- bl sub_80ABDFC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08129B2E
- strh r0, [r4, 0x18]
- adds r0, r5, 0
- bl sub_8129B34
-_08129B2E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8129ABC
-
- thumb_func_start sub_8129B34
-sub_8129B34: @ 8129B34
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- movs r0, 0
- movs r1, 0x1
- bl sub_8197434
- ldr r4, =gSprites
- ldr r3, =gUnknown_0203AA38
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r6, 0
- strh r6, [r0, 0x3C]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, =sub_812A36C
- str r1, [r0]
- ldr r2, =gUnknown_0203AA39
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x88
- strh r1, [r0, 0x20]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x48
- strh r1, [r0, 0x22]
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- strh r6, [r0, 0x1C]
- ldr r1, =sub_8128E18
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129B34
-
- thumb_func_start sub_8129BCC
-sub_8129BCC: @ 8129BCC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x1C]
- bl sub_8128DE0
- adds r0, r4, 0
- bl sub_8129C74
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129BCC
-
- thumb_func_start sub_8129BF8
-sub_8129BF8: @ 8129BF8
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x1C]
- bl sub_8128DE0
- ldr r3, =gSprites
- ldr r5, =gUnknown_0203AA38
- ldrb r1, [r5]
- 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]
- ldrb r1, [r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, 0x1C
- adds r0, r3
- ldr r1, =SpriteCallbackDummy
- str r1, [r0]
- ldr r5, =gStringVar4
- ldr r1, =gText_StopPuttingAwayDecorations
- adds r0, r5, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_812A1F0
- adds r0, r4, 0
- adds r1, r5, 0
- bl DisplayItemMessageOnField
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129BF8
-
- thumb_func_start sub_8129C74
-sub_8129C74: @ 8129C74
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r5, 0
- bl sub_812A0E8
- ldr r0, =gUnknown_0203AAC4
- ldrb r0, [r0]
- cmp r0, 0
- beq _08129CA8
- ldr r4, =gStringVar4
- ldr r1, =gText_ReturnDecorationToPC
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_812A1A0
- b _08129D14
- .pool
-_08129CA8:
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r1, r0
- movs r2, 0
- ldrsh r0, [r1, r2]
- movs r2, 0x2
- ldrsh r1, [r1, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_8089288
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08129CDE
- adds r0, r4, 0
- bl sub_8089404
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08129D3C
-_08129CDE:
- ldr r3, =gSprites
- ldr r4, =gUnknown_0203AA38
- ldrb r1, [r4]
- 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]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, 0x1C
- adds r0, r3
- ldr r1, =SpriteCallbackDummy
- str r1, [r0]
- ldr r4, =gStringVar4
- ldr r1, =gText_StopPuttingAwayDecorations
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_812A1F0
-_08129D14:
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
- b _08129D50
- .pool
-_08129D3C:
- ldr r4, =gStringVar4
- ldr r1, =gText_NoDecorationHere
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8129D64
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
-_08129D50:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129C74
-
- thumb_func_start sub_8129D64
-sub_8129D64: @ 8129D64
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08129D7E
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08129D84
-_08129D7E:
- adds r0, r2, 0
- bl sub_8129B34
-_08129D84:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129D64
-
- thumb_func_start sub_8129D8C
-sub_8129D8C: @ 8129D8C
- push {lr}
- adds r2, r1, 0
- lsls r0, 24
- ldr r1, =gDecorations
- lsrs r0, 19
- adds r0, r1
- ldrb r1, [r0, 0x12]
- cmp r1, 0
- bne _08129DA8
- movs r0, 0x1
- strb r0, [r2, 0x1]
- b _08129E06
- .pool
-_08129DA8:
- cmp r1, 0x1
- bne _08129DB4
- movs r0, 0x2
- strb r0, [r2, 0x1]
- strb r1, [r2, 0x2]
- b _08129E08
-_08129DB4:
- cmp r1, 0x2
- bne _08129DC0
- movs r0, 0x3
- strb r0, [r2, 0x1]
- movs r0, 0x1
- b _08129E06
-_08129DC0:
- cmp r1, 0x3
- bne _08129DC8
- movs r0, 0x4
- b _08129E02
-_08129DC8:
- cmp r1, 0x4
- bne _08129DD2
- movs r0, 0x2
- strb r0, [r2, 0x1]
- b _08129E06
-_08129DD2:
- cmp r1, 0x5
- bne _08129DDA
- movs r0, 0x1
- b _08129E02
-_08129DDA:
- cmp r1, 0x6
- bne _08129DE6
- movs r0, 0x1
- strb r0, [r2, 0x1]
- movs r0, 0x3
- b _08129E06
-_08129DE6:
- cmp r1, 0x7
- bne _08129DF2
- movs r0, 0x2
- strb r0, [r2, 0x1]
- movs r0, 0x4
- b _08129E06
-_08129DF2:
- cmp r1, 0x8
- bne _08129DFC
- movs r0, 0x3
- strb r0, [r2, 0x1]
- b _08129E06
-_08129DFC:
- cmp r1, 0x9
- bne _08129E08
- movs r0, 0x3
-_08129E02:
- strb r0, [r2, 0x1]
- movs r0, 0x2
-_08129E06:
- strb r0, [r2, 0x2]
-_08129E08:
- pop {r0}
- bx r0
- thumb_func_end sub_8129D8C
-
- thumb_func_start sub_8129E0C
-sub_8129E0C: @ 8129E0C
- push {r4-r6,lr}
- lsls r0, 24
- lsls r1, 24
- ldr r5, =gSprites
- ldr r6, =gUnknown_0203AA38
- ldrb r3, [r6]
- lsls r2, r3, 4
- adds r2, r3
- lsls r2, 2
- adds r2, r5
- adds r2, 0x3E
- ldrb r3, [r2]
- movs r4, 0x4
- orrs r3, r4
- strb r3, [r2]
- ldrb r3, [r6]
- lsls r2, r3, 4
- adds r2, r3
- lsls r2, 2
- adds r3, r5, 0
- adds r3, 0x1C
- adds r2, r3
- ldr r3, =SpriteCallbackDummy
- str r3, [r2]
- ldr r4, =gUnknown_0203AA39
- ldrb r3, [r4]
- lsls r2, r3, 4
- adds r2, r3
- lsls r2, 2
- adds r2, r5
- lsrs r0, 20
- adds r0, 0x88
- strh r0, [r2, 0x20]
- ldrb r2, [r4]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r5
- lsrs r1, 20
- adds r1, 0x48
- strh r1, [r0, 0x22]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8129E0C
-
- thumb_func_start sub_8129E74
-sub_8129E74: @ 8129E74
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r9, r2
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r3, =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r2, r3
- ldrb r0, [r2, 0x8]
- subs r0, 0x7
- lsls r0, 24
- lsrs r7, r0, 24
- ldrb r0, [r2, 0xA]
- subs r0, 0x7
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r2, =gUnknown_0203A17C
- ldr r0, [r2, 0x4]
- adds r0, r1
- ldrb r0, [r0]
- lsrs r5, r0, 4
- movs r6, 0xF
- ands r6, r0
- mov r0, r9
- ldrb r4, [r0, 0x2]
- ldr r0, [r2]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x29
- bne _08129ED4
- adds r0, r5, 0x7
- adds r1, r6, 0x7
- bl MapGridGetMetatileIdAt
- movs r1, 0xA3
- lsls r1, 2
- cmp r0, r1
- bne _08129ED4
- subs r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_08129ED4:
- cmp r7, r5
- bcc _08129F10
- mov r0, r9
- ldrb r2, [r0, 0x1]
- adds r0, r5, r2
- cmp r7, r0
- bge _08129F10
- subs r0, r6, r4
- cmp r8, r0
- ble _08129F10
- cmp r8, r6
- bhi _08129F10
- subs r0, r7, r5
- adds r0, 0x1
- subs r0, r2, r0
- lsls r0, 24
- lsrs r0, 24
- mov r2, r8
- subs r1, r6, r2
- lsls r1, 24
- lsrs r1, 24
- bl sub_8129E0C
- movs r0, 0x1
- b _08129F12
- .pool
-_08129F10:
- movs r0, 0
-_08129F12:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8129E74
-
- thumb_func_start sub_8129F20
-sub_8129F20: @ 8129F20
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r2, =gUnknown_0203A17C
- ldr r3, =gUnknown_0203AA44
- ldr r0, =gUnknown_0203AAC4
- ldrb r0, [r0]
- lsls r0, 3
- adds r0, r3
- ldrb r1, [r0]
- ldr r0, [r2, 0x4]
- adds r0, r1
- ldrb r0, [r0]
- lsrs r1, r0, 4
- mov r8, r1
- movs r6, 0xF
- ands r6, r0
- movs r4, 0
- ldr r7, =gSaveBlock1Ptr
- mov r9, r3
-_08129F4A:
- ldr r1, [r7]
- lsls r0, r4, 1
- adds r0, r4
- lsls r5, r0, 3
- adds r1, r5
- ldr r2, =0x00000c74
- adds r0, r1, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, r8
- bne _08129FB0
- ldr r2, =0x00000c76
- adds r0, r1, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, r6
- bne _08129FB0
- ldr r2, =0x00000c84
- adds r0, r1, r2
- ldrh r0, [r0]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08129FB0
- ldr r0, =gUnknown_0203AAC4
- ldrb r1, [r0]
- lsls r1, 3
- add r1, r9
- ldr r0, [r7]
- adds r0, r5
- ldr r2, =0x00000c84
- adds r0, r2
- ldrh r0, [r0]
- strh r0, [r1, 0x4]
- b _08129FBA
- .pool
-_08129FB0:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3F
- bls _08129F4A
-_08129FBA:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8129F20
-
- thumb_func_start sub_8129FC8
-sub_8129FC8: @ 8129FC8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- movs r6, 0
- b _0812A02A
-_08129FD2:
- ldr r0, [r0]
- adds r1, r0, r6
- ldrb r0, [r1]
- cmp r0, 0
- beq _0812A024
- ldr r0, =gDecorations
- ldrb r2, [r1]
- lsls r1, r2, 5
- adds r1, r0
- ldrb r0, [r1, 0x11]
- cmp r0, 0x4
- bne _0812A024
- ldr r5, =gUnknown_0203AA44
- adds r0, r2, 0
- adds r1, r5, 0
- bl sub_8129D8C
- lsls r1, r6, 24
- lsrs r1, 24
- adds r0, r7, 0
- adds r2, r5, 0
- bl sub_8129E74
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- bne _0812A024
- strb r6, [r5]
- bl sub_8129F20
- ldr r0, =gUnknown_0203AAC4
- strb r4, [r0]
- movs r0, 0x1
- b _0812A034
- .pool
-_0812A024:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
-_0812A02A:
- ldr r0, =gUnknown_0203A17C
- ldrb r1, [r0, 0x8]
- cmp r6, r1
- bcc _08129FD2
- movs r0, 0
-_0812A034:
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8129FC8
-
- thumb_func_start sub_812A040
-sub_812A040: @ 812A040
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r2, 24
- lsrs r2, 24
- mov r9, r2
- lsls r3, 24
- lsrs r3, 24
- mov r8, r3
- movs r4, 0
- ldr r7, =gUnknown_0203A17C
- ldrb r0, [r7, 0x8]
- cmp r4, r0
- bcs _0812A0C6
- adds r6, r7, 0
- ldr r5, =gUnknown_0203AAC4
-_0812A072:
- ldr r0, [r6]
- adds r0, r4
- ldrb r1, [r0]
- ldr r0, [r6, 0x4]
- adds r0, r4
- ldrb r0, [r0]
- lsrs r3, r0, 4
- movs r2, 0xF
- ands r2, r0
- cmp r1, 0
- beq _0812A0BA
- ldr r0, =gDecorations
- lsls r1, 5
- adds r1, r0
- ldrb r0, [r1, 0x11]
- cmp r0, 0x4
- bne _0812A0BA
- ldr r0, [sp]
- cmp r0, r3
- bhi _0812A0BA
- cmp r10, r2
- bhi _0812A0BA
- cmp r9, r3
- bcc _0812A0BA
- cmp r8, r2
- bcc _0812A0BA
- ldr r0, =gUnknown_0203AA44
- ldrb r1, [r5]
- lsls r1, 3
- adds r1, r0
- strb r4, [r1]
- bl sub_8129F20
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
-_0812A0BA:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r7, 0x8]
- cmp r4, r0
- bcc _0812A072
-_0812A0C6:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A040
-
- thumb_func_start sub_812A0E8
-sub_812A0E8: @ 812A0E8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r4, =gUnknown_0203AAC4
- movs r0, 0
- strb r0, [r4]
- adds r0, r6, 0
- bl sub_8129FC8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0812A18C
- movs r5, 0
- ldr r0, =gUnknown_0203A17C
- ldrb r1, [r0, 0x8]
- cmp r5, r1
- bcs _0812A15A
- adds r7, r4, 0
-_0812A10E:
- ldr r0, [r0]
- adds r0, r5
- ldrb r1, [r0]
- cmp r1, 0
- beq _0812A14C
- ldr r4, =gUnknown_0203AA44
- adds r0, r1, 0
- adds r1, r4, 0
- bl sub_8129D8C
- adds r0, r6, 0
- adds r1, r5, 0
- adds r2, r4, 0
- bl sub_8129E74
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812A14C
- strb r5, [r4]
- ldrb r0, [r7]
- adds r0, 0x1
- strb r0, [r7]
- b _0812A15A
- .pool
-_0812A14C:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gUnknown_0203A17C
- ldrb r1, [r0, 0x8]
- cmp r5, r1
- bcc _0812A10E
-_0812A15A:
- ldr r0, =gUnknown_0203AAC4
- ldrb r0, [r0]
- cmp r0, 0
- beq _0812A18C
- ldr r0, =gUnknown_0203A17C
- ldr r2, =gUnknown_0203AA44
- ldrb r1, [r2]
- ldr r0, [r0, 0x4]
- adds r0, r1
- ldrb r1, [r0]
- lsrs r0, r1, 4
- movs r3, 0xF
- ands r3, r1
- ldrb r1, [r2, 0x2]
- subs r1, r3, r1
- adds r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- ldrb r2, [r2, 0x1]
- adds r2, r0
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- bl sub_812A040
-_0812A18C:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A0E8
-
- thumb_func_start sub_812A1A0
-sub_812A1A0: @ 812A1A0
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8197930
- ldr r1, =gUnknown_085A7348
- adds r0, r4, 0
- bl sub_8121F68
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A1A0
-
- thumb_func_start sub_812A1C0
-sub_812A1C0: @ 812A1C0
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xC]
- ldr r1, =sub_81298EC
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A1C0
-
- thumb_func_start sub_812A1F0
-sub_812A1F0: @ 812A1F0
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8197930
- ldr r1, =gUnknown_085A7350
- adds r0, r4, 0
- bl sub_8121F68
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A1F0
-
- thumb_func_start sub_812A210
-sub_812A210: @ 812A210
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0
- bl sub_8197434
- adds r0, r4, 0
- bl sub_812A22C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_812A210
-
- thumb_func_start sub_812A22C
-sub_812A22C: @ 812A22C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xC]
- ldr r1, =sub_812A25C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A22C
-
- thumb_func_start sub_812A25C
-sub_812A25C: @ 812A25C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r5, r0, r1
- movs r1, 0xC
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _0812A280
- cmp r0, 0x1
- beq _0812A29C
- b _0812A2B2
- .pool
-_0812A280:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0812A2B2
- adds r0, r4, 0
- bl sub_8127B04
- movs r0, 0x1
- strh r0, [r5, 0xC]
- b _0812A2B2
- .pool
-_0812A29C:
- bl sub_812A3C8
- ldr r0, =gFieldCallback
- ldr r1, =sub_812A334
- str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
- bl SetMainCallback2
- adds r0, r4, 0
- bl DestroyTask
-_0812A2B2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A25C
-
- thumb_func_start sub_812A2C4
-sub_812A2C4: @ 812A2C4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r5, r1, 3
- ldr r6, =gTasks + 0x8
- adds r4, r5, r6
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _0812A2FC
- cmp r0, 0x1
- bgt _0812A2EC
- cmp r0, 0
- beq _0812A2F6
- b _0812A32A
- .pool
-_0812A2EC:
- cmp r0, 0x2
- beq _0812A308
- cmp r0, 0x3
- beq _0812A314
- b _0812A32A
-_0812A2F6:
- bl sub_80E9578
- b _0812A30C
-_0812A2FC:
- ldr r0, =gUnknown_08275D0C
- bl ScriptContext1_SetupScript
- b _0812A30C
- .pool
-_0812A308:
- bl ScriptContext2_Enable
-_0812A30C:
- ldrh r0, [r4, 0x4]
- adds r0, 0x1
- strh r0, [r4, 0x4]
- b _0812A32A
-_0812A314:
- bl sub_80ABDFC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812A32A
- adds r0, r6, 0
- subs r0, 0x8
- adds r0, r5, r0
- ldr r1, =sub_8126B80
- str r1, [r0]
-_0812A32A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A2C4
-
- thumb_func_start sub_812A334
-sub_812A334: @ 812A334
- push {lr}
- bl pal_fill_black
- movs r0, 0
- movs r1, 0x1
- bl sub_81973C4
- bl sub_8126ABC
- ldr r0, =sub_812A2C4
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0
- strh r0, [r1, 0xC]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A334
-
- thumb_func_start sub_812A36C
-sub_812A36C: @ 812A36C
- push {lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x2E]
- adds r0, 0x1
- movs r1, 0x1F
- ands r0, r1
- strh r0, [r2, 0x2E]
- cmp r0, 0xF
- ble _0812A38C
- adds r0, r2, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- b _0812A398
-_0812A38C:
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_0812A398:
- pop {r0}
- bx r0
- thumb_func_end sub_812A36C
-
- thumb_func_start sub_812A39C
-sub_812A39C: @ 812A39C
- push {lr}
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _0812A3B8
- ldr r0, =gUnknown_085A73D8
- bl LoadSpritePalette
- b _0812A3BE
- .pool
-_0812A3B8:
- ldr r0, =gUnknown_085A73E0
- bl LoadSpritePalette
-_0812A3BE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A39C
-
- thumb_func_start sub_812A3C8
-sub_812A3C8: @ 812A3C8
- push {lr}
- movs r0, 0x8
- bl FreeSpritePaletteByTag
- pop {r0}
- bx r0
- thumb_func_end sub_812A3C8
-
- thumb_func_start sub_812A3D4
-sub_812A3D4: @ 812A3D4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_81279C4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812A430
- ldr r0, =gStringVar1
- ldr r1, =gUnknown_0203A172
- ldrb r2, [r1]
- ldr r1, =gUnknown_0203A14C
- ldr r1, [r1]
- adds r1, r2
- ldrb r1, [r1]
- lsls r1, 5
- ldr r2, =gDecorations + 1
- adds r1, r2
- bl StringCopy
- ldr r4, =gStringVar4
- ldr r1, =gText_DecorationWillBeDiscarded
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_812A458
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
- b _0812A444
- .pool
-_0812A430:
- ldr r4, =gStringVar4
- ldr r1, =gText_CantThrowAwayInUse
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8127A5C
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
-_0812A444:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A3D4
-
- thumb_func_start sub_812A458
-sub_812A458: @ 812A458
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8197930
- ldr r1, =gUnknown_085A741C
- adds r0, r4, 0
- bl sub_8121F68
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A458
-
- thumb_func_start sub_812A478
-sub_812A478: @ 812A478
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_0203A172
- ldrb r1, [r0]
- ldr r0, =gUnknown_0203A14C
- ldr r0, [r0]
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r5, =gUnknown_0203A173
- ldrb r0, [r5]
- bl sub_8161AD0
- ldr r1, =gUnknown_0203A151
- strb r0, [r1]
- ldrb r0, [r5]
- bl sub_8161A38
- adds r0, r4, 0
- bl sub_8127814
- ldr r5, =gStringVar4
- ldr r1, =gText_DecorationThrownAway
- adds r0, r5, 0
- bl StringExpandPlaceholders
- ldr r2, =sub_8127A5C
- adds r0, r4, 0
- adds r1, r5, 0
- bl DisplayItemMessageOnField
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_812A478
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/decoration_inventory.s b/asm/decoration_inventory.s
deleted file mode 100644
index 52d490c20..000000000
--- a/asm/decoration_inventory.s
+++ /dev/null
@@ -1,459 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
- thumb_func_start SetDecorationInventoriesPointers
-SetDecorationInventoriesPointers: @ 81617F4
- push {r4,lr}
- ldr r0, =gDecorationInventories
- mov r12, r0
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r2, =0x00002734
- adds r0, r1, r2
- mov r4, r12
- str r0, [r4]
- movs r3, 0xA
- strb r3, [r4, 0x4]
- adds r2, 0xA
- adds r0, r1, r2
- str r0, [r4, 0x8]
- strb r3, [r4, 0xC]
- ldr r4, =0x00002748
- adds r0, r1, r4
- mov r2, r12
- str r0, [r2, 0x10]
- strb r3, [r2, 0x14]
- adds r4, 0xA
- adds r0, r1, r4
- str r0, [r2, 0x18]
- movs r2, 0x1E
- mov r0, r12
- strb r2, [r0, 0x1C]
- adds r4, 0x1E
- adds r0, r1, r4
- mov r4, r12
- str r0, [r4, 0x20]
- mov r0, r12
- adds r0, 0x24
- strb r2, [r0]
- ldr r2, =0x0000278e
- adds r0, r1, r2
- str r0, [r4, 0x28]
- mov r0, r12
- adds r0, 0x2C
- strb r3, [r0]
- ldr r4, =0x00002798
- adds r0, r1, r4
- mov r2, r12
- str r0, [r2, 0x30]
- adds r2, 0x34
- movs r0, 0x28
- strb r0, [r2]
- adds r4, 0x28
- adds r1, r4
- mov r0, r12
- str r1, [r0, 0x38]
- adds r0, 0x3C
- strb r3, [r0]
- bl sub_8126968
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetDecorationInventoriesPointers
-
- thumb_func_start ClearDecorationInventory
-ClearDecorationInventory: @ 8161880
- push {r4,r5,lr}
- lsls r0, 24
- movs r3, 0
- ldr r1, =gDecorationInventories
- lsrs r2, r0, 21
- adds r0, r2, r1
- ldrb r0, [r0, 0x4]
- cmp r3, r0
- bcs _081618AA
- adds r5, r1, 0
- movs r4, 0
-_08161896:
- adds r0, r2, r5
- ldr r1, [r0]
- adds r1, r3
- strb r4, [r1]
- adds r1, r3, 0x1
- lsls r1, 24
- lsrs r3, r1, 24
- ldrb r0, [r0, 0x4]
- cmp r3, r0
- bcc _08161896
-_081618AA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ClearDecorationInventory
-
- thumb_func_start ClearDecorationInventories
-ClearDecorationInventories: @ 81618B4
- push {r4,lr}
- movs r4, 0
-_081618B8:
- adds r0, r4, 0
- bl ClearDecorationInventory
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _081618B8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end ClearDecorationInventories
-
- thumb_func_start sub_81618D0
-sub_81618D0: @ 81618D0
- push {r4,lr}
- lsls r0, 24
- movs r2, 0
- ldr r1, =gDecorationInventories
- lsrs r0, 21
- adds r0, r1
- movs r1, 0x4
- ldrsb r1, [r0, r1]
- cmp r2, r1
- bge _0816190C
- adds r4, r0, 0
- adds r3, r1, 0
-_081618E8:
- lsls r0, r2, 24
- asrs r1, r0, 24
- ldr r0, [r4]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08161900
- adds r0, r1, 0
- b _08161910
- .pool
-_08161900:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- asrs r0, 24
- cmp r0, r3
- blt _081618E8
-_0816190C:
- movs r0, 0x1
- negs r0, r0
-_08161910:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81618D0
-
- thumb_func_start sub_8161918
-sub_8161918: @ 8161918
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r1, =gDecorations
- lsls r0, r3, 5
- adds r0, r1
- ldrb r0, [r0, 0x13]
- movs r2, 0
- ldr r1, =gDecorationInventories
- lsls r0, 3
- adds r0, r1
- ldrb r1, [r0, 0x4]
- cmp r2, r1
- bcs _08161956
- ldr r4, [r0]
-_08161936:
- adds r0, r4, r2
- ldrb r0, [r0]
- cmp r0, r3
- bne _0816194C
- movs r0, 0x1
- b _08161958
- .pool
-_0816194C:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, r1
- bcc _08161936
-_08161956:
- movs r0, 0
-_08161958:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8161918
-
- thumb_func_start DecorationAdd
-DecorationAdd: @ 8161960
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r4, r0, 0
- cmp r4, 0
- beq _081619A0
- ldr r1, =gDecorations
- lsls r0, r4, 5
- adds r0, r1
- ldrb r5, [r0, 0x13]
- adds r0, r5, 0
- bl sub_81618D0
- lsls r0, 24
- asrs r2, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r2, r0
- beq _081619A0
- ldr r0, =gDecorationInventories
- lsls r1, r5, 3
- adds r1, r0
- ldr r0, [r1]
- adds r0, r2
- strb r4, [r0]
- movs r0, 0x1
- b _081619A2
- .pool
-_081619A0:
- movs r0, 0
-_081619A2:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end DecorationAdd
-
- thumb_func_start DecorationCheckSpace
-DecorationCheckSpace: @ 81619A8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _081619D4
- ldr r1, =gDecorations
- lsls r0, 5
- adds r0, r1
- ldrb r0, [r0, 0x13]
- bl sub_81618D0
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _081619D4
- movs r0, 0x1
- b _081619D6
- .pool
-_081619D4:
- movs r0, 0
-_081619D6:
- pop {r1}
- bx r1
- thumb_func_end DecorationCheckSpace
-
- thumb_func_start DecorationRemove
-DecorationRemove: @ 81619DC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r3, 0
- cmp r5, 0
- bne _081619F8
- b _08161A26
-_081619EA:
- movs r0, 0
- strb r0, [r1]
- adds r0, r6, 0
- bl sub_8161A38
- movs r0, 0x1
- b _08161A28
-_081619F8:
- ldr r2, =gDecorationInventories
- ldr r1, =gDecorations
- lsls r0, r5, 5
- adds r0, r1
- ldrb r4, [r0, 0x13]
- lsls r0, r4, 3
- adds r0, r2
- ldrb r1, [r0, 0x4]
- cmp r3, r1
- bcs _08161A26
- adds r6, r4, 0
- adds r4, r0, 0
- adds r2, r1, 0
-_08161A12:
- ldr r0, [r4]
- adds r1, r0, r3
- ldrb r0, [r1]
- cmp r0, r5
- beq _081619EA
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, r2
- bcc _08161A12
-_08161A26:
- movs r0, 0
-_08161A28:
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end DecorationRemove
-
- thumb_func_start sub_8161A38
-sub_8161A38: @ 8161A38
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- movs r6, 0
- ldr r2, =gDecorationInventories
- lsrs r0, 21
- adds r1, r0, r2
- ldrb r3, [r1, 0x4]
- cmp r6, r3
- bcs _08161ABC
- adds r7, r0, 0
- mov r10, r1
- mov r0, r10
- str r0, [sp]
-_08161A5C:
- adds r1, r6, 0x1
- lsls r0, r1, 24
- lsrs r3, r0, 24
- adds r2, r7, 0
- mov r12, r1
- mov r1, r10
- ldrb r1, [r1, 0x4]
- cmp r3, r1
- bcs _08161AAE
- ldr r0, =gDecorationInventories
- mov r9, r0
- adds r1, r0, 0
- mov r8, r1
-_08161A76:
- mov r0, r9
- adds r5, r2, r0
- ldr r1, [r5]
- adds r0, r1, r3
- ldrb r4, [r0]
- adds r2, r4, 0
- cmp r2, 0
- beq _08161A9C
- adds r0, r1, r6
- ldrb r1, [r0]
- cmp r1, 0
- beq _08161A92
- cmp r1, r2
- bls _08161A9C
-_08161A92:
- ldrb r1, [r0]
- strb r4, [r0]
- ldr r0, [r5]
- adds r0, r3
- strb r1, [r0]
-_08161A9C:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- adds r2, r7, 0
- mov r1, r8
- adds r0, r2, r1
- ldrb r0, [r0, 0x4]
- cmp r3, r0
- bcc _08161A76
-_08161AAE:
- mov r3, r12
- lsls r0, r3, 24
- lsrs r6, r0, 24
- ldr r0, [sp]
- ldrb r0, [r0, 0x4]
- cmp r6, r0
- bcc _08161A5C
-_08161ABC:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8161A38
-
- thumb_func_start sub_8161AD0
-sub_8161AD0: @ 8161AD0
- push {r4,r5,lr}
- lsls r0, 24
- movs r4, 0
- movs r3, 0
- ldr r2, =gDecorationInventories
- lsrs r1, r0, 21
- adds r0, r1, r2
- ldrb r0, [r0, 0x4]
- cmp r4, r0
- bcs _08161B04
- adds r5, r2, 0
-_08161AE6:
- adds r2, r1, r5
- ldr r0, [r2]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0
- beq _08161AF8
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_08161AF8:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- ldrb r2, [r2, 0x4]
- cmp r3, r2
- bcc _08161AE6
-_08161B04:
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8161AD0
-
- thumb_func_start sub_8161B10
-sub_8161B10: @ 8161B10
- push {r4,r5,lr}
- movs r5, 0
- movs r4, 0
-_08161B16:
- adds r0, r4, 0
- bl sub_8161AD0
- adds r0, r5, r0
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _08161B16
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8161B10
-
- .align 2, 0 @ Don't pad with nop.
- \ No newline at end of file
diff --git a/asm/dewford_trend.s b/asm/dewford_trend.s
index c3a7b192c..40df2d6a0 100644
--- a/asm/dewford_trend.s
+++ b/asm/dewford_trend.s
@@ -492,7 +492,7 @@ sub_812287C: @ 812287C
bl Free
b _08122980
_081228B0:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
mov r9, r0
diff --git a/asm/diploma.s b/asm/diploma.s
deleted file mode 100644
index 4f21fe39d..000000000
--- a/asm/diploma.s
+++ /dev/null
@@ -1,387 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8177874
-sub_8177874: @ 8177874
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_8177874
-
- thumb_func_start sub_8177888
-sub_8177888: @ 8177888
- push {r4,r5,lr}
- sub sp, 0xC
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xE
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xC
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xA
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x8
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- add r1, sp, 0x4
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x040000d4
- add r0, sp, 0x4
- str r0, [r1]
- movs r0, 0xC0
- lsls r0, 19
- str r0, [r1, 0x4]
- ldr r0, =0x8100c000
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- movs r5, 0
- str r5, [sp, 0x8]
- add r0, sp, 0x8
- str r0, [r1]
- movs r0, 0xE0
- lsls r0, 19
- str r0, [r1, 0x4]
- ldr r0, =0x85000100
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- add r0, sp, 0x4
- strh r5, [r0]
- str r0, [r1]
- movs r0, 0xA0
- lsls r0, 19
- str r0, [r1, 0x4]
- ldr r0, =0x81000200
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- bl remove_some_task
- bl ResetTasks
- bl ResetSpriteData
- bl ResetPaletteFade
- bl FreeAllSpritePalettes
- ldr r0, =gUnknown_085E7088
- movs r1, 0
- movs r2, 0x40
- bl LoadPalette
- ldr r4, =gUnknown_0203BCF0
- movs r0, 0x80
- lsls r0, 5
- bl Alloc
- str r0, [r4]
- bl sub_8177B44
- bl sub_8177B9C
- bl reset_temp_tile_data_buffers
- ldr r1, =gUnknown_085E7804
- str r5, [sp]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl decompress_and_copy_tile_data_to_vram
-_0817797C:
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _0817797C
- ldr r0, =gUnknown_085E70C8
- ldr r1, =gUnknown_0203BCF0
- ldr r1, [r1]
- bl LZDecompressWram
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- bl pokedex_diploma_something
- movs r4, 0x1
- negs r4, r4
- adds r0, r4, 0
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- str r5, [sp]
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r0, 0x1
- bl EnableInterrupts
- ldr r0, =sub_8177874
- bl SetVBlankCallback
- ldr r0, =sub_8177A08
- bl SetMainCallback2
- ldr r0, =sub_8177A20
- movs r1, 0
- bl CreateTask
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8177888
-
- thumb_func_start sub_8177A08
-sub_8177A08: @ 8177A08
- push {lr}
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_8177A08
-
- thumb_func_start sub_8177A20
-sub_8177A20: @ 8177A20
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08177A40
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_8177A50
- str r0, [r1]
-_08177A40:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8177A20
-
- thumb_func_start sub_8177A50
-sub_8177A50: @ 8177A50
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _08177A82
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_8177A98
- str r1, [r0]
-_08177A82:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8177A50
-
- thumb_func_start sub_8177A98
-sub_8177A98: @ 8177A98
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08177AC2
- ldr r0, =gUnknown_0203BCF0
- ldr r0, [r0]
- bl Free
- bl FreeAllWindowBuffers
- adds r0, r4, 0
- bl DestroyTask
- ldr r0, =sub_80861E8
- bl SetMainCallback2
-_08177AC2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8177A98
-
- thumb_func_start pokedex_diploma_something
-pokedex_diploma_something: @ 8177AD4
- push {r4,lr}
- bl sub_80C0944
- lsls r0, 16
- cmp r0, 0
- beq _08177AFC
- movs r1, 0x80
- lsls r1, 1
- movs r0, 0x14
- bl SetGpuReg
- ldr r0, =gStringVar1
- ldr r1, =gText_DexNational
- bl StringCopy
- b _08177B0C
- .pool
-_08177AFC:
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- ldr r0, =gStringVar1
- ldr r1, =gText_DexHoenn
- bl StringCopy
-_08177B0C:
- ldr r4, =gStringVar4
- ldr r1, =gText_PokedexDiploma
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x1
- bl sub_8177BCC
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokedex_diploma_something
-
- thumb_func_start sub_8177B44
-sub_8177B44: @ 8177B44
- push {lr}
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_085E81FC
- movs r0, 0
- movs r2, 0x2
- bl InitBgsFromTemplates
- ldr r0, =gUnknown_0203BCF0
- ldr r1, [r0]
- movs r0, 0x1
- bl SetBgTilemapBuffer
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8177B44
-
- thumb_func_start sub_8177B9C
-sub_8177B9C: @ 8177B9C
- push {lr}
- ldr r0, =gUnknown_085E8204
- bl InitWindows
- bl DeactivateAllTextPrinters
- ldr r0, =gUnknown_0860F074
- movs r1, 0xF0
- movs r2, 0x20
- bl LoadPalette
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0
- bl PutWindowTilemap
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8177B9C
-
- thumb_func_start sub_8177BCC
-sub_8177BCC: @ 8177BCC
- push {r4-r6,lr}
- sub sp, 0x18
- adds r6, r0, 0
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- ldr r1, =gUnknown_085E8214
- add r0, sp, 0x14
- movs r2, 0x3
- bl memcpy
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- add r0, sp, 0x14
- str r0, [sp, 0x8]
- movs r0, 0x1
- negs r0, r0
- str r0, [sp, 0xC]
- str r6, [sp, 0x10]
- movs r0, 0
- movs r1, 0x1
- adds r2, r4, 0
- adds r3, r5, 0
- bl AddTextPrinterParametrized2
- add sp, 0x18
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8177BCC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/easy_chat.s b/asm/easy_chat.s
index 8455decfe..4b83db729 100644
--- a/asm/easy_chat.s
+++ b/asm/easy_chat.s
@@ -214,7 +214,7 @@ _0811A72C:
ldr r4, =gStringVar3
adds r0, r4, 0
movs r1, 0x2
- bl sub_811F88C
+ bl InitializeEasyChatWordArray
b _0811A7C2
.pool
_0811A73C:
@@ -3353,7 +3353,7 @@ sub_811BDF0: @ 811BDF0
ldrb r2, [r0]
mov r0, sp
adds r1, r5, 0
- bl sub_81DB5E8
+ bl TVShowConvertInternationalString
movs r0, 0
mov r1, sp
bl sub_81AFC0C
@@ -9563,7 +9563,7 @@ _0811EF48:
adds r1, r5, 0
bl ConvertEasyChatWordsToString
adds r0, r4, 0
- bl box_related_two__3
+ bl ShowFieldAutoScrollMessage
_0811EF58:
pop {r4,r5}
pop {r0}
@@ -10758,8 +10758,8 @@ _0811F886:
bx r1
thumb_func_end sub_811F860
- thumb_func_start sub_811F88C
-sub_811F88C: @ 811F88C
+ thumb_func_start InitializeEasyChatWordArray
+InitializeEasyChatWordArray: @ 811F88C
push {lr}
adds r2, r0, 0
lsls r1, 16
@@ -10782,7 +10782,7 @@ _0811F8AE:
pop {r0}
bx r0
.pool
- thumb_func_end sub_811F88C
+ thumb_func_end InitializeEasyChatWordArray
thumb_func_start sub_811F8BC
sub_811F8BC: @ 811F8BC
diff --git a/asm/evolution_scene.s b/asm/evolution_scene.s
index efae2f07c..e5e9aaab9 100644
--- a/asm/evolution_scene.s
+++ b/asm/evolution_scene.s
@@ -68,7 +68,7 @@ _0813DA00:
adds r1, r4, 0
adds r2, r5, 0
adds r3, r6, 0
- bl evolution_cutscene
+ bl EvolutionScene
_0813DA30:
add sp, 0x4
pop {r4-r7}
@@ -77,8 +77,8 @@ _0813DA30:
.pool
thumb_func_end sub_813D9C0
- thumb_func_start sub_813DA40
-sub_813DA40: @ 813DA40
+ thumb_func_start BeginEvolutionScene
+BeginEvolutionScene: @ 813DA40
push {r4-r6,lr}
adds r4, r1, 0
adds r5, r2, 0
@@ -110,10 +110,10 @@ sub_813DA40: @ 813DA40
pop {r0}
bx r0
.pool
- thumb_func_end sub_813DA40
+ thumb_func_end BeginEvolutionScene
- thumb_func_start evolution_cutscene
-evolution_cutscene: @ 813DA8C
+ thumb_func_start EvolutionScene
+EvolutionScene: @ 813DA8C
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -165,32 +165,32 @@ evolution_cutscene: @ 813DA8C
movs r1, 0
bl SetGpuReg
bl ResetPaletteFade
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r2, 0
strh r2, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r2, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r2, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r2, [r0]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r2, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r2, [r0]
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
movs r2, 0x80
lsls r2, 1
adds r0, r2, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
movs r1, 0
strh r1, [r0]
- ldr r1, =gUnknown_02022FF0
+ ldr r1, =gBattleTerrain
movs r0, 0x9
strb r0, [r1]
- bl c2_berry_program_update_menu
- bl sub_8035AA4
+ bl sub_80356D0
+ bl LoadBattleTextboxAndBackground
bl ResetSpriteData
bl remove_some_task
bl ResetTasks
@@ -202,7 +202,7 @@ evolution_cutscene: @ 813DA8C
bl AllocZeroed
ldr r1, =gUnknown_0203AB80
str r0, [r1]
- bl init_uns_table_pokemon_copy
+ bl AllocateMonSpritesGfx
adds r0, r4, 0
movs r1, 0x2
mov r2, sp
@@ -235,7 +235,7 @@ evolution_cutscene: @ 813DA8C
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r2, =gBattleSpritesGfx
+ ldr r2, =gMonSpritesGfxPtr
ldr r1, [r2]
ldr r1, [r1, 0x8]
adds r2, r5, 0
@@ -291,7 +291,7 @@ evolution_cutscene: @ 813DA8C
lsls r0, r1, 3
ldr r2, =gMonFrontPicTable
adds r0, r2
- ldr r2, =gBattleSpritesGfx
+ ldr r2, =gMonSpritesGfxPtr
ldr r1, [r2]
ldr r1, [r1, 0x10]
mov r2, r10
@@ -393,7 +393,7 @@ evolution_cutscene: @ 813DA8C
pop {r0}
bx r0
.pool
- thumb_func_end evolution_cutscene
+ thumb_func_end EvolutionScene
thumb_func_start sub_813DD7C
sub_813DD7C: @ 813DD7C
@@ -460,30 +460,30 @@ sub_813DD7C: @ 813DD7C
movs r1, 0
bl SetGpuReg
bl ResetPaletteFade
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r4, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r4, [r0]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r4, [r0]
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
movs r2, 0x80
lsls r2, 1
adds r0, r2, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
strh r4, [r0]
- ldr r1, =gUnknown_02022FF0
+ ldr r1, =gBattleTerrain
movs r0, 0x9
strb r0, [r1]
- bl c2_berry_program_update_menu
- bl sub_8035AA4
+ bl sub_80356D0
+ bl LoadBattleTextboxAndBackground
bl ResetSpriteData
bl FreeAllSpritePalettes
ldr r1, =gReservedSpritePaletteCount
@@ -492,7 +492,7 @@ sub_813DD7C: @ 813DD7C
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x10]
adds r2, r5, 0
@@ -629,25 +629,25 @@ _0813DFE0:
ldr r1, =gReservedSpritePaletteCount
movs r0, 0x4
strb r0, [r1]
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r1, [r0]
- ldr r2, =gUnknown_02022E20
+ ldr r2, =gBattle_BG3_X
movs r3, 0x80
lsls r3, 1
adds r0, r3, 0
strh r0, [r2]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
strh r1, [r0]
b _0813E180
.pool
@@ -697,7 +697,7 @@ _0813E0A8:
lsls r0, r6, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x10]
adds r2, r6, 0
@@ -867,7 +867,7 @@ sub_813E1D4: @ 813E1D4
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x8]
adds r2, r5, 0
@@ -941,24 +941,24 @@ sub_813E1D4: @ 813E1D4
mov r1, sp
ldrh r1, [r1, 0x14]
strh r1, [r0, 0x1C]
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
strh r4, [r0]
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r4, [r0]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r4, [r0]
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
strh r4, [r0]
- ldr r1, =gUnknown_02022E20
+ ldr r1, =gBattle_BG3_X
movs r2, 0x80
lsls r2, 1
adds r0, r2, 0
strh r0, [r1]
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
strh r4, [r0]
ldr r2, =gTextFlags
ldrb r0, [r2]
@@ -1338,7 +1338,7 @@ _0813E6E4:
bl StringExpandPlaceholders
adds r0, r4, 0
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gTasks
mov r2, r8
adds r1, r2, r7
@@ -1626,7 +1626,7 @@ _0813E99E:
bl StringExpandPlaceholders
adds r0, r4, 0
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =0x00000173
bl PlayBGM
ldr r2, =gTasks
@@ -1775,7 +1775,7 @@ _0813EAF6:
_0813EB06:
adds r0, r7, 0
bl DestroyTask
- bl sub_805F094
+ bl FreeMonSpritesGfx
ldr r4, =gUnknown_0203AB80
ldr r0, [r4]
bl Free
@@ -1868,7 +1868,7 @@ _0813EBE4:
_0813EBEC:
ldr r0, =gStringVar4
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gTasks
mov r2, r8
adds r0, r2, r7
@@ -1892,15 +1892,15 @@ _0813EC1E:
beq _0813EC2A
b _0813F1A4
_0813EC2A:
- bl sub_804F574
+ bl BufferMoveToLearnIntoBattleTextBuff2
ldr r0, =0x0000016f
bl PlayFanfare
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0xC]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gTasks
mov r3, r8
adds r1, r3, r7
@@ -1991,13 +1991,13 @@ _0813ED0A:
beq _0813ED16
b _0813F1A4
_0813ED16:
- bl sub_804F574
+ bl BufferMoveToLearnIntoBattleTextBuff2
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x10]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gTasks
mov r2, r8
adds r1, r2, r7
@@ -2023,10 +2023,10 @@ _0813ED56:
_0813ED62:
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x14]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gTasks
mov r3, r8
adds r1, r3, r7
@@ -2048,10 +2048,10 @@ _0813ED90:
bne _0813EDCE
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x18]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gTasks
mov r2, r8
adds r1, r2, r7
@@ -2087,7 +2087,7 @@ _0813EDEA:
bl sub_8056A3C
ldr r0, =gText_BattleYesNoChoice
movs r1, 0xC
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gTasks
mov r3, r8
adds r1, r3, r7
@@ -2100,7 +2100,7 @@ _0813EDEA:
ldr r0, =gBattleCommunication
strb r2, [r0, 0x1]
movs r0, 0
- bl sub_8056B74
+ bl BattleCreateCursorAt
b _0813F1A4
.pool
_0813EE34:
@@ -2117,10 +2117,10 @@ _0813EE34:
movs r0, 0x5
bl PlaySE
ldrb r0, [r4, 0x1]
- bl sub_8056BAC
+ bl BattleDestroyCursorAt
movs r0, 0
strb r0, [r4, 0x1]
- bl sub_8056B74
+ bl BattleCreateCursorAt
_0813EE5C:
ldr r0, =gMain
ldrh r1, [r0, 0x2E]
@@ -2135,10 +2135,10 @@ _0813EE5C:
movs r0, 0x5
bl PlaySE
ldrb r0, [r4, 0x1]
- bl sub_8056BAC
+ bl BattleDestroyCursorAt
movs r0, 0x1
strb r0, [r4, 0x1]
- bl sub_8056B74
+ bl BattleCreateCursorAt
_0813EE84:
ldr r0, =gMain
ldrh r1, [r0, 0x2E]
@@ -2289,10 +2289,10 @@ _0813EFC8:
ldr r3, =0x000004cc
adds r0, r3
ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gTasks
mov r2, r8
adds r0, r2, r7
@@ -2338,10 +2338,10 @@ _0813F05C:
lsls r1, 2
adds r0, r1
ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gTasks
mov r2, r8
adds r1, r2, r7
@@ -2367,10 +2367,10 @@ _0813F09E:
_0813F0AA:
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x1C]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r0, =gTasks
mov r3, r8
adds r1, r3, r7
@@ -2395,10 +2395,10 @@ _0813F0D8:
lsls r1, 2
adds r0, r1
ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gTasks
mov r2, r8
adds r0, r2, r7
@@ -2411,10 +2411,10 @@ _0813F0D8:
_0813F120:
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x20]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gTasks
mov r3, r8
adds r0, r3, r7
@@ -2431,10 +2431,10 @@ _0813F120:
_0813F154:
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x24]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r0, =gDisplayedStringBattle
movs r1, 0
- bl battle_show_message_maybe
+ bl sub_814F9EC
ldr r1, =gTasks
mov r2, r8
adds r0, r2, r7
@@ -3059,12 +3059,12 @@ _0813F756:
beq _0813F762
b _0813FCC4
_0813F762:
- bl sub_804F574
+ bl BufferMoveToLearnIntoBattleTextBuff2
ldr r0, =0x0000016f
bl PlayFanfare
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0xC]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3160,10 +3160,10 @@ _0813F846:
beq _0813F852
b _0813FCC4
_0813F852:
- bl sub_804F574
+ bl BufferMoveToLearnIntoBattleTextBuff2
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x10]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3193,7 +3193,7 @@ _0813F892:
_0813F89E:
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x14]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3219,7 +3219,7 @@ _0813F8CC:
bne _0813F90C
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x18]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3299,7 +3299,7 @@ _0813F98C:
lsls r1, 3
adds r0, r1
ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3336,7 +3336,7 @@ _0813F9E4:
lsls r1, 3
adds r0, r1
ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3441,7 +3441,7 @@ _0813FAEC:
ldr r1, =0x000004cc
adds r0, r1
ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3481,7 +3481,7 @@ _0813FB3C:
lsls r1, 2
adds r0, r1
ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3511,7 +3511,7 @@ _0813FBB2:
_0813FBBE:
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x1C]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3540,7 +3540,7 @@ _0813FBEC:
lsls r1, 2
adds r0, r1
ldr r0, [r0]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3557,7 +3557,7 @@ _0813FBEC:
_0813FC38:
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x20]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3578,7 +3578,7 @@ _0813FC38:
_0813FC70:
ldr r0, =gBattleStringsTable
ldr r0, [r0, 0x24]
- bl StrCpyDecodeToDisplayedStringBattle
+ bl BattleStringExpandPlaceholdersToDisplayedString
ldr r1, =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
@@ -3630,35 +3630,35 @@ nullsub_83: @ 813FCD8
thumb_func_start sub_813FCDC
sub_813FCDC: @ 813FCDC
push {lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
ldrh r1, [r0]
movs r0, 0x10
bl SetGpuReg
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
ldrh r1, [r0]
movs r0, 0x12
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r1, [r0]
movs r0, 0x14
bl SetGpuReg
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r1, [r0]
movs r0, 0x16
bl SetGpuReg
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r1, [r0]
movs r0, 0x18
bl SetGpuReg
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
ldrh r1, [r0]
movs r0, 0x1A
bl SetGpuReg
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
ldrh r1, [r0]
movs r0, 0x1C
bl SetGpuReg
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
ldrh r1, [r0]
movs r0, 0x1E
bl SetGpuReg
@@ -3674,35 +3674,35 @@ sub_813FCDC: @ 813FCDC
thumb_func_start sub_813FD64
sub_813FD64: @ 813FD64
push {lr}
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
ldrh r1, [r0]
movs r0, 0x10
bl SetGpuReg
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
ldrh r1, [r0]
movs r0, 0x12
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
ldrh r1, [r0]
movs r0, 0x14
bl SetGpuReg
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r1, [r0]
movs r0, 0x16
bl SetGpuReg
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
ldrh r1, [r0]
movs r0, 0x18
bl SetGpuReg
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
ldrh r1, [r0]
movs r0, 0x1A
bl SetGpuReg
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
ldrh r1, [r0]
movs r0, 0x1C
bl SetGpuReg
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
ldrh r1, [r0]
movs r0, 0x1E
bl SetGpuReg
@@ -3852,9 +3852,9 @@ sub_813FEE8: @ 813FEE8
push {r6,r7}
lsls r0, 24
lsrs r5, r0, 24
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
mov r8, r0
- ldr r1, =gUnknown_02022E1A
+ ldr r1, =gBattle_BG1_Y
mov r9, r1
ldr r1, =gTasks
lsls r0, r5, 2
@@ -3865,13 +3865,13 @@ sub_813FEE8: @ 813FEE8
ldrsh r0, [r0, r2]
cmp r0, 0
bne _0813FF28
- ldr r7, =gUnknown_02022E1C
- ldr r6, =gUnknown_02022E1E
+ ldr r7, =gBattle_BG2_X
+ ldr r6, =gBattle_BG2_Y
b _0813FF2C
.pool
_0813FF28:
- ldr r7, =gUnknown_02022E20
- ldr r6, =gUnknown_02022E22
+ ldr r7, =gBattle_BG3_X
+ ldr r6, =gBattle_BG3_Y
_0813FF2C:
lsls r4, r5, 2
adds r4, r5
@@ -4130,12 +4130,12 @@ sub_8140174: @ 8140174
movs r0, 0x50
movs r1, 0
bl SetGpuReg
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
strh r1, [r0]
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
strh r1, [r0]
movs r0, 0x1
movs r1, 0x5
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index 5c515ae3d..fa923d94b 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -51,7 +51,7 @@ process_overworld_input: @ 809BF08
bl cur_mapdata_block_role_at_player_pos
lsls r0, 24
lsrs r0, 24
- bl sub_808904C
+ bl MetatileBehavior_IsMoveTile
lsls r0, 24
lsrs r7, r0, 24
cmp r6, 0x2
@@ -831,7 +831,7 @@ _0809C55C:
.pool
_0809C574:
adds r0, r5, 0
- bl is_tile_x8B
+ bl MetatileBehavior_IsClosedSootopolisGymDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -841,7 +841,7 @@ _0809C574:
.pool
_0809C58C:
adds r0, r5, 0
- bl is_tile_xEA
+ bl MetatileBehavior_IsUnknownClosedDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -851,7 +851,7 @@ _0809C58C:
.pool
_0809C5A4:
adds r0, r5, 0
- bl is_tile_x84
+ bl MetatileBehavior_IsCableBoxResults1
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -859,7 +859,7 @@ _0809C5A4:
b _0809C6E4
_0809C5B4:
adds r0, r5, 0
- bl is_tile_x87
+ bl MetatileBehavior_IsPokeblockFeeder
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -869,7 +869,7 @@ _0809C5B4:
.pool
_0809C5CC:
adds r0, r5, 0
- bl is_tile_x8C
+ bl MetatileBehavior_IsTrickHousePuzzleDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -879,7 +879,7 @@ _0809C5CC:
.pool
_0809C5E4:
adds r0, r5, 0
- bl is_tile_x85
+ bl MetatileBehavior_IsRegionMap
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -889,7 +889,7 @@ _0809C5E4:
.pool
_0809C5FC:
adds r0, r5, 0
- bl sub_8089A1C
+ bl MetatileBehavior_IsRunningShoesInstruction
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -899,7 +899,7 @@ _0809C5FC:
.pool
_0809C614:
adds r0, r5, 0
- bl sub_8089A30
+ bl MetatileBehavior_IsPictureBookShelf
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -909,7 +909,7 @@ _0809C614:
.pool
_0809C62C:
adds r0, r5, 0
- bl sub_8089A44
+ bl MetatileBehavior_IsBookShelf
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -919,7 +919,7 @@ _0809C62C:
.pool
_0809C644:
adds r0, r5, 0
- bl sub_8089A58
+ bl MetatileBehavior_IsPokeCenterBookShelf
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -929,7 +929,7 @@ _0809C644:
.pool
_0809C65C:
adds r0, r5, 0
- bl sub_8089A6C
+ bl MetatileBehavior_IsVase
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -939,7 +939,7 @@ _0809C65C:
.pool
_0809C674:
adds r0, r5, 0
- bl sub_8089A80
+ bl MetatileBehavior_IsTrashCan
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -949,7 +949,7 @@ _0809C674:
.pool
_0809C68C:
adds r0, r5, 0
- bl sub_8089A94
+ bl MetatileBehavior_IsShopShelf
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -959,7 +959,7 @@ _0809C68C:
.pool
_0809C6A4:
adds r0, r5, 0
- bl sub_8089AA8
+ bl MetatileBehavior_IsBlueprint
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -970,7 +970,7 @@ _0809C6A4:
_0809C6BC:
adds r0, r5, 0
adds r1, r4, 0
- bl sub_8089AD0
+ bl MetatileBehavior_IsPlayerFacingWirelessBoxResults
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -981,7 +981,7 @@ _0809C6BC:
_0809C6D4:
adds r0, r5, 0
adds r1, r4, 0
- bl sub_8089AEC
+ bl MetatileBehavior_IsCableBoxResults2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1023,7 +1023,7 @@ _0809C71C:
cmp r4, r0
bne _0809C7D0
adds r0, r5, 0
- bl sub_8089288
+ bl MetatileBehavior_IsSecretBasePC
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1033,7 +1033,7 @@ _0809C71C:
.pool
_0809C74C:
adds r0, r5, 0
- bl sub_808929C
+ bl MetatileBehavior_IsSecretBaseRegisterPC
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1043,7 +1043,7 @@ _0809C74C:
.pool
_0809C764:
adds r0, r5, 0
- bl sub_80893DC
+ bl MetatileBehavior_IsMB_BF
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1053,7 +1053,7 @@ _0809C764:
.pool
_0809C77C:
adds r0, r5, 0
- bl sub_80893F0
+ bl MetatileBehavior_IsSecretBaseTvOrShield
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1063,7 +1063,7 @@ _0809C77C:
.pool
_0809C794:
adds r0, r5, 0
- bl sub_80892EC
+ bl MetatileBehavior_IsMB_C6
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1072,7 +1072,7 @@ _0809C794:
b _0809C7E2
_0809C7A8:
adds r0, r5, 0
- bl sub_8089364
+ bl MetatileBehavior_IsMB_C3
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1081,7 +1081,7 @@ _0809C7A8:
b _0809C7E2
_0809C7BC:
adds r0, r5, 0
- bl sub_8089350
+ bl MetatileBehavior_IsMB_B5
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1090,7 +1090,7 @@ _0809C7BC:
b _0809C7E2
_0809C7D0:
adds r0, r5, 0
- bl sub_8089300
+ bl MetatileBehavior_IsSecretBasePoster
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1297,7 +1297,7 @@ sub_809C96C: @ 809C96C
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8089918
+ bl MetatileBehavior_IsCrackedFloorHole
lsls r0, 24
cmp r0, 0
beq _0809C988
@@ -1306,7 +1306,7 @@ sub_809C96C: @ 809C96C
.pool
_0809C988:
adds r0, r4, 0
- bl sub_8089ABC
+ bl MetatileBehavior_IsBattlePyramidWarp
lsls r0, 24
cmp r0, 0
beq _0809C9A4
@@ -1318,7 +1318,7 @@ _0809C996:
.pool
_0809C9A4:
adds r0, r4, 0
- bl sub_80893C8
+ bl MetatileBehavior_IsSecretBaseGlitterMat
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1327,7 +1327,7 @@ _0809C9A4:
b _0809C9E8
_0809C9B8:
adds r0, r4, 0
- bl sub_80893B4
+ bl MetatileBehavior_IsSecretBaseSoundMat
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1376,7 +1376,7 @@ _0809CA04:
bne _0809CAF8
lsls r0, r4, 24
lsrs r0, 24
- bl sub_808904C
+ bl MetatileBehavior_IsMoveTile
lsls r0, 24
cmp r0, 0
bne _0809CAF8
@@ -1411,7 +1411,7 @@ _0809CA64:
b _0809CB28
.pool
_0809CA7C:
- bl sub_8179A04
+ bl ShouldDoBrailleRegicePuzzle
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1467,7 +1467,7 @@ _0809CAF8:
cmp r0, 0x1
beq _0809CB28
movs r0, 0x1
- bl sub_8137FC0
+ bl CountSSTidalStep
cmp r0, 0x1
bne _0809CB1C
ldr r0, =gUnknown_0823C050
@@ -1719,7 +1719,7 @@ sub_809CC9C: @ 809CC9C
.pool
_0809CCF8:
adds r0, r4, 0
- bl sub_8089870
+ bl MetatileBehavior_IsLavaridgeB1FWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1729,7 +1729,7 @@ _0809CCF8:
b _0809CD8C
_0809CD0E:
adds r0, r4, 0
- bl is_role_x68
+ bl MetatileBehavior_IsLavaridge1FWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1749,7 +1749,7 @@ _0809CD24:
b _0809CD8C
_0809CD3A:
adds r0, r4, 0
- bl sub_80898AC
+ bl MetatileBehavior_IsWarpOrBridge
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1759,7 +1759,7 @@ _0809CD3A:
b _0809CD8C
_0809CD50:
adds r0, r4, 0
- bl sub_8089904
+ bl MetatileBehavior_IsMtPyreHole
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1771,7 +1771,7 @@ _0809CD50:
.pool
_0809CD6C:
adds r0, r4, 0
- bl sub_80898C0
+ bl MetatileBehavior_IsMossdeepGymWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1797,7 +1797,7 @@ is_warp_tile: @ 809CD94
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl is_tile_x69_2_warp_door
+ bl MetatileBehavior_IsWarpDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1815,19 +1815,19 @@ is_warp_tile: @ 809CD94
cmp r0, 0x1
beq _0809CE2A
adds r0, r4, 0
- bl sub_8088F58
+ bl MetatileBehavior_IsNonAnimDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0809CE2A
adds r0, r4, 0
- bl sub_8089870
+ bl MetatileBehavior_IsLavaridgeB1FWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0809CE2A
adds r0, r4, 0
- bl is_role_x68
+ bl MetatileBehavior_IsLavaridge1FWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1839,19 +1839,19 @@ is_warp_tile: @ 809CD94
cmp r0, 0x1
beq _0809CE2A
adds r0, r4, 0
- bl sub_8089904
+ bl MetatileBehavior_IsMtPyreHole
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0809CE2A
adds r0, r4, 0
- bl sub_80898C0
+ bl MetatileBehavior_IsMossdeepGymWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0809CE2A
adds r0, r4, 0
- bl sub_80898AC
+ bl MetatileBehavior_IsWarpOrBridge
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2048,7 +2048,7 @@ map_warp_consider_2_to_inside: @ 809CF78
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8089210
+ bl MetatileBehavior_IsSecretBaseOpen
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2062,7 +2062,7 @@ map_warp_consider_2_to_inside: @ 809CF78
.pool
_0809CFB0:
adds r0, r4, 0
- bl is_tile_x69_2_warp_door
+ bl MetatileBehavior_IsWarpDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2322,7 +2322,7 @@ dive_warp: @ 809D16C
bne _0809D1A4
lsls r0, r5, 24
lsrs r0, 24
- bl sub_80895D0
+ bl MetatileBehavior_IsUnableToEmerge
lsls r0, 24
cmp r0, 0
bne _0809D1A4
@@ -2340,7 +2340,7 @@ dive_warp: @ 809D16C
_0809D1A4:
lsls r0, r5, 24
lsrs r0, 24
- bl sub_80895B0
+ bl MetatileBehavior_IsDiveable
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2394,7 +2394,7 @@ sub_809D1E8: @ 809D1E8
cmp r0, 0x5
bne _0809D244
adds r0, r5, 0
- bl sub_80895D0
+ bl MetatileBehavior_IsUnableToEmerge
lsls r0, 24
cmp r0, 0
bne _0809D244
@@ -2417,7 +2417,7 @@ sub_809D1E8: @ 809D1E8
.pool
_0809D244:
adds r0, r5, 0
- bl sub_80895B0
+ bl MetatileBehavior_IsDiveable
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/field_door.s b/asm/field_door.s
index 987f0bd8c..037c76566 100644
--- a/asm/field_door.s
+++ b/asm/field_door.s
@@ -581,15 +581,15 @@ sub_808A83C: @ 808A83C
.pool
thumb_func_end sub_808A83C
- thumb_func_start sub_808A854
-sub_808A854: @ 808A854
+ thumb_func_start FieldSetDoorOpened
+FieldSetDoorOpened: @ 808A854
push {r4,r5,lr}
adds r4, r0, 0
adds r5, r1, 0
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8088EFC
+ bl MetatileBehavior_IsDoor
lsls r0, 24
cmp r0, 0
beq _0808A876
@@ -602,17 +602,17 @@ _0808A876:
pop {r0}
bx r0
.pool
- thumb_func_end sub_808A854
+ thumb_func_end FieldSetDoorOpened
- thumb_func_start sub_808A880
-sub_808A880: @ 808A880
+ thumb_func_start FieldSetDoorClosed
+FieldSetDoorClosed: @ 808A880
push {r4,r5,lr}
adds r4, r0, 0
adds r5, r1, 0
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8088EFC
+ bl MetatileBehavior_IsDoor
lsls r0, 24
cmp r0, 0
beq _0808A8A2
@@ -625,17 +625,17 @@ _0808A8A2:
pop {r0}
bx r0
.pool
- thumb_func_end sub_808A880
+ thumb_func_end FieldSetDoorClosed
- thumb_func_start sub_808A8AC
-sub_808A8AC: @ 808A8AC
+ thumb_func_start FieldAnimateDoorClose
+FieldAnimateDoorClose: @ 808A8AC
push {r4,r5,lr}
adds r4, r0, 0
adds r5, r1, 0
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8088EFC
+ bl MetatileBehavior_IsDoor
lsls r0, 24
cmp r0, 0
beq _0808A8D8
@@ -654,17 +654,17 @@ _0808A8DC:
pop {r4,r5}
pop {r1}
bx r1
- thumb_func_end sub_808A8AC
+ thumb_func_end FieldAnimateDoorClose
- thumb_func_start task_overworld_door_add_if_role_69_for_opening_door_at
-task_overworld_door_add_if_role_69_for_opening_door_at: @ 808A8E4
+ thumb_func_start FieldAnimateDoorOpen
+FieldAnimateDoorOpen: @ 808A8E4
push {r4,r5,lr}
adds r4, r0, 0
adds r5, r1, 0
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8088EFC
+ bl MetatileBehavior_IsDoor
lsls r0, 24
cmp r0, 0
beq _0808A910
@@ -683,10 +683,10 @@ _0808A914:
pop {r4,r5}
pop {r1}
bx r1
- thumb_func_end task_overworld_door_add_if_role_69_for_opening_door_at
+ thumb_func_end FieldAnimateDoorOpen
- thumb_func_start sub_808A91C
-sub_808A91C: @ 808A91C
+ thumb_func_start FieldIsDoorAnimationRunning
+FieldIsDoorAnimationRunning: @ 808A91C
push {lr}
ldr r0, =task50_overworld_door
bl FuncIsActiveTask
@@ -695,10 +695,10 @@ sub_808A91C: @ 808A91C
pop {r1}
bx r1
.pool
- thumb_func_end sub_808A91C
+ thumb_func_end FieldIsDoorAnimationRunning
- thumb_func_start cur_mapdata_get_door_sound_at
-cur_mapdata_get_door_sound_at: @ 808A930
+ thumb_func_start GetDoorSoundEffect
+GetDoorSoundEffect: @ 808A930
push {lr}
adds r3, r0, 0
adds r2, r1, 0
@@ -725,7 +725,7 @@ _0808A95C:
_0808A95E:
pop {r1}
bx r1
- thumb_func_end cur_mapdata_get_door_sound_at
+ thumb_func_end GetDoorSoundEffect
thumb_func_start sub_808A964
sub_808A964: @ 808A964
diff --git a/asm/field_effect.s b/asm/field_effect.s
index c8ccc49b4..323e56bfe 100644
--- a/asm/field_effect.s
+++ b/asm/field_effect.s
@@ -1989,7 +1989,7 @@ task00_8084310: @ 80B6A24
cmp r0, 0
beq _080B6A8A
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -2100,7 +2100,7 @@ _080B6B3E:
cmp r0, 0
bne _080B6B58
bl ScriptContext2_Disable
- bl sub_809757C
+ bl UnfreezeMapObjects
adds r0, r5, 0
bl DestroyTask
_080B6B58:
@@ -2459,7 +2459,7 @@ sub_80B6E18: @ 80B6E18
strb r0, [r1, 0x6]
bl ScriptContext2_Disable
bl CameraObjectReset1
- bl sub_809757C
+ bl UnfreezeMapObjects
bl InstallCameraPanAheadCallback
ldr r0, =sub_80B6B94
bl FindTaskIdByFunc
@@ -3111,7 +3111,7 @@ oei_waterfall: @ 80B734C
adds r1, r0
lsls r1, 3
adds r1, r2
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
ldr r2, [r2]
strh r2, [r1, 0xA]
bl _call_via_r4
@@ -3188,7 +3188,7 @@ waterfall_1_do_anim_probably: @ 80B73F0
bne _080B7420
adds r0, r5, 0
bl FieldObjectClearAnimIfSpecialAnimFinished
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0xA
ldrsh r0, [r4, r2]
str r0, [r1]
@@ -3304,7 +3304,7 @@ sub_80B74D0: @ 80B74D0
adds r1, r0
lsls r1, 3
adds r1, r2
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
ldr r2, [r3]
strh r2, [r1, 0x26]
ldr r2, [r3, 0x4]
@@ -3363,7 +3363,7 @@ dive_2_unknown: @ 80B7558
push {r4,lr}
adds r4, r0, 0
bl ScriptContext2_Enable
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0x26
ldrsh r0, [r4, r2]
str r0, [r1]
@@ -3536,7 +3536,7 @@ sub_80B76B8: @ 80B76B8
strh r0, [r2, 0x26]
movs r0, 0x1
strh r0, [r4, 0xE]
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r5, 0x10
ldrsh r0, [r1, r5]
str r0, [r3]
@@ -3835,7 +3835,7 @@ sub_80B791C: @ 80B791C
lsls r0, 24
cmp r0, 0
beq _080B795C
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0x10
ldrsh r0, [r5, r2]
str r0, [r1]
@@ -3919,7 +3919,7 @@ sub_80B79BC: @ 80B79BC
movs r0, 0
strb r0, [r1, 0x6]
bl ScriptContext2_Disable
- bl sub_809757C
+ bl UnfreezeMapObjects
ldr r0, =sub_80B7890
bl FindTaskIdByFunc
lsls r0, 24
@@ -3935,7 +3935,7 @@ _080B79E6:
thumb_func_start sub_80B79F4
sub_80B79F4: @ 80B79F4
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -4090,7 +4090,7 @@ sub_80B7B18: @ 80B7B18
ldrsh r0, [r5, r2]
cmp r0, 0x3
ble _080B7B6C
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0x10
ldrsh r0, [r4, r2]
str r0, [r1]
@@ -4222,7 +4222,7 @@ _080B7C2C:
thumb_func_start sub_80B7C48
sub_80B7C48: @ 80B7C48
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -4583,7 +4583,7 @@ _080B7F32:
ands r0, r1
strb r0, [r6, 0x1]
bl ScriptContext2_Disable
- bl sub_809757C
+ bl UnfreezeMapObjects
ldr r0, =sub_80B7E94
bl FindTaskIdByFunc
lsls r0, 24
@@ -5194,7 +5194,7 @@ sub_80B8410: @ 80B8410
bne _080B8484
bl ScriptContext2_Disable
bl CameraObjectReset1
- bl sub_809757C
+ bl UnfreezeMapObjects
ldr r0, =sub_80B8250
bl FindTaskIdByFunc
lsls r0, 24
@@ -5229,7 +5229,7 @@ _080B84BE:
bl CreateTask
lsls r0, 24
lsrs r4, r0, 24
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
ldr r0, [r2]
ldr r1, [r2, 0x4]
ldr r2, [r2, 0x8]
@@ -5252,7 +5252,7 @@ _080B84BE:
thumb_func_start sub_80B84F8
sub_80B84F8: @ 80B84F8
push {r4-r6,lr}
- ldr r5, =gFieldEffectSpawnParams
+ ldr r5, =gFieldEffectArguments
ldr r0, [r5]
movs r6, 0x80
lsls r6, 24
@@ -6292,12 +6292,12 @@ sub_80B8D44: @ 80B8D44
adds r1, r0
lsls r1, 3
adds r1, r2
- ldr r0, =gFieldEffectSpawnParams
+ ldr r0, =gFieldEffectArguments
ldr r0, [r0]
strh r0, [r1, 0x26]
bl sav1_reset_battle_music_maybe
ldr r0, =0x0000016d
- bl sub_80858C4
+ bl Overworld_ChangeMusicTo
movs r0, 0
pop {r1}
bx r1
@@ -6421,7 +6421,7 @@ sub_80B8E60: @ 80B8E60
lsls r0, 24
cmp r0, 0
beq _080B8E96
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
movs r1, 0x26
ldrsh r0, [r4, r1]
movs r1, 0x80
@@ -6473,7 +6473,7 @@ sub_80B8EA8: @ 80B8EA8
lsrs r1, 24
adds r0, r4, 0
bl FieldObjectSetSpecialAnim
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0xA
ldrsh r0, [r6, r2]
str r0, [r1]
@@ -6527,7 +6527,7 @@ sub_80B8F24: @ 80B8F24
ldrb r0, [r4, 0x1A]
movs r1, 0x1
bl sub_81555AC
- bl sub_809757C
+ bl UnfreezeMapObjects
bl ScriptContext2_Disable
movs r0, 0x9
bl FieldEffectActiveListRemove
@@ -6704,7 +6704,7 @@ sub_80B90CC: @ 80B90CC
strb r0, [r2, 0x5]
ldr r0, =sub_80B9128
str r0, [r2, 0x1C]
- ldr r0, =gFieldEffectSpawnParams
+ ldr r0, =gFieldEffectArguments
ldr r0, [r0]
strh r0, [r2, 0x30]
movs r0, 0x9E
@@ -6793,7 +6793,7 @@ sub_80B91A4: @ 80B91A4
adds r1, r0
lsls r1, 3
adds r1, r2
- ldr r0, =gFieldEffectSpawnParams
+ ldr r0, =gFieldEffectArguments
ldr r0, [r0]
strh r0, [r1, 0xA]
movs r0, 0
@@ -6884,7 +6884,7 @@ sub_80B925C: @ 80B925C
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0xA
ldrsh r0, [r4, r2]
str r0, [r1]
@@ -7922,7 +7922,7 @@ _080B9ACA:
sub_80B9ADC: @ 80B9ADC
push {r4,lr}
sub sp, 0x4
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
ldrb r0, [r4]
ldrb r1, [r4, 0x4]
ldrb r2, [r4, 0x8]
@@ -8343,7 +8343,7 @@ _080B9E24:
sub_80B9E28: @ 80B9E28
push {r4-r7,lr}
sub sp, 0x4
- ldr r7, =gFieldEffectSpawnParams
+ ldr r7, =gFieldEffectArguments
ldrb r0, [r7]
ldrb r1, [r7, 0x4]
ldrb r2, [r7, 0x8]
diff --git a/asm/field_effect_helpers.s b/asm/field_effect_helpers.s
index 76ba35fd2..754a8f7ff 100644
--- a/asm/field_effect_helpers.s
+++ b/asm/field_effect_helpers.s
@@ -130,13 +130,13 @@ npc_pal_op: @ 8153FAC
cmp r0, 0
bne _08154008
ldrb r0, [r5, 0x1F]
- bl sub_80894D4
+ bl MetatileBehavior_GetBridgeSth
lsls r0, 24
lsrs r0, 24
cmp r0, 0
bne _08153FEE
ldrb r0, [r5, 0x1E]
- bl sub_80894D4
+ bl MetatileBehavior_GetBridgeSth
lsls r0, 24
lsrs r0, 24
cmp r0, 0
@@ -574,7 +574,7 @@ _0815432E:
thumb_func_start oei_shadow
oei_shadow: @ 8154340
push {r4,r5,lr}
- ldr r5, =gFieldEffectSpawnParams
+ ldr r5, =gFieldEffectArguments
ldrb r0, [r5]
ldrb r1, [r5, 0x4]
ldrb r2, [r5, 0x8]
@@ -702,7 +702,7 @@ _08154412:
cmp r0, r1
bne _08154490
ldrb r0, [r4, 0x1E]
- bl sub_8088E64
+ bl MetatileBehavior_IsPokeGrass
lsls r0, 24
cmp r0, 0
bne _08154490
@@ -742,7 +742,7 @@ _08154498:
oei_grass_normal: @ 81544AC
push {r4,r5,lr}
sub sp, 0x4
- ldr r5, =gFieldEffectSpawnParams
+ ldr r5, =gFieldEffectArguments
ldrh r1, [r5]
mov r0, sp
strh r1, [r0]
@@ -951,7 +951,7 @@ _08154648:
thumb_func_start sub_8154658
sub_8154658: @ 8154658
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -1080,7 +1080,7 @@ _0815474C:
sub_8154758: @ 8154758
push {r4,r5,lr}
sub sp, 0x4
- ldr r5, =gFieldEffectSpawnParams
+ ldr r5, =gFieldEffectArguments
ldrh r1, [r5]
mov r0, sp
strh r1, [r0]
@@ -1282,7 +1282,7 @@ _081548EA:
thumb_func_start sub_81548FC
sub_81548FC: @ 81548FC
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -1336,7 +1336,7 @@ _08154958:
thumb_func_start sub_815496C
sub_815496C: @ 815496C
push {r4-r6,lr}
- ldr r6, =gFieldEffectSpawnParams
+ ldr r6, =gFieldEffectArguments
ldrb r0, [r6]
ldrb r1, [r6, 0x4]
ldrb r2, [r6, 0x8]
@@ -1537,7 +1537,7 @@ _08154AF2:
thumb_func_start sub_8154B04
sub_8154B04: @ 8154B04
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -1591,7 +1591,7 @@ _08154B62:
thumb_func_start sub_8154B78
sub_8154B78: @ 8154B78
push {r4,r5,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -1646,7 +1646,7 @@ _08154BD8:
thumb_func_start sub_8154BEC
sub_8154BEC: @ 8154BEC
push {r4,r5,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -1777,7 +1777,7 @@ _08154CE4:
thumb_func_start sub_8154CEC
sub_8154CEC: @ 8154CEC
push {r4-r6,lr}
- ldr r6, =gFieldEffectSpawnParams
+ ldr r6, =gFieldEffectArguments
ldrb r0, [r6]
ldrb r1, [r6, 0x4]
ldrb r2, [r6, 0x8]
@@ -1922,7 +1922,7 @@ _08154E0A:
thumb_func_start sub_8154E1C
sub_8154E1C: @ 8154E1C
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -1976,7 +1976,7 @@ _08154E78:
thumb_func_start oei_water_drop_tall
oei_water_drop_tall: @ 8154E8C
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -2030,7 +2030,7 @@ _08154EE8:
thumb_func_start sub_8154EFC
sub_8154EFC: @ 8154EFC
push {r4-r7,lr}
- ldr r7, =gFieldEffectSpawnParams
+ ldr r7, =gFieldEffectArguments
ldrb r0, [r7]
ldrb r1, [r7, 0x4]
ldrb r2, [r7, 0x8]
@@ -2193,7 +2193,7 @@ oei_ripples: @ 8155054
push {r4,lr}
ldr r0, =gFieldEffectObjectTemplatePointers
ldr r0, [r0, 0x14]
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
movs r2, 0
ldrsh r1, [r4, r2]
movs r3, 0x4
@@ -2238,7 +2238,7 @@ _081550A0:
thumb_func_start sub_81550B4
sub_81550B4: @ 81550B4
push {r4-r6,lr}
- ldr r6, =gFieldEffectSpawnParams
+ ldr r6, =gFieldEffectArguments
ldrb r0, [r6]
ldrb r1, [r6, 0x4]
ldrb r2, [r6, 0x8]
@@ -2393,7 +2393,7 @@ _081551E4:
thumb_func_start sub_81551F0
sub_81551F0: @ 81551F0
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -2445,7 +2445,7 @@ _08155248:
thumb_func_start sub_815525C
sub_815525C: @ 815525C
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -2497,7 +2497,7 @@ _081552B4:
thumb_func_start sub_81552C8
sub_81552C8: @ 81552C8
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -2549,7 +2549,7 @@ _08155320:
thumb_func_start sub_8155334
sub_8155334: @ 8155334
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -2603,7 +2603,7 @@ ash: @ 81553A0
push {r4,lr}
lsls r2, 16
lsrs r2, 16
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
lsls r0, 16
asrs r0, 16
str r0, [r4]
@@ -2630,7 +2630,7 @@ ash: @ 81553A0
oei_ash: @ 81553D4
push {r4,r5,lr}
sub sp, 0x4
- ldr r5, =gFieldEffectSpawnParams
+ ldr r5, =gFieldEffectArguments
ldrh r1, [r5]
mov r0, sp
strh r1, [r0]
@@ -2809,7 +2809,7 @@ _0815552C:
thumb_func_start sub_8155534
sub_8155534: @ 8155534
push {r4,r5,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -3261,7 +3261,7 @@ _08155888:
thumb_func_start sub_8155890
sub_8155890: @ 8155890
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -3315,7 +3315,7 @@ _081558EC:
thumb_func_start sub_8155900
sub_8155900: @ 8155900
push {r4-r7,lr}
- ldr r7, =gFieldEffectSpawnParams
+ ldr r7, =gFieldEffectArguments
ldrb r0, [r7]
ldrb r1, [r7, 0x4]
ldrb r2, [r7, 0x8]
@@ -3505,7 +3505,7 @@ _08155A76:
thumb_func_start sub_8155A88
sub_8155A88: @ 8155A88
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -3586,7 +3586,7 @@ _08155B20:
thumb_func_start sub_8155B2C
sub_8155B2C: @ 8155B2C
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
adds r1, r4, 0x4
adds r0, r4, 0
movs r2, 0x8
@@ -3689,7 +3689,7 @@ ShowDisguiseFieldEffect: @ 8155BD0
lsrs r6, r1, 24
lsls r2, 24
lsrs r7, r2, 24
- ldr r5, =gFieldEffectSpawnParams
+ ldr r5, =gFieldEffectArguments
ldrb r0, [r5]
ldrb r1, [r5, 0x4]
ldrb r2, [r5, 0x8]
@@ -3950,7 +3950,7 @@ _08155DD8:
thumb_func_start sub_8155DDC
sub_8155DDC: @ 8155DDC
push {r4,lr}
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
ldr r0, [r4]
adds r0, 0x7
str r0, [r4]
diff --git a/asm/field_ground_effect.s b/asm/field_ground_effect.s
index 7d05dbd98..2152a5c5b 100644
--- a/asm/field_ground_effect.s
+++ b/asm/field_ground_effect.s
@@ -1166,7 +1166,7 @@ _08096E8C:
@ void GroundEffect_SpawnOnTallGrass(struct npc_state *fieldObject, struct obj *object)
GroundEffect_SpawnOnTallGrass: @ 8096E90
push {lr}
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r2, 0x10
ldrsh r1, [r0, r2]
str r1, [r3]
@@ -1205,7 +1205,7 @@ GroundEffect_SpawnOnTallGrass: @ 8096E90
@ void GroundEffect_StepOnTallGrass(struct npc_state *fieldObject, struct obj *object)
GroundEffect_StepOnTallGrass: @ 8096EDC
push {lr}
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r2, 0x10
ldrsh r1, [r0, r2]
str r1, [r3]
@@ -1244,7 +1244,7 @@ GroundEffect_StepOnTallGrass: @ 8096EDC
@ void GroundEffect_SpawnOnLongGrass(struct npc_state *fieldObject, struct obj *object)
GroundEffect_SpawnOnLongGrass: @ 8096F28
push {lr}
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r2, 0x10
ldrsh r1, [r0, r2]
str r1, [r3]
@@ -1283,7 +1283,7 @@ GroundEffect_SpawnOnLongGrass: @ 8096F28
@ void GroundEffect_StepOnLongGrass(struct npc_state *fieldObject, struct obj *object)
GroundEffect_StepOnLongGrass: @ 8096F74
push {lr}
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r2, 0x10
ldrsh r1, [r0, r2]
str r1, [r3]
@@ -1413,7 +1413,7 @@ DoTracksGroundEffect_Footprints: @ 8097044
mov r0, sp
movs r2, 0x4
bl memcpy
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0x14
ldrsh r0, [r5, r2]
str r0, [r1]
@@ -1449,7 +1449,7 @@ DoTracksGroundEffect_BikeTireTracks: @ 8097094
ldr r0, [r4, 0x14]
cmp r1, r0
beq _080970D6
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
movs r1, 0x14
ldrsh r0, [r4, r1]
str r0, [r2]
@@ -1520,7 +1520,7 @@ GroundEffect_JumpOnTallGrass: @ 8097110
sub sp, 0x4
adds r5, r0, 0
adds r6, r1, 0
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0x10
ldrsh r0, [r5, r2]
str r0, [r1]
@@ -1562,7 +1562,7 @@ _0809715A:
@ void GroundEffect_JumpOnLongGrass(struct npc_state *fieldObject, struct obj *object)
GroundEffect_JumpOnLongGrass: @ 8097168
push {lr}
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
movs r3, 0x10
ldrsh r1, [r0, r3]
str r1, [r2]
@@ -1585,7 +1585,7 @@ GroundEffect_JumpOnLongGrass: @ 8097168
@ void GroundEffect_JumpOnShallowWater(struct npc_state *fieldObject, struct obj *object)
GroundEffect_JumpOnShallowWater: @ 8097190
push {r4,lr}
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r4, 0x10
ldrsh r2, [r0, r4]
str r2, [r3]
@@ -1611,7 +1611,7 @@ GroundEffect_JumpOnShallowWater: @ 8097190
@ void GroundEffect_JumpOnWater(struct npc_state *fieldObject, struct obj *object)
GroundEffect_JumpOnWater: @ 80971C0
push {r4,lr}
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r4, 0x10
ldrsh r2, [r0, r4]
str r2, [r3]
@@ -1637,7 +1637,7 @@ GroundEffect_JumpOnWater: @ 80971C0
@ void GroundEffect_JumpLandingDust(struct npc_state *fieldObject, struct obj *object)
GroundEffect_JumpLandingDust: @ 80971F0
push {r4,lr}
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r4, 0x10
ldrsh r2, [r0, r4]
str r2, [r3]
@@ -1685,7 +1685,7 @@ GroundEffect_HotSprings: @ 8097230
@ void GroundEffect_Seaweed(struct npc_state *fieldObject, struct obj *object)
GroundEffect_Seaweed: @ 8097240
push {lr}
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
movs r3, 0x10
ldrsh r1, [r0, r3]
str r1, [r2]
diff --git a/asm/field_message_box.s b/asm/field_message_box.s
index 35267e8d4..0c1fae6de 100644
--- a/asm/field_message_box.s
+++ b/asm/field_message_box.s
@@ -108,8 +108,8 @@ _080981E4:
.pool
thumb_func_end task_del_textbox
- thumb_func_start box_related_two__2
-box_related_two__2: @ 80981EC
+ thumb_func_start ShowFieldMessage
+ShowFieldMessage: @ 80981EC
push {r4,lr}
adds r1, r0, 0
ldr r4, =gUnknown_020375BC
@@ -130,7 +130,7 @@ _0809820E:
pop {r4}
pop {r1}
bx r1
- thumb_func_end box_related_two__2
+ thumb_func_end ShowFieldMessage
thumb_func_start sub_8098214
sub_8098214: @ 8098214
@@ -181,8 +181,8 @@ _08098272:
bx r1
thumb_func_end sub_8098238
- thumb_func_start box_related_two__3
-box_related_two__3: @ 8098278
+ thumb_func_start ShowFieldAutoScrollMessage
+ShowFieldAutoScrollMessage: @ 8098278
push {lr}
adds r1, r0, 0
ldr r2, =gUnknown_020375BC
@@ -202,7 +202,7 @@ _08098298:
_0809829A:
pop {r1}
bx r1
- thumb_func_end box_related_two__3
+ thumb_func_end ShowFieldAutoScrollMessage
thumb_func_start sub_80982A0
sub_80982A0: @ 80982A0
@@ -267,8 +267,8 @@ textbox_auto_and_task_add: @ 8098304
bx r0
thumb_func_end textbox_auto_and_task_add
- thumb_func_start textbox_close
-textbox_close: @ 8098314
+ thumb_func_start HideFieldMessageBox
+HideFieldMessageBox: @ 8098314
push {lr}
bl task_del_textbox
movs r0, 0
@@ -280,7 +280,7 @@ textbox_close: @ 8098314
pop {r0}
bx r0
.pool
- thumb_func_end textbox_close
+ thumb_func_end HideFieldMessageBox
thumb_func_start textbox_any_visible
textbox_any_visible: @ 8098330
@@ -290,8 +290,8 @@ textbox_any_visible: @ 8098330
.pool
thumb_func_end textbox_any_visible
- thumb_func_start sub_809833C
-sub_809833C: @ 809833C
+ thumb_func_start IsFieldMessageBoxHidden
+IsFieldMessageBoxHidden: @ 809833C
push {lr}
ldr r0, =gUnknown_020375BC
ldrb r0, [r0]
@@ -305,7 +305,7 @@ _08098350:
_08098352:
pop {r1}
bx r1
- thumb_func_end sub_809833C
+ thumb_func_end IsFieldMessageBoxHidden
thumb_func_start sub_8098358
sub_8098358: @ 8098358
diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s
index aaca9b2ba..34ff54f61 100644
--- a/asm/field_player_avatar.s
+++ b/asm/field_player_avatar.s
@@ -1223,7 +1223,7 @@ sub_808B238: @ 808B238
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8088F58
+ bl MetatileBehavior_IsNonAnimDoor
lsls r0, 24
cmp r0, 0
bne _0808B2D8
@@ -1522,7 +1522,7 @@ PlayerAvatarTransition_Surfing: @ 808B4D8
bl FieldObjectTurn
movs r0, 0x8
bl SetPlayerAvatarStateMask
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r2, 0x10
ldrsh r0, [r4, r2]
str r0, [r1]
@@ -2255,7 +2255,7 @@ PlayCollisionSoundIfNotFacingWarp: @ 808B9EC
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl is_tile_x69_2_warp_door
+ bl MetatileBehavior_IsWarpDoor
lsls r0, 24
cmp r0, 0
bne _0808BA54
@@ -3517,7 +3517,7 @@ _0808C3F0:
lsrs r1, 24
adds r0, r4, 0
bl FieldObjectSetSpecialAnim
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
movs r1, 0x10
ldrsh r0, [r4, r1]
str r0, [r2]
@@ -3897,7 +3897,7 @@ sub_808C750: @ 808C750
lsrs r4, 24
bl ScriptContext2_Enable
bl sav1_reset_battle_music_maybe
- bl sub_8085898
+ bl Overworld_ChangeMusicToDefault
ldr r2, =gPlayerAvatar
ldrb r1, [r2]
movs r0, 0xF7
@@ -4858,7 +4858,7 @@ fishF: @ 808CF2C
ldr r0, =gPlayerAvatar
strb r1, [r0, 0x6]
bl ScriptContext2_Disable
- bl sub_809757C
+ bl UnfreezeMapObjects
movs r0, 0
movs r1, 0x1
bl sub_8197434
diff --git a/asm/field_poison.s b/asm/field_poison.s
index 5b1e24719..652026523 100644
--- a/asm/field_poison.s
+++ b/asm/field_poison.s
@@ -178,7 +178,7 @@ _080F96A8:
strh r0, [r4]
b _080F9722
_080F96AE:
- bl sub_809833C
+ bl IsFieldMessageBoxHidden
lsls r0, 24
cmp r0, 0
beq _080F9722
@@ -217,7 +217,7 @@ _080F96FC:
ldrb r0, [r4, 0x2]
bl sub_80F95C0
ldr r0, =gText_PkmnFainted3
- bl box_related_two__2
+ bl ShowFieldMessage
ldrh r0, [r4]
adds r0, 0x1
strh r0, [r4]
diff --git a/asm/field_screen.s b/asm/field_screen.s
index 13f418f17..4ab8a5a53 100644
--- a/asm/field_screen.s
+++ b/asm/field_screen.s
@@ -7503,8 +7503,8 @@ _080AED78:
bx r0
thumb_func_end bag_add_task0_by_acit
- thumb_func_start sub_80AED7C
-sub_80AED7C: @ 80AED7C
+ thumb_func_start SetSav1Weather
+SetSav1Weather: @ 80AED7C
push {r4,r5,lr}
ldr r4, =gSaveBlock1Ptr
ldr r1, [r4]
@@ -7525,7 +7525,7 @@ sub_80AED7C: @ 80AED7C
pop {r0}
bx r0
.pool
- thumb_func_end sub_80AED7C
+ thumb_func_end SetSav1Weather
thumb_func_start sav1_get_weather_probably
sav1_get_weather_probably: @ 80AEDAC
@@ -7564,7 +7564,7 @@ sub_80AEDBC: @ 80AEDBC
thumb_func_start sub_80AEDF0
sub_80AEDF0: @ 80AEDF0
push {lr}
- bl sub_80AED7C
+ bl SetSav1Weather
bl sav1_get_weather_probably
lsls r0, 24
lsrs r0, 24
@@ -7576,7 +7576,7 @@ sub_80AEDF0: @ 80AEDF0
thumb_func_start sub_80AEE08
sub_80AEE08: @ 80AEE08
push {lr}
- bl sub_80AED7C
+ bl SetSav1Weather
bl sav1_get_weather_probably
lsls r0, 24
lsrs r0, 24
@@ -7585,8 +7585,8 @@ sub_80AEE08: @ 80AEE08
bx r0
thumb_func_end sub_80AEE08
- thumb_func_start sub_80AEE20
-sub_80AEE20: @ 80AEE20
+ thumb_func_start DoCurrentWeather
+DoCurrentWeather: @ 80AEE20
push {r4,r5,lr}
bl sav1_get_weather_probably
lsls r0, 24
@@ -7627,7 +7627,7 @@ _080AEE6E:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80AEE20
+ thumb_func_end DoCurrentWeather
thumb_func_start sub_80AEE84
sub_80AEE84: @ 80AEE84
@@ -8248,7 +8248,7 @@ sub_80AF334: @ 80AF334
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8088EFC
+ bl MetatileBehavior_IsDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -8258,7 +8258,7 @@ sub_80AF334: @ 80AF334
.pool
_080AF36C:
adds r0, r4, 0
- bl sub_8088F58
+ bl MetatileBehavior_IsNonAnimDoor
lsls r0, 24
lsrs r0, 24
ldr r1, =task_map_chg_seq_0807E2CC
@@ -8390,7 +8390,7 @@ _080AF480:
ldrsh r0, [r6, r1]
movs r2, 0
ldrsh r1, [r7, r2]
- bl sub_808A854
+ bl FieldSetDoorOpened
movs r0, 0x1
strh r0, [r5, 0x8]
b _080AF54A
@@ -8427,7 +8427,7 @@ _080AF4DC:
ldrsh r0, [r6, r1]
movs r2, 0
ldrsh r1, [r7, r2]
- bl sub_808A8AC
+ bl FieldAnimateDoorClose
lsls r0, 24
asrs r0, 24
strh r0, [r5, 0xA]
@@ -8461,7 +8461,7 @@ _080AF520:
cmp r0, 0x1
beq _080AF54A
_080AF536:
- bl sub_809757C
+ bl UnfreezeMapObjects
movs r0, 0x4
strh r0, [r5, 0x8]
b _080AF54A
@@ -8550,7 +8550,7 @@ _080AF5EC:
lsls r0, 24
cmp r0, 0
beq _080AF60A
- bl sub_809757C
+ bl UnfreezeMapObjects
movs r0, 0x3
strh r0, [r5, 0x8]
b _080AF60A
@@ -8593,7 +8593,7 @@ _080AF644:
bl sub_80AF71C
cmp r0, 0
beq _080AF65A
- bl sub_809757C
+ bl UnfreezeMapObjects
bl ScriptContext2_Disable
adds r0, r5, 0
bl DestroyTask
@@ -9010,7 +9010,7 @@ _080AF9C8:
strh r0, [r4]
b _080AF9E8
_080AF9D0:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080AF9E8
@@ -9142,7 +9142,7 @@ _080AFAD4:
movs r2, 0
ldrsh r1, [r6, r2]
subs r1, 0x1
- bl cur_mapdata_get_door_sound_at
+ bl GetDoorSoundEffect
lsls r0, 16
lsrs r0, 16
bl PlaySE
@@ -9151,7 +9151,7 @@ _080AFAD4:
movs r2, 0
ldrsh r1, [r6, r2]
subs r1, 0x1
- bl task_overworld_door_add_if_role_69_for_opening_door_at
+ bl FieldAnimateDoorOpen
lsls r0, 24
asrs r0, 24
strh r0, [r5, 0xA]
@@ -9211,7 +9211,7 @@ _080AFB6C:
movs r2, 0
ldrsh r1, [r6, r2]
subs r1, 0x1
- bl sub_808A8AC
+ bl FieldAnimateDoorClose
lsls r0, 24
asrs r0, 24
strh r0, [r5, 0xA]
@@ -9996,7 +9996,7 @@ _080B0198:
bl sub_808D1B4
cmp r0, 0x1
beq _080B01B6
- bl sub_809757C
+ bl UnfreezeMapObjects
bl ScriptContext2_Disable
adds r0, r5, 0
bl DestroyTask
diff --git a/asm/field_tasks.s b/asm/field_tasks.s
index 26761b8d1..39bd3b545 100644
--- a/asm/field_tasks.s
+++ b/asm/field_tasks.s
@@ -46,7 +46,7 @@ _0809D8CA:
ands r0, r1
cmp r0, 0
beq _0809D8FC
- bl sub_809E7B0
+ bl DoTimeBasedEvents
ldrh r0, [r4]
adds r0, 0x1
b _0809D8FA
@@ -144,8 +144,8 @@ _0809D992:
.pool
thumb_func_end overworld_ensure_per_step_coros_running
- thumb_func_start activate_per_step_callback
-activate_per_step_callback: @ 809D9A8
+ thumb_func_start ActivatePerStepCallback
+ActivatePerStepCallback: @ 809D9A8
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -180,7 +180,7 @@ _0809D9EA:
pop {r4}
pop {r0}
bx r0
- thumb_func_end activate_per_step_callback
+ thumb_func_end ActivatePerStepCallback
thumb_func_start wild_encounter_reset_coro_args
wild_encounter_reset_coro_args: @ 809D9F0
@@ -221,7 +221,7 @@ sub_809DA30: @ 809DA30
lsls r1, 24
lsrs r4, r1, 24
adds r0, r4, 0
- bl sub_8089764
+ bl MetatileBehavior_IsPacifilogVerticalLog1
lsls r0, 24
cmp r0, 0
beq _0809DA48
@@ -229,7 +229,7 @@ sub_809DA30: @ 809DA30
b _0809DA80
_0809DA48:
adds r0, r4, 0
- bl sub_8089778
+ bl MetatileBehavior_IsPacifilogVerticalLog2
lsls r0, 24
cmp r0, 0
beq _0809DA5A
@@ -238,7 +238,7 @@ _0809DA48:
b _0809DA80
_0809DA5A:
adds r0, r4, 0
- bl sub_808978C
+ bl MetatileBehavior_IsPacifilogHorizontalLog1
lsls r0, 24
cmp r0, 0
beq _0809DA6C
@@ -247,7 +247,7 @@ _0809DA5A:
b _0809DA80
_0809DA6C:
adds r0, r4, 0
- bl sub_80897A0
+ bl MetatileBehavior_IsPacifilogHorizontalLog2
lsls r0, 24
cmp r0, 0
bne _0809DA7C
@@ -414,7 +414,7 @@ sub_809DB7C: @ 809DB7C
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8089764
+ bl MetatileBehavior_IsPacifilogVerticalLog1
lsls r0, 24
cmp r0, 0
beq _0809DBC0
@@ -427,7 +427,7 @@ _0809DBBC:
b _0809DC08
_0809DBC0:
adds r0, r4, 0
- bl sub_8089778
+ bl MetatileBehavior_IsPacifilogVerticalLog2
lsls r0, 24
cmp r0, 0
beq _0809DBD8
@@ -439,7 +439,7 @@ _0809DBC0:
b _0809DBBC
_0809DBD8:
adds r0, r4, 0
- bl sub_808978C
+ bl MetatileBehavior_IsPacifilogHorizontalLog1
lsls r0, 24
cmp r0, 0
beq _0809DBF0
@@ -451,7 +451,7 @@ _0809DBD8:
b _0809DBBC
_0809DBF0:
adds r0, r4, 0
- bl sub_80897A0
+ bl MetatileBehavior_IsPacifilogHorizontalLog2
lsls r0, 24
cmp r0, 0
beq _0809DC06
@@ -496,7 +496,7 @@ sub_809DC18: @ 809DC18
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8089764
+ bl MetatileBehavior_IsPacifilogVerticalLog1
lsls r0, 24
cmp r0, 0
beq _0809DC5C
@@ -509,7 +509,7 @@ _0809DC58:
b _0809DCA4
_0809DC5C:
adds r0, r4, 0
- bl sub_8089778
+ bl MetatileBehavior_IsPacifilogVerticalLog2
lsls r0, 24
cmp r0, 0
beq _0809DC74
@@ -521,7 +521,7 @@ _0809DC5C:
b _0809DC58
_0809DC74:
adds r0, r4, 0
- bl sub_808978C
+ bl MetatileBehavior_IsPacifilogHorizontalLog1
lsls r0, 24
cmp r0, 0
beq _0809DC8C
@@ -533,7 +533,7 @@ _0809DC74:
b _0809DC58
_0809DC8C:
adds r0, r4, 0
- bl sub_80897A0
+ bl MetatileBehavior_IsPacifilogHorizontalLog2
lsls r0, 24
cmp r0, 0
beq _0809DCA2
@@ -1326,7 +1326,7 @@ _0809E29A:
lsls r4, 24
lsrs r4, 24
adds r0, r4, 0
- bl sub_8089604
+ bl MetatileBehavior_IsThinIce
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1341,7 +1341,7 @@ _0809E29A:
.pool
_0809E2E0:
adds r0, r4, 0
- bl sub_8089618
+ bl MetatileBehavior_IsCrackedIce
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1630,7 +1630,7 @@ _0809E53E:
lsls r0, r6, 24
lsrs r6, r0, 24
adds r0, r6, 0
- bl sub_8089918
+ bl MetatileBehavior_IsCrackedFloorHole
lsls r0, 24
cmp r0, 0
beq _0809E556
@@ -1658,7 +1658,7 @@ _0809E572:
ldrh r0, [r4]
strh r0, [r5, 0x6]
adds r0, r6, 0
- bl sub_808992C
+ bl MetatileBehavior_IsCrackedFloor
lsls r0, 24
cmp r0, 0
beq _0809E5D2
diff --git a/asm/fldeff_80F9BCC.s b/asm/fldeff_80F9BCC.s
index 3bc667754..63acc9982 100644
--- a/asm/fldeff_80F9BCC.s
+++ b/asm/fldeff_80F9BCC.s
@@ -486,7 +486,7 @@ sub_80F9F78: @ 80F9F78
ands r0, r1
cmp r0, 0
beq _080F9FC0
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
ldr r0, [r1, 0x4]
cmp r0, 0x2
beq _080F9FAE
@@ -517,7 +517,7 @@ _080F9FB6:
movs r0, 0x18
b _080F9FFC
_080F9FC0:
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
ldr r0, [r1, 0x4]
cmp r0, 0x2
beq _080F9FEA
@@ -584,7 +584,7 @@ sub_80FA004: @ 80FA004
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_808923C
+ bl MetatileBehavior_IsSecretBaseCave
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -599,7 +599,7 @@ sub_80FA004: @ 80FA004
.pool
_080FA070:
adds r0, r4, 0
- bl sub_808925C
+ bl MetatileBehavior_IsSecretBaseTree
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -614,7 +614,7 @@ _080FA070:
.pool
_080FA0A0:
adds r0, r4, 0
- bl is_tile_x98
+ bl MetatileBehavior_IsSecretBaseShrub
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -643,7 +643,7 @@ _080FA0C4:
sub_80FA0DC: @ 80FA0DC
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -701,7 +701,7 @@ sub_80FA13C: @ 80FA13C
ldrh r1, [r2, 0x2]
lsls r1, 23
lsrs r1, 23
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
ldr r3, [r4, 0x14]
adds r1, r3
lsls r1, 16
@@ -778,7 +778,7 @@ sub_80FA1D8: @ 80FA1D8
sub_80FA1E8: @ 80FA1E8
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -836,13 +836,13 @@ sub_80FA248: @ 80FA248
ands r2, r0
cmp r2, 0x96
bne _080FA26A
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r0, 0
str r0, [r1, 0x1C]
_080FA26A:
cmp r2, 0x9C
bne _080FA274
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
movs r0, 0x2
str r0, [r1, 0x1C]
_080FA274:
@@ -858,7 +858,7 @@ _080FA274:
ldrh r1, [r2, 0x2]
lsls r1, 23
lsrs r1, 23
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
ldr r3, [r4, 0x14]
adds r1, r3
lsls r1, 16
@@ -891,7 +891,7 @@ sub_80FA2D8: @ 80FA2D8
adds r4, r0, 0
movs r0, 0x9B
bl PlaySE
- ldr r0, =gFieldEffectSpawnParams
+ ldr r0, =gFieldEffectArguments
ldr r1, [r0, 0x1C]
adds r2, r4, 0
adds r2, 0x2A
@@ -917,7 +917,7 @@ sub_80FA304: @ 80FA304
asrs r0, 16
cmp r0, 0x27
ble _080FA32E
- ldr r0, =gFieldEffectSpawnParams
+ ldr r0, =gFieldEffectArguments
ldr r0, [r0, 0x1C]
cmp r0, 0
beq _080FA322
@@ -951,7 +951,7 @@ sub_80FA33C: @ 80FA33C
sub_80FA34C: @ 80FA34C
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -1009,7 +1009,7 @@ sub_80FA3AC: @ 80FA3AC
ldrh r1, [r2, 0x2]
lsls r1, 23
lsrs r1, 23
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
ldr r3, [r4, 0x14]
adds r1, r3
lsls r1, 16
@@ -1807,7 +1807,7 @@ sub_80FAA7C: @ 80FAA7C
mov r0, sp
adds r1, r4, 0
bl GetXYCoordsOneStepInFrontOfPlayer
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
mov r0, sp
movs r2, 0
ldrsh r0, [r0, r2]
@@ -1930,7 +1930,7 @@ door_restore_tilemap: @ 80FABA4
adds r5, r0, 0
movs r0, 0x83
bl PlaySE
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
ldr r0, [r4, 0x14]
ldr r1, [r4, 0x18]
subs r1, 0x1
@@ -1953,7 +1953,7 @@ _080FABDC:
lsls r2, 2
bl MapGridSetMetatileIdAt
_080FABEA:
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
ldr r0, [r4, 0x14]
ldr r1, [r4, 0x18]
ldr r2, =0x0000020a
@@ -1988,7 +1988,7 @@ sub_80FAC24: @ 80FAC24
strh r0, [r5, 0x2E]
b _080FAC54
_080FAC38:
- ldr r4, =gFieldEffectSpawnParams
+ ldr r4, =gFieldEffectArguments
ldr r0, [r4, 0x14]
ldr r1, [r4, 0x18]
ldr r2, =0x00000e8c
diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s
index ce7e79de8..e31bf22e2 100755
--- a/asm/fldeff_cut.s
+++ b/asm/fldeff_cut.s
@@ -130,7 +130,7 @@ _080D37F6:
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8088E64
+ bl MetatileBehavior_IsPokeGrass
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -175,7 +175,7 @@ _080D3890:
movs r0, 0x1
strb r0, [r1]
adds r0, r4, 0
- bl sub_80899F8
+ bl MetatileBehavior_IsCuttableGrass
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0x1
@@ -309,7 +309,7 @@ _080D395A:
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8088E64
+ bl MetatileBehavior_IsPokeGrass
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -339,7 +339,7 @@ _080D39F4:
b _080D395A
_080D39F8:
adds r0, r4, 0
- bl sub_80899F8
+ bl MetatileBehavior_IsCuttableGrass
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0x1
@@ -385,7 +385,7 @@ hm2_ruin_valley: @ 80D3A50
movs r0, 0x1
bl FieldEffectStart
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -421,7 +421,7 @@ sub_80D3A6C: @ 80D3A6C
sub_80D3A9C: @ 80D3A9C
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -1344,7 +1344,7 @@ sub_80D423C: @ 80D423C
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl MetatileBehavior_IsLongGrass2
+ bl MetatileBehavior_IsLongGrass_Duplicate
lsls r0, 24
cmp r0, 0
beq _080D42AE
diff --git a/asm/fldeff_emotion.s b/asm/fldeff_emotion.s
deleted file mode 100644
index 37096a438..000000000
--- a/asm/fldeff_emotion.s
+++ /dev/null
@@ -1,328 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start oei_exclamation_mark
-oei_exclamation_mark: @ 80B4620
- push {lr}
- ldr r0, =gUnknown_085507B4
- movs r1, 0
- movs r2, 0
- movs r3, 0x53
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _080B4648
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- movs r1, 0
- movs r2, 0
- bl sub_80B46D8
-_080B4648:
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end oei_exclamation_mark
-
- thumb_func_start sub_80B4658
-sub_80B4658: @ 80B4658
- push {lr}
- ldr r0, =gUnknown_085507B4
- movs r1, 0
- movs r2, 0
- movs r3, 0x52
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _080B4680
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- movs r1, 0x21
- movs r2, 0x1
- bl sub_80B46D8
-_080B4680:
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80B4658
-
- thumb_func_start sub_80B4690
-sub_80B4690: @ 80B4690
- push {r4,lr}
- ldr r0, =gUnknown_085507CC
- movs r1, 0
- movs r2, 0
- movs r3, 0x52
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _080B46C6
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x2E
- movs r2, 0
- bl sub_80B46D8
- ldrb r1, [r4, 0x5]
- movs r0, 0xF
- ands r0, r1
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r4, 0x5]
-_080B46C6:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80B4690
-
- thumb_func_start sub_80B46D8
-@ void sub_80B46D8(struct obj *object, s16 a2, u8 a3)
-sub_80B46D8: @ 80B46D8
- push {r4,lr}
- lsls r2, 24
- lsrs r2, 24
- ldrb r4, [r0, 0x5]
- movs r3, 0xD
- negs r3, r3
- ands r3, r4
- movs r4, 0x4
- orrs r3, r4
- strb r3, [r0, 0x5]
- movs r3, 0x3E
- adds r3, r0
- mov r12, r3
- ldrb r3, [r3]
- movs r4, 0x2
- orrs r3, r4
- mov r4, r12
- strb r3, [r4]
- ldr r4, =gFieldEffectSpawnParams
- ldr r3, [r4]
- strh r3, [r0, 0x2E]
- ldr r3, [r4, 0x4]
- strh r3, [r0, 0x30]
- ldr r3, [r4, 0x8]
- strh r3, [r0, 0x32]
- ldr r3, =0x0000fffb
- strh r3, [r0, 0x34]
- strh r1, [r0, 0x3C]
- adds r1, r2, 0
- bl StartSpriteAnim
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B46D8
-
- thumb_func_start objc_exclamation_mark_probably
-objc_exclamation_mark_probably: @ 80B4724
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r4, 0x30]
- lsls r1, 24
- lsrs r1, 24
- ldrh r2, [r4, 0x32]
- lsls r2, 24
- lsrs r2, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _080B4756
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080B4764
-_080B4756:
- ldrh r1, [r4, 0x3C]
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl FieldEffectStop
- b _080B47B2
-_080B4764:
- ldr r2, =gMapObjects
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, =gSprites
- adds r1, r0
- ldrh r3, [r4, 0x34]
- ldrh r0, [r4, 0x36]
- adds r2, r3, r0
- strh r2, [r4, 0x36]
- ldrh r0, [r1, 0x20]
- strh r0, [r4, 0x20]
- ldrh r0, [r1, 0x22]
- subs r0, 0x10
- strh r0, [r4, 0x22]
- ldrh r0, [r1, 0x24]
- strh r0, [r4, 0x24]
- ldrh r0, [r1, 0x26]
- adds r0, r2
- strh r0, [r4, 0x26]
- lsls r2, 16
- asrs r2, 16
- cmp r2, 0
- beq _080B47B0
- adds r0, r3, 0x1
- strh r0, [r4, 0x34]
- b _080B47B2
- .pool
-_080B47B0:
- strh r2, [r4, 0x34]
-_080B47B2:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end objc_exclamation_mark_probably
-
- thumb_func_start sub_80B47BC
-sub_80B47BC: @ 80B47BC
- push {lr}
- ldr r0, =gUnknown_02038BFC
- ldrb r0, [r0]
- cmp r0, 0
- beq _080B47D4
- ldr r0, =gUnknown_03006090
- ldrb r0, [r0, 0xC]
- b _080B47D8
- .pool
-_080B47D4:
- ldr r0, =gUnknown_03006090
- ldrb r0, [r0]
-_080B47D8:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80B47BC
-
- thumb_func_start sub_80B47E0
-sub_80B47E0: @ 80B47E0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _080B47EE
- movs r0, 0
- b _080B4800
-_080B47EE:
- cmp r0, 0
- beq _080B47FC
- ldr r0, =gUnknown_03006090
- ldrb r0, [r0, 0xC]
- b _080B4800
- .pool
-_080B47FC:
- ldr r0, =gUnknown_03006090
- ldrb r0, [r0]
-_080B4800:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80B47E0
-
- thumb_func_start sub_80B4808
-sub_80B4808: @ 80B4808
- push {lr}
- ldr r0, =gUnknown_030060AC
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080B4870
- ldr r2, =gUnknown_03006090
- ldr r0, =gUnknown_03006080
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- ldrb r0, [r0, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl GetOppositeDirection
- lsls r0, 24
- lsrs r0, 24
- bl GetFaceDirectionAnimId
- ldr r3, =gUnknown_03006084
- strb r0, [r3]
- movs r0, 0xFE
- strb r0, [r3, 0x1]
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r0, 0xFF
- bl exec_movement
- b _080B489E
- .pool
-_080B4870:
- ldr r0, =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- ldrb r0, [r0, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl GetFaceDirectionAnimId
- ldr r3, =gUnknown_03006084
- strb r0, [r3]
- movs r0, 0xFE
- strb r0, [r3, 0x1]
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r0, 0xFF
- bl exec_movement
-_080B489E:
- movs r0, 0xFF
- bl sub_809BE48
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B4808
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/fldeff_groundshake.s b/asm/fldeff_groundshake.s
index cb0d2e2d8..81d92430e 100755
--- a/asm/fldeff_groundshake.s
+++ b/asm/fldeff_groundshake.s
@@ -161,7 +161,7 @@ sub_81BE79C: @ 81BE79C
beq _081BE7B8
movs r0, 0xA7
lsls r0, 1
- bl FlagReset
+ bl FlagClear
b _081BE7EE
.pool
_081BE7B8:
@@ -188,7 +188,7 @@ _081BE7D4:
_081BE7E6:
movs r0, 0xA7
lsls r0, 1
- bl FlagReset
+ bl FlagClear
_081BE7EE:
pop {r4}
pop {r0}
diff --git a/asm/fldeff_strength.s b/asm/fldeff_strength.s
index 98764625e..947517ed5 100644
--- a/asm/fldeff_strength.s
+++ b/asm/fldeff_strength.s
@@ -40,7 +40,7 @@ _08145DF2:
sub_8145E0C: @ 8145E0C
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -66,7 +66,7 @@ sub_8145E2C: @ 8145E2C
lsrs r0, r2, 16
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
- ldr r0, =gFieldEffectSpawnParams
+ ldr r0, =gFieldEffectArguments
ldr r1, [r0]
movs r0, 0x64
muls r0, r1
diff --git a/asm/fldeff_sweetscent.s b/asm/fldeff_sweetscent.s
index 5c83b455d..ea7b2653a 100644
--- a/asm/fldeff_sweetscent.s
+++ b/asm/fldeff_sweetscent.s
@@ -24,7 +24,7 @@ hm2_sweet_scent: @ 8159F10
movs r0, 0x33
bl FieldEffectStart
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
diff --git a/asm/fldeff_teleport.s b/asm/fldeff_teleport.s
index e4f4bce42..d77e29dd2 100644
--- a/asm/fldeff_teleport.s
+++ b/asm/fldeff_teleport.s
@@ -39,7 +39,7 @@ hm_teleport_run_dp02scr: @ 817C8FC
movs r0, 0x3F
bl FieldEffectStart
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
diff --git a/asm/international_string_util.s b/asm/international_string_util.s
index 7c52fc41a..817a1d5e4 100755
--- a/asm/international_string_util.s
+++ b/asm/international_string_util.s
@@ -5,127 +5,6 @@
.text
- thumb_func_start GetStringCenterAlignXOffset
-@ s32 GetStringCenterAlignXOffset(u8 fontId, u8 *str, s32 totalWidth)
-GetStringCenterAlignXOffset: @ 81DB35C
- push {lr}
- movs r3, 0
- bl GetStringCenterAlignXOffsetWithLetterSpacing
- pop {r1}
- bx r1
- thumb_func_end GetStringCenterAlignXOffset
-
- thumb_func_start GetStringRightAlignXOffset
-@ s32 GetStringRightAlignXOffset(u8 fontId, u8 *str, s32 totalWidth)
-GetStringRightAlignXOffset: @ 81DB368
- push {lr}
- movs r3, 0
- bl GetStringWidthDifference
- pop {r1}
- bx r1
- thumb_func_end GetStringRightAlignXOffset
-
- thumb_func_start GetStringCenterAlignXOffsetWithLetterSpacing
-@ s32 GetStringCenterAlignXOffsetWithLetterSpacing(u8 fontId, u8 *str, s32 totalWidth, s16 letterSpacing)
-GetStringCenterAlignXOffsetWithLetterSpacing: @ 81DB374
- push {lr}
- bl GetStringWidthDifference
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- pop {r1}
- bx r1
- thumb_func_end GetStringCenterAlignXOffsetWithLetterSpacing
-
- thumb_func_start GetStringWidthDifference
-@ s32 GetStringWidthDifference(u8 fontId, u8 *str, s32 totalWidth, s16 letterSpacing)
-GetStringWidthDifference: @ 81DB384
- push {r4,lr}
- adds r4, r2, 0
- adds r2, r3, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- asrs r2, 16
- bl GetStringWidth
- cmp r4, r0
- bgt _081DB39E
- movs r0, 0
- b _081DB3A0
-_081DB39E:
- subs r0, r4, r0
-_081DB3A0:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetStringWidthDifference
-
- thumb_func_start GetMaxWidthInMenuTable
-GetMaxWidthInMenuTable: @ 81DB3A8
- push {r4-r6,lr}
- movs r6, 0
- cmp r6, r1
- bge _081DB3CC
- adds r5, r0, 0
- adds r4, r1, 0
-_081DB3B4:
- ldr r1, [r5]
- movs r0, 0x1
- movs r2, 0
- bl GetStringWidth
- cmp r0, r6
- ble _081DB3C4
- adds r6, r0, 0
-_081DB3C4:
- adds r5, 0x8
- subs r4, 0x1
- cmp r4, 0
- bne _081DB3B4
-_081DB3CC:
- adds r0, r6, 0
- bl convert_pixel_width_to_tile_width
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GetMaxWidthInMenuTable
-
- thumb_func_start sub_81DB3D8
-sub_81DB3D8: @ 81DB3D8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r0
- adds r7, r1, 0
- adds r5, r2, 0
- movs r6, 0
- movs r4, 0
- cmp r6, r5
- bge _081DB40A
-_081DB3EC:
- adds r0, r7, r4
- ldrb r0, [r0]
- lsls r0, 3
- add r0, r8
- ldr r1, [r0]
- movs r0, 0x1
- movs r2, 0
- bl GetStringWidth
- cmp r0, r6
- ble _081DB404
- adds r6, r0, 0
-_081DB404:
- adds r4, 0x1
- cmp r4, r5
- blt _081DB3EC
-_081DB40A:
- adds r0, r6, 0
- bl convert_pixel_width_to_tile_width
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_81DB3D8
thumb_func_start sub_81DB41C
sub_81DB41C: @ 81DB41C
@@ -389,8 +268,8 @@ _081DB5E4:
bx r0
thumb_func_end sub_81DB5AC
- thumb_func_start sub_81DB5E8
-sub_81DB5E8: @ 81DB5E8
+ thumb_func_start TVShowConvertInternationalString
+TVShowConvertInternationalString: @ 81DB5E8
push {r4,r5,lr}
adds r5, r0, 0
adds r4, r2, 0
@@ -403,7 +282,7 @@ sub_81DB5E8: @ 81DB5E8
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_81DB5E8
+ thumb_func_end TVShowConvertInternationalString
thumb_func_start sub_81DB604
sub_81DB604: @ 81DB604
diff --git a/asm/intro.s b/asm/intro.s
index efd52e7fd..32b52ed06 100644
--- a/asm/intro.s
+++ b/asm/intro.s
@@ -376,11 +376,11 @@ task_intro_1: @ 816CF18
movs r0, 0x12
movs r1, 0x28
bl SetGpuReg
- ldr r0, =gUnknown_085E13B4
+ ldr r0, =gIntro1BGLeavesGfx
movs r1, 0xC0
lsls r1, 19
bl LZ77UnCompVram
- ldr r0, =gUnknown_085E07C4
+ ldr r0, =gIntro1BG0_Tilemap
ldr r1, =0x06008000
bl LZ77UnCompVram
ldr r1, =0x06008800
@@ -393,7 +393,7 @@ task_intro_1: @ 816CF18
ldr r5, =0x81000400
str r5, [r4, 0x8]
ldr r0, [r4, 0x8]
- ldr r0, =gUnknown_085E0B78
+ ldr r0, =gIntro1BG1_Tilemap
ldr r1, =0x06009000
bl LZ77UnCompVram
ldr r1, =0x06009800
@@ -403,7 +403,7 @@ task_intro_1: @ 816CF18
str r1, [r4, 0x4]
str r5, [r4, 0x8]
ldr r0, [r4, 0x8]
- ldr r0, =gUnknown_085E0EAC
+ ldr r0, =gIntro1BG2_Tilemap
ldr r1, =0x0600a000
bl LZ77UnCompVram
ldr r1, =0x0600a800
@@ -413,7 +413,7 @@ task_intro_1: @ 816CF18
str r1, [r4, 0x4]
str r5, [r4, 0x8]
ldr r0, [r4, 0x8]
- ldr r0, =gUnknown_085E119C
+ ldr r0, =gIntro1BG3_Tilemap
ldr r1, =0x0600b000
bl LZ77UnCompVram
ldr r1, =0x0600b800
@@ -423,7 +423,7 @@ task_intro_1: @ 816CF18
str r1, [r4, 0x4]
str r5, [r4, 0x8]
ldr r0, [r4, 0x8]
- ldr r0, =gUnknown_085E05C4
+ ldr r0, =gIntro1BGPals
movs r5, 0x80
lsls r5, 2
movs r1, 0
@@ -1779,14 +1779,14 @@ task_intro_10: @ 816DBAC
lsls r5, 24
lsrs r5, 24
bl intro_reset_and_hide_bgs
- ldr r0, =gUnknown_085E3854
+ ldr r0, =gIntro3Pokeball_Gfx
movs r1, 0xC0
lsls r1, 19
bl LZ77UnCompVram
- ldr r0, =gUnknown_085E3724
+ ldr r0, =gIntro3Pokeball_Tilemap
ldr r1, =0x06004000
bl LZ77UnCompVram
- ldr r0, =gUnknown_085E3524
+ ldr r0, =gIntro3PokeballPal
movs r2, 0x80
lsls r2, 2
movs r1, 0
@@ -1958,9 +1958,9 @@ task_intro_13: @ 816DD28
ldr r0, =gUnknown_08D8A818
ldr r1, =0x0600e000
bl LZDecompressVram
- ldr r0, =gUnknown_08524D14
+ ldr r0, =gBattleAnimPicTable + 0x1D0
bl LoadCompressedObjectPicUsingHeap
- ldr r0, =gUnknown_0852561C
+ ldr r0, =gBattleAnimPaletteTable + 0x1D0
bl LoadCompressedObjectPaletteUsingHeap
ldr r0, =gUnknown_08D85CD0
ldr r1, =gPlttBufferUnfaded
diff --git a/asm/item.s b/asm/item.s
index 97582e190..89177c5d4 100644
--- a/asm/item.s
+++ b/asm/item.s
@@ -676,8 +676,8 @@ _080D6D04:
.pool
thumb_func_end sub_80D6CE4
- thumb_func_start sub_80D6D1C
-sub_80D6D1C: @ 80D6D1C
+ thumb_func_start CheckPCHasItem
+CheckPCHasItem: @ 80D6D1C
push {r4-r6,lr}
lsls r0, 16
lsrs r6, r0, 16
@@ -717,10 +717,10 @@ _080D6D68:
pop {r4-r6}
pop {r1}
bx r1
- thumb_func_end sub_80D6D1C
+ thumb_func_end CheckPCHasItem
- thumb_func_start sub_80D6D70
-sub_80D6D70: @ 80D6D70
+ thumb_func_start AddPCItem
+AddPCItem: @ 80D6D70
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -819,7 +819,7 @@ _080D6E3A:
pop {r1}
bx r1
.pool
- thumb_func_end sub_80D6D70
+ thumb_func_end AddPCItem
thumb_func_start sub_80D6E48
sub_80D6E48: @ 80D6E48
diff --git a/asm/item_menu.s b/asm/item_menu.s
index abac409bc..1e4dfca49 100755
--- a/asm/item_menu.s
+++ b/asm/item_menu.s
@@ -5388,7 +5388,7 @@ _081ADB6C:
ldrh r0, [r4]
mov r3, r8
ldrh r1, [r3, 0x10]
- bl sub_80D6D70
+ bl AddPCItem
lsls r0, 24
lsrs r6, r0, 24
cmp r6, 0x1
@@ -6237,7 +6237,7 @@ bag_menu_AddMoney_window: @ 81AE268
adds r0, r4, 0
movs r1, 0x1
movs r2, 0xE
- bl set_window_border_style_and_print_money_box
+ bl PrintMoneyAmountInMoneyBoxWithBorder
movs r0, 0x13
movs r1, 0xB
bl AddMoneyLabelObject
diff --git a/asm/item_use.s b/asm/item_use.s
index 200b0e62f..d3c724166 100644
--- a/asm/item_use.s
+++ b/asm/item_use.s
@@ -464,7 +464,7 @@ _080FD3EC:
_080FD40C:
lsls r0, r6, 24
lsrs r0, 24
- bl sub_8089510
+ bl MetatileBehavior_8089510
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2215,7 +2215,7 @@ ItemUseOutOfBattle_BlackWhiteFlute: @ 80FE234
ldr r0, =0x000008ad
bl FlagSet
ldr r0, =0x000008ae
- bl FlagReset
+ bl FlagClear
ldr r0, =gStringVar4
ldr r1, =gText_UsedVar2WildLured
bl StringExpandPlaceholders
@@ -2225,7 +2225,7 @@ _080FE278:
ldr r0, =0x000008ae
bl FlagSet
ldr r0, =0x000008ad
- bl FlagReset
+ bl FlagClear
ldr r0, =gStringVar4
ldr r1, =gText_UsedVar2WildRepelled
bl StringExpandPlaceholders
diff --git a/asm/librfu.s b/asm/librfu.s
index d8ca7538c..5fc1b0d6f 100644
--- a/asm/librfu.s
+++ b/asm/librfu.s
@@ -4,2251 +4,6 @@
.text
- thumb_func_start STWI_init_all
-STWI_init_all: @ 82E2A18
- push {r4,lr}
- adds r3, r0, 0
- lsls r2, 24
- lsrs r2, 24
- cmp r2, 0x1
- bne _082E2A54
- adds r2, r3, 0
- adds r2, 0xE8
- str r2, [r1]
- ldr r1, _082E2A40
- ldr r0, _082E2A44
- str r0, [r1]
- str r2, [r1, 0x4]
- ldr r0, _082E2A48
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- ldr r1, _082E2A4C
- ldr r2, _082E2A50
- adds r0, r3, r2
- b _082E2A5E
- .align 2, 0
-_082E2A40: .4byte 0x040000d4
-_082E2A44: .4byte IntrSIO32
-_082E2A48: .4byte 0x800004b0
-_082E2A4C: .4byte gUnknown_03007868
-_082E2A50: .4byte 0x00000a48
-_082E2A54:
- ldr r0, _082E2AD8
- str r0, [r1]
- ldr r1, _082E2ADC
- adds r0, r3, 0
- adds r0, 0xE8
-_082E2A5E:
- str r0, [r1]
- adds r2, r1, 0
- ldr r1, [r2]
- str r3, [r1, 0x28]
- adds r0, r3, 0
- adds r0, 0x74
- str r0, [r1, 0x24]
- ldrb r0, [r1, 0x14]
- movs r4, 0
- movs r0, 0x1
- strb r0, [r1, 0x14]
- ldr r0, [r2]
- str r4, [r0]
- strb r4, [r0, 0x4]
- ldr r0, [r2]
- strb r4, [r0, 0x5]
- ldr r0, [r2]
- strb r4, [r0, 0x7]
- ldr r0, [r2]
- strb r4, [r0, 0x8]
- ldr r0, [r2]
- strb r4, [r0, 0x9]
- ldr r0, [r2]
- str r4, [r0, 0xC]
- ldrb r1, [r0, 0x10]
- strb r4, [r0, 0x10]
- ldr r0, [r2]
- ldrh r1, [r0, 0x12]
- movs r1, 0
- strh r4, [r0, 0x12]
- strb r1, [r0, 0x15]
- ldr r0, [r2]
- adds r0, 0x2C
- ldrb r2, [r0]
- strb r1, [r0]
- ldr r1, _082E2AE0
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- subs r1, 0xC
- ldr r2, _082E2AE4
- adds r0, r2, 0
- strh r0, [r1]
- bl STWI_init_Callback_M
- bl STWI_init_Callback_S
- ldr r3, _082E2AE8
- ldrh r2, [r3]
- strh r4, [r3]
- ldr r4, _082E2AEC
- ldrh r0, [r4]
- movs r1, 0x80
- orrs r0, r1
- strh r0, [r4]
- strh r2, [r3]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_082E2AD8: .4byte IntrSIO32
-_082E2ADC: .4byte gUnknown_03007868
-_082E2AE0: .4byte 0x04000134
-_082E2AE4: .4byte 0x00005003
-_082E2AE8: .4byte 0x04000208
-_082E2AEC: .4byte 0x04000200
- thumb_func_end STWI_init_all
-
- thumb_func_start STWI_init_timer
-STWI_init_timer: @ 82E2AF0
- push {r4,r5,lr}
- ldr r2, _082E2B1C
- str r2, [r0]
- ldr r5, _082E2B20
- ldr r0, [r5]
- movs r4, 0
- strb r1, [r0, 0xA]
- ldr r3, _082E2B24
- ldrh r2, [r3]
- strh r4, [r3]
- ldr r4, _082E2B28
- ldr r1, [r5]
- movs r0, 0x8
- ldrb r1, [r1, 0xA]
- lsls r0, r1
- ldrh r1, [r4]
- orrs r0, r1
- strh r0, [r4]
- strh r2, [r3]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_082E2B1C: .4byte STWI_intr_timer
-_082E2B20: .4byte gUnknown_03007868
-_082E2B24: .4byte 0x04000208
-_082E2B28: .4byte 0x04000200
- thumb_func_end STWI_init_timer
-
- thumb_func_start AgbRFU_SoftReset
-AgbRFU_SoftReset: @ 82E2B2C
- push {r4,r5,lr}
- ldr r5, _082E2BC4
- movs r1, 0x80
- lsls r1, 8
- adds r0, r1, 0
- strh r0, [r5]
- ldr r2, _082E2BC8
- adds r0, r2, 0
- strh r0, [r5]
- ldr r1, _082E2BCC
- ldr r0, [r1]
- ldrb r0, [r0, 0xA]
- lsls r0, 2
- ldr r3, _082E2BD0
- adds r2, r0, r3
- ldr r4, _082E2BD4
- adds r3, r0, r4
- movs r0, 0
- strh r0, [r3]
- strh r0, [r2]
- movs r0, 0x83
- strh r0, [r3]
- ldrh r0, [r2]
- adds r4, r1, 0
- cmp r0, 0x11
- bhi _082E2B6C
- ldr r0, _082E2BD8
- adds r1, r0, 0
-_082E2B64:
- strh r1, [r5]
- ldrh r0, [r2]
- cmp r0, 0x11
- bls _082E2B64
-_082E2B6C:
- movs r0, 0x3
- strh r0, [r3]
- ldr r1, _082E2BC4
- ldr r2, _082E2BC8
- adds r0, r2, 0
- strh r0, [r1]
- subs r1, 0xC
- ldr r3, _082E2BDC
- adds r0, r3, 0
- strh r0, [r1]
- ldr r0, [r4]
- movs r2, 0
- str r2, [r0]
- strb r2, [r0, 0x4]
- ldr r0, [r4]
- strb r2, [r0, 0x5]
- ldr r0, [r4]
- strb r2, [r0, 0x6]
- ldr r0, [r4]
- strb r2, [r0, 0x7]
- ldr r0, [r4]
- strb r2, [r0, 0x8]
- ldr r0, [r4]
- strb r2, [r0, 0x9]
- ldr r0, [r4]
- str r2, [r0, 0xC]
- ldrb r1, [r0, 0x10]
- strb r2, [r0, 0x10]
- ldr r1, [r4]
- ldrh r0, [r1, 0x12]
- movs r3, 0
- strh r2, [r1, 0x12]
- ldrb r0, [r1, 0x14]
- movs r0, 0x1
- strb r0, [r1, 0x14]
- ldr r0, [r4]
- strb r3, [r0, 0x15]
- ldr r0, [r4]
- adds r0, 0x2C
- ldrb r1, [r0]
- strb r3, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_082E2BC4: .4byte 0x04000134
-_082E2BC8: .4byte 0x000080a0
-_082E2BCC: .4byte gUnknown_03007868
-_082E2BD0: .4byte 0x04000100
-_082E2BD4: .4byte 0x04000102
-_082E2BD8: .4byte 0x000080a2
-_082E2BDC: .4byte 0x00005003
- thumb_func_end AgbRFU_SoftReset
-
- thumb_func_start STWI_set_MS_mode
-STWI_set_MS_mode: @ 82E2BE0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _082E2BF0
- ldr r1, [r1]
- ldrb r2, [r1, 0x14]
- strb r0, [r1, 0x14]
- bx lr
- .align 2, 0
-_082E2BF0: .4byte gUnknown_03007868
- thumb_func_end STWI_set_MS_mode
-
- thumb_func_start STWI_read_status
-STWI_read_status: @ 82E2BF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0x1
- beq _082E2C20
- cmp r0, 0x1
- bgt _082E2C0A
- cmp r0, 0
- beq _082E2C14
- b _082E2C48
-_082E2C0A:
- cmp r1, 0x2
- beq _082E2C2C
- cmp r1, 0x3
- beq _082E2C3C
- b _082E2C48
-_082E2C14:
- ldr r0, _082E2C1C
- ldr r0, [r0]
- ldrh r0, [r0, 0x12]
- b _082E2C4A
- .align 2, 0
-_082E2C1C: .4byte gUnknown_03007868
-_082E2C20:
- ldr r0, _082E2C28
- ldr r0, [r0]
- ldrb r0, [r0, 0x14]
- b _082E2C4A
- .align 2, 0
-_082E2C28: .4byte gUnknown_03007868
-_082E2C2C:
- ldr r0, _082E2C38
- ldr r0, [r0]
- ldr r0, [r0]
- lsls r0, 16
- lsrs r0, 16
- b _082E2C4A
- .align 2, 0
-_082E2C38: .4byte gUnknown_03007868
-_082E2C3C:
- ldr r0, _082E2C44
- ldr r0, [r0]
- ldrb r0, [r0, 0x6]
- b _082E2C4A
- .align 2, 0
-_082E2C44: .4byte gUnknown_03007868
-_082E2C48:
- ldr r0, _082E2C50
-_082E2C4A:
- pop {r1}
- bx r1
- .align 2, 0
-_082E2C50: .4byte 0x0000ffff
- thumb_func_end STWI_read_status
-
- thumb_func_start STWI_init_Callback_M
-STWI_init_Callback_M: @ 82E2C54
- push {lr}
- movs r0, 0
- bl STWI_set_Callback_M
- pop {r0}
- bx r0
- thumb_func_end STWI_init_Callback_M
-
- thumb_func_start STWI_init_Callback_S
-STWI_init_Callback_S: @ 82E2C60
- push {lr}
- movs r0, 0
- bl STWI_set_Callback_S
- pop {r0}
- bx r0
- thumb_func_end STWI_init_Callback_S
-
- thumb_func_start STWI_set_Callback_M
-STWI_set_Callback_M: @ 82E2C6C
- ldr r1, _082E2C74
- ldr r1, [r1]
- str r0, [r1, 0x18]
- bx lr
- .align 2, 0
-_082E2C74: .4byte gUnknown_03007868
- thumb_func_end STWI_set_Callback_M
-
- thumb_func_start STWI_set_Callback_S
-STWI_set_Callback_S: @ 82E2C78
- ldr r1, _082E2C80
- ldr r1, [r1]
- str r0, [r1, 0x1C]
- bx lr
- .align 2, 0
-_082E2C80: .4byte gUnknown_03007868
- thumb_func_end STWI_set_Callback_S
-
- thumb_func_start STWI_set_Callback_ID
-STWI_set_Callback_ID: @ 82E2C84
- ldr r1, _082E2C8C
- ldr r1, [r1]
- str r0, [r1, 0x20]
- bx lr
- .align 2, 0
-_082E2C8C: .4byte gUnknown_03007868
- thumb_func_end STWI_set_Callback_ID
-
- thumb_func_start STWI_poll_CommandEnd
-STWI_poll_CommandEnd: @ 82E2C90
- push {lr}
- ldr r0, _082E2CB4
- ldr r1, [r0]
- adds r2, r1, 0
- adds r2, 0x2C
- ldrb r1, [r2]
- adds r3, r0, 0
- cmp r1, 0x1
- bne _082E2CAA
- adds r1, r2, 0
-_082E2CA4:
- ldrb r0, [r1]
- cmp r0, 0x1
- beq _082E2CA4
-_082E2CAA:
- ldr r0, [r3]
- ldrh r0, [r0, 0x12]
- pop {r1}
- bx r1
- .align 2, 0
-_082E2CB4: .4byte gUnknown_03007868
- thumb_func_end STWI_poll_CommandEnd
-
- thumb_func_start STWI_send_ResetREQ
-STWI_send_ResetREQ: @ 82E2CB8
- push {lr}
- movs r0, 0x10
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2CD2
- ldr r0, _082E2CD8
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2CD2:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2CD8: .4byte gUnknown_03007868
- thumb_func_end STWI_send_ResetREQ
-
- thumb_func_start STWI_send_LinkStatusREQ
-STWI_send_LinkStatusREQ: @ 82E2CDC
- push {lr}
- movs r0, 0x11
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2CF6
- ldr r0, _082E2CFC
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2CF6:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2CFC: .4byte gUnknown_03007868
- thumb_func_end STWI_send_LinkStatusREQ
-
- thumb_func_start STWI_send_VersionStatusREQ
-STWI_send_VersionStatusREQ: @ 82E2D00
- push {lr}
- movs r0, 0x12
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2D1A
- ldr r0, _082E2D20
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2D1A:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2D20: .4byte gUnknown_03007868
- thumb_func_end STWI_send_VersionStatusREQ
-
- thumb_func_start STWI_send_SystemStatusREQ
-STWI_send_SystemStatusREQ: @ 82E2D24
- push {lr}
- movs r0, 0x13
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2D3E
- ldr r0, _082E2D44
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2D3E:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2D44: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SystemStatusREQ
-
- thumb_func_start STWI_send_SlotStatusREQ
-STWI_send_SlotStatusREQ: @ 82E2D48
- push {lr}
- movs r0, 0x14
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2D62
- ldr r0, _082E2D68
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2D62:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2D68: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SlotStatusREQ
-
- thumb_func_start STWI_send_ConfigStatusREQ
-STWI_send_ConfigStatusREQ: @ 82E2D6C
- push {lr}
- movs r0, 0x15
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2D86
- ldr r0, _082E2D8C
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2D86:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2D8C: .4byte gUnknown_03007868
- thumb_func_end STWI_send_ConfigStatusREQ
-
- thumb_func_start STWI_send_GameConfigREQ
-STWI_send_GameConfigREQ: @ 82E2D90
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- movs r0, 0x16
- bl STWI_init
- lsls r0, 16
- cmp r0, 0
- bne _082E2DDC
- ldr r2, _082E2DE4
- ldr r1, [r2]
- movs r0, 0x6
- strb r0, [r1, 0x4]
- ldr r0, [r2]
- ldr r1, [r0, 0x24]
- adds r1, 0x4
- ldrh r0, [r4]
- strh r0, [r1]
- adds r1, 0x2
- adds r4, 0x2
- movs r2, 0xD
-_082E2DBA:
- ldrb r0, [r4]
- strb r0, [r1]
- adds r1, 0x1
- adds r4, 0x1
- subs r2, 0x1
- cmp r2, 0
- bge _082E2DBA
- movs r2, 0x7
-_082E2DCA:
- ldrb r0, [r5]
- strb r0, [r1]
- adds r1, 0x1
- adds r5, 0x1
- subs r2, 0x1
- cmp r2, 0
- bge _082E2DCA
- bl STWI_start_Command
-_082E2DDC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_082E2DE4: .4byte gUnknown_03007868
- thumb_func_end STWI_send_GameConfigREQ
-
- thumb_func_start STWI_send_SystemConfigREQ
-STWI_send_SystemConfigREQ: @ 82E2DE8
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r4, r2, 24
- movs r0, 0x17
- bl STWI_init
- lsls r0, 16
- cmp r0, 0
- bne _082E2E1E
- ldr r2, _082E2E24
- ldr r1, [r2]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- ldr r0, [r2]
- ldr r0, [r0, 0x24]
- adds r0, 0x4
- strb r4, [r0]
- adds r0, 0x1
- strb r5, [r0]
- adds r0, 0x1
- strh r6, [r0]
- bl STWI_start_Command
-_082E2E1E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_082E2E24: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SystemConfigREQ
-
- thumb_func_start STWI_send_SC_StartREQ
-STWI_send_SC_StartREQ: @ 82E2E28
- push {lr}
- movs r0, 0x19
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2E42
- ldr r0, _082E2E48
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2E42:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2E48: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SC_StartREQ
-
- thumb_func_start STWI_send_SC_PollingREQ
-STWI_send_SC_PollingREQ: @ 82E2E4C
- push {lr}
- movs r0, 0x1A
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2E66
- ldr r0, _082E2E6C
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2E66:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2E6C: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SC_PollingREQ
-
- thumb_func_start STWI_send_SC_EndREQ
-STWI_send_SC_EndREQ: @ 82E2E70
- push {lr}
- movs r0, 0x1B
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2E8A
- ldr r0, _082E2E90
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2E8A:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2E90: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SC_EndREQ
-
- thumb_func_start STWI_send_SP_StartREQ
-STWI_send_SP_StartREQ: @ 82E2E94
- push {lr}
- movs r0, 0x1C
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2EAE
- ldr r0, _082E2EB4
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2EAE:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2EB4: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SP_StartREQ
-
- thumb_func_start STWI_send_SP_PollingREQ
-STWI_send_SP_PollingREQ: @ 82E2EB8
- push {lr}
- movs r0, 0x1D
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2ED2
- ldr r0, _082E2ED8
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2ED2:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2ED8: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SP_PollingREQ
-
- thumb_func_start STWI_send_SP_EndREQ
-STWI_send_SP_EndREQ: @ 82E2EDC
- push {lr}
- movs r0, 0x1E
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2EF6
- ldr r0, _082E2EFC
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2EF6:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2EFC: .4byte gUnknown_03007868
- thumb_func_end STWI_send_SP_EndREQ
-
- thumb_func_start STWI_send_CP_StartREQ
-STWI_send_CP_StartREQ: @ 82E2F00
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- movs r0, 0x1F
- bl STWI_init
- lsls r0, 16
- cmp r0, 0
- bne _082E2F24
- ldr r2, _082E2F2C
- ldr r1, [r2]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- ldr r0, [r2]
- ldr r0, [r0, 0x24]
- str r4, [r0, 0x4]
- bl STWI_start_Command
-_082E2F24:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_082E2F2C: .4byte gUnknown_03007868
- thumb_func_end STWI_send_CP_StartREQ
-
- thumb_func_start STWI_send_CP_PollingREQ
-STWI_send_CP_PollingREQ: @ 82E2F30
- push {lr}
- movs r0, 0x20
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2F4A
- ldr r0, _082E2F50
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2F4A:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2F50: .4byte gUnknown_03007868
- thumb_func_end STWI_send_CP_PollingREQ
-
- thumb_func_start STWI_send_CP_EndREQ
-STWI_send_CP_EndREQ: @ 82E2F54
- push {lr}
- movs r0, 0x21
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E2F6E
- ldr r0, _082E2F74
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E2F6E:
- pop {r0}
- bx r0
- .align 2, 0
-_082E2F74: .4byte gUnknown_03007868
- thumb_func_end STWI_send_CP_EndREQ
-
- thumb_func_start STWI_send_DataTxREQ
-STWI_send_DataTxREQ: @ 82E2F78
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r4, r1, 24
- lsrs r5, r4, 24
- movs r0, 0x24
- bl STWI_init
- lsls r0, 16
- cmp r0, 0
- bne _082E2FB6
- lsrs r2, r4, 26
- movs r0, 0x3
- ands r0, r5
- cmp r0, 0
- beq _082E2F98
- adds r2, 0x1
-_082E2F98:
- ldr r1, _082E2FBC
- ldr r0, [r1]
- strb r2, [r0, 0x4]
- ldr r0, [r1]
- ldr r1, [r0, 0x24]
- adds r1, 0x4
- ldrb r2, [r0, 0x4]
- movs r0, 0x80
- lsls r0, 19
- orrs r2, r0
- adds r0, r6, 0
- bl CpuSet
- bl STWI_start_Command
-_082E2FB6:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_082E2FBC: .4byte gUnknown_03007868
- thumb_func_end STWI_send_DataTxREQ
-
- thumb_func_start STWI_send_DataTxAndChangeREQ
-STWI_send_DataTxAndChangeREQ: @ 82E2FC0
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r4, r1, 24
- lsrs r5, r4, 24
- movs r0, 0x25
- bl STWI_init
- lsls r0, 16
- cmp r0, 0
- bne _082E2FFE
- lsrs r2, r4, 26
- movs r0, 0x3
- ands r0, r5
- cmp r0, 0
- beq _082E2FE0
- adds r2, 0x1
-_082E2FE0:
- ldr r1, _082E3004
- ldr r0, [r1]
- strb r2, [r0, 0x4]
- ldr r0, [r1]
- ldr r1, [r0, 0x24]
- adds r1, 0x4
- ldrb r2, [r0, 0x4]
- movs r0, 0x80
- lsls r0, 19
- orrs r2, r0
- adds r0, r6, 0
- bl CpuSet
- bl STWI_start_Command
-_082E2FFE:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_082E3004: .4byte gUnknown_03007868
- thumb_func_end STWI_send_DataTxAndChangeREQ
-
- thumb_func_start STWI_send_DataRxREQ
-STWI_send_DataRxREQ: @ 82E3008
- push {lr}
- movs r0, 0x26
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E3022
- ldr r0, _082E3028
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E3022:
- pop {r0}
- bx r0
- .align 2, 0
-_082E3028: .4byte gUnknown_03007868
- thumb_func_end STWI_send_DataRxREQ
-
- thumb_func_start STWI_send_MS_ChangeREQ
-STWI_send_MS_ChangeREQ: @ 82E302C
- push {lr}
- movs r0, 0x27
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E3046
- ldr r0, _082E304C
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E3046:
- pop {r0}
- bx r0
- .align 2, 0
-_082E304C: .4byte gUnknown_03007868
- thumb_func_end STWI_send_MS_ChangeREQ
-
- thumb_func_start STWI_send_DataReadyAndChangeREQ
-STWI_send_DataReadyAndChangeREQ: @ 82E3050
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- movs r0, 0x28
- bl STWI_init
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- bne _082E3096
- cmp r4, 0
- bne _082E3078
- ldr r0, _082E3074
- ldr r0, [r0]
- strb r3, [r0, 0x4]
- b _082E3092
- .align 2, 0
-_082E3074: .4byte gUnknown_03007868
-_082E3078:
- ldr r2, _082E309C
- ldr r1, [r2]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- ldr r0, [r2]
- ldr r0, [r0, 0x24]
- adds r0, 0x4
- strb r5, [r0]
- adds r0, 0x1
- strb r3, [r0]
- adds r0, 0x1
- strb r3, [r0]
- strb r3, [r0, 0x1]
-_082E3092:
- bl STWI_start_Command
-_082E3096:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_082E309C: .4byte gUnknown_03007868
- thumb_func_end STWI_send_DataReadyAndChangeREQ
-
- thumb_func_start STWI_send_DisconnectedAndChangeREQ
-STWI_send_DisconnectedAndChangeREQ: @ 82E30A0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- movs r0, 0x29
- bl STWI_init
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- bne _082E30D6
- ldr r2, _082E30DC
- ldr r1, [r2]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- ldr r0, [r2]
- ldr r0, [r0, 0x24]
- adds r0, 0x4
- strb r4, [r0]
- adds r0, 0x1
- strb r5, [r0]
- adds r0, 0x1
- strb r3, [r0]
- strb r3, [r0, 0x1]
- bl STWI_start_Command
-_082E30D6:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_082E30DC: .4byte gUnknown_03007868
- thumb_func_end STWI_send_DisconnectedAndChangeREQ
-
- thumb_func_start STWI_send_ResumeRetransmitAndChangeREQ
-STWI_send_ResumeRetransmitAndChangeREQ: @ 82E30E0
- push {lr}
- movs r0, 0x37
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E30FA
- ldr r0, _082E3100
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E30FA:
- pop {r0}
- bx r0
- .align 2, 0
-_082E3100: .4byte gUnknown_03007868
- thumb_func_end STWI_send_ResumeRetransmitAndChangeREQ
-
- thumb_func_start STWI_send_DisconnectREQ
-STWI_send_DisconnectREQ: @ 82E3104
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x30
- bl STWI_init
- lsls r0, 16
- cmp r0, 0
- bne _082E3128
- ldr r2, _082E3130
- ldr r1, [r2]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- ldr r0, [r2]
- ldr r0, [r0, 0x24]
- str r4, [r0, 0x4]
- bl STWI_start_Command
-_082E3128:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_082E3130: .4byte gUnknown_03007868
- thumb_func_end STWI_send_DisconnectREQ
-
- thumb_func_start STWI_send_TestModeREQ
-STWI_send_TestModeREQ: @ 82E3134
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- movs r0, 0x31
- bl STWI_init
- lsls r0, 16
- cmp r0, 0
- bne _082E3160
- ldr r2, _082E3168
- ldr r1, [r2]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- ldr r0, [r2]
- ldr r1, [r0, 0x24]
- lsls r0, r4, 8
- orrs r0, r5
- str r0, [r1, 0x4]
- bl STWI_start_Command
-_082E3160:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_082E3168: .4byte gUnknown_03007868
- thumb_func_end STWI_send_TestModeREQ
-
- thumb_func_start STWI_send_CPR_StartREQ
-STWI_send_CPR_StartREQ: @ 82E316C
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 24
- lsrs r6, r2, 24
- movs r0, 0x32
- bl STWI_init
- lsls r0, 16
- cmp r0, 0
- bne _082E319E
- ldr r2, _082E31A4
- ldr r1, [r2]
- movs r0, 0x2
- strb r0, [r1, 0x4]
- lsls r0, r5, 16
- orrs r0, r4
- ldr r1, [r2]
- ldr r1, [r1, 0x24]
- str r0, [r1, 0x4]
- str r6, [r1, 0x8]
- bl STWI_start_Command
-_082E319E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_082E31A4: .4byte gUnknown_03007868
- thumb_func_end STWI_send_CPR_StartREQ
-
- thumb_func_start STWI_send_CPR_PollingREQ
-STWI_send_CPR_PollingREQ: @ 82E31A8
- push {lr}
- movs r0, 0x33
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E31C2
- ldr r0, _082E31C8
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E31C2:
- pop {r0}
- bx r0
- .align 2, 0
-_082E31C8: .4byte gUnknown_03007868
- thumb_func_end STWI_send_CPR_PollingREQ
-
- thumb_func_start STWI_send_CPR_EndREQ
-STWI_send_CPR_EndREQ: @ 82E31CC
- push {lr}
- movs r0, 0x34
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E31E6
- ldr r0, _082E31EC
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E31E6:
- pop {r0}
- bx r0
- .align 2, 0
-_082E31EC: .4byte gUnknown_03007868
- thumb_func_end STWI_send_CPR_EndREQ
-
- thumb_func_start STWI_send_StopModeREQ
-STWI_send_StopModeREQ: @ 82E31F0
- push {lr}
- movs r0, 0x3D
- bl STWI_init
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne _082E320A
- ldr r0, _082E3210
- ldr r0, [r0]
- strb r1, [r0, 0x4]
- bl STWI_start_Command
-_082E320A:
- pop {r0}
- bx r0
- .align 2, 0
-_082E3210: .4byte gUnknown_03007868
- thumb_func_end STWI_send_StopModeREQ
-
- thumb_func_start STWI_intr_timer
-STWI_intr_timer: @ 82E3214
- push {r4,lr}
- ldr r4, _082E322C
- ldr r1, [r4]
- ldr r0, [r1, 0xC]
- cmp r0, 0x2
- beq _082E323A
- cmp r0, 0x2
- bgt _082E3230
- cmp r0, 0x1
- beq _082E3248
- b _082E3270
- .align 2, 0
-_082E322C: .4byte gUnknown_03007868
-_082E3230:
- cmp r0, 0x3
- beq _082E3252
- cmp r0, 0x4
- beq _082E3248
- b _082E3270
-_082E323A:
- ldrb r0, [r1, 0x10]
- movs r0, 0x1
- strb r0, [r1, 0x10]
- movs r0, 0x32
- bl STWI_set_timer
- b _082E3270
-_082E3248:
- bl STWI_stop_timer
- bl STWI_restart_Command
- b _082E3270
-_082E3252:
- ldrb r0, [r1, 0x10]
- movs r0, 0x1
- strb r0, [r1, 0x10]
- bl STWI_stop_timer
- bl STWI_reset_ClockCounter
- ldr r0, [r4]
- ldr r2, [r0, 0x18]
- cmp r2, 0
- beq _082E3270
- movs r0, 0xFF
- movs r1, 0
- bl _call_via_r2
-_082E3270:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end STWI_intr_timer
-
- thumb_func_start STWI_set_timer
-STWI_set_timer: @ 82E3278
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- adds r5, r3, 0
- ldr r2, _082E32A8
- ldr r0, [r2]
- ldrb r0, [r0, 0xA]
- lsls r0, 2
- ldr r1, _082E32AC
- adds r4, r0, r1
- adds r1, 0x2
- adds r7, r0, r1
- ldr r1, _082E32B0
- movs r0, 0
- strh r0, [r1]
- adds r6, r2, 0
- cmp r3, 0x50
- beq _082E32D0
- cmp r3, 0x50
- bgt _082E32B4
- cmp r3, 0x32
- beq _082E32BE
- b _082E32FC
- .align 2, 0
-_082E32A8: .4byte gUnknown_03007868
-_082E32AC: .4byte 0x04000100
-_082E32B0: .4byte 0x04000208
-_082E32B4:
- cmp r5, 0x64
- beq _082E32E0
- cmp r5, 0x82
- beq _082E32F0
- b _082E32FC
-_082E32BE:
- ldr r1, _082E32CC
- adds r0, r1, 0
- strh r0, [r4]
- ldr r1, [r6]
- movs r0, 0x1
- b _082E32FA
- .align 2, 0
-_082E32CC: .4byte 0x0000fccb
-_082E32D0:
- ldr r1, _082E32DC
- adds r0, r1, 0
- strh r0, [r4]
- ldr r1, [r6]
- movs r0, 0x2
- b _082E32FA
- .align 2, 0
-_082E32DC: .4byte 0x0000fae0
-_082E32E0:
- ldr r1, _082E32EC
- adds r0, r1, 0
- strh r0, [r4]
- ldr r1, [r6]
- movs r0, 0x3
- b _082E32FA
- .align 2, 0
-_082E32EC: .4byte 0x0000f996
-_082E32F0:
- ldr r1, _082E3318
- adds r0, r1, 0
- strh r0, [r4]
- ldr r1, [r6]
- movs r0, 0x4
-_082E32FA:
- str r0, [r1, 0xC]
-_082E32FC:
- movs r0, 0xC3
- strh r0, [r7]
- ldr r2, _082E331C
- ldr r1, [r6]
- movs r0, 0x8
- ldrb r1, [r1, 0xA]
- lsls r0, r1
- strh r0, [r2]
- ldr r1, _082E3320
- movs r0, 0x1
- strh r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_082E3318: .4byte 0x0000f7ad
-_082E331C: .4byte 0x04000202
-_082E3320: .4byte 0x04000208
- thumb_func_end STWI_set_timer
-
- thumb_func_start STWI_stop_timer
-STWI_stop_timer: @ 82E3324
- ldr r2, _082E3344
- ldr r0, [r2]
- movs r1, 0
- str r1, [r0, 0xC]
- ldrb r0, [r0, 0xA]
- lsls r0, 2
- ldr r3, _082E3348
- adds r0, r3
- strh r1, [r0]
- ldr r0, [r2]
- ldrb r0, [r0, 0xA]
- lsls r0, 2
- ldr r2, _082E334C
- adds r0, r2
- strh r1, [r0]
- bx lr
- .align 2, 0
-_082E3344: .4byte gUnknown_03007868
-_082E3348: .4byte 0x04000100
-_082E334C: .4byte 0x04000102
- thumb_func_end STWI_stop_timer
-
- thumb_func_start STWI_init
-STWI_init: @ 82E3350
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- ldr r0, _082E337C
- ldrh r0, [r0]
- cmp r0, 0
- bne _082E3384
- ldr r0, _082E3380
- ldr r1, [r0]
- ldrh r0, [r1, 0x12]
- movs r0, 0x6
- strh r0, [r1, 0x12]
- ldr r2, [r1, 0x18]
- cmp r2, 0
- beq _082E33CE
- ldrh r1, [r1, 0x12]
- adds r0, r5, 0
- bl _call_via_r2
- b _082E33CE
- .align 2, 0
-_082E337C: .4byte 0x04000208
-_082E3380: .4byte gUnknown_03007868
-_082E3384:
- ldr r4, _082E33B0
- ldr r2, [r4]
- adds r3, r2, 0
- adds r3, 0x2C
- ldrb r0, [r3]
- cmp r0, 0x1
- bne _082E33B4
- ldrh r0, [r2, 0x12]
- movs r1, 0
- movs r0, 0x2
- strh r0, [r2, 0x12]
- ldrb r0, [r3]
- strb r1, [r3]
- ldr r0, [r4]
- ldr r2, [r0, 0x18]
- cmp r2, 0
- beq _082E33CE
- ldrh r1, [r0, 0x12]
- adds r0, r5, 0
- bl _call_via_r2
- b _082E33CE
- .align 2, 0
-_082E33B0: .4byte gUnknown_03007868
-_082E33B4:
- ldrb r0, [r2, 0x14]
- cmp r0, 0
- bne _082E33D2
- ldrh r0, [r2, 0x12]
- movs r0, 0x4
- strh r0, [r2, 0x12]
- ldr r3, [r2, 0x18]
- cmp r3, 0
- beq _082E33CE
- ldrh r1, [r2, 0x12]
- adds r0, r5, 0
- bl _call_via_r3
-_082E33CE:
- movs r0, 0x1
- b _082E341A
-_082E33D2:
- ldrb r0, [r3]
- movs r1, 0
- movs r0, 0x1
- strb r0, [r3]
- ldr r0, [r4]
- strb r6, [r0, 0x6]
- ldr r0, [r4]
- str r1, [r0]
- strb r1, [r0, 0x4]
- ldr r0, [r4]
- strb r1, [r0, 0x5]
- ldr r0, [r4]
- strb r1, [r0, 0x7]
- ldr r0, [r4]
- strb r1, [r0, 0x8]
- ldr r0, [r4]
- strb r1, [r0, 0x9]
- ldr r0, [r4]
- str r1, [r0, 0xC]
- ldrb r2, [r0, 0x10]
- strb r1, [r0, 0x10]
- ldr r0, [r4]
- ldrh r2, [r0, 0x12]
- movs r2, 0
- strh r1, [r0, 0x12]
- strb r2, [r0, 0x15]
- ldr r1, _082E3420
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- subs r1, 0xC
- ldr r2, _082E3424
- adds r0, r2, 0
- strh r0, [r1]
- movs r0, 0
-_082E341A:
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_082E3420: .4byte 0x04000134
-_082E3424: .4byte 0x00005003
- thumb_func_end STWI_init
-
- thumb_func_start STWI_start_Command
-STWI_start_Command: @ 82E3428
- push {r4,r5,lr}
- ldr r5, _082E3480
- ldr r0, [r5]
- ldr r3, [r0, 0x24]
- ldrb r1, [r0, 0x4]
- lsls r1, 8
- ldrb r0, [r0, 0x6]
- ldr r2, _082E3484
- orrs r0, r2
- orrs r1, r0
- str r1, [r3]
- ldr r2, _082E3488
- ldr r1, [r5]
- ldr r0, [r1, 0x24]
- ldr r0, [r0]
- str r0, [r2]
- movs r2, 0
- str r2, [r1]
- movs r0, 0x1
- strb r0, [r1, 0x5]
- ldr r4, _082E348C
- ldrh r3, [r4]
- strh r2, [r4]
- ldr r2, _082E3490
- ldr r1, [r5]
- movs r0, 0x8
- ldrb r1, [r1, 0xA]
- lsls r0, r1
- ldrh r1, [r2]
- orrs r0, r1
- strh r0, [r2]
- ldrh r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strh r0, [r2]
- strh r3, [r4]
- ldr r1, _082E3494
- ldr r2, _082E3498
- adds r0, r2, 0
- strh r0, [r1]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_082E3480: .4byte gUnknown_03007868
-_082E3484: .4byte 0x99660000
-_082E3488: .4byte 0x04000120
-_082E348C: .4byte 0x04000208
-_082E3490: .4byte 0x04000200
-_082E3494: .4byte 0x04000128
-_082E3498: .4byte 0x00005083
- thumb_func_end STWI_start_Command
-
- thumb_func_start STWI_restart_Command
-STWI_restart_Command: @ 82E349C
- push {r4,lr}
- ldr r4, _082E34B4
- ldr r2, [r4]
- ldrb r0, [r2, 0x15]
- adds r3, r4, 0
- cmp r0, 0x1
- bhi _082E34B8
- adds r0, 0x1
- strb r0, [r2, 0x15]
- bl STWI_start_Command
- b _082E3512
- .align 2, 0
-_082E34B4: .4byte gUnknown_03007868
-_082E34B8:
- ldrb r0, [r2, 0x6]
- cmp r0, 0x27
- beq _082E34CA
- cmp r0, 0x25
- beq _082E34CA
- cmp r0, 0x35
- beq _082E34CA
- cmp r0, 0x37
- bne _082E34EC
-_082E34CA:
- ldr r0, [r3]
- ldrh r1, [r0, 0x12]
- movs r2, 0
- movs r1, 0x1
- strh r1, [r0, 0x12]
- adds r0, 0x2C
- ldrb r1, [r0]
- strb r2, [r0]
- ldr r1, [r3]
- ldr r2, [r1, 0x18]
- cmp r2, 0
- beq _082E3512
- ldrb r0, [r1, 0x6]
- ldrh r1, [r1, 0x12]
- bl _call_via_r2
- b _082E3512
-_082E34EC:
- ldrh r0, [r2, 0x12]
- movs r1, 0
- movs r0, 0x1
- strh r0, [r2, 0x12]
- adds r0, r2, 0
- adds r0, 0x2C
- ldrb r2, [r0]
- strb r1, [r0]
- ldr r1, [r4]
- ldr r2, [r1, 0x18]
- cmp r2, 0
- beq _082E350C
- ldrb r0, [r1, 0x6]
- ldrh r1, [r1, 0x12]
- bl _call_via_r2
-_082E350C:
- ldr r1, [r4]
- movs r0, 0x4
- str r0, [r1]
-_082E3512:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end STWI_restart_Command
-
- thumb_func_start STWI_reset_ClockCounter
-STWI_reset_ClockCounter: @ 82E351C
- ldr r3, _082E3548
- ldr r1, [r3]
- movs r0, 0x5
- str r0, [r1]
- movs r2, 0
- strb r2, [r1, 0x4]
- ldr r0, [r3]
- strb r2, [r0, 0x5]
- ldr r1, _082E354C
- movs r0, 0x80
- lsls r0, 24
- str r0, [r1]
- adds r1, 0x8
- strh r2, [r1]
- ldr r2, _082E3550
- adds r0, r2, 0
- strh r0, [r1]
- adds r2, 0x7F
- adds r0, r2, 0
- strh r0, [r1]
- movs r0, 0
- bx lr
- .align 2, 0
-_082E3548: .4byte gUnknown_03007868
-_082E354C: .4byte 0x04000120
-_082E3550: .4byte 0x00005003
- thumb_func_end STWI_reset_ClockCounter
-
- arm_func_start IntrSIO32
-IntrSIO32: @ 82E3554
- mov r12, sp
- stmdb sp!, {r11,r12,lr,pc}
- ldr r3, _082E35B4
- ldr r0, [r3]
- ldr r2, [r0]
- sub r11, r12, 0x4
- cmp r2, 0xA
- bne _082E3590
- ldr r0, [r0, 0x20]
- cmp r0, 0
- ldmdbeq r11, {r11,sp,lr}
- bxeq lr
- bl sub_82E3EB0
- ldmdb r11, {r11,sp,lr}
- bx lr
-_082E3590:
- ldrb r3, [r0, 0x14]
- cmp r3, 0x1
- bne _082E35A8
- bl sio32intr_clock_master
- ldmdb r11, {r11,sp,lr}
- bx lr
-_082E35A8:
- bl sio32intr_clock_slave
- ldmdb r11, {r11,sp,lr}
- bx lr
- .align 2, 0
-_082E35B4: .4byte gUnknown_03007868
- arm_func_end IntrSIO32
-
- arm_func_start sio32intr_clock_master
-sio32intr_clock_master: @ 82E35B8
- mov r12, sp
- stmdb sp!, {r4-r6,r11,r12,lr,pc}
- mov r0, 0x50
- sub r11, r12, 0x4
- bl STWI_set_timer_in_RAM
- mov r4, 0x120
- ldr r2, _082E382C
- add r4, r4, 0x4000000
- ldr lr, [r4]
- ldr r12, [r2]
- ldr r3, [r12]
- mov r6, r2
- cmp r3, 0
- bne _082E3638
- cmp lr, 0x80000000
- bne _082E36B8
- ldrb r2, [r12, 0x5]
- ldrb r3, [r12, 0x4]
- cmp r2, r3
- bhi _082E3628
- ldr r3, [r12, 0x24]
- mov r1, r2
- ldr r2, [r3, r1, lsl 2]
- str r2, [r4]
- ldrb r3, [r12, 0x5]
- add r3, r3, 0x1
- strb r3, [r12, 0x5]
- b _082E3714
-_082E3628:
- mov r3, 0x1
- str r3, [r12]
- str lr, [r4]
- b _082E3714
-_082E3638:
- ldr r3, [r12]
- cmp r3, 0x1
- bne _082E36C8
- mov r3, 0x99000000
- add r3, r3, 0x660000
- mov r5, 0x80000000
- and r2, lr, r5, asr 15
- cmp r2, r3
- bne _082E36B8
- mov r3, 0
- strb r3, [r12, 0x8]
- ldr r1, [r6]
- ldrb r0, [r1, 0x8]
- ldr r2, [r1, 0x28]
- str lr, [r2, r0, lsl 2]
- ldrb r3, [r1, 0x8]
- add r3, r3, 0x1
- strb r3, [r1, 0x8]
- ldr r2, [r6]
- strb lr, [r2, 0x9]
- ldr r3, [r6]
- mov r2, lr, lsr 8
- strb r2, [r3, 0x7]
- ldr r1, [r6]
- ldrb r2, [r1, 0x7]
- ldrb r3, [r1, 0x8]
- cmp r2, r3
- bcc _082E3700
- mov r3, 0x2
- str r3, [r1]
- str r5, [r4]
- b _082E3714
-_082E36B8:
- bl STWI_stop_timer_in_RAM
- mov r0, 0x82
- bl STWI_set_timer_in_RAM
- b _082E3840
-_082E36C8:
- ldr r3, [r12]
- cmp r3, 0x2
- bne _082E3714
- ldrb r1, [r12, 0x8]
- ldr r2, [r12, 0x28]
- str lr, [r2, r1, lsl 2]
- ldrb r3, [r12, 0x8]
- add r3, r3, 0x1
- strb r3, [r12, 0x8]
- ldr r1, [r6]
- ldrb r2, [r1, 0x7]
- ldrb r3, [r1, 0x8]
- cmp r2, r3
- bcs _082E370C
-_082E3700:
- mov r3, 0x3
- str r3, [r1]
- b _082E3714
-_082E370C:
- mov r3, 0x80000000
- str r3, [r4]
-_082E3714:
- mov r0, 0x1
- bl handshake_wait
- mov r0, r0, lsl 16
- cmp r0, 0x10000
- beq _082E3840
- mov r4, 0x128
- add r4, r4, 0x4000000
- mov r5, 0x5000
- add r3, r5, 0xB
- strh r3, [r4]
- mov r0, 0
- bl handshake_wait
- mov r0, r0, lsl 16
- cmp r0, 0x10000
- beq _082E3840
- bl STWI_stop_timer_in_RAM
- ldr r1, [r6]
- ldr r0, [r1]
- cmp r0, 0x3
- bne _082E3830
- ldrb r3, [r1, 0x9]
- cmp r3, 0xA5
- cmpne r3, 0xA7
- beq _082E3788
- and r3, r3, 0xFF
- cmp r3, 0xB5
- beq _082E3788
- cmp r3, 0xB7
- bne _082E37D0
-_082E3788:
- mov r1, 0x120
- add r1, r1, 0x4000000
- mov r12, 0x128
- add r12, r12, 0x4000000
- ldr r0, [r6]
- mov r3, 0
- strb r3, [r0, 0x14]
- mov r2, 0x80000000
- str r2, [r1]
- add r3, r3, 0x5000
- add r2, r3, 0x2
- strh r2, [r12]
- add r3, r3, 0x82
- strh r3, [r12]
- ldr r2, [r6]
- mov r3, 0x5
- str r3, [r2]
- b _082E3800
-_082E37D0:
- cmp r3, 0xEE
- bne _082E37F0
- add r3, r5, 0x3
- strh r3, [r4]
- mov r2, 0x4
- str r2, [r1]
- strh r0, [r1, 0x12]
- b _082E3800
-_082E37F0:
- add r3, r5, 0x3
- strh r3, [r4]
- mov r2, 0x4
- str r2, [r1]
-_082E3800:
- ldr r2, [r6]
- mov r3, 0
- strb r3, [r2, 0x2C]
- ldr r0, [r6]
- ldr r2, [r0, 0x18]
- cmp r2, r3
- beq _082E3840
- ldrh r1, [r0, 0x12]
- ldrb r0, [r0, 0x6]
- bl sub_82E3EA8
- b _082E3840
- .align 2, 0
-_082E382C: .4byte gUnknown_03007868
-_082E3830:
- add r3, r5, 0x3
- strh r3, [r4]
- add r2, r5, 0x83
- strh r2, [r4]
-_082E3840:
- ldmdb r11, {r4-r6,r11,sp,lr}
- bx lr
- arm_func_end sio32intr_clock_master
-
- arm_func_start sio32intr_clock_slave
-sio32intr_clock_slave: @ 82E3848
- mov r12, sp
- stmdb sp!, {r4-r6,r11,r12,lr,pc}
- ldr r4, _082E3BF4
- mov r0, 0x64
- ldr r3, [r4]
- mov r6, 0
- strb r6, [r3, 0x10]
- sub r11, r12, 0x4
- bl STWI_set_timer_in_RAM
- mov r0, r6
- bl handshake_wait
- mov r0, r0, lsl 16
- cmp r0, 0x10000
- mov r5, r4
- beq _082E3C4C
- mov r3, 0x128
- add r3, r3, 0x4000000
- mov r2, 0x5000
- add r2, r2, 0xA
- strh r2, [r3]
- mov lr, 0x120
- ldr r0, [r5]
- add lr, lr, 0x4000000
- ldr r12, [lr]
- ldr r3, [r0]
- cmp r3, 0x5
- bne _082E3978
- ldr r3, [r0, 0x28]
- mov r4, 0x1
- mov r0, 0x99000000
- str r12, [r3]
- add r0, r0, 0x660000
- ldr r2, [r5]
- mov r3, r0, lsr 16
- strb r4, [r2, 0x5]
- cmp r3, r12, lsr 16
- bne _082E3AC4
- ldr r3, [r5]
- mov r2, r12, lsr 8
- strb r2, [r3, 0x4]
- ldr r2, [r5]
- strb r12, [r2, 0x6]
- ldr r1, [r5]
- ldrb r3, [r1, 0x4]
- cmp r3, r6
- bne _082E395C
- ldrb r2, [r1, 0x6]
- sub r3, r2, 0x27
- cmp r2, 0x36
- cmpne r3, 0x2
- bhi _082E3930
- add r3, r2, 0x80
- strb r3, [r1, 0x9]
- ldr r2, [r5]
- ldrb r3, [r2, 0x9]
- ldr r1, [r2, 0x24]
- add r3, r3, r0
- b _082E39E0
-_082E3930:
- ldr r2, [r1, 0x24]
- ldr r3, _082E3BF8
- str r3, [r2]
- ldr r2, [r5]
- ldrb r3, [r2, 0x6]
- sub r3, r3, 0x10
- cmp r3, 0x2D
- bhi _082E3A18
- ldr r3, [r2, 0x24]
- str r4, [r3, 0x4]
- b _082E3A24
-_082E395C:
- mov r3, 0x80000000
- str r3, [lr]
- strb r4, [r1, 0x5]
- ldr r2, [r5]
- add r3, r3, 0x80000006
- str r3, [r2]
- b _082E3AD4
-_082E3978:
- ldr r3, [r0]
- cmp r3, 0x6
- bne _082E3A78
- ldrb r1, [r0, 0x5]
- ldr r2, [r0, 0x28]
- str r12, [r2, r1, lsl 2]
- ldrb r3, [r0, 0x5]
- add r3, r3, 0x1
- strb r3, [r0, 0x5]
- ldr r1, [r5]
- ldrb r2, [r1, 0x4]
- ldrb r3, [r1, 0x5]
- cmp r2, r3
- bcs _082E3A6C
- ldrb r2, [r1, 0x6]
- sub r3, r2, 0x28
- cmp r2, 0x36
- cmpne r3, 0x1
- bhi _082E39F0
- add r3, r2, 0x80
- strb r3, [r1, 0x9]
- ldr r2, [r5]
- ldrb r3, [r2, 0x9]
- ldr r1, [r2, 0x24]
- orr r3, r3, 0x99000000
- orr r3, r3, 0x660000
-_082E39E0:
- str r3, [r1]
- ldr r2, [r5]
- strb r6, [r2, 0x7]
- b _082E3A3C
-_082E39F0:
- ldr r2, [r1, 0x24]
- ldr r3, _082E3BF8
- str r3, [r2]
- ldr r2, [r5]
- ldrb r3, [r2, 0x6]
- sub r3, r3, 0x10
- cmp r3, 0x2D
- ldrls r2, [r2, 0x24]
- movls r3, 0x1
- bls _082E3A20
-_082E3A18:
- ldr r2, [r2, 0x24]
- mov r3, 0x2
-_082E3A20:
- str r3, [r2, 0x4]
-_082E3A24:
- ldr r2, [r5]
- mov r3, 0x1
- strb r3, [r2, 0x7]
- ldr r1, [r5]
- add r3, r3, 0x2
- strh r3, [r1, 0x12]
-_082E3A3C:
- ldr r0, [r5]
- ldr r2, [r0, 0x24]
- mov r3, 0x120
- ldr r1, [r2]
- add r3, r3, 0x4000000
- str r1, [r3]
- mov r2, 0x1
- strb r2, [r0, 0x8]
- ldr r1, [r5]
- mov r3, 0x7
- str r3, [r1]
- b _082E3AD4
-_082E3A6C:
- mov r3, 0x80000000
- str r3, [lr]
- b _082E3AD4
-_082E3A78:
- ldr r3, [r0]
- cmp r3, 0x7
- bne _082E3AD4
- cmp r12, 0x80000000
- bne _082E3AC4
- ldrb r2, [r0, 0x7]
- ldrb r3, [r0, 0x8]
- cmp r2, r3
- movcc r3, 0x8
- strcc r3, [r0]
- bcc _082E3AD4
- ldrb r1, [r0, 0x8]
- ldr r3, [r0, 0x24]
- ldr r2, [r3, r1, lsl 2]
- str r2, [lr]
- ldrb r3, [r0, 0x8]
- add r3, r3, 0x1
- strb r3, [r0, 0x8]
- b _082E3AD4
-_082E3AC4:
- bl STWI_stop_timer_in_RAM
- mov r0, 0x64
- bl STWI_set_timer_in_RAM
- b _082E3C4C
-_082E3AD4:
- mov r0, 0x1
- bl handshake_wait
- mov r0, r0, lsl 16
- cmp r0, 0x10000
- beq _082E3C4C
- mov r6, r5
- ldr r3, [r6]
- ldr r2, [r3]
- cmp r2, 0x8
- bne _082E3B9C
- mov r4, 0x128
- add r4, r4, 0x4000000
- mov r3, 0x5000
- add r3, r3, 0x2
- strh r3, [r4]
- bl STWI_stop_timer_in_RAM
- ldr r0, [r6]
- ldrh r3, [r0, 0x12]
- cmp r3, 0x3
- bne _082E3B48
- bl STWI_init_slave
- ldr r3, [r6]
- ldr r1, [r3, 0x1C]
- cmp r1, 0
- beq _082E3C4C
- mov r0, 0x1EC
- add r0, r0, 0x2
- bl sub_82E3EAC
- b _082E3C4C
-_082E3B48:
- mov r3, 0x120
- add r3, r3, 0x4000000
- mov r1, 0
- str r1, [r3]
- mov r2, 0x5000
- strh r1, [r4]
- add r2, r2, 0x3
- strh r2, [r4]
- mov r3, 0x1
- strb r3, [r0, 0x14]
- ldr r0, [r5]
- ldr r2, [r0, 0x1C]
- str r1, [r0]
- cmp r2, r1
- beq _082E3C4C
- ldrb r3, [r0, 0x4]
- ldrb r0, [r0, 0x6]
- mov r1, r2
- orr r0, r0, r3, lsl 8
- bl sub_82E3EAC
- b _082E3C4C
-_082E3B9C:
- mov r3, 0x208
- add r3, r3, 0x4000000
- mov r2, 0
- strh r2, [r3]
- mov r1, 0x100
- add r2, r1, 0x4000002
- ldrh r3, [r2]
- tst r3, 0x80
- beq _082E3C20
- ldrh r3, [r2]
- tst r3, 0x3
- bne _082E3BFC
- mov r2, 0xFF00
- add r1, r1, 0x4000000
- ldrh r3, [r1]
- add r2, r2, 0x9B
- cmp r3, r2
- bls _082E3C20
-_082E3BE4:
- ldrh r3, [r1]
- cmp r3, r2
- bhi _082E3BE4
- b _082E3C20
- .align 2, 0
-_082E3BF4: .4byte gUnknown_03007868
-_082E3BF8: .4byte 0x996601ee
-_082E3BFC:
- mov r2, 0xFF00
- add r1, r1, 0x4000000
- ldrh r3, [r1]
- add r2, r2, 0xFE
- cmp r3, r2
- bls _082E3C20
-_082E3C14:
- ldrh r3, [r1]
- cmp r3, r2
- bhi _082E3C14
-_082E3C20:
- mov r1, 0x128
- add r1, r1, 0x4000000
- mov r0, 0x208
- add r0, r0, 0x4000000
- mov r3, 0x5000
- add r2, r3, 0x2
- strh r2, [r1]
- add r3, r3, 0x82
- strh r3, [r1]
- mov r2, 0x1
- strh r2, [r0]
-_082E3C4C:
- ldmdb r11, {r4-r6,r11,sp,lr}
- bx lr
- arm_func_end sio32intr_clock_slave
-
- arm_func_start handshake_wait
-handshake_wait: @ 82E3C54
- mov r12, sp
- stmdb sp!, {r11,r12,lr,pc}
- mov r1, 0x128
- add r1, r1, 0x4000000
- mov r0, r0, lsl 16
- ldr r2, _082E3CB8
- sub r11, r12, 0x4
- mov lr, r0, lsr 14
- ldr r12, [r2]
-_082E3C78:
- ldrb r3, [r12, 0x10]
- and r0, r3, 0xFF
- cmp r0, 0x1
- beq _082E3CA4
- ldrh r3, [r1]
- and r3, r3, 0x4
- cmp r3, lr
- bne _082E3C78
- mov r0, 0
- ldmdb r11, {r11,sp,lr}
- bx lr
-_082E3CA4:
- ldr r2, [r2]
- mov r3, 0
- strb r3, [r2, 0x10]
- ldmdb r11, {r11,sp,lr}
- bx lr
- .align 2, 0
-_082E3CB8: .4byte gUnknown_03007868
- arm_func_end handshake_wait
-
- arm_func_start STWI_set_timer_in_RAM
-STWI_set_timer_in_RAM: @ 82E3CBC
- mov r12, sp
- stmdb sp!, {r4,r5,r11,r12,lr,pc}
- mov r1, 0x208
- add r1, r1, 0x4000000
- mov r3, 0
- sub r11, r12, 0x4
- ldr r12, _082E3D74
- and lr, r0, 0xFF
- ldr r2, [r12]
- cmp lr, 0x50
- ldrb r0, [r2, 0xA]
- mov r4, r12
- mov r2, lr
- strh r3, [r1]
- mov r0, r0, lsl 2
- add r3, r3, 0x100
- add r1, r3, 0x4000000
- add r3, r3, 0x4000002
- add r5, r0, r3
- beq _082E3D44
- bgt _082E3D1C
- cmp lr, 0x32
- beq _082E3D30
- b _082E3D90
-_082E3D1C:
- cmp r2, 0x64
- beq _082E3D5C
- cmp r2, 0x82
- beq _082E3D78
- b _082E3D90
-_082E3D30:
- mvn r3, 0x334
- strh r3, [r0, r1]
- ldr r2, [r4]
- mov r3, 0x1
- b _082E3D8C
-_082E3D44:
- mov r3, 0xAE000000
- mov r3, r3, asr 20
- strh r3, [r0, r1]
- ldr r2, [r4]
- mov r3, 0x2
- b _082E3D8C
-_082E3D5C:
- mvn r3, 0x660
- sub r3, r3, 0x9
- strh r3, [r0, r1]
- ldr r2, [r4]
- mov r3, 0x3
- b _082E3D8C
- .align 2, 0
-_082E3D74: .4byte gUnknown_03007868
-_082E3D78:
- mvn r3, 0x850
- sub r3, r3, 0x2
- strh r3, [r0, r1]
- ldr r2, [r4]
- mov r3, 0x4
-_082E3D8C:
- str r3, [r2, 0xC]
-_082E3D90:
- mov r12, 0x200
- add r12, r12, 0x4000002
- mov r3, 0xC3
- strh r3, [r5]
- mov r1, 0x208
- ldr r2, [r4]
- add r1, r1, 0x4000000
- ldrb r0, [r2, 0xA]
- sub r3, r3, 0xBB
- mov r3, r3, lsl r0
- strh r3, [r12]
- mov r2, 0x1
- strh r2, [r1]
- ldmdb r11, {r4,r5,r11,sp,lr}
- bx lr
- arm_func_end STWI_set_timer_in_RAM
-
- arm_func_start STWI_stop_timer_in_RAM
-STWI_stop_timer_in_RAM: @ 82E3DCC
- mov r12, sp
- stmdb sp!, {r11,r12,lr,pc}
- mov r1, 0x100
- ldr lr, _082E3E18
- add r0, r1, 0x4000000
- ldr r2, [lr]
- sub r11, r12, 0x4
- ldrb r3, [r2, 0xA]
- mov r12, 0
- str r12, [r2, 0xC]
- mov r3, r3, lsl 2
- strh r12, [r3, r0]
- ldr r2, [lr]
- ldrb r3, [r2, 0xA]
- add r1, r1, 0x4000002
- mov r3, r3, lsl 2
- strh r12, [r3, r1]
- ldmdb r11, {r11,sp,lr}
- bx lr
- .align 2, 0
-_082E3E18: .4byte gUnknown_03007868
- arm_func_end STWI_stop_timer_in_RAM
-
- arm_func_start STWI_init_slave
-STWI_init_slave: @ 82E3E1C
- mov r12, sp
- stmdb sp!, {r11,r12,lr,pc}
- ldr r0, _082E3EA4
- ldr r2, [r0]
- mov r3, 0x5
- str r3, [r2]
- mov r1, 0
- strb r1, [r2, 0x14]
- ldr r3, [r0]
- strb r1, [r3, 0x4]
- ldr r2, [r0]
- strb r1, [r2, 0x5]
- ldr r3, [r0]
- strb r1, [r3, 0x6]
- ldr r2, [r0]
- strb r1, [r2, 0x7]
- ldr r3, [r0]
- strb r1, [r3, 0x8]
- ldr r2, [r0]
- strb r1, [r2, 0x9]
- ldr r3, [r0]
- str r1, [r3, 0xC]
- sub r11, r12, 0x4
- strb r1, [r3, 0x10]
- mov r2, 0x128
- ldr r12, [r0]
- add r2, r2, 0x4000000
- strh r1, [r12, 0x12]
- mov r3, 0x5000
- strb r1, [r12, 0x15]
- add r3, r3, 0x82
- strh r3, [r2]
- ldmdb r11, {r11,sp,lr}
- bx lr
- .align 2, 0
-_082E3EA4: .4byte gUnknown_03007868
- arm_func_end STWI_init_slave
-
- arm_func_start sub_82E3EA8
-sub_82E3EA8: @ 82E3EA8
- bx r2
- arm_func_end sub_82E3EA8
-
- arm_func_start sub_82E3EAC
-sub_82E3EAC: @ 82E3EAC
- bx r1
- arm_func_end sub_82E3EAC
-
- arm_func_start sub_82E3EB0
-sub_82E3EB0: @ 82E3EB0
- bx r0
- arm_func_end sub_82E3EB0
-
thumb_func_start rfu_initializeAPI
rfu_initializeAPI: @ 82E3EB4
push {r4-r7,lr}
@@ -2762,7 +517,7 @@ sub_82E424C: @ 82E424C
b _082E4266
.align 2, 0
_082E4254: .4byte gUnknown_089A324C
-_082E4258: .4byte gUnknown_030000F0
+_082E4258: .4byte gDma3Requests + 0xE0
thumb_func_end sub_82E424C
thumb_func_start sub_82E425C
@@ -2810,7 +565,7 @@ _082E4274:
movs r0, 0
b _082E42BE
.align 2, 0
-_082E42B0: .4byte gUnknown_030000FA
+_082E42B0: .4byte gDma3Requests + 0xEA
_082E42B4: .4byte gUnknown_03007890
_082E42B8: .4byte gUnknown_03007894
_082E42BC:
@@ -2838,7 +593,7 @@ rfu_REQ_stopMode: @ 82E42C4
b _082E4362
.align 2, 0
_082E42E4: .4byte 0x04000208
-_082E42E8: .4byte gUnknown_03007868
+_082E42E8: .4byte gRfuState
_082E42EC:
bl AgbRFU_SoftReset
bl rfu_STC_clearAPIVariables
@@ -2878,7 +633,7 @@ _082E432A:
b _082E4362
.align 2, 0
_082E433C: .4byte 0x00008001
-_082E4340: .4byte gUnknown_03007868
+_082E4340: .4byte gRfuState
_082E4344: .4byte 0x04000100
_082E4348: .4byte 0x0105ffff
_082E434C: .4byte rfu_CB_stopMode
@@ -3156,7 +911,7 @@ rfu_CB_configGameData: @ 82E4500
movs r0, 0x1
b _082E4552
.align 2, 0
-_082E4544: .4byte gUnknown_03007868
+_082E4544: .4byte gRfuState
_082E4548: .4byte gUnknown_03007890
_082E454C:
adds r1, r6, 0
@@ -4225,7 +1980,7 @@ _082E4D18:
b _082E4D88
.align 2, 0
_082E4D20: .4byte gUnknown_03007890
-_082E4D24: .4byte gUnknown_03007868
+_082E4D24: .4byte gRfuState
_082E4D28: .4byte gUnknown_03007894
_082E4D2C: .4byte gUnknown_03007898
_082E4D30:
@@ -5195,7 +2950,7 @@ _082E547E:
pop {r1}
bx r1
.align 2, 0
-_082E5484: .4byte gUnknown_03007868
+_082E5484: .4byte gRfuState
thumb_func_end rfu_getMasterSlave
thumb_func_start rfu_clearAllSlot
@@ -6506,7 +4261,7 @@ _082E5E12:
_082E5E34: .4byte gUnknown_03007898
_082E5E38: .4byte gUnknown_03007894
_082E5E3C: .4byte gUnknown_03007890
-_082E5E40: .4byte gUnknown_03007868
+_082E5E40: .4byte gRfuState
_082E5E44:
ldr r0, _082E5E54
bl STWI_set_Callback_M
@@ -8564,7 +6319,7 @@ _082E6D88:
b _082E6DD6
.align 2, 0
_082E6DB4: .4byte 0x04000200
-_082E6DB8: .4byte gUnknown_03007868
+_082E6DB8: .4byte gRfuState
_082E6DBC: .4byte sub_82E6F88
_082E6DC0: .4byte 0x04000100
_082E6DC4:
@@ -8612,7 +6367,7 @@ _082E6E08:
.align 2, 0
_082E6E14: .4byte 0x04000208
_082E6E18: .4byte 0x04000200
-_082E6E1C: .4byte gUnknown_03007868
+_082E6E1C: .4byte gRfuState
thumb_func_end sub_82E6D6C
thumb_func_start sub_82E6E20
@@ -8663,7 +6418,7 @@ sub_82E6E20: @ 82E6E20
.align 2, 0
_082E6E78: .4byte 0x04000208
_082E6E7C: .4byte 0x04000200
-_082E6E80: .4byte gUnknown_03007868
+_082E6E80: .4byte gRfuState
_082E6E84: .4byte 0x04000134
_082E6E88: .4byte gUnknown_030078A0
_082E6E8C: .4byte 0x05000003
diff --git a/asm/librfu_intr.s b/asm/librfu_intr.s
new file mode 100644
index 000000000..7f375e419
--- /dev/null
+++ b/asm/librfu_intr.s
@@ -0,0 +1,696 @@
+ .include "asm/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ arm_func_start IntrSIO32
+IntrSIO32: @ 82E3554
+ mov r12, sp
+ stmdb sp!, {r11,r12,lr,pc}
+ ldr r3, _082E35B4
+ ldr r0, [r3]
+ ldr r2, [r0]
+ sub r11, r12, 0x4
+ cmp r2, 0xA
+ bne _082E3590
+ ldr r0, [r0, 0x20]
+ cmp r0, 0
+ ldmdbeq r11, {r11,sp,lr}
+ bxeq lr
+ bl sub_82E3EB0
+ ldmdb r11, {r11,sp,lr}
+ bx lr
+_082E3590:
+ ldrb r3, [r0, 0x14]
+ cmp r3, 0x1
+ bne _082E35A8
+ bl sio32intr_clock_master
+ ldmdb r11, {r11,sp,lr}
+ bx lr
+_082E35A8:
+ bl sio32intr_clock_slave
+ ldmdb r11, {r11,sp,lr}
+ bx lr
+ .align 2, 0
+_082E35B4: .4byte gRfuState
+ arm_func_end IntrSIO32
+
+ arm_func_start sio32intr_clock_master
+sio32intr_clock_master: @ 82E35B8
+ mov r12, sp
+ stmdb sp!, {r4-r6,r11,r12,lr,pc}
+ mov r0, 0x50
+ sub r11, r12, 0x4
+ bl STWI_set_timer_in_RAM
+ mov r4, 0x120
+ ldr r2, _082E382C
+ add r4, r4, 0x4000000
+ ldr lr, [r4]
+ ldr r12, [r2]
+ ldr r3, [r12]
+ mov r6, r2
+ cmp r3, 0
+ bne _082E3638
+ cmp lr, 0x80000000
+ bne _082E36B8
+ ldrb r2, [r12, 0x5]
+ ldrb r3, [r12, 0x4]
+ cmp r2, r3
+ bhi _082E3628
+ ldr r3, [r12, 0x24]
+ mov r1, r2
+ ldr r2, [r3, r1, lsl 2]
+ str r2, [r4]
+ ldrb r3, [r12, 0x5]
+ add r3, r3, 0x1
+ strb r3, [r12, 0x5]
+ b _082E3714
+_082E3628:
+ mov r3, 0x1
+ str r3, [r12]
+ str lr, [r4]
+ b _082E3714
+_082E3638:
+ ldr r3, [r12]
+ cmp r3, 0x1
+ bne _082E36C8
+ mov r3, 0x99000000
+ add r3, r3, 0x660000
+ mov r5, 0x80000000
+ and r2, lr, r5, asr 15
+ cmp r2, r3
+ bne _082E36B8
+ mov r3, 0
+ strb r3, [r12, 0x8]
+ ldr r1, [r6]
+ ldrb r0, [r1, 0x8]
+ ldr r2, [r1, 0x28]
+ str lr, [r2, r0, lsl 2]
+ ldrb r3, [r1, 0x8]
+ add r3, r3, 0x1
+ strb r3, [r1, 0x8]
+ ldr r2, [r6]
+ strb lr, [r2, 0x9]
+ ldr r3, [r6]
+ mov r2, lr, lsr 8
+ strb r2, [r3, 0x7]
+ ldr r1, [r6]
+ ldrb r2, [r1, 0x7]
+ ldrb r3, [r1, 0x8]
+ cmp r2, r3
+ bcc _082E3700
+ mov r3, 0x2
+ str r3, [r1]
+ str r5, [r4]
+ b _082E3714
+_082E36B8:
+ bl STWI_stop_timer_in_RAM
+ mov r0, 0x82
+ bl STWI_set_timer_in_RAM
+ b _082E3840
+_082E36C8:
+ ldr r3, [r12]
+ cmp r3, 0x2
+ bne _082E3714
+ ldrb r1, [r12, 0x8]
+ ldr r2, [r12, 0x28]
+ str lr, [r2, r1, lsl 2]
+ ldrb r3, [r12, 0x8]
+ add r3, r3, 0x1
+ strb r3, [r12, 0x8]
+ ldr r1, [r6]
+ ldrb r2, [r1, 0x7]
+ ldrb r3, [r1, 0x8]
+ cmp r2, r3
+ bcs _082E370C
+_082E3700:
+ mov r3, 0x3
+ str r3, [r1]
+ b _082E3714
+_082E370C:
+ mov r3, 0x80000000
+ str r3, [r4]
+_082E3714:
+ mov r0, 0x1
+ bl handshake_wait
+ mov r0, r0, lsl 16
+ cmp r0, 0x10000
+ beq _082E3840
+ mov r4, 0x128
+ add r4, r4, 0x4000000
+ mov r5, 0x5000
+ add r3, r5, 0xB
+ strh r3, [r4]
+ mov r0, 0
+ bl handshake_wait
+ mov r0, r0, lsl 16
+ cmp r0, 0x10000
+ beq _082E3840
+ bl STWI_stop_timer_in_RAM
+ ldr r1, [r6]
+ ldr r0, [r1]
+ cmp r0, 0x3
+ bne _082E3830
+ ldrb r3, [r1, 0x9]
+ cmp r3, 0xA5
+ cmpne r3, 0xA7
+ beq _082E3788
+ and r3, r3, 0xFF
+ cmp r3, 0xB5
+ beq _082E3788
+ cmp r3, 0xB7
+ bne _082E37D0
+_082E3788:
+ mov r1, 0x120
+ add r1, r1, 0x4000000
+ mov r12, 0x128
+ add r12, r12, 0x4000000
+ ldr r0, [r6]
+ mov r3, 0
+ strb r3, [r0, 0x14]
+ mov r2, 0x80000000
+ str r2, [r1]
+ add r3, r3, 0x5000
+ add r2, r3, 0x2
+ strh r2, [r12]
+ add r3, r3, 0x82
+ strh r3, [r12]
+ ldr r2, [r6]
+ mov r3, 0x5
+ str r3, [r2]
+ b _082E3800
+_082E37D0:
+ cmp r3, 0xEE
+ bne _082E37F0
+ add r3, r5, 0x3
+ strh r3, [r4]
+ mov r2, 0x4
+ str r2, [r1]
+ strh r0, [r1, 0x12]
+ b _082E3800
+_082E37F0:
+ add r3, r5, 0x3
+ strh r3, [r4]
+ mov r2, 0x4
+ str r2, [r1]
+_082E3800:
+ ldr r2, [r6]
+ mov r3, 0
+ strb r3, [r2, 0x2C]
+ ldr r0, [r6]
+ ldr r2, [r0, 0x18]
+ cmp r2, r3
+ beq _082E3840
+ ldrh r1, [r0, 0x12]
+ ldrb r0, [r0, 0x6]
+ bl sub_82E3EA8
+ b _082E3840
+ .align 2, 0
+_082E382C: .4byte gRfuState
+_082E3830:
+ add r3, r5, 0x3
+ strh r3, [r4]
+ add r2, r5, 0x83
+ strh r2, [r4]
+_082E3840:
+ ldmdb r11, {r4-r6,r11,sp,lr}
+ bx lr
+ arm_func_end sio32intr_clock_master
+
+ arm_func_start sio32intr_clock_slave
+sio32intr_clock_slave: @ 82E3848
+ mov r12, sp
+ stmdb sp!, {r4-r6,r11,r12,lr,pc}
+ ldr r4, _082E3BF4
+ mov r0, 0x64
+ ldr r3, [r4]
+ mov r6, 0
+ strb r6, [r3, 0x10]
+ sub r11, r12, 0x4
+ bl STWI_set_timer_in_RAM
+ mov r0, r6
+ bl handshake_wait
+ mov r0, r0, lsl 16
+ cmp r0, 0x10000
+ mov r5, r4
+ beq _082E3C4C
+ mov r3, 0x128
+ add r3, r3, 0x4000000
+ mov r2, 0x5000
+ add r2, r2, 0xA
+ strh r2, [r3]
+ mov lr, 0x120
+ ldr r0, [r5]
+ add lr, lr, 0x4000000
+ ldr r12, [lr]
+ ldr r3, [r0]
+ cmp r3, 0x5
+ bne _082E3978
+ ldr r3, [r0, 0x28]
+ mov r4, 0x1
+ mov r0, 0x99000000
+ str r12, [r3]
+ add r0, r0, 0x660000
+ ldr r2, [r5]
+ mov r3, r0, lsr 16
+ strb r4, [r2, 0x5]
+ cmp r3, r12, lsr 16
+ bne _082E3AC4
+ ldr r3, [r5]
+ mov r2, r12, lsr 8
+ strb r2, [r3, 0x4]
+ ldr r2, [r5]
+ strb r12, [r2, 0x6]
+ ldr r1, [r5]
+ ldrb r3, [r1, 0x4]
+ cmp r3, r6
+ bne _082E395C
+ ldrb r2, [r1, 0x6]
+ sub r3, r2, 0x27
+ cmp r2, 0x36
+ cmpne r3, 0x2
+ bhi _082E3930
+ add r3, r2, 0x80
+ strb r3, [r1, 0x9]
+ ldr r2, [r5]
+ ldrb r3, [r2, 0x9]
+ ldr r1, [r2, 0x24]
+ add r3, r3, r0
+ b _082E39E0
+_082E3930:
+ ldr r2, [r1, 0x24]
+ ldr r3, _082E3BF8
+ str r3, [r2]
+ ldr r2, [r5]
+ ldrb r3, [r2, 0x6]
+ sub r3, r3, 0x10
+ cmp r3, 0x2D
+ bhi _082E3A18
+ ldr r3, [r2, 0x24]
+ str r4, [r3, 0x4]
+ b _082E3A24
+_082E395C:
+ mov r3, 0x80000000
+ str r3, [lr]
+ strb r4, [r1, 0x5]
+ ldr r2, [r5]
+ add r3, r3, 0x80000006
+ str r3, [r2]
+ b _082E3AD4
+_082E3978:
+ ldr r3, [r0]
+ cmp r3, 0x6
+ bne _082E3A78
+ ldrb r1, [r0, 0x5]
+ ldr r2, [r0, 0x28]
+ str r12, [r2, r1, lsl 2]
+ ldrb r3, [r0, 0x5]
+ add r3, r3, 0x1
+ strb r3, [r0, 0x5]
+ ldr r1, [r5]
+ ldrb r2, [r1, 0x4]
+ ldrb r3, [r1, 0x5]
+ cmp r2, r3
+ bcs _082E3A6C
+ ldrb r2, [r1, 0x6]
+ sub r3, r2, 0x28
+ cmp r2, 0x36
+ cmpne r3, 0x1
+ bhi _082E39F0
+ add r3, r2, 0x80
+ strb r3, [r1, 0x9]
+ ldr r2, [r5]
+ ldrb r3, [r2, 0x9]
+ ldr r1, [r2, 0x24]
+ orr r3, r3, 0x99000000
+ orr r3, r3, 0x660000
+_082E39E0:
+ str r3, [r1]
+ ldr r2, [r5]
+ strb r6, [r2, 0x7]
+ b _082E3A3C
+_082E39F0:
+ ldr r2, [r1, 0x24]
+ ldr r3, _082E3BF8
+ str r3, [r2]
+ ldr r2, [r5]
+ ldrb r3, [r2, 0x6]
+ sub r3, r3, 0x10
+ cmp r3, 0x2D
+ ldrls r2, [r2, 0x24]
+ movls r3, 0x1
+ bls _082E3A20
+_082E3A18:
+ ldr r2, [r2, 0x24]
+ mov r3, 0x2
+_082E3A20:
+ str r3, [r2, 0x4]
+_082E3A24:
+ ldr r2, [r5]
+ mov r3, 0x1
+ strb r3, [r2, 0x7]
+ ldr r1, [r5]
+ add r3, r3, 0x2
+ strh r3, [r1, 0x12]
+_082E3A3C:
+ ldr r0, [r5]
+ ldr r2, [r0, 0x24]
+ mov r3, 0x120
+ ldr r1, [r2]
+ add r3, r3, 0x4000000
+ str r1, [r3]
+ mov r2, 0x1
+ strb r2, [r0, 0x8]
+ ldr r1, [r5]
+ mov r3, 0x7
+ str r3, [r1]
+ b _082E3AD4
+_082E3A6C:
+ mov r3, 0x80000000
+ str r3, [lr]
+ b _082E3AD4
+_082E3A78:
+ ldr r3, [r0]
+ cmp r3, 0x7
+ bne _082E3AD4
+ cmp r12, 0x80000000
+ bne _082E3AC4
+ ldrb r2, [r0, 0x7]
+ ldrb r3, [r0, 0x8]
+ cmp r2, r3
+ movcc r3, 0x8
+ strcc r3, [r0]
+ bcc _082E3AD4
+ ldrb r1, [r0, 0x8]
+ ldr r3, [r0, 0x24]
+ ldr r2, [r3, r1, lsl 2]
+ str r2, [lr]
+ ldrb r3, [r0, 0x8]
+ add r3, r3, 0x1
+ strb r3, [r0, 0x8]
+ b _082E3AD4
+_082E3AC4:
+ bl STWI_stop_timer_in_RAM
+ mov r0, 0x64
+ bl STWI_set_timer_in_RAM
+ b _082E3C4C
+_082E3AD4:
+ mov r0, 0x1
+ bl handshake_wait
+ mov r0, r0, lsl 16
+ cmp r0, 0x10000
+ beq _082E3C4C
+ mov r6, r5
+ ldr r3, [r6]
+ ldr r2, [r3]
+ cmp r2, 0x8
+ bne _082E3B9C
+ mov r4, 0x128
+ add r4, r4, 0x4000000
+ mov r3, 0x5000
+ add r3, r3, 0x2
+ strh r3, [r4]
+ bl STWI_stop_timer_in_RAM
+ ldr r0, [r6]
+ ldrh r3, [r0, 0x12]
+ cmp r3, 0x3
+ bne _082E3B48
+ bl STWI_init_slave
+ ldr r3, [r6]
+ ldr r1, [r3, 0x1C]
+ cmp r1, 0
+ beq _082E3C4C
+ mov r0, 0x1EC
+ add r0, r0, 0x2
+ bl sub_82E3EAC
+ b _082E3C4C
+_082E3B48:
+ mov r3, 0x120
+ add r3, r3, 0x4000000
+ mov r1, 0
+ str r1, [r3]
+ mov r2, 0x5000
+ strh r1, [r4]
+ add r2, r2, 0x3
+ strh r2, [r4]
+ mov r3, 0x1
+ strb r3, [r0, 0x14]
+ ldr r0, [r5]
+ ldr r2, [r0, 0x1C]
+ str r1, [r0]
+ cmp r2, r1
+ beq _082E3C4C
+ ldrb r3, [r0, 0x4]
+ ldrb r0, [r0, 0x6]
+ mov r1, r2
+ orr r0, r0, r3, lsl 8
+ bl sub_82E3EAC
+ b _082E3C4C
+_082E3B9C:
+ mov r3, 0x208
+ add r3, r3, 0x4000000
+ mov r2, 0
+ strh r2, [r3]
+ mov r1, 0x100
+ add r2, r1, 0x4000002
+ ldrh r3, [r2]
+ tst r3, 0x80
+ beq _082E3C20
+ ldrh r3, [r2]
+ tst r3, 0x3
+ bne _082E3BFC
+ mov r2, 0xFF00
+ add r1, r1, 0x4000000
+ ldrh r3, [r1]
+ add r2, r2, 0x9B
+ cmp r3, r2
+ bls _082E3C20
+_082E3BE4:
+ ldrh r3, [r1]
+ cmp r3, r2
+ bhi _082E3BE4
+ b _082E3C20
+ .align 2, 0
+_082E3BF4: .4byte gRfuState
+_082E3BF8: .4byte 0x996601ee
+_082E3BFC:
+ mov r2, 0xFF00
+ add r1, r1, 0x4000000
+ ldrh r3, [r1]
+ add r2, r2, 0xFE
+ cmp r3, r2
+ bls _082E3C20
+_082E3C14:
+ ldrh r3, [r1]
+ cmp r3, r2
+ bhi _082E3C14
+_082E3C20:
+ mov r1, 0x128
+ add r1, r1, 0x4000000
+ mov r0, 0x208
+ add r0, r0, 0x4000000
+ mov r3, 0x5000
+ add r2, r3, 0x2
+ strh r2, [r1]
+ add r3, r3, 0x82
+ strh r3, [r1]
+ mov r2, 0x1
+ strh r2, [r0]
+_082E3C4C:
+ ldmdb r11, {r4-r6,r11,sp,lr}
+ bx lr
+ arm_func_end sio32intr_clock_slave
+
+ arm_func_start handshake_wait
+handshake_wait: @ 82E3C54
+ mov r12, sp
+ stmdb sp!, {r11,r12,lr,pc}
+ mov r1, 0x128
+ add r1, r1, 0x4000000
+ mov r0, r0, lsl 16
+ ldr r2, _082E3CB8
+ sub r11, r12, 0x4
+ mov lr, r0, lsr 14
+ ldr r12, [r2]
+_082E3C78:
+ ldrb r3, [r12, 0x10]
+ and r0, r3, 0xFF
+ cmp r0, 0x1
+ beq _082E3CA4
+ ldrh r3, [r1]
+ and r3, r3, 0x4
+ cmp r3, lr
+ bne _082E3C78
+ mov r0, 0
+ ldmdb r11, {r11,sp,lr}
+ bx lr
+_082E3CA4:
+ ldr r2, [r2]
+ mov r3, 0
+ strb r3, [r2, 0x10]
+ ldmdb r11, {r11,sp,lr}
+ bx lr
+ .align 2, 0
+_082E3CB8: .4byte gRfuState
+ arm_func_end handshake_wait
+
+ arm_func_start STWI_set_timer_in_RAM
+STWI_set_timer_in_RAM: @ 82E3CBC
+ mov r12, sp
+ stmdb sp!, {r4,r5,r11,r12,lr,pc}
+ mov r1, 0x208
+ add r1, r1, 0x4000000
+ mov r3, 0
+ sub r11, r12, 0x4
+ ldr r12, _082E3D74
+ and lr, r0, 0xFF
+ ldr r2, [r12]
+ cmp lr, 0x50
+ ldrb r0, [r2, 0xA]
+ mov r4, r12
+ mov r2, lr
+ strh r3, [r1]
+ mov r0, r0, lsl 2
+ add r3, r3, 0x100
+ add r1, r3, 0x4000000
+ add r3, r3, 0x4000002
+ add r5, r0, r3
+ beq _082E3D44
+ bgt _082E3D1C
+ cmp lr, 0x32
+ beq _082E3D30
+ b _082E3D90
+_082E3D1C:
+ cmp r2, 0x64
+ beq _082E3D5C
+ cmp r2, 0x82
+ beq _082E3D78
+ b _082E3D90
+_082E3D30:
+ mvn r3, 0x334
+ strh r3, [r0, r1]
+ ldr r2, [r4]
+ mov r3, 0x1
+ b _082E3D8C
+_082E3D44:
+ mov r3, 0xAE000000
+ mov r3, r3, asr 20
+ strh r3, [r0, r1]
+ ldr r2, [r4]
+ mov r3, 0x2
+ b _082E3D8C
+_082E3D5C:
+ mvn r3, 0x660
+ sub r3, r3, 0x9
+ strh r3, [r0, r1]
+ ldr r2, [r4]
+ mov r3, 0x3
+ b _082E3D8C
+ .align 2, 0
+_082E3D74: .4byte gRfuState
+_082E3D78:
+ mvn r3, 0x850
+ sub r3, r3, 0x2
+ strh r3, [r0, r1]
+ ldr r2, [r4]
+ mov r3, 0x4
+_082E3D8C:
+ str r3, [r2, 0xC]
+_082E3D90:
+ mov r12, 0x200
+ add r12, r12, 0x4000002
+ mov r3, 0xC3
+ strh r3, [r5]
+ mov r1, 0x208
+ ldr r2, [r4]
+ add r1, r1, 0x4000000
+ ldrb r0, [r2, 0xA]
+ sub r3, r3, 0xBB
+ mov r3, r3, lsl r0
+ strh r3, [r12]
+ mov r2, 0x1
+ strh r2, [r1]
+ ldmdb r11, {r4,r5,r11,sp,lr}
+ bx lr
+ arm_func_end STWI_set_timer_in_RAM
+
+ arm_func_start STWI_stop_timer_in_RAM
+STWI_stop_timer_in_RAM: @ 82E3DCC
+ mov r12, sp
+ stmdb sp!, {r11,r12,lr,pc}
+ mov r1, 0x100
+ ldr lr, _082E3E18
+ add r0, r1, 0x4000000
+ ldr r2, [lr]
+ sub r11, r12, 0x4
+ ldrb r3, [r2, 0xA]
+ mov r12, 0
+ str r12, [r2, 0xC]
+ mov r3, r3, lsl 2
+ strh r12, [r3, r0]
+ ldr r2, [lr]
+ ldrb r3, [r2, 0xA]
+ add r1, r1, 0x4000002
+ mov r3, r3, lsl 2
+ strh r12, [r3, r1]
+ ldmdb r11, {r11,sp,lr}
+ bx lr
+ .align 2, 0
+_082E3E18: .4byte gRfuState
+ arm_func_end STWI_stop_timer_in_RAM
+
+ arm_func_start STWI_init_slave
+STWI_init_slave: @ 82E3E1C
+ mov r12, sp
+ stmdb sp!, {r11,r12,lr,pc}
+ ldr r0, _082E3EA4
+ ldr r2, [r0]
+ mov r3, 0x5
+ str r3, [r2]
+ mov r1, 0
+ strb r1, [r2, 0x14]
+ ldr r3, [r0]
+ strb r1, [r3, 0x4]
+ ldr r2, [r0]
+ strb r1, [r2, 0x5]
+ ldr r3, [r0]
+ strb r1, [r3, 0x6]
+ ldr r2, [r0]
+ strb r1, [r2, 0x7]
+ ldr r3, [r0]
+ strb r1, [r3, 0x8]
+ ldr r2, [r0]
+ strb r1, [r2, 0x9]
+ ldr r3, [r0]
+ str r1, [r3, 0xC]
+ sub r11, r12, 0x4
+ strb r1, [r3, 0x10]
+ mov r2, 0x128
+ ldr r12, [r0]
+ add r2, r2, 0x4000000
+ strh r1, [r12, 0x12]
+ mov r3, 0x5000
+ strb r1, [r12, 0x15]
+ add r3, r3, 0x82
+ strh r3, [r2]
+ ldmdb r11, {r11,sp,lr}
+ bx lr
+ .align 2, 0
+_082E3EA4: .4byte gRfuState
+ arm_func_end STWI_init_slave
+
+ arm_func_start sub_82E3EA8
+sub_82E3EA8: @ 82E3EA8
+ bx r2
+ arm_func_end sub_82E3EA8
+
+ arm_func_start sub_82E3EAC
+sub_82E3EAC: @ 82E3EAC
+ bx r1
+ arm_func_end sub_82E3EAC
+
+ arm_func_start sub_82E3EB0
+sub_82E3EB0: @ 82E3EB0
+ bx r0
+ arm_func_end sub_82E3EB0
diff --git a/asm/link.s b/asm/link.s
index d1c8d0542..291f71a57 100644
--- a/asm/link.s
+++ b/asm/link.s
@@ -402,7 +402,7 @@ sub_8009734: @ 8009734
strb r4, [r0]
ldr r0, =gUnknown_030030F8
strb r4, [r0]
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
bl sub_800A2E0
ldr r0, =gUnknown_03000D54
str r4, [r0]
@@ -420,7 +420,7 @@ sub_8009734: @ 8009734
_080097A8:
bl sub_800E700
_080097AC:
- ldr r1, =gUnknown_03003124
+ ldr r1, =gReceivedRemoteLinkPlayers
movs r0, 0
strb r0, [r1]
movs r1, 0
@@ -448,7 +448,7 @@ _080097BE:
thumb_func_start sub_80097E8
sub_80097E8: @ 80097E8
push {r4,lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
movs r4, 0
strb r4, [r0]
ldr r0, =gLinkVSyncDisabled
@@ -514,7 +514,7 @@ _08009868:
lsrs r5, r0, 24
cmp r5, 0x3
bls _08009840
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r7, r0, 24
cmp r7, 0xF
@@ -532,7 +532,7 @@ _08009888:
cmp r0, 0
beq _080098C4
lsls r0, r5, 8
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
adds r0, r1
lsls r4, r5, 1
adds r1, r4, r5
@@ -545,7 +545,7 @@ _08009888:
movs r6, 0
strh r0, [r4]
adds r0, r5, 0
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
ldrh r0, [r4]
cmp r0, r8
beq _080098C4
@@ -752,7 +752,7 @@ _08009A78:
blt _08009A70
cmp r5, 0
bne _08009A94
- ldr r1, =gUnknown_03003124
+ ldr r1, =gReceivedRemoteLinkPlayers
ldrb r0, [r1]
cmp r0, 0
bne _08009A94
@@ -952,7 +952,7 @@ _08009C14:
.pool
_08009C40:
movs r2, 0
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
mov r9, r1
adds r7, r3, 0
ldr r3, =gUnknown_03003090
@@ -996,7 +996,7 @@ _08009C70:
cmp r0, 0x1
bne _08009D16
lsls r1, r6, 8
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
adds r1, r0
mov r8, r1
lsls r0, r6, 3
@@ -1080,7 +1080,7 @@ _08009D3E:
adds r2, r3
ldrh r2, [r2]
movs r0, 0
- bl link_0800A448
+ bl SendBlock
b _08009D6E
.pool
_08009D64:
@@ -1321,7 +1321,7 @@ _08009F6A:
thumb_func_start sub_8009F70
sub_8009F70: @ 8009F70
push {lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _08009F80
@@ -1371,8 +1371,8 @@ _08009FC4:
.pool
thumb_func_end sub_8009FAC
- thumb_func_start sub_8009FCC
-sub_8009FCC: @ 8009FCC
+ thumb_func_start GetLinkPlayerCount
+GetLinkPlayerCount: @ 8009FCC
push {lr}
ldr r0, =gLinkVSyncDisabled
ldrb r0, [r0]
@@ -1392,14 +1392,14 @@ _08009FEC:
_08009FF4:
pop {r1}
bx r1
- thumb_func_end sub_8009FCC
+ thumb_func_end GetLinkPlayerCount
thumb_func_start sub_8009FF8
sub_8009FF8: @ 8009FF8
push {r4-r7,lr}
adds r6, r0, 0
adds r5, r1, 0
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r4, r0, 24
movs r2, 0
@@ -1442,7 +1442,7 @@ sub_800A03C: @ 800A03C
thumb_func_start sub_800A040
sub_800A040: @ 800A040
push {lr}
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -1526,7 +1526,7 @@ sub_800A0C8: @ 800A0C8
adds r5, r0, 0
adds r6, r1, 0
movs r7, 0
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r4, [r0]
cmp r4, 0x1
beq _0800A0DA
@@ -1546,7 +1546,7 @@ _0800A0EA:
b _0800A22E
.pool
_0800A0FC:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
cmp r0, 0
bne _0800A10E
@@ -1572,12 +1572,12 @@ _0800A130:
adds r5, 0x1C
adds r6, 0x1
_0800A134:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r6, r0
blt _0800A120
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r7, r0
@@ -1714,12 +1714,12 @@ _0800A266:
lsls r0, 24
lsrs r4, r0, 24
_0800A26C:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r4, r0
bcc _0800A24C
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r6, r0
@@ -1742,8 +1742,8 @@ _0800A298:
.pool
thumb_func_end sub_800A23C
- thumb_func_start sub_800A2A4
-sub_800A2A4: @ 800A2A4
+ thumb_func_start GetLinkPlayerTrainerId
+GetLinkPlayerTrainerId: @ 800A2A4
lsls r0, 24
lsrs r0, 24
ldr r2, =gLinkPlayers
@@ -1755,7 +1755,7 @@ sub_800A2A4: @ 800A2A4
ldr r0, [r1]
bx lr
.pool
- thumb_func_end sub_800A2A4
+ thumb_func_end GetLinkPlayerTrainerId
thumb_func_start sub_800A2BC
sub_800A2BC: @ 800A2BC
@@ -2008,8 +2008,8 @@ bitmask_all_link_players_but_self: @ 800A490
bx r1
thumb_func_end bitmask_all_link_players_but_self
- thumb_func_start link_0800A448
-link_0800A448: @ 800A4AC
+ thumb_func_start SendBlock
+SendBlock: @ 800A4AC
push {lr}
adds r3, r1, 0
lsls r2, 16
@@ -2030,7 +2030,7 @@ _0800A4CE:
lsrs r0, 24
pop {r1}
bx r1
- thumb_func_end link_0800A448
+ thumb_func_end SendBlock
thumb_func_start sub_800A4D8
sub_800A4D8: @ 800A4D8
@@ -2095,8 +2095,8 @@ _0800A546:
.pool
thumb_func_end sub_800A520
- thumb_func_start sub_800A550
-sub_800A550: @ 800A550
+ thumb_func_start GetBlockReceivedStatus
+GetBlockReceivedStatus: @ 800A550
push {lr}
ldr r0, =gLinkVSyncDisabled
ldrb r0, [r0]
@@ -2122,7 +2122,7 @@ _0800A580:
lsrs r0, 24
pop {r1}
bx r1
- thumb_func_end sub_800A550
+ thumb_func_end GetBlockReceivedStatus
thumb_func_start sub_800A588
sub_800A588: @ 800A588
@@ -2148,8 +2148,8 @@ _0800A5AC:
.pool
thumb_func_end sub_800A588
- thumb_func_start sub_800A5B4
-sub_800A5B4: @ 800A5B4
+ thumb_func_start ResetBlockReceivedFlags
+ResetBlockReceivedFlags: @ 800A5B4
push {r4,lr}
ldr r0, =gLinkVSyncDisabled
ldrb r0, [r0]
@@ -2179,10 +2179,10 @@ _0800A5E2:
pop {r0}
bx r0
.pool
- thumb_func_end sub_800A5B4
+ thumb_func_end ResetBlockReceivedFlags
- thumb_func_start sub_800A5EC
-sub_800A5EC: @ 800A5EC
+ thumb_func_start ResetBlockReceivedFlag
+ResetBlockReceivedFlag: @ 800A5EC
push {lr}
lsls r0, 24
lsrs r1, r0, 24
@@ -2206,7 +2206,7 @@ _0800A616:
pop {r0}
bx r0
.pool
- thumb_func_end sub_800A5EC
+ thumb_func_end ResetBlockReceivedFlag
thumb_func_start sub_800A620
sub_800A620: @ 800A620
@@ -2573,7 +2573,7 @@ task00_link_test: @ 800A850
movs r2, 0x2
movs r3, 0x2
bl sub_800A6E8
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
movs r1, 0xF
@@ -2697,7 +2697,7 @@ _0800A9E2:
lsrs r4, r0, 24
adds r5, 0x1
_0800A9EE:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -3044,7 +3044,7 @@ _0800AC96:
thumb_func_start sub_800ACAC
sub_800ACAC: @ 800ACAC
push {r4,lr}
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r2, r0, 24
movs r3, 0
@@ -3142,7 +3142,7 @@ _0800AD72:
thumb_func_start sub_800AD88
sub_800AD88: @ 800AD88
push {r4,r5,lr}
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r3, r0, 24
movs r1, 0
@@ -3239,7 +3239,7 @@ _0800AE46:
thumb_func_start sub_800AE5C
sub_800AE5C: @ 800AE5C
push {r4,lr}
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r2, r0, 24
movs r1, 0
@@ -3813,7 +3813,7 @@ sub_800B3A4: @ 800B3A4
lsls r0, 24
lsrs r0, 24
lsls r2, r0, 8
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
adds r4, r2, r1
lsls r2, r0, 3
subs r2, r0
@@ -3907,7 +3907,7 @@ _0800B482:
thumb_func_start sub_800B488
sub_800B488: @ 800B488
push {lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0800B498
@@ -3923,7 +3923,7 @@ _0800B498:
thumb_func_start sub_800B4A4
sub_800B4A4: @ 800B4A4
push {lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r1, [r0]
cmp r1, 0
bne _0800B4B2
@@ -3938,7 +3938,7 @@ _0800B4B2:
thumb_func_start sub_800B4C0
sub_800B4C0: @ 800B4C0
push {lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r1, [r0]
cmp r1, 0
bne _0800B4CE
@@ -9671,7 +9671,7 @@ _0800E1C8:
lsls r0, 24
lsrs r5, r0, 24
_0800E1E6:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
subs r0, 0x1
@@ -9965,7 +9965,7 @@ _0800E428:
ble _0800E3FC
mov r4, r9
_0800E434:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -10019,7 +10019,7 @@ _0800E4A6:
adds r5, 0x1C
adds r4, 0x1
_0800E4AC:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -11500,7 +11500,7 @@ _0800F18C:
cmp r4, 0
bne _0800F1A8
bl sub_800EDD4
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
strb r4, [r0]
b _0800F1D2
.pool
@@ -11976,7 +11976,7 @@ _0800F514:
bl sub_8011A64
_0800F58C:
bl rfu_clearAllSlot
- ldr r1, =gUnknown_03003124
+ ldr r1, =gReceivedRemoteLinkPlayers
movs r0, 0
strb r0, [r1]
ldr r0, =gUnknown_03005000
@@ -12224,7 +12224,7 @@ _0800F786:
thumb_func_start rfu_func_080F97B8
rfu_func_080F97B8: @ 800F794
push {lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0800F7C6
@@ -12430,7 +12430,7 @@ _0800F90E:
ldrb r0, [r4, 0xC]
cmp r0, 0
bne _0800F920
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0800F920
@@ -12536,7 +12536,7 @@ _0800F9EA:
orrs r0, r3
str r0, [r1]
movs r4, 0
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
mov r9, r0
mov r12, r2
mov r1, r8
@@ -12599,7 +12599,7 @@ _0800FA5C:
beq _0800FA7E
b _0800FC08
_0800FA7E:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0800FA88
@@ -12610,7 +12610,7 @@ _0800FA88:
beq _0800FA90
b _0800FC08
_0800FA90:
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
bl sub_8010A70
b _0800FC08
.pool
@@ -12662,7 +12662,7 @@ _0800FB10:
ldrb r2, [r7, 0xC]
cmp r2, 0
bne _0800FB78
- ldr r3, =gUnknown_03003124
+ ldr r3, =gReceivedRemoteLinkPlayers
ldrb r0, [r3]
mov r6, r8
adds r6, 0x1
@@ -13410,7 +13410,7 @@ sub_801011C: @ 801011C
push {lr}
bl rfu_clearAllSlot
bl sub_800C048
- ldr r1, =gUnknown_03003124
+ ldr r1, =gReceivedRemoteLinkPlayers
movs r0, 0
strb r0, [r1]
ldr r2, =gUnknown_03005000
@@ -13627,7 +13627,7 @@ sub_80102B8: @ 80102B8
bl sub_800FD14
strh r4, [r5]
_080102E6:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r2, r0, 24
movs r1, 0
@@ -13734,7 +13734,7 @@ sub_8010390: @ 8010390
b _0801041C
.pool
_080103CC:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r2, r0, 24
movs r1, 0x1
@@ -14374,14 +14374,14 @@ _080108B6:
bne _080108C2
b _080109D2
_080108C2:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
bl sub_800B348
b _08010948
_080108CC:
ldrb r0, [r5, 0xC]
cmp r0, 0x1
bne _0801090C
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080108E8
@@ -14471,7 +14471,7 @@ _0801096E:
_08010984:
adds r0, r6, 0
bl DestroyTask
- ldr r1, =gUnknown_03003124
+ ldr r1, =gReceivedRemoteLinkPlayers
movs r0, 0x1
strb r0, [r1]
ldr r0, =0x00000ce8
@@ -14607,7 +14607,7 @@ sub_8010A70: @ 8010A70
adds r1, r4, 0
bl CpuSet
movs r0, 0
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
_08010A9C:
add sp, 0x4
pop {r4,r5}
@@ -14683,7 +14683,7 @@ _08010B40:
b _08010CF0
_08010B4A:
adds r0, r4, 0
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
movs r0, 0xF0
lsls r0, 7
bl sub_800FD14
@@ -14702,7 +14702,7 @@ _08010B6A:
b _08010C52
.pool
_08010B78:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
asrs r0, r4
@@ -14713,9 +14713,9 @@ _08010B78:
b _08010CF0
_08010B8C:
adds r0, r4, 0
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
lsls r2, r4, 8
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
adds r2, r0
ldr r1, =gLinkPlayers
lsls r0, r4, 3
@@ -14799,7 +14799,7 @@ _08010C20:
ldr r1, =gUnknown_020228C4
movs r0, 0
movs r2, 0xA0
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _08010CF0
@@ -14833,7 +14833,7 @@ _08010C94:
lsls r0, 24
cmp r0, 0
beq _08010CF0
- bl sub_800A550
+ bl GetBlockReceivedStatus
movs r1, 0x1
ands r1, r0
cmp r1, 0
@@ -14841,11 +14841,11 @@ _08010C94:
mov r0, sp
movs r4, 0
strh r4, [r0]
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
ldr r2, =0x0100007e
bl CpuSet
movs r0, 0
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
ldr r1, =gUnknown_03005000
ldr r5, =0x00000ce8
adds r0, r1, r5
@@ -14924,7 +14924,7 @@ _08010D56:
ldr r1, =gUnknown_020228C4
movs r0, 0
movs r2, 0x3C
- bl link_0800A448
+ bl SendBlock
b _08010D7A
.pool
_08010D70:
@@ -14938,17 +14938,17 @@ _08010D7A:
strh r0, [r4, 0x8]
b _08010DA6
_08010D82:
- bl sub_800A550
+ bl GetBlockReceivedStatus
movs r4, 0x1
adds r1, r4, 0
ands r1, r0
cmp r1, 0
beq _08010DA6
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
bl sub_8010A14
movs r0, 0
- bl sub_800A5EC
- ldr r0, =gUnknown_03003124
+ bl ResetBlockReceivedFlag
+ ldr r0, =gReceivedRemoteLinkPlayers
strb r4, [r0]
adds r0, r5, 0
bl DestroyTask
@@ -15290,7 +15290,7 @@ _08011048:
strb r0, [r1, 0x3]
adds r4, 0x1
_08011054:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -15701,7 +15701,7 @@ _0801136C:
bics r3, r2
adds r2, r3, 0
strb r2, [r1]
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _080113B0
@@ -15912,7 +15912,7 @@ _08011544:
movs r1, 0x5
movs r2, 0x5
bl nullsub_5
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _080115DE
@@ -16397,7 +16397,7 @@ _08011958:
ldrb r0, [r2, 0xC]
cmp r0, 0x1
bne _08011996
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _080119B4
@@ -16423,7 +16423,7 @@ _08011996:
ldrb r0, [r0]
cmp r0, 0x2
beq _080119B4
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _080119B4
@@ -17502,7 +17502,7 @@ sub_801229C: @ 801229C
push {r4-r7,lr}
mov r7, r8
push {r7}
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
movs r1, 0x1C
@@ -18913,7 +18913,7 @@ _08012F14:
strb r0, [r6, 0xC]
b _08012F50
_08012F22:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08012F50
@@ -19861,7 +19861,7 @@ _080137A6:
b _08013A86
.pool
_080137C4:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0801387A
@@ -20806,11 +20806,11 @@ _08013FDE:
adds r1, r0
movs r0, 0
movs r2, 0x64
- bl link_0800A448
+ bl SendBlock
b _080140BC
.pool
_08013FFC:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
@@ -20822,13 +20822,13 @@ _08013FFC:
eors r1, r2
lsls r1, 24
lsrs r1, 16
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0x64
bl memcpy
movs r0, 0x32
bl IncrementGameStat
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
b _0801405A
.pool
_08014038:
@@ -20843,7 +20843,7 @@ _08014038:
movs r0, 0
adds r1, r4, 0
movs r2, 0xDC
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _080140BC
@@ -20854,7 +20854,7 @@ _0801405A:
b _080140BC
.pool
_08014070:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
@@ -20866,12 +20866,12 @@ _08014070:
eors r1, r0
lsls r1, 24
lsrs r1, 16
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
adds r1, r0
adds r0, r4, 0
movs r2, 0xD8
bl memcpy
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
ldr r1, =gUnknown_02032298
strb r7, [r1]
movs r0, 0x6
@@ -20925,7 +20925,7 @@ _08014114:
strh r0, [r4, 0x8]
b _0801419E
_0801411C:
- bl sub_800A550
+ bl GetBlockReceivedStatus
adds r4, r0, 0
bl sub_800A9D8
lsls r4, 24
@@ -20938,7 +20938,7 @@ _0801411C:
.pool
_08014138:
lsls r1, r4, 8
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
adds r3, r1, r0
movs r0, 0x64
muls r0, r4
@@ -20950,12 +20950,12 @@ _08014138:
adds r5, 0x1C
adds r4, 0x1
_08014152:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r4, r0
blt _08014138
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
@@ -20965,7 +20965,7 @@ _08014152:
eors r0, r1
lsls r0, 24
lsrs r0, 16
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
adds r3, r0, r1
adds r0, r3, 0
adds r0, 0x60
@@ -20976,7 +20976,7 @@ _08014152:
_08014190:
bl sub_801B940
_08014194:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
adds r0, r6, 0
bl DestroyTask
_0801419E:
@@ -21117,7 +21117,7 @@ sub_8014290: @ 8014290
asrs r5, 24
str r5, [sp]
adds r3, r4, 0
- bl warp1_set
+ bl Overworld_SetWarpDestination
ldr r0, [r6]
movs r1, 0x4
ldrsb r1, [r0, r1]
@@ -21159,7 +21159,7 @@ sub_8014304: @ 8014304
strh r1, [r0]
ldr r0, =0x00004087
bl VarSet
- bl sub_8009FCC
+ bl GetLinkPlayerCount
ldr r1, =gUnknown_03005DB8
strb r0, [r1]
bl GetMultiplayerId
@@ -21182,7 +21182,7 @@ sub_8014304: @ 8014304
adds r0, r4, 0
adds r1, r5, 0
mov r3, r8
- bl warp1_set
+ bl Overworld_SetWarpDestination
bl warp_in
add sp, 0x4
pop {r3}
@@ -21665,7 +21665,7 @@ _08014854:
movs r0, 0x4
strh r0, [r7]
bl sub_800E3A8
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
b _080149B2
.pool
_080148B8:
@@ -21723,7 +21723,7 @@ _08014934:
movs r0, 0
adds r1, r2, 0
movs r2, 0xE
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _080149B2
@@ -21731,13 +21731,13 @@ _08014934:
strh r0, [r7]
b _080149B2
_0801494A:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
bne _080149B2
- bl sub_800A5B4
- ldr r0, =gUnknown_020223C4
+ bl ResetBlockReceivedFlags
+ ldr r0, =gBlockRecvBuffer
movs r2, 0x80
lsls r2, 1
adds r1, r0, r2
@@ -21766,7 +21766,7 @@ _08014992:
strh r0, [r7]
b _080149B2
_0801499C:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080149B2
@@ -22316,7 +22316,7 @@ _08014E8C:
strb r0, [r5, 0xC]
b _08014EF2
_08014E92:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08014EF2
@@ -22636,7 +22636,7 @@ _08015180:
b _080152A0
.pool
_080151A4:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080151C2
@@ -23002,7 +23002,7 @@ _080154E0:
b _08015604
.pool
_08015504:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08015522
@@ -23714,7 +23714,7 @@ _08015BB8:
movs r0, 0x40
strb r0, [r1]
_08015BBE:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08015BCA
@@ -23750,7 +23750,7 @@ _08015C24:
movs r0, 0x5
bl _08016876
_08015C2A:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08015C36
@@ -23785,7 +23785,7 @@ _08015C54:
bne _08015C78
bl _08016878
_08015C78:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08015C94
@@ -23918,7 +23918,7 @@ _08015DA6:
bl _08016876
.pool
_08015DD0:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08015DF4
@@ -24212,7 +24212,7 @@ _08016084:
movs r0, 0x1E
bl sub_8015664
_08016092:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801609E
@@ -24241,7 +24241,7 @@ _080160C6:
movs r0, 0x2
bl _08016876
_080160DA:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080160E4
@@ -24452,7 +24452,7 @@ _080162D4:
movs r0, 0x24
b _08016876
_080162DC:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r4, [r0]
cmp r4, 0
beq _080162E6
@@ -28312,7 +28312,7 @@ _080181BC:
sub_80181CC: @ 80181CC
push {lr}
bl ScriptContext2_Enable
- bl sub_80983E8
+ bl ScriptFreezeMapObjects
pop {r0}
bx r0
thumb_func_end sub_80181CC
@@ -30478,7 +30478,7 @@ _08019406:
strb r0, [r5, 0x8]
b _08019922
_0801940C:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0801942C
@@ -30646,7 +30646,7 @@ _0801956A:
strb r0, [r5, 0x8]
b _08019922
_08019574:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0801957E
@@ -30981,7 +30981,7 @@ _080197EE:
strb r0, [r5, 0x8]
b _08019922
_080197F8:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08019810
@@ -31050,7 +31050,7 @@ _08019884:
b _08019922
.pool
_080198A0:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08019922
@@ -31292,7 +31292,7 @@ flag_clear_x63: @ 8019A64
adds r0, r1
lsls r0, 16
lsrs r0, 16
- bl FlagReset
+ bl FlagClear
pop {r0}
bx r0
.pool
@@ -33417,7 +33417,7 @@ _0801AB1E:
lsls r2, 4
adds r1, r2, 0
strh r1, [r0]
- ldr r0, =sub_8036760
+ ldr r0, =CB2_InitBattle
bl SetMainCallback2
pop {r4-r7}
pop {r0}
@@ -33741,7 +33741,7 @@ _0801AE7A:
ldr r1, =gUnknown_020228C4
movs r0, 0
movs r2, 0x20
- bl link_0800A448
+ bl SendBlock
ldr r1, =gMain
movs r2, 0x87
lsls r2, 3
@@ -33749,14 +33749,14 @@ _0801AE7A:
b _0801AF8A
.pool
_0801AE98:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
beq _0801AEA6
b _0801AFAE
_0801AEA6:
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
ldrh r0, [r1]
cmp r0, 0x51
bne _0801AEE0
@@ -33782,7 +33782,7 @@ _0801AEA6:
.pool
_0801AEE0:
bl sub_800AC34
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
bl GetMultiplayerId
lsls r0, 24
lsrs r0, 16
@@ -33805,7 +33805,7 @@ _0801AF0C:
movs r1, 0x8
_0801AF16:
strb r1, [r0]
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
b _0801AFAE
.pool
_0801AF24:
@@ -33842,7 +33842,7 @@ _0801AF58:
b _0801AFAE
.pool
_0801AF7C:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801AFAE
@@ -39072,7 +39072,7 @@ sub_801D938: @ 801D938
adds r3, r0, 0
adds r0, r1, 0
lsls r3, 8
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
adds r3, r1
adds r1, r3, 0
bl memcpy
@@ -39085,7 +39085,7 @@ sub_801D938: @ 801D938
sub_801D954: @ 801D954
push {r4,lr}
adds r4, r0, 0
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
asrs r0, r4
@@ -39108,7 +39108,7 @@ sub_801D978: @ 801D978
push {lr}
lsls r0, 24
lsrs r0, 24
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
pop {r0}
bx r0
thumb_func_end sub_801D978
@@ -39273,7 +39273,7 @@ _0801DA7C:
movs r0, 0
mov r1, sp
movs r2, 0x8
- bl link_0800A448
+ bl SendBlock
b _0801DB3E
.pool
_0801DAC8:
@@ -39300,7 +39300,7 @@ _0801DAC8:
lsls r2, r0, 16
lsrs r2, 16
movs r0, 0
- bl link_0800A448
+ bl SendBlock
ldrh r0, [r4, 0x10]
adds r0, 0x1
strh r0, [r4, 0x10]
@@ -39310,7 +39310,7 @@ _0801DB08:
adds r1, r3
movs r0, 0
movs r2, 0xFC
- bl link_0800A448
+ bl SendBlock
ldrh r0, [r4, 0x10]
adds r0, 0x1
strh r0, [r4, 0x10]
@@ -39697,7 +39697,7 @@ sub_801DDD0: @ 801DDD0
strb r5, [r4, 0x16]
movs r0, 0xFF
strb r0, [r4, 0x1A]
- bl sub_8009FCC
+ bl GetLinkPlayerCount
strb r0, [r4, 0xD]
bl GetMultiplayerId
strb r0, [r4, 0x13]
@@ -39942,7 +39942,7 @@ _0801DFE0:
adds r1, r0
movs r0, 0
movs r2, 0x28
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _0801E028
@@ -40416,7 +40416,7 @@ _0801E3D4:
adds r1, r0
movs r0, 0
movs r2, 0x28
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _0801E414
@@ -40432,14 +40432,14 @@ _0801E410:
_0801E412:
strh r0, [r1, 0x6]
_0801E414:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801E458
b _0801E42C
.pool
_0801E424:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801E438
@@ -40556,7 +40556,7 @@ _0801E50C:
adds r1, r0
movs r0, 0
movs r2, 0x28
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _0801E5BC
@@ -40564,7 +40564,7 @@ _0801E50C:
b _0801E59A
.pool
_0801E540:
- bl sub_800A550
+ bl GetBlockReceivedStatus
movs r1, 0x1
ands r1, r0
cmp r1, 0
@@ -40599,7 +40599,7 @@ _0801E584:
adds r0, 0x1
strh r0, [r1, 0xA]
_0801E590:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801E5BC
@@ -40683,7 +40683,7 @@ _0801E62E:
adds r0, 0x1
strh r0, [r1, 0xA]
_0801E638:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801E662
@@ -40798,7 +40798,7 @@ _0801E724:
adds r0, 0x1
strh r0, [r1, 0xA]
_0801E730:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801E75C
@@ -40849,7 +40849,7 @@ _0801E784:
.4byte _0801E802
.4byte _0801E820
_0801E798:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801E7AC
@@ -40883,7 +40883,7 @@ _0801E7C0:
adds r1, r0
movs r0, 0
movs r2, 0x28
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _0801E830
@@ -42276,7 +42276,7 @@ _0801F2E0:
.4byte _0801F494
.4byte _0801F438
_0801F300:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0801F30A
@@ -42285,7 +42285,7 @@ _0801F30A:
movs r0, 0x1
strh r0, [r4]
_0801F30E:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
adds r2, r0, 0
@@ -42304,7 +42304,7 @@ _0801F30E:
b _0801F4C4
.pool
_0801F33C:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x6]
@@ -42361,11 +42361,11 @@ _0801F3A2:
strh r1, [r4, 0x4]
lsls r0, r1, 24
lsrs r0, 24
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
movs r1, 0x2
ldrsh r0, [r4, r1]
lsls r0, 8
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
adds r0, r1
ldrb r0, [r0]
subs r0, 0x1
@@ -42406,7 +42406,7 @@ _0801F3F6:
movs r2, 0x2
ldrsh r1, [r4, r2]
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
bl sub_801EFF8
cmp r0, 0
@@ -42446,7 +42446,7 @@ _0801F448:
ldrsh r0, [r4, r3]
cmp r0, 0
beq _0801F47C
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
@@ -45486,7 +45486,7 @@ sub_8020C70: @ 8020C70
adds r4, r0, 0
movs r0, 0
mov r8, r0
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08020C8E
@@ -45504,7 +45504,7 @@ _08020C8E:
b _08020CF8
.pool
_08020CAC:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
mov r8, r0
@@ -49731,7 +49731,7 @@ _08022F7A:
movs r0, 0
adds r1, r4, 0
movs r2, 0x2
- bl link_0800A448
+ bl SendBlock
b _08023060
_08022FAA:
bl sub_800A520
@@ -49742,7 +49742,7 @@ _08022FAA:
strh r0, [r5, 0x10]
b _08023060
_08022FBA:
- bl sub_800A550
+ bl GetBlockReceivedStatus
ldr r2, =gUnknown_082F4448
ldrb r4, [r5, 0x9]
subs r1, r4, 0x2
@@ -49755,7 +49755,7 @@ _08022FBA:
movs r3, 0
cmp r3, r4
bcs _0802301E
- ldr r7, =gUnknown_020223C4
+ ldr r7, =gBlockRecvBuffer
movs r6, 0
ldr r4, =gUnknown_0858AB24
_08022FDC:
@@ -49796,7 +49796,7 @@ _08022FF6:
_0802301E:
movs r0, 0
strh r0, [r5, 0x10]
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
movs r1, 0x18
ldrsh r0, [r5, r1]
lsls r0, 8
@@ -51445,7 +51445,7 @@ _08023D12:
movs r0, 0
adds r1, r4, 0
movs r2, 0x2
- bl link_0800A448
+ bl SendBlock
b _0802402E
_08023D2A:
bl sub_800A520
@@ -51456,7 +51456,7 @@ _08023D2A:
_08023D36:
b _08024004
_08023D38:
- bl sub_800A550
+ bl GetBlockReceivedStatus
ldr r2, =gUnknown_082F4448
ldrb r3, [r7, 0x9]
subs r1, r3, 0x2
@@ -51474,7 +51474,7 @@ _08023D50:
adds r4, 0x42
cmp r8, r3
bcs _08023D7E
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
_08023D5E:
mov r3, r8
lsls r1, r3, 5
@@ -51496,7 +51496,7 @@ _08023D7E:
movs r0, 0
strh r0, [r7, 0x10]
strh r0, [r4]
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
ldrb r0, [r7, 0x8]
cmp r0, 0
bne _08023D9C
@@ -51788,7 +51788,7 @@ _08023FC4:
movs r0, 0
ldr r1, [sp, 0xC]
movs r2, 0x30
- bl link_0800A448
+ bl SendBlock
b _0802402E
_08023FD0:
bl sub_800A520
@@ -51797,7 +51797,7 @@ _08023FD0:
beq _08024034
b _08024004
_08023FDC:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -51808,11 +51808,11 @@ _08023FDC:
movs r1, 0
movs r2, 0x30
bl memset
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
adds r0, r4, 0
movs r2, 0x30
bl memcpy
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
_08024004:
movs r0, 0
strh r0, [r7, 0x10]
@@ -52207,7 +52207,7 @@ _08024306:
strh r5, [r0]
movs r0, 0
movs r2, 0x2
- bl link_0800A448
+ bl SendBlock
b _080243AC
_08024328:
bl sub_800A520
@@ -52217,7 +52217,7 @@ _08024328:
strh r5, [r4, 0x10]
b _080243AC
_08024336:
- bl sub_800A550
+ bl GetBlockReceivedStatus
ldr r2, =gUnknown_082F4448
ldrb r3, [r4, 0x9]
subs r1, r3, 0x2
@@ -52234,7 +52234,7 @@ _08024336:
cmp r5, r3
bcs _08024374
adds r1, r6, 0
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
_0802435C:
lsls r0, r5, 8
adds r0, r2
@@ -52264,7 +52264,7 @@ _08024390:
movs r2, 0
bl sub_8022BEC
_0802439A:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
movs r1, 0
movs r0, 0
strh r0, [r7]
@@ -52485,7 +52485,7 @@ _08024528:
bl sub_800AC34
b _08024558
_08024538:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0802455E
@@ -53023,7 +53023,7 @@ sub_802493C: @ 802493C
ldr r1, =gUnknown_03000DB0
movs r0, 0
str r0, [r1]
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08024A10
@@ -53271,7 +53271,7 @@ _08024B2C:
_08024B6A:
ldr r0, [sp, 0x10]
strb r1, [r0]
- bl sub_8009FCC
+ bl GetLinkPlayerCount
mov r1, r8
strb r0, [r1]
bl GetMultiplayerId
@@ -53382,7 +53382,7 @@ _08024C5A:
lsls r0, 24
cmp r0, 0
beq _08024D40
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08024D20
@@ -53989,7 +53989,7 @@ _0802516C:
thumb_func_start sub_8025170
sub_8025170: @ 8025170
push {r4,lr}
- bl sub_800A550
+ bl GetBlockReceivedStatus
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
@@ -54001,7 +54001,7 @@ sub_8025170: @ 8025170
movs r0, 0
b _08025192
_0802518C:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
movs r0, 0x1
_08025192:
pop {r4}
@@ -54031,7 +54031,7 @@ _080251BA:
adds r1, 0x4A
movs r0, 0
movs r2, 0x3C
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _08025226
@@ -54115,7 +54115,7 @@ _08025252:
adds r1, r2, r1
movs r0, 0
movs r2, 0x3C
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _08025316
@@ -54139,7 +54139,7 @@ _08025282:
_0802528E:
ldr r0, [r5]
adds r0, 0x4A
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
movs r2, 0x3C
bl memcpy
ldr r1, [r5]
@@ -54265,7 +54265,7 @@ _0802539C:
strb r0, [r1]
movs r0, 0
movs r2, 0x1
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _08025466
@@ -54302,7 +54302,7 @@ _080253DC:
adds r3, r1, 0
movs r5, 0x86
lsls r5, 1
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
_080253FA:
ldr r1, [r3]
adds r1, r2, r1
@@ -54452,7 +54452,7 @@ _0802553C:
strb r0, [r1]
movs r0, 0
movs r2, 0x1
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _0802563C
@@ -54486,7 +54486,7 @@ _08025578:
adds r3, r1, 0
movs r5, 0x86
lsls r5, 1
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
_08025596:
ldr r1, [r3]
adds r1, r2, r1
@@ -54617,7 +54617,7 @@ _08025688:
strb r0, [r1, 0x10]
b _080256A0
_08025692:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080256A0
@@ -54829,7 +54829,7 @@ _0802585C:
bl sub_802903C
ldr r0, [r4]
bl sub_8024A30
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08025882
@@ -54946,7 +54946,7 @@ _0802593E:
adds r1, r0
movs r0, 0
movs r2, 0x1
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
cmp r0, 0
beq _080259E8
@@ -54976,7 +54976,7 @@ _0802597E:
cmp r2, r0
bcs _080259C4
adds r3, r1, 0
- ldr r5, =gUnknown_020223C4
+ ldr r5, =gBlockRecvBuffer
ldr r4, =0x0000318c
_0802599A:
ldr r0, [r3]
@@ -57700,7 +57700,7 @@ _08026EF6:
adds r4, 0xC
adds r5, 0x1
_08026EFE:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -58643,7 +58643,7 @@ sub_8027660: @ 8027660
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0802768C
@@ -59511,7 +59511,7 @@ _08027C76:
thumb_func_start sub_8027D20
sub_8027D20: @ 8027D20
push {lr}
- bl sub_8009FCC
+ bl GetLinkPlayerCount
ldr r1, =gUnknown_02022C98
ldr r1, [r1]
adds r1, 0x24
@@ -64818,7 +64818,7 @@ sub_802A9A8: @ 802A9A8
adds r6, r1, 0
lsls r0, 16
lsrs r7, r0, 16
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0802AA3C
@@ -64891,7 +64891,7 @@ sub_802AA48: @ 802AA48
sub_802AA60: @ 802AA60
push {r4,lr}
adds r4, r0, 0
- bl sub_8009FCC
+ bl GetLinkPlayerCount
movs r2, 0
strb r0, [r4, 0x5]
adds r1, r4, 0
@@ -67232,7 +67232,7 @@ _0802BD02:
b _0802BD24
.pool
_0802BD14:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0802BD24
@@ -68775,7 +68775,7 @@ _0802C8A4:
thumb_func_start sub_802C8AC
sub_802C8AC: @ 802C8AC
push {lr}
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
pop {r1}
@@ -71211,7 +71211,7 @@ sub_802DBF8: @ 802DBF8
movs r6, 0
cmp r6, r10
bge _0802DC62
- ldr r0, =gUnknown_08300D38
+ ldr r0, =gMonFrontPicCoords
mov r9, r0
ldr r1, =gUnknown_02022D00
mov r8, r1
@@ -73081,7 +73081,7 @@ sub_802EAB0: @ 802EAB0
lsls r1, 3
ldr r0, =gTasks + 0x8
adds r4, r1, r0
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0802EB14
diff --git a/asm/macros/event.s b/asm/macros/event.s
index ee9c42c97..b5fefb925 100644
--- a/asm/macros/event.s
+++ b/asm/macros/event.s
@@ -241,14 +241,14 @@
@ Calls a special function; that is, a piece of ASM code designed for use by scripts and listed in a table of pointers.
.macro special function
.byte 0x25
- .2byte \function
+ .2byte SPECIAL_\function
.endm
@ Calls a special function. That function's output (if any) will be written to the variable you specify.
.macro specialval output, function
.byte 0x26
.2byte \output
- .2byte \function
+ .2byte SPECIAL_\function
.endm
@ Blocks script execution until a command or ASM code manually unblocks it. Generally used with specific commands and specials. If this command runs, and a subsequent command or piece of ASM does not unblock state, the script will remain blocked indefinitely (essentially a hang).
diff --git a/asm/mail.s b/asm/mail.s
deleted file mode 100644
index 5f76a5ef0..000000000
--- a/asm/mail.s
+++ /dev/null
@@ -1,1035 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8121478
-sub_8121478: @ 8121478
- push {r4-r7,lr}
- sub sp, 0x4
- adds r5, r0, 0
- adds r7, r1, 0
- lsls r2, 24
- lsrs r6, r2, 24
- ldr r4, =gUnknown_0203A134
- ldr r0, =0x0000222c
- bl AllocZeroed
- str r0, [r4]
- ldr r1, =0x0000021d
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- ldr r0, [r4]
- ldr r2, =0x0000021e
- adds r0, r2
- movs r1, 0x1
- strb r1, [r0]
- ldr r4, [r4]
- movs r3, 0x88
- lsls r3, 2
- adds r1, r4, r3
- ldr r0, =CopyEasyChatWord
- str r0, [r1]
- movs r0, 0x89
- lsls r0, 2
- adds r1, r4, r0
- ldr r0, =ConvertEasyChatWordsToString
- str r0, [r1]
- ldrh r1, [r5, 0x20]
- adds r0, r1, 0
- subs r0, 0x79
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xB
- bhi _081214E8
- subs r1, 0x79
- subs r2, 0x4
- adds r0, r4, r2
- strb r1, [r0]
- b _081214F2
- .pool
-_081214E8:
- ldr r3, =0x0000021a
- adds r1, r4, r3
- movs r0, 0
- strb r0, [r1]
- movs r6, 0
-_081214F2:
- ldr r0, =gUnknown_0203A134
- ldr r1, [r0]
- ldr r2, =0x0000021e
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _08121504
- cmp r0, 0x1
- beq _0812152C
-_08121504:
- movs r3, 0x8A
- lsls r3, 2
- adds r2, r1, r3
- subs r3, 0xE
- adds r0, r1, r3
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, =gUnknown_0859F3B4
- b _08121540
- .pool
-_0812152C:
- movs r0, 0x8A
- lsls r0, 2
- adds r2, r1, r0
- ldr r3, =0x0000021a
- adds r0, r1, r3
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, =gUnknown_0859F458
-_08121540:
- adds r0, r1
- str r0, [r2]
- ldrh r0, [r5, 0x1E]
- mov r1, sp
- bl sub_80D45E8
- lsls r0, 16
- ldr r1, =0xffff0000
- adds r0, r1
- movs r1, 0xCD
- lsls r1, 17
- cmp r0, r1
- bhi _081215AC
- ldr r1, =gUnknown_0203A134
- ldr r2, [r1]
- ldr r3, =0x0000021a
- adds r0, r2, r3
- ldrb r0, [r0]
- adds r3, r1, 0
- cmp r0, 0x6
- beq _0812158C
- cmp r0, 0x9
- beq _0812159C
- ldr r0, =0x0000021b
- adds r1, r2, r0
- movs r0, 0
- strb r0, [r1]
- b _081215BA
- .pool
-_0812158C:
- ldr r0, =0x0000021b
- adds r1, r2, r0
- movs r0, 0x1
- strb r0, [r1]
- b _081215BA
- .pool
-_0812159C:
- ldr r0, =0x0000021b
- adds r1, r2, r0
- movs r0, 0x2
- strb r0, [r1]
- b _081215BA
- .pool
-_081215AC:
- ldr r0, =gUnknown_0203A134
- ldr r1, [r0]
- ldr r2, =0x0000021b
- adds r1, r2
- movs r2, 0
- strb r2, [r1]
- adds r3, r0, 0
-_081215BA:
- ldr r1, [r3]
- movs r3, 0x85
- lsls r3, 2
- adds r0, r1, r3
- str r5, [r0]
- movs r2, 0x83
- lsls r2, 2
- adds r0, r1, r2
- str r7, [r0]
- adds r3, 0x4
- adds r0, r1, r3
- strb r6, [r0]
- ldr r0, =sub_81219F0
- bl SetMainCallback2
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8121478
-
- thumb_func_start sub_81215EC
-sub_81215EC: @ 81215EC
- push {r4-r6,lr}
- sub sp, 0xC
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x12
- bls _08121600
- b _081219E2
-_08121600:
- lsls r0, 2
- ldr r1, =_08121614
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08121614:
- .4byte _08121660
- .4byte _0812166E
- .4byte _08121688
- .4byte _0812168E
- .4byte _08121694
- .4byte _0812169A
- .4byte _081216F4
- .4byte _08121730
- .4byte _08121740
- .4byte _08121774
- .4byte _08121782
- .4byte _081217D8
- .4byte _081217EC
- .4byte _081218B0
- .4byte _081218CC
- .4byte _081218EC
- .4byte _081218F6
- .4byte _08121910
- .4byte _08121980
-_08121660:
- movs r0, 0
- bl SetVBlankCallback
- bl remove_some_task
- movs r0, 0
- b _081216EC
-_0812166E:
- add r1, sp, 0x8
- movs r0, 0
- strh r0, [r1]
- movs r1, 0xE0
- lsls r1, 19
- ldr r2, =0x01000200
- add r0, sp, 0x8
- bl CpuSet
- b _081219D4
- .pool
-_08121688:
- bl ResetPaletteFade
- b _081219D4
-_0812168E:
- bl ResetTasks
- b _081219D4
-_08121694:
- bl ResetSpriteData
- b _081219D4
-_0812169A:
- bl FreeAllSpritePalettes
- bl reset_temp_tile_data_buffers
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
-_081216EC:
- movs r1, 0
- bl SetGpuReg
- b _081219D4
-_081216F4:
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_0859F290
- movs r0, 0
- movs r2, 0x3
- bl InitBgsFromTemplates
- ldr r4, =gUnknown_0203A134
- ldr r1, [r4]
- movs r2, 0x8B
- lsls r2, 2
- adds r1, r2
- movs r0, 0x1
- bl SetBgTilemapBuffer
- ldr r1, [r4]
- ldr r0, =0x0000122c
- adds r1, r0
- movs r0, 0x2
- bl SetBgTilemapBuffer
- b _081219D4
- .pool
-_08121730:
- ldr r0, =gUnknown_0859F29C
- bl InitWindows
- bl DeactivateAllTextPrinters
- b _081219D4
- .pool
-_08121740:
- ldr r2, =gUnknown_0859F2B8
- ldr r0, =gUnknown_0203A134
- ldr r0, [r0]
- ldr r1, =0x0000021a
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, 0x4
- adds r0, r2
- ldr r1, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl decompress_and_copy_tile_data_to_vram
- b _081219D4
- .pool
-_08121774:
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- cmp r0, 0
- bne _08121780
- b _081219D4
-_08121780:
- b _081219E2
-_08121782:
- movs r5, 0x1E
- str r5, [sp]
- movs r4, 0x14
- str r4, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect_Palette0
- str r5, [sp]
- str r4, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect_Palette0
- ldr r2, =gUnknown_0859F2B8
- ldr r0, =gUnknown_0203A134
- ldr r0, [r0]
- ldr r1, =0x0000021a
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, 0x8
- adds r0, r2
- ldr r1, [r0]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- b _081219D4
- .pool
-_081217D8:
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- b _081219D4
-_081217EC:
- bl sub_8098C64
- movs r1, 0xF0
- movs r2, 0x20
- bl LoadPalette
- ldr r6, =gPlttBufferUnfaded
- ldr r4, =gUnknown_0859F2B8
- ldr r0, =gUnknown_0203A134
- ldr r3, [r0]
- ldr r2, =0x0000021a
- adds r3, r2
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x10]
- subs r2, 0x26
- adds r0, r6, r2
- strh r1, [r0]
- ldr r5, =gPlttBufferFaded
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x10]
- adds r2, r5, r2
- strh r0, [r2]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x12]
- movs r2, 0xFB
- lsls r2, 1
- adds r0, r6, r2
- strh r1, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x12]
- adds r2, r5, r2
- strh r0, [r2]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- movs r1, 0
- movs r2, 0x20
- bl LoadPalette
- ldr r1, =gUnknown_0859F2B0
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r0, [r2, 0x8]
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r6, 0x14]
- ldrb r0, [r2, 0x8]
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r5, 0x14]
- ldrb r0, [r2, 0x8]
- lsls r0, 2
- adds r1, 0x2
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r6, 0x16]
- ldrb r0, [r2, 0x8]
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r5, 0x16]
- b _081219D4
- .pool
-_081218B0:
- ldr r0, =gUnknown_0203A134
- ldr r0, [r0]
- movs r1, 0x86
- lsls r1, 2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _081218C2
- b _081219D4
-_081218C2:
- bl sub_8121A1C
- b _081219D4
- .pool
-_081218CC:
- ldr r0, =gUnknown_0203A134
- ldr r0, [r0]
- movs r2, 0x86
- lsls r2, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _081218DE
- b _081219D4
-_081218DE:
- bl sub_8121B1C
- bl RunTextPrinters
- b _081219D4
- .pool
-_081218EC:
- bl sub_8087598
- cmp r0, 0x1
- bne _081219D4
- b _081219E2
-_081218F6:
- ldr r0, =sub_8121C50
- bl SetVBlankCallback
- ldr r2, =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- b _081219D4
- .pool
-_08121910:
- ldr r5, =gUnknown_0203A134
- ldr r0, [r5]
- movs r1, 0x85
- lsls r1, 2
- adds r0, r1
- ldr r0, [r0]
- ldrh r0, [r0, 0x1E]
- bl sub_80D2E84
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, [r5]
- ldr r2, =0x0000021b
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _08121940
- cmp r0, 0x2
- beq _08121958
- b _081219D4
- .pool
-_08121940:
- adds r0, r4, 0
- bl sub_80D2F68
- ldr r1, =SpriteCallbackDummy
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r2, 0x60
- b _0812196A
- .pool
-_08121958:
- adds r0, r4, 0
- bl sub_80D2F68
- ldr r1, =SpriteCallbackDummy
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r2, 0x28
-_0812196A:
- movs r3, 0x80
- bl sub_80D2D78
- ldr r1, [r5]
- movs r2, 0x87
- lsls r2, 2
- adds r1, r2
- strb r0, [r1]
- b _081219D4
- .pool
-_08121980:
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r2, =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x8]
- ldr r0, =gUnknown_0203A134
- ldr r0, [r0]
- movs r1, 0x84
- lsls r1, 2
- adds r0, r1
- ldr r1, =sub_8121C98
- str r1, [r0]
- movs r0, 0x1
- b _081219E4
- .pool
-_081219D4:
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_081219E2:
- movs r0, 0
-_081219E4:
- add sp, 0xC
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81215EC
-
- thumb_func_start sub_81219F0
-sub_81219F0: @ 81219F0
- push {lr}
-_081219F2:
- bl sub_81215EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08121A0C
- ldr r0, =sub_8121C64
- bl SetMainCallback2
- b _08121A18
- .pool
-_08121A0C:
- bl sub_81221AC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081219F2
-_08121A18:
- pop {r0}
- bx r0
- thumb_func_end sub_81219F0
-
- thumb_func_start sub_8121A1C
-sub_8121A1C: @ 8121A1C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r6, 0
- movs r5, 0
- ldr r2, =gUnknown_0203A134
- ldr r0, [r2]
- movs r1, 0x8A
- lsls r1, 2
- adds r0, r1
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r5, r0
- bcs _08121A8A
- mov r8, r2
- adds r7, r1, 0
-_08121A3C:
- lsls r0, r5, 6
- mov r1, r8
- ldr r2, [r1]
- adds r0, r2, r0
- movs r3, 0x85
- lsls r3, 2
- adds r1, r2, r3
- lsls r3, r6, 1
- ldr r1, [r1]
- adds r1, r3
- adds r2, r7
- ldr r2, [r2]
- ldr r2, [r2, 0x8]
- lsls r4, r5, 2
- adds r2, r4, r2
- ldr r2, [r2]
- lsls r2, 30
- lsrs r2, 30
- movs r3, 0x1
- bl ConvertEasyChatWordsToString
- mov r1, r8
- ldr r0, [r1]
- adds r0, r7
- ldr r1, [r0]
- ldr r0, [r1, 0x8]
- adds r4, r0
- ldr r0, [r4]
- lsls r0, 30
- lsrs r0, 30
- adds r0, r6, r0
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- ldrb r1, [r1]
- cmp r5, r1
- bcc _08121A3C
-_08121A8A:
- ldr r4, =gUnknown_0203A134
- ldr r1, [r4]
- movs r2, 0x80
- lsls r2, 2
- adds r0, r1, r2
- movs r3, 0x85
- lsls r3, 2
- adds r1, r3
- ldr r1, [r1]
- adds r1, 0x12
- bl StringCopy
- adds r2, r0, 0
- ldr r1, [r4]
- ldr r3, =0x0000021e
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _08121AF0
- ldr r1, =gText_FromSpace
- adds r0, r2, 0
- bl StringCopy
- ldr r0, [r4]
- movs r1, 0x80
- lsls r1, 2
- adds r0, r1
- bl StringLength
- ldr r2, [r4]
- movs r3, 0x8A
- lsls r3, 2
- adds r1, r2, r3
- ldr r1, [r1]
- lsls r0, 16
- lsrs r0, 13
- subs r0, 0x60
- ldrb r1, [r1, 0x2]
- subs r1, r0
- ldr r0, =0x00000219
- adds r2, r0
- strb r1, [r2]
- b _08121B0C
- .pool
-_08121AF0:
- movs r2, 0x80
- lsls r2, 2
- adds r0, r1, r2
- bl sub_81DB52C
- ldr r0, [r4]
- movs r3, 0x8A
- lsls r3, 2
- adds r1, r0, r3
- ldr r1, [r1]
- ldrb r1, [r1, 0x2]
- ldr r2, =0x00000219
- adds r0, r2
- strb r1, [r0]
-_08121B0C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8121A1C
-
- thumb_func_start sub_8121B1C
-sub_8121B1C: @ 8121B1C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x2C
- movs r7, 0
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0x1
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r6, 0
- ldr r1, =gUnknown_0203A134
- ldr r0, [r1]
- movs r2, 0x8A
- lsls r2, 2
- mov r10, r2
- add r0, r10
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r6, r0
- bcs _08121BCC
- mov r9, r1
- mov r8, r10
-_08121B60:
- mov r0, r9
- ldr r1, [r0]
- lsls r0, r6, 6
- adds r5, r1, r0
- ldrb r0, [r5]
- cmp r0, 0xFF
- beq _08121BB8
- cmp r0, 0
- beq _08121BB8
- mov r2, r8
- adds r0, r1, r2
- ldr r1, [r0]
- ldr r0, [r1, 0x8]
- lsls r4, r6, 2
- adds r0, r4, r0
- ldr r2, [r0]
- lsls r2, 24
- lsrs r2, 26
- ldrb r0, [r1, 0x4]
- adds r2, r0
- lsls r2, 24
- lsrs r2, 24
- ldrb r3, [r1, 0x3]
- adds r3, r7, r3
- lsls r3, 24
- lsrs r3, 24
- ldr r0, =gUnknown_0859F2AC
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r5, [sp, 0x8]
- movs r1, 0x1
- bl box_print
- mov r1, r9
- ldr r0, [r1]
- add r0, r8
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- adds r4, r0
- ldrb r0, [r4, 0x1]
- adds r0, r7, r0
- lsls r0, 24
- lsrs r7, r0, 24
-_08121BB8:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r2, =gUnknown_0203A134
- ldr r0, [r2]
- add r0, r10
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r6, r0
- bcc _08121B60
-_08121BCC:
- ldr r1, =gText_FromSpace
- add r0, sp, 0xC
- bl StringCopy
- ldr r4, =gUnknown_0203A134
- ldr r1, [r4]
- movs r2, 0x80
- lsls r2, 2
- adds r1, r2
- bl StringCopy
- ldr r0, [r4]
- ldr r1, =0x00000219
- adds r0, r1
- ldrb r2, [r0]
- movs r0, 0x1
- add r1, sp, 0xC
- bl GetStringCenterAlignXOffset
- adds r2, r0, 0
- adds r2, 0x68
- ldr r0, [r4]
- movs r1, 0x8A
- lsls r1, 2
- adds r0, r1
- ldr r0, [r0]
- ldrb r3, [r0, 0x1]
- adds r3, 0x58
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- ldr r0, =gUnknown_0859F2AC
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- add r0, sp, 0xC
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0x1
- bl box_print
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0x1
- movs r1, 0x3
- bl CopyWindowToVram
- add sp, 0x2C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8121B1C
-
- thumb_func_start sub_8121C50
-sub_8121C50: @ 8121C50
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_8121C50
-
- thumb_func_start sub_8121C64
-sub_8121C64: @ 8121C64
- push {r4,lr}
- ldr r4, =gUnknown_0203A134
- ldr r0, [r4]
- ldr r1, =0x0000021b
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08121C7C
- bl AnimateSprites
- bl BuildOamBuffer
-_08121C7C:
- ldr r0, [r4]
- movs r1, 0x84
- lsls r1, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8121C64
-
- thumb_func_start sub_8121C98
-sub_8121C98: @ 8121C98
- push {lr}
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _08121CB2
- ldr r0, =gUnknown_0203A134
- ldr r0, [r0]
- movs r1, 0x84
- lsls r1, 2
- adds r0, r1
- ldr r1, =sub_8121CC0
- str r1, [r0]
-_08121CB2:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8121C98
-
- thumb_func_start sub_8121CC0
-sub_8121CC0: @ 8121CC0
- push {lr}
- sub sp, 0x4
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _08121CEE
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_0203A134
- ldr r0, [r0]
- movs r1, 0x84
- lsls r1, 2
- adds r0, r1
- ldr r1, =sub_8121D00
- str r1, [r0]
-_08121CEE:
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8121CC0
-
- thumb_func_start sub_8121D00
-sub_8121D00: @ 8121D00
- push {r4,lr}
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _08121D88
- ldr r4, =gUnknown_0203A134
- ldr r0, [r4]
- movs r1, 0x83
- lsls r1, 2
- adds r0, r1
- ldr r0, [r0]
- bl SetMainCallback2
- ldr r1, [r4]
- ldr r2, =0x0000021b
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x2
- bgt _08121D58
- cmp r0, 0x1
- blt _08121D58
- subs r2, 0x7
- adds r0, r1, r2
- ldr r0, [r0]
- ldrh r0, [r0, 0x1E]
- bl sub_80D2E84
- lsls r0, 16
- lsrs r0, 16
- bl sub_80D2FF0
- ldr r0, [r4]
- movs r1, 0x87
- lsls r1, 2
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- bl sub_80D2EF8
-_08121D58:
- ldr r4, =gUnknown_0203A134
- ldr r0, [r4]
- ldr r2, =0x0000222c
- movs r1, 0
- bl memset
- bl ResetPaletteFade
- movs r0, 0
- bl UnsetBgTilemapBuffer
- movs r0, 0x1
- bl UnsetBgTilemapBuffer
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- bl FreeAllWindowBuffers
- ldr r0, [r4]
- bl Free
- movs r0, 0
- str r0, [r4]
-_08121D88:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8121D00
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/main_menu.s b/asm/main_menu.s
index 40466ae1b..6194f0487 100644
--- a/asm/main_menu.s
+++ b/asm/main_menu.s
@@ -119,11 +119,11 @@ InitMainMenu: @ 802F6F4
str r0, [r1, 0x8]
ldr r0, [r1, 0x8]
bl ResetPaletteFade
- ldr r0, =gUnknown_082FF0A0
+ ldr r0, =gMainMenuBgPal
movs r1, 0
movs r2, 0x20
bl LoadPalette
- ldr r0, =gUnknown_082FF0C0
+ ldr r0, =gMainMenuTextPal
movs r1, 0xF0
movs r2, 0x20
bl LoadPalette
@@ -1914,7 +1914,7 @@ task_new_game_prof_birch_speech_1: @ 80307B0
movs r0, 0x54
movs r1, 0
bl SetGpuReg
- ldr r0, =gUnknown_082FED3C
+ ldr r0, =gBirchIntroShadowGfx
movs r1, 0xC0
lsls r1, 19
bl LZ77UnCompVram
@@ -3679,7 +3679,7 @@ new_game_prof_birch_speech_part2_start: @ 8031678
str r0, [r1, 0x8]
ldr r0, [r1, 0x8]
bl ResetPaletteFade
- ldr r0, =gUnknown_082FED3C
+ ldr r0, =gBirchIntroShadowGfx
adds r1, r4, 0
bl LZ77UnCompVram
ldr r0, =gUnknown_082FEEF0
@@ -3689,7 +3689,7 @@ new_game_prof_birch_speech_part2_start: @ 8031678
movs r1, 0
movs r2, 0x40
bl LoadPalette
- ldr r0, =gUnknown_082FF01A
+ ldr r0, =gUnknown_082FF018+2
movs r1, 0x1
movs r2, 0x10
bl LoadPalette
@@ -4459,11 +4459,11 @@ set_default_player_name: @ 8031DC4
adds r5, r1, 0
cmp r0, 0
bne _08031DE4
- ldr r1, =gUnknown_082FF128
+ ldr r1, =gMalePresetNames
b _08031DE6
.pool
_08031DE4:
- ldr r1, =gUnknown_082FF178
+ ldr r1, =gFemalePresetNames
_08031DE6:
lsls r0, r2, 2
adds r0, r1
diff --git a/asm/map_obj_8097404.s b/asm/map_obj_8097404.s
index 4ed8e3bcd..96ffc2254 100644
--- a/asm/map_obj_8097404.s
+++ b/asm/map_obj_8097404.s
@@ -205,8 +205,8 @@ _0809756C:
.pool
thumb_func_end npc_sync_anim_pause_bits
- thumb_func_start sub_809757C
-sub_809757C: @ 809757C
+ thumb_func_start UnfreezeMapObjects
+UnfreezeMapObjects: @ 809757C
push {r4,r5,lr}
movs r4, 0
ldr r5, =gMapObjects
@@ -231,7 +231,7 @@ _08097598:
pop {r0}
bx r0
.pool
- thumb_func_end sub_809757C
+ thumb_func_end UnfreezeMapObjects
thumb_func_start little_step
@ void little_step(struct obj *object, u8 direction)
@@ -1396,7 +1396,7 @@ oe_exec_and_other_stuff: @ 8097DD0
adds r0, r1, 0
lsls r4, 24
lsrs r4, 24
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
adds r2, r1, 0x4
adds r3, r1, 0
adds r3, 0x8
@@ -1434,7 +1434,7 @@ DoRippleFieldEffect: @ 8097E14
adds r4, r1, 0
ldrb r0, [r0, 0x5]
bl GetFieldObjectGraphicsInfo
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
movs r3, 0x20
ldrsh r1, [r4, r3]
str r1, [r2]
diff --git a/asm/map_obj_lock.s b/asm/map_obj_lock.s
index 60757cdd0..ee60814f5 100644
--- a/asm/map_obj_lock.s
+++ b/asm/map_obj_lock.s
@@ -59,8 +59,8 @@ _080983E2:
bx r1
thumb_func_end sub_80983C4
- thumb_func_start sub_80983E8
-sub_80983E8: @ 80983E8
+ thumb_func_start ScriptFreezeMapObjects
+ScriptFreezeMapObjects: @ 80983E8
push {lr}
bl player_bitmagic
ldr r0, =sub_80983A4
@@ -69,7 +69,7 @@ sub_80983E8: @ 80983E8
pop {r0}
bx r0
.pool
- thumb_func_end sub_80983E8
+ thumb_func_end ScriptFreezeMapObjects
thumb_func_start sub_8098400
sub_8098400: @ 8098400
@@ -149,8 +149,8 @@ _0809849A:
bx r1
thumb_func_end sub_809847C
- thumb_func_start sub_80984A0
-sub_80984A0: @ 80984A0
+ thumb_func_start LockSelectedMapObject
+LockSelectedMapObject: @ 80984A0
push {r4,r5,lr}
ldr r4, =gSelectedMapObject
ldrb r0, [r4]
@@ -184,7 +184,7 @@ _080984DE:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80984A0
+ thumb_func_end LockSelectedMapObject
thumb_func_start sub_80984F4
sub_80984F4: @ 80984F4
@@ -203,7 +203,7 @@ sub_80984F4: @ 80984F4
adds r0, r1
bl FieldObjectClearAnimIfSpecialAnimFinished
bl sub_80D338C
- bl sub_809757C
+ bl UnfreezeMapObjects
pop {r0}
bx r0
.pool
@@ -239,7 +239,7 @@ _08098542:
adds r0, r4
bl FieldObjectClearAnimIfSpecialAnimFinished
bl sub_80D338C
- bl sub_809757C
+ bl UnfreezeMapObjects
pop {r4}
pop {r0}
bx r0
diff --git a/asm/mauville_old_man.s b/asm/mauville_old_man.s
index 7b21e19e7..4972d4096 100644
--- a/asm/mauville_old_man.s
+++ b/asm/mauville_old_man.s
@@ -1392,7 +1392,7 @@ _08120BB0:
movs r0, 0xFF
strb r0, [r7, 0x7]
mov r0, sp
- bl sub_8009228
+ bl IsStringJapanese
cmp r0, 0
beq _08120BF8
mov r0, sp
@@ -1458,7 +1458,7 @@ _08120C48:
muls r0, r5
adds r0, 0x5
adds r0, r6, r0
- bl sub_8009228
+ bl IsStringJapanese
cmp r0, 0
beq _08120C5E
mov r0, r8
@@ -1480,7 +1480,7 @@ _08120C6A:
movs r5, 0x3
_08120C74:
adds r0, r6, 0
- bl sub_8009228
+ bl IsStringJapanese
cmp r0, 0
beq _08120C84
mov r1, r8
@@ -1569,7 +1569,7 @@ _08120CF2:
mov r1, r8
strb r0, [r1, 0x7]
mov r0, sp
- bl sub_8009228
+ bl IsStringJapanese
cmp r0, 0
beq _08120D1A
movs r0, 0x1
@@ -2205,7 +2205,7 @@ sub_8121178: @ 8121178
bl ConvertInternationalString
mov r0, r8
bl sub_8120EC0
- bl box_related_two__2
+ bl ShowFieldMessage
pop {r3}
mov r8, r3
pop {r4-r6}
diff --git a/asm/menu.s b/asm/menu.s
index 8bb9dc436..71ff9218c 100755
--- a/asm/menu.s
+++ b/asm/menu.s
@@ -5201,7 +5201,7 @@ sub_819A25C: @ 819A25C
lsrs r4, 24
lsls r0, 16
lsrs r0, 16
- bl sub_80D30B0
+ bl GetValidMonIconPalettePtr
adds r1, r4, 0
movs r2, 0x20
bl LoadPalette
@@ -5228,7 +5228,7 @@ sub_819A27C: @ 819A27C
lsls r5, 16
lsrs r5, 16
movs r2, 0x1
- bl sub_80D2EDC
+ bl GetMonIconPtr
adds r1, r0, 0
movs r0, 0x20
str r0, [sp]
diff --git a/asm/menu_helpers.s b/asm/menu_helpers.s
index acc3065ea..423f653d9 100644
--- a/asm/menu_helpers.s
+++ b/asm/menu_helpers.s
@@ -533,7 +533,7 @@ sub_81221AC: @ 81221AC
bl is_c1_link_related_active
cmp r0, 0x1
beq _081221BE
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _081221C8
diff --git a/asm/metatile_behavior.s b/asm/metatile_behavior.s
deleted file mode 100644
index 30b0f4348..000000000
--- a/asm/metatile_behavior.s
+++ /dev/null
@@ -1,2610 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start ShouldDoJumpLandingDustEffect
-ShouldDoJumpLandingDustEffect: @ 8088DEC
- movs r0, 0x1
- bx lr
- thumb_func_end ShouldDoJumpLandingDustEffect
-
- thumb_func_start sub_8088DF0
-sub_8088DF0: @ 8088DF0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_08486EFC
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08088E0C
- movs r0, 0
- b _08088E0E
- .pool
-_08088E0C:
- movs r0, 0x1
-_08088E0E:
- pop {r1}
- bx r1
- thumb_func_end sub_8088DF0
-
- thumb_func_start MetatileBehavior_IsJumpEast
-MetatileBehavior_IsJumpEast: @ 8088E14
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x38
- beq _08088E22
- movs r0, 0
- b _08088E24
-_08088E22:
- movs r0, 0x1
-_08088E24:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpEast
-
- thumb_func_start MetatileBehavior_IsJumpWest
-MetatileBehavior_IsJumpWest: @ 8088E28
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x39
- beq _08088E36
- movs r0, 0
- b _08088E38
-_08088E36:
- movs r0, 0x1
-_08088E38:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpWest
-
- thumb_func_start MetatileBehavior_IsJumpNorth
-MetatileBehavior_IsJumpNorth: @ 8088E3C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3A
- beq _08088E4A
- movs r0, 0
- b _08088E4C
-_08088E4A:
- movs r0, 0x1
-_08088E4C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpNorth
-
- thumb_func_start MetatileBehavior_IsJumpSouth
-MetatileBehavior_IsJumpSouth: @ 8088E50
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3B
- beq _08088E5E
- movs r0, 0
- b _08088E60
-_08088E5E:
- movs r0, 0x1
-_08088E60:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpSouth
-
- thumb_func_start sub_8088E64
-sub_8088E64: @ 8088E64
- push {lr}
- lsls r0, 24
- movs r1, 0xFE
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08088E78
- movs r0, 0
- b _08088E7A
-_08088E78:
- movs r0, 0x1
-_08088E7A:
- pop {r1}
- bx r1
- thumb_func_end sub_8088E64
-
- thumb_func_start MetatileBehavior_IsSandOrDeepSand
-MetatileBehavior_IsSandOrDeepSand: @ 8088E80
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x21
- beq _08088E8E
- cmp r0, 0x6
- bne _08088E92
-_08088E8E:
- movs r0, 0x1
- b _08088E94
-_08088E92:
- movs r0, 0
-_08088E94:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSandOrDeepSand
-
- thumb_func_start MetatileBehavior_IsDeepSand
-MetatileBehavior_IsDeepSand: @ 8088E98
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6
- beq _08088EA6
- movs r0, 0
- b _08088EA8
-_08088EA6:
- movs r0, 0x1
-_08088EA8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsDeepSand
-
- thumb_func_start MetatileBehavior_IsReflective
-MetatileBehavior_IsReflective: @ 8088EAC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _08088ECA
- cmp r0, 0x16
- beq _08088ECA
- cmp r0, 0x1A
- beq _08088ECA
- cmp r0, 0x20
- beq _08088ECA
- cmp r0, 0x14
- beq _08088ECA
- cmp r0, 0x2B
- bne _08088ECE
-_08088ECA:
- movs r0, 0x1
- b _08088ED0
-_08088ECE:
- movs r0, 0
-_08088ED0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsReflective
-
- thumb_func_start MetatileBehavior_IsIce
-MetatileBehavior_IsIce: @ 8088ED4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x20
- beq _08088EE2
- movs r0, 0
- b _08088EE4
-_08088EE2:
- movs r0, 0x1
-_08088EE4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsIce
-
- thumb_func_start is_tile_x69_2_warp_door
-is_tile_x69_2_warp_door: @ 8088EE8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x69
- beq _08088EF6
- movs r0, 0
- b _08088EF8
-_08088EF6:
- movs r0, 0x1
-_08088EF8:
- pop {r1}
- bx r1
- thumb_func_end is_tile_x69_2_warp_door
-
- thumb_func_start sub_8088EFC
-sub_8088EFC: @ 8088EFC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8D
- beq _08088F0A
- cmp r0, 0x69
- bne _08088F0E
-_08088F0A:
- movs r0, 0x1
- b _08088F10
-_08088F0E:
- movs r0, 0
-_08088F10:
- pop {r1}
- bx r1
- thumb_func_end sub_8088EFC
-
- thumb_func_start MetatileBehavior_IsEscalator
-MetatileBehavior_IsEscalator: @ 8088F14
- push {lr}
- lsls r0, 24
- movs r1, 0x96
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08088F28
- movs r0, 0
- b _08088F2A
-_08088F28:
- movs r0, 0x1
-_08088F2A:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsEscalator
-
- thumb_func_start sub_8088F30
-sub_8088F30: @ 8088F30
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- beq _08088F3E
- movs r0, 0
- b _08088F40
-_08088F3E:
- movs r0, 0x1
-_08088F40:
- pop {r1}
- bx r1
- thumb_func_end sub_8088F30
-
- thumb_func_start MetatileBehavior_IsLadder
-MetatileBehavior_IsLadder: @ 8088F44
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x61
- beq _08088F52
- movs r0, 0
- b _08088F54
-_08088F52:
- movs r0, 0x1
-_08088F54:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsLadder
-
- thumb_func_start sub_8088F58
-sub_8088F58: @ 8088F58
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x60
- beq _08088F6A
- cmp r0, 0x6C
- beq _08088F6A
- cmp r0, 0x6E
- bne _08088F6E
-_08088F6A:
- movs r0, 0x1
- b _08088F70
-_08088F6E:
- movs r0, 0
-_08088F70:
- pop {r1}
- bx r1
- thumb_func_end sub_8088F58
-
- thumb_func_start sub_8088F74
-sub_8088F74: @ 8088F74
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6E
- beq _08088F82
- movs r0, 0
- b _08088F84
-_08088F82:
- movs r0, 0x1
-_08088F84:
- pop {r1}
- bx r1
- thumb_func_end sub_8088F74
-
- thumb_func_start MetatileBehavior_IsSurfableWaterOrUnderwater
-MetatileBehavior_IsSurfableWaterOrUnderwater: @ 8088F88
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_08486EFC
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08088FA4
- movs r0, 0
- b _08088FA6
- .pool
-_08088FA4:
- movs r0, 0x1
-_08088FA6:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSurfableWaterOrUnderwater
-
- thumb_func_start MetatileBehavior_IsEastArrowWarp
-MetatileBehavior_IsEastArrowWarp: @ 8088FAC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x62
- beq _08088FBA
- movs r0, 0
- b _08088FBC
-_08088FBA:
- movs r0, 0x1
-_08088FBC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsEastArrowWarp
-
- thumb_func_start MetatileBehavior_IsWestArrowWarp
-MetatileBehavior_IsWestArrowWarp: @ 8088FC0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x63
- beq _08088FCE
- movs r0, 0
- b _08088FD0
-_08088FCE:
- movs r0, 0x1
-_08088FD0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWestArrowWarp
-
- thumb_func_start MetatileBehavior_IsNorthArrowWarp
-MetatileBehavior_IsNorthArrowWarp: @ 8088FD4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x64
- beq _08088FE2
- cmp r0, 0x1B
- bne _08088FE6
-_08088FE2:
- movs r0, 0x1
- b _08088FE8
-_08088FE6:
- movs r0, 0
-_08088FE8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsNorthArrowWarp
-
- thumb_func_start MetatileBehavior_IsSouthArrowWarp
-MetatileBehavior_IsSouthArrowWarp: @ 8088FEC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x65
- beq _08088FFE
- cmp r0, 0x6D
- beq _08088FFE
- cmp r0, 0x1C
- bne _08089002
-_08088FFE:
- movs r0, 0x1
- b _08089004
-_08089002:
- movs r0, 0
-_08089004:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSouthArrowWarp
-
- thumb_func_start sub_8089008
-sub_8089008: @ 8089008
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r5, 0
- adds r0, r4, 0
- bl MetatileBehavior_IsEastArrowWarp
- lsls r0, 24
- cmp r0, 0
- bne _08089040
- adds r0, r4, 0
- bl MetatileBehavior_IsWestArrowWarp
- lsls r0, 24
- cmp r0, 0
- bne _08089040
- adds r0, r4, 0
- bl MetatileBehavior_IsNorthArrowWarp
- lsls r0, 24
- cmp r0, 0
- bne _08089040
- adds r0, r4, 0
- bl MetatileBehavior_IsSouthArrowWarp
- lsls r0, 24
- cmp r0, 0
- beq _08089042
-_08089040:
- movs r5, 0x1
-_08089042:
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8089008
-
- thumb_func_start sub_808904C
-sub_808904C: @ 808904C
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xC0
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x8
- bls _08089082
- adds r0, r1, 0
- subs r0, 0x50
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _08089082
- cmp r1, 0xD0
- beq _08089082
- cmp r1, 0xD2
- beq _08089082
- cmp r1, 0x13
- beq _08089082
- cmp r1, 0x20
- beq _08089082
- cmp r1, 0xBB
- beq _08089082
- cmp r1, 0xBC
- bne _08089086
-_08089082:
- movs r0, 0x1
- b _08089088
-_08089086:
- movs r0, 0
-_08089088:
- pop {r1}
- bx r1
- thumb_func_end sub_808904C
-
- thumb_func_start MetatileBehavior_IsIce_2
-@ bool8 MetatileBehavior_IsIce_2(u8 metatileBehavior)
-MetatileBehavior_IsIce_2: @ 808908C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x20
- beq _0808909A
- movs r0, 0
- b _0808909C
-_0808909A:
- movs r0, 0x1
-_0808909C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsIce_2
-
- thumb_func_start MetatileBehavior_IsTrickHouseSlipperyFloor
-@ bool8 MetatileBehavior_IsTrickHouseSlipperyFloor(u8 metatileBehavior)
-MetatileBehavior_IsTrickHouseSlipperyFloor: @ 80890A0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x48
- beq _080890AE
- movs r0, 0
- b _080890B0
-_080890AE:
- movs r0, 0x1
-_080890B0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsTrickHouseSlipperyFloor
-
- thumb_func_start MetatileBehavior_0x05
-MetatileBehavior_0x05: @ 80890B4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- beq _080890C2
- movs r0, 0
- b _080890C4
-_080890C2:
- movs r0, 0x1
-_080890C4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_0x05
-
- thumb_func_start MetatileBehavior_IsWalkNorth
-@ bool8 MetatileBehavior_IsWalkNorth(u8 metatileBehavior)
-MetatileBehavior_IsWalkNorth: @ 80890C8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x42
- beq _080890D6
- movs r0, 0
- b _080890D8
-_080890D6:
- movs r0, 0x1
-_080890D8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkNorth
-
- thumb_func_start MetatileBehavior_IsWalkSouth
-@ bool8 MetatileBehavior_IsWalkSouth(u8 metatileBehavior)
-MetatileBehavior_IsWalkSouth: @ 80890DC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x43
- beq _080890EA
- movs r0, 0
- b _080890EC
-_080890EA:
- movs r0, 0x1
-_080890EC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkSouth
-
- thumb_func_start MetatileBehavior_IsWalkWest
-@ bool8 MetatileBehavior_IsWalkWest(u8 metatileBehavior)
-MetatileBehavior_IsWalkWest: @ 80890F0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x41
- beq _080890FE
- movs r0, 0
- b _08089100
-_080890FE:
- movs r0, 0x1
-_08089100:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkWest
-
- thumb_func_start MetatileBehavior_IsWalkEast
-@ bool8 MetatileBehavior_IsWalkEast(u8 metatileBehavior)
-MetatileBehavior_IsWalkEast: @ 8089104
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _08089112
- movs r0, 0
- b _08089114
-_08089112:
- movs r0, 0x1
-_08089114:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkEast
-
- thumb_func_start MetatileBehavior_IsNorthwardCurrent
-@ bool8 MetatileBehavior_IsNorthwardCurrent(u8 metatileBehavior)
-MetatileBehavior_IsNorthwardCurrent: @ 8089118
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x52
- beq _08089126
- movs r0, 0
- b _08089128
-_08089126:
- movs r0, 0x1
-_08089128:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsNorthwardCurrent
-
- thumb_func_start MetatileBehavior_IsSouthwardCurrent
-@ bool8 MetatileBehavior_IsSouthwardCurrent(u8 metatileBehavior)
-MetatileBehavior_IsSouthwardCurrent: @ 808912C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x53
- beq _0808913A
- movs r0, 0
- b _0808913C
-_0808913A:
- movs r0, 0x1
-_0808913C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSouthwardCurrent
-
- thumb_func_start MetatileBehavior_IsWestwardCurrent
-@ bool8 MetatileBehavior_IsWestwardCurrent(u8 metatileBehavior)
-MetatileBehavior_IsWestwardCurrent: @ 8089140
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x51
- beq _0808914E
- movs r0, 0
- b _08089150
-_0808914E:
- movs r0, 0x1
-_08089150:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWestwardCurrent
-
- thumb_func_start MetatileBehavior_IsEastwardCurrent
-@ bool8 MetatileBehavior_IsEastwardCurrent(u8 metatileBehavior)
-MetatileBehavior_IsEastwardCurrent: @ 8089154
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x50
- beq _08089162
- movs r0, 0
- b _08089164
-_08089162:
- movs r0, 0x1
-_08089164:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsEastwardCurrent
-
- thumb_func_start MetatileBehavior_IsSlideNorth
-@ bool8 MetatileBehavior_IsSlideNorth(u8 metatileBehavior)
-MetatileBehavior_IsSlideNorth: @ 8089168
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x46
- beq _08089176
- movs r0, 0
- b _08089178
-_08089176:
- movs r0, 0x1
-_08089178:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideNorth
-
- thumb_func_start MetatileBehavior_IsSlideSouth
-@ bool8 MetatileBehavior_IsSlideSouth(u8 metatileBehavior)
-MetatileBehavior_IsSlideSouth: @ 808917C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x47
- beq _0808918A
- movs r0, 0
- b _0808918C
-_0808918A:
- movs r0, 0x1
-_0808918C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideSouth
-
- thumb_func_start MetatileBehavior_IsSlideWest
-@ bool8 MetatileBehavior_IsSlideWest(u8 metatileBehavior)
-MetatileBehavior_IsSlideWest: @ 8089190
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x45
- beq _0808919E
- movs r0, 0
- b _080891A0
-_0808919E:
- movs r0, 0x1
-_080891A0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideWest
-
- thumb_func_start MetatileBehavior_IsSlideEast
-@ bool8 MetatileBehavior_IsSlideEast(u8 metatileBehavior)
-MetatileBehavior_IsSlideEast: @ 80891A4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x44
- beq _080891B2
- movs r0, 0
- b _080891B4
-_080891B2:
- movs r0, 0x1
-_080891B4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideEast
-
- thumb_func_start MetatileBehavior_IsCounter
-MetatileBehavior_IsCounter: @ 80891B8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x80
- beq _080891C6
- movs r0, 0
- b _080891C8
-_080891C6:
- movs r0, 0x1
-_080891C8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsCounter
-
- thumb_func_start MetatileBehavior_IsPlayerFacingTVScreen
-@ bool8 MetatileBehavior_IsPlayerFacingTVScreen(u8 behavior, u8 direction)
-MetatileBehavior_IsPlayerFacingTVScreen: @ 80891CC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _080891DE
- cmp r0, 0x86
- beq _080891E2
-_080891DE:
- movs r0, 0
- b _080891E4
-_080891E2:
- movs r0, 0x1
-_080891E4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsPlayerFacingTVScreen
-
- thumb_func_start MetatileBehavior_IsPC
-MetatileBehavior_IsPC: @ 80891E8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x83
- beq _080891F6
- movs r0, 0
- b _080891F8
-_080891F6:
- movs r0, 0x1
-_080891F8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsPC
-
- thumb_func_start is_tile_x84
-is_tile_x84: @ 80891FC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x84
- beq _0808920A
- movs r0, 0
- b _0808920C
-_0808920A:
- movs r0, 0x1
-_0808920C:
- pop {r1}
- bx r1
- thumb_func_end is_tile_x84
-
- thumb_func_start sub_8089210
-sub_8089210: @ 8089210
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x91
- beq _08089232
- cmp r0, 0x93
- beq _08089232
- cmp r0, 0x95
- beq _08089232
- cmp r0, 0x97
- beq _08089232
- cmp r0, 0x99
- beq _08089232
- cmp r0, 0x9B
- beq _08089232
- cmp r0, 0x9D
- bne _08089236
-_08089232:
- movs r0, 0x1
- b _08089238
-_08089236:
- movs r0, 0
-_08089238:
- pop {r1}
- bx r1
- thumb_func_end sub_8089210
-
- thumb_func_start sub_808923C
-sub_808923C: @ 808923C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x90
- beq _08089252
- cmp r0, 0x92
- beq _08089252
- cmp r0, 0x94
- beq _08089252
- cmp r0, 0x9A
- bne _08089256
-_08089252:
- movs r0, 0x1
- b _08089258
-_08089256:
- movs r0, 0
-_08089258:
- pop {r1}
- bx r1
- thumb_func_end sub_808923C
-
- thumb_func_start sub_808925C
-sub_808925C: @ 808925C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x96
- beq _0808926A
- cmp r0, 0x9C
- bne _0808926E
-_0808926A:
- movs r0, 0x1
- b _08089270
-_0808926E:
- movs r0, 0
-_08089270:
- pop {r1}
- bx r1
- thumb_func_end sub_808925C
-
- thumb_func_start is_tile_x98
-is_tile_x98: @ 8089274
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x98
- beq _08089282
- movs r0, 0
- b _08089284
-_08089282:
- movs r0, 0x1
-_08089284:
- pop {r1}
- bx r1
- thumb_func_end is_tile_x98
-
- thumb_func_start sub_8089288
-sub_8089288: @ 8089288
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB0
- beq _08089296
- movs r0, 0
- b _08089298
-_08089296:
- movs r0, 0x1
-_08089298:
- pop {r1}
- bx r1
- thumb_func_end sub_8089288
-
- thumb_func_start sub_808929C
-sub_808929C: @ 808929C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB1
- beq _080892AA
- movs r0, 0
- b _080892AC
-_080892AA:
- movs r0, 0x1
-_080892AC:
- pop {r1}
- bx r1
- thumb_func_end sub_808929C
-
- thumb_func_start sub_80892B0
-sub_80892B0: @ 80892B0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB2
- beq _080892BE
- movs r0, 0
- b _080892C0
-_080892BE:
- movs r0, 0x1
-_080892C0:
- pop {r1}
- bx r1
- thumb_func_end sub_80892B0
-
- thumb_func_start sub_80892C4
-sub_80892C4: @ 80892C4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB3
- beq _080892D2
- movs r0, 0
- b _080892D4
-_080892D2:
- movs r0, 0x1
-_080892D4:
- pop {r1}
- bx r1
- thumb_func_end sub_80892C4
-
- thumb_func_start sub_80892D8
-sub_80892D8: @ 80892D8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB9
- beq _080892E6
- movs r0, 0
- b _080892E8
-_080892E6:
- movs r0, 0x1
-_080892E8:
- pop {r1}
- bx r1
- thumb_func_end sub_80892D8
-
- thumb_func_start sub_80892EC
-sub_80892EC: @ 80892EC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC6
- beq _080892FA
- movs r0, 0
- b _080892FC
-_080892FA:
- movs r0, 0x1
-_080892FC:
- pop {r1}
- bx r1
- thumb_func_end sub_80892EC
-
- thumb_func_start sub_8089300
-sub_8089300: @ 8089300
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC7
- beq _0808930E
- movs r0, 0
- b _08089310
-_0808930E:
- movs r0, 0x1
-_08089310:
- pop {r1}
- bx r1
- thumb_func_end sub_8089300
-
- thumb_func_start sub_8089314
-sub_8089314: @ 8089314
- push {lr}
- lsls r0, 24
- cmp r0, 0
- beq _08089320
- movs r0, 0
- b _08089322
-_08089320:
- movs r0, 0x1
-_08089322:
- pop {r1}
- bx r1
- thumb_func_end sub_8089314
-
- thumb_func_start sub_8089328
-sub_8089328: @ 8089328
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB7
- beq _08089336
- movs r0, 0
- b _08089338
-_08089336:
- movs r0, 0x1
-_08089338:
- pop {r1}
- bx r1
- thumb_func_end sub_8089328
-
- thumb_func_start sub_808933C
-sub_808933C: @ 808933C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB2
- beq _0808934A
- movs r0, 0
- b _0808934C
-_0808934A:
- movs r0, 0x1
-_0808934C:
- pop {r1}
- bx r1
- thumb_func_end sub_808933C
-
- thumb_func_start sub_8089350
-sub_8089350: @ 8089350
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB5
- beq _0808935E
- movs r0, 0
- b _08089360
-_0808935E:
- movs r0, 0x1
-_08089360:
- pop {r1}
- bx r1
- thumb_func_end sub_8089350
-
- thumb_func_start sub_8089364
-sub_8089364: @ 8089364
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC3
- beq _08089372
- movs r0, 0
- b _08089374
-_08089372:
- movs r0, 0x1
-_08089374:
- pop {r1}
- bx r1
- thumb_func_end sub_8089364
-
- thumb_func_start sub_8089378
-sub_8089378: @ 8089378
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC2
- beq _08089386
- movs r0, 0
- b _08089388
-_08089386:
- movs r0, 0x1
-_08089388:
- pop {r1}
- bx r1
- thumb_func_end sub_8089378
-
- thumb_func_start sub_808938C
-sub_808938C: @ 808938C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB8
- beq _0808939A
- movs r0, 0
- b _0808939C
-_0808939A:
- movs r0, 0x1
-_0808939C:
- pop {r1}
- bx r1
- thumb_func_end sub_808938C
-
- thumb_func_start sub_80893A0
-sub_80893A0: @ 80893A0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xBE
- beq _080893AE
- movs r0, 0
- b _080893B0
-_080893AE:
- movs r0, 0x1
-_080893B0:
- pop {r1}
- bx r1
- thumb_func_end sub_80893A0
-
- thumb_func_start sub_80893B4
-sub_80893B4: @ 80893B4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xBD
- beq _080893C2
- movs r0, 0
- b _080893C4
-_080893C2:
- movs r0, 0x1
-_080893C4:
- pop {r1}
- bx r1
- thumb_func_end sub_80893B4
-
- thumb_func_start sub_80893C8
-sub_80893C8: @ 80893C8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xBA
- beq _080893D6
- movs r0, 0
- b _080893D8
-_080893D6:
- movs r0, 0x1
-_080893D8:
- pop {r1}
- bx r1
- thumb_func_end sub_80893C8
-
- thumb_func_start sub_80893DC
-sub_80893DC: @ 80893DC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xBF
- beq _080893EA
- movs r0, 0
- b _080893EC
-_080893EA:
- movs r0, 0x1
-_080893EC:
- pop {r1}
- bx r1
- thumb_func_end sub_80893DC
-
- thumb_func_start sub_80893F0
-sub_80893F0: @ 80893F0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC4
- beq _080893FE
- movs r0, 0
- b _08089400
-_080893FE:
- movs r0, 0x1
-_08089400:
- pop {r1}
- bx r1
- thumb_func_end sub_80893F0
-
- thumb_func_start sub_8089404
-sub_8089404: @ 8089404
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC5
- beq _08089412
- movs r0, 0
- b _08089414
-_08089412:
- movs r0, 0x1
-_08089414:
- pop {r1}
- bx r1
- thumb_func_end sub_8089404
-
- thumb_func_start MetatileBehavior_HasRipples
-MetatileBehavior_HasRipples: @ 8089418
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _0808942A
- cmp r0, 0x16
- beq _0808942A
- cmp r0, 0x14
- bne _0808942E
-_0808942A:
- movs r0, 0x1
- b _08089430
-_0808942E:
- movs r0, 0
-_08089430:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_HasRipples
-
- thumb_func_start MetatileBehavior_IsPuddle
-MetatileBehavior_IsPuddle: @ 8089434
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x16
- beq _08089442
- movs r0, 0
- b _08089444
-_08089442:
- movs r0, 0x1
-_08089444:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsPuddle
-
- thumb_func_start MetatileBehavior_IsTallGrass
-MetatileBehavior_IsTallGrass: @ 8089448
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08089456
- movs r0, 0
- b _08089458
-_08089456:
- movs r0, 0x1
-_08089458:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsTallGrass
-
- thumb_func_start MetatileBehavior_IsLongGrass
-MetatileBehavior_IsLongGrass: @ 808945C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _0808946A
- movs r0, 0
- b _0808946C
-_0808946A:
- movs r0, 0x1
-_0808946C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsLongGrass
-
- thumb_func_start MetatileBehavior_IsBerryTreeSoil
-MetatileBehavior_IsBerryTreeSoil: @ 8089470
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA0
- beq _0808947E
- movs r0, 0
- b _08089480
-_0808947E:
- movs r0, 0x1
-_08089480:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsBerryTreeSoil
-
- thumb_func_start MetatileBehavior_IsAsh
-MetatileBehavior_IsAsh: @ 8089484
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x24
- beq _08089492
- movs r0, 0
- b _08089494
-_08089492:
- movs r0, 0x1
-_08089494:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsAsh
-
- thumb_func_start MetatileBehavior_IsUnusedFootprintMetatile
-MetatileBehavior_IsUnusedFootprintMetatile: @ 8089498
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x25
- beq _080894A6
- movs r0, 0
- b _080894A8
-_080894A6:
- movs r0, 0x1
-_080894A8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsUnusedFootprintMetatile
-
- thumb_func_start sub_80894AC
-sub_80894AC: @ 80894AC
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0x90
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x3
- bls _080894CA
- adds r0, r1, 0
- subs r0, 0x7C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bhi _080894CE
-_080894CA:
- movs r0, 0x1
- b _080894D0
-_080894CE:
- movs r0, 0
-_080894D0:
- pop {r1}
- bx r1
- thumb_func_end sub_80894AC
-
- thumb_func_start sub_80894D4
-sub_80894D4: @ 80894D4
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- adds r2, r1, 0
- adds r0, r1, 0
- subs r0, 0x70
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _0808950A
- adds r0, r1, 0
- subs r0, 0x7A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _080894F8
- movs r0, 0x2
- b _0808950A
-_080894F8:
- adds r0, r2, 0
- subs r0, 0x7C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _08089508
- movs r0, 0
- b _0808950A
-_08089508:
- movs r0, 0x3
-_0808950A:
- pop {r1}
- bx r1
- thumb_func_end sub_80894D4
-
- thumb_func_start sub_8089510
-sub_8089510: @ 8089510
- push {lr}
- lsls r0, 24
- movs r1, 0x90
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x3
- bls _08089524
- movs r0, 0
- b _08089526
-_08089524:
- movs r0, 0x1
-_08089526:
- pop {r1}
- bx r1
- thumb_func_end sub_8089510
-
- thumb_func_start sub_808952C
-sub_808952C: @ 808952C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl MetatileBehavior_IsSurfableWaterOrUnderwater
- lsls r0, 24
- cmp r0, 0
- bne _08089550
- adds r0, r4, 0
- bl sub_8088DF0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08089550
- movs r0, 0x1
- b _08089552
-_08089550:
- movs r0, 0
-_08089552:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_808952C
-
- thumb_func_start sub_8089558
-sub_8089558: @ 8089558
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl MetatileBehavior_IsSurfableWaterOrUnderwater
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0808957E
- adds r0, r4, 0
- bl sub_8088DF0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0808957E
- movs r0, 0x1
- b _08089580
-_0808957E:
- movs r0, 0
-_08089580:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8089558
-
- thumb_func_start sub_8089588
-sub_8089588: @ 8089588
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB
- beq _08089596
- movs r0, 0
- b _08089598
-_08089596:
- movs r0, 0x1
-_08089598:
- pop {r1}
- bx r1
- thumb_func_end sub_8089588
-
- thumb_func_start sub_808959C
-sub_808959C: @ 808959C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC
- beq _080895AA
- movs r0, 0
- b _080895AC
-_080895AA:
- movs r0, 0x1
-_080895AC:
- pop {r1}
- bx r1
- thumb_func_end sub_808959C
-
- thumb_func_start sub_80895B0
-sub_80895B0: @ 80895B0
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xEF
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x1
- bls _080895C6
- cmp r1, 0x14
- bne _080895CA
-_080895C6:
- movs r0, 0x1
- b _080895CC
-_080895CA:
- movs r0, 0
-_080895CC:
- pop {r1}
- bx r1
- thumb_func_end sub_80895B0
-
- thumb_func_start sub_80895D0
-sub_80895D0: @ 80895D0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x19
- beq _080895DE
- cmp r0, 0x2A
- bne _080895E2
-_080895DE:
- movs r0, 0x1
- b _080895E4
-_080895E2:
- movs r0, 0
-_080895E4:
- pop {r1}
- bx r1
- thumb_func_end sub_80895D0
-
- thumb_func_start MetatileBehavior_IsShallowFlowingWater
-MetatileBehavior_IsShallowFlowingWater: @ 80895E8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x17
- beq _080895FA
- cmp r0, 0x1B
- beq _080895FA
- cmp r0, 0x1C
- bne _080895FE
-_080895FA:
- movs r0, 0x1
- b _08089600
-_080895FE:
- movs r0, 0
-_08089600:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsShallowFlowingWater
-
- thumb_func_start sub_8089604
-sub_8089604: @ 8089604
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x26
- beq _08089612
- movs r0, 0
- b _08089614
-_08089612:
- movs r0, 0x1
-_08089614:
- pop {r1}
- bx r1
- thumb_func_end sub_8089604
-
- thumb_func_start sub_8089618
-sub_8089618: @ 8089618
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x27
- beq _08089626
- movs r0, 0
- b _08089628
-_08089626:
- movs r0, 0x1
-_08089628:
- pop {r1}
- bx r1
- thumb_func_end sub_8089618
-
- thumb_func_start sub_808962C
-sub_808962C: @ 808962C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x15
- beq _0808963E
- cmp r0, 0x11
- beq _0808963E
- cmp r0, 0x12
- bne _08089642
-_0808963E:
- movs r0, 0x1
- b _08089644
-_08089642:
- movs r0, 0
-_08089644:
- pop {r1}
- bx r1
- thumb_func_end sub_808962C
-
- thumb_func_start sub_8089648
-sub_8089648: @ 8089648
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x18
- beq _08089656
- cmp r0, 0x1A
- bne _0808965A
-_08089656:
- movs r0, 0x1
- b _0808965C
-_0808965A:
- movs r0, 0
-_0808965C:
- pop {r1}
- bx r1
- thumb_func_end sub_8089648
-
- thumb_func_start sub_8089660
-sub_8089660: @ 8089660
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl MetatileBehavior_IsSurfableWaterOrUnderwater
- lsls r0, 24
- cmp r0, 0
- beq _08089682
- adds r0, r4, 0
- bl MetatileBehavior_IsWaterfall
- lsls r0, 24
- cmp r0, 0
- bne _08089682
- movs r0, 0x1
- b _08089684
-_08089682:
- movs r0, 0
-_08089684:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8089660
-
- thumb_func_start MetatileBehavior_IsEastBlocked
-MetatileBehavior_IsEastBlocked: @ 808968C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x30
- beq _080896A6
- cmp r0, 0x34
- beq _080896A6
- cmp r0, 0x36
- beq _080896A6
- cmp r0, 0xC1
- beq _080896A6
- cmp r0, 0xBE
- bne _080896AA
-_080896A6:
- movs r0, 0x1
- b _080896AC
-_080896AA:
- movs r0, 0
-_080896AC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsEastBlocked
-
- thumb_func_start MetatileBehavior_IsWestBlocked
-MetatileBehavior_IsWestBlocked: @ 80896B0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x31
- beq _080896CA
- cmp r0, 0x35
- beq _080896CA
- cmp r0, 0x37
- beq _080896CA
- cmp r0, 0xC1
- beq _080896CA
- cmp r0, 0xBE
- bne _080896CE
-_080896CA:
- movs r0, 0x1
- b _080896D0
-_080896CE:
- movs r0, 0
-_080896D0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWestBlocked
-
- thumb_func_start MetatileBehavior_IsNorthBlocked
-MetatileBehavior_IsNorthBlocked: @ 80896D4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x32
- beq _080896EA
- cmp r0, 0x34
- beq _080896EA
- cmp r0, 0x35
- beq _080896EA
- cmp r0, 0xC0
- bne _080896EE
-_080896EA:
- movs r0, 0x1
- b _080896F0
-_080896EE:
- movs r0, 0
-_080896F0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsNorthBlocked
-
- thumb_func_start MetatileBehavior_IsSouthBlocked
-MetatileBehavior_IsSouthBlocked: @ 80896F4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x33
- beq _0808970A
- cmp r0, 0x36
- beq _0808970A
- cmp r0, 0x37
- beq _0808970A
- cmp r0, 0xC0
- bne _0808970E
-_0808970A:
- movs r0, 0x1
- b _08089710
-_0808970E:
- movs r0, 0
-_08089710:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSouthBlocked
-
- thumb_func_start MetatileBehavior_IsShortGrass
-MetatileBehavior_IsShortGrass: @ 8089714
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x7
- beq _08089722
- movs r0, 0
- b _08089724
-_08089722:
- movs r0, 0x1
-_08089724:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsShortGrass
-
- thumb_func_start MetatileBehavior_IsHotSprings
-MetatileBehavior_IsHotSprings: @ 8089728
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x28
- beq _08089736
- movs r0, 0
- b _08089738
-_08089736:
- movs r0, 0x1
-_08089738:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsHotSprings
-
- thumb_func_start MetatileBehavior_IsWaterfall
-@ bool8 MetatileBehavior_IsWaterfall(u8 metatileBehavior)
-MetatileBehavior_IsWaterfall: @ 808973C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- beq _0808974A
- movs r0, 0
- b _0808974C
-_0808974A:
- movs r0, 0x1
-_0808974C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWaterfall
-
- thumb_func_start MetatileBehavior_IsFortreeBridge
-MetatileBehavior_IsFortreeBridge: @ 8089750
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x78
- beq _0808975E
- movs r0, 0
- b _08089760
-_0808975E:
- movs r0, 0x1
-_08089760:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsFortreeBridge
-
- thumb_func_start sub_8089764
-sub_8089764: @ 8089764
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x74
- beq _08089772
- movs r0, 0
- b _08089774
-_08089772:
- movs r0, 0x1
-_08089774:
- pop {r1}
- bx r1
- thumb_func_end sub_8089764
-
- thumb_func_start sub_8089778
-sub_8089778: @ 8089778
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x75
- beq _08089786
- movs r0, 0
- b _08089788
-_08089786:
- movs r0, 0x1
-_08089788:
- pop {r1}
- bx r1
- thumb_func_end sub_8089778
-
- thumb_func_start sub_808978C
-sub_808978C: @ 808978C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x76
- beq _0808979A
- movs r0, 0
- b _0808979C
-_0808979A:
- movs r0, 0x1
-_0808979C:
- pop {r1}
- bx r1
- thumb_func_end sub_808978C
-
- thumb_func_start sub_80897A0
-sub_80897A0: @ 80897A0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x77
- beq _080897AE
- movs r0, 0
- b _080897B0
-_080897AE:
- movs r0, 0x1
-_080897B0:
- pop {r1}
- bx r1
- thumb_func_end sub_80897A0
-
- thumb_func_start MetatileBehavior_IsPacifidlogLog
-MetatileBehavior_IsPacifidlogLog: @ 80897B4
- push {lr}
- lsls r0, 24
- movs r1, 0x8C
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x3
- bls _080897C8
- movs r0, 0
- b _080897CA
-_080897C8:
- movs r0, 0x1
-_080897CA:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsPacifidlogLog
-
- thumb_func_start is_tile_x8C
-is_tile_x8C: @ 80897D0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8C
- beq _080897DE
- movs r0, 0
- b _080897E0
-_080897DE:
- movs r0, 0x1
-_080897E0:
- pop {r1}
- bx r1
- thumb_func_end is_tile_x8C
-
- thumb_func_start is_tile_x85
-is_tile_x85: @ 80897E4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x85
- beq _080897F2
- movs r0, 0
- b _080897F4
-_080897F2:
- movs r0, 0x1
-_080897F4:
- pop {r1}
- bx r1
- thumb_func_end is_tile_x85
-
- thumb_func_start is_tile_x8B
-is_tile_x8B: @ 80897F8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8B
- beq _08089806
- movs r0, 0
- b _08089808
-_08089806:
- movs r0, 0x1
-_08089808:
- pop {r1}
- bx r1
- thumb_func_end is_tile_x8B
-
- thumb_func_start is_tile_xEA
-is_tile_xEA: @ 808980C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xEA
- beq _0808981A
- movs r0, 0
- b _0808981C
-_0808981A:
- movs r0, 0x1
-_0808981C:
- pop {r1}
- bx r1
- thumb_func_end is_tile_xEA
-
- thumb_func_start is_tile_x8A
-is_tile_x8A: @ 8089820
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8A
- beq _0808982E
- movs r0, 0
- b _08089830
-_0808982E:
- movs r0, 0x1
-_08089830:
- pop {r1}
- bx r1
- thumb_func_end is_tile_x8A
-
- thumb_func_start is_tile_x87
-is_tile_x87: @ 8089834
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x87
- beq _08089842
- movs r0, 0
- b _08089844
-_08089842:
- movs r0, 0x1
-_08089844:
- pop {r1}
- bx r1
- thumb_func_end is_tile_x87
-
- thumb_func_start MetatileBehavior_0xBB
-@ bool8 MetatileBehavior_0xBB(u8 metatileBehavior)
-MetatileBehavior_0xBB: @ 8089848
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xBB
- beq _08089856
- movs r0, 0
- b _08089858
-_08089856:
- movs r0, 0x1
-_08089858:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_0xBB
-
- thumb_func_start MetatileBehavior_0xBC
-@ bool8 MetatileBehavior_0xBC(u8 metatileBehavior)
-MetatileBehavior_0xBC: @ 808985C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xBC
- beq _0808986A
- movs r0, 0
- b _0808986C
-_0808986A:
- movs r0, 0x1
-_0808986C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_0xBC
-
- thumb_func_start sub_8089870
-sub_8089870: @ 8089870
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x29
- beq _0808987E
- movs r0, 0
- b _08089880
-_0808987E:
- movs r0, 0x1
-_08089880:
- pop {r1}
- bx r1
- thumb_func_end sub_8089870
-
- thumb_func_start is_role_x68
-is_role_x68: @ 8089884
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x68
- beq _08089892
- movs r0, 0
- b _08089894
-_08089892:
- movs r0, 0x1
-_08089894:
- pop {r1}
- bx r1
- thumb_func_end is_role_x68
-
- thumb_func_start MetatileBehavior_IsAquaHideoutWarp
-MetatileBehavior_IsAquaHideoutWarp: @ 8089898
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x67
- beq _080898A6
- movs r0, 0
- b _080898A8
-_080898A6:
- movs r0, 0x1
-_080898A8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsAquaHideoutWarp
-
- thumb_func_start sub_80898AC
-sub_80898AC: @ 80898AC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x70
- beq _080898BA
- movs r0, 0
- b _080898BC
-_080898BA:
- movs r0, 0x1
-_080898BC:
- pop {r1}
- bx r1
- thumb_func_end sub_80898AC
-
- thumb_func_start sub_80898C0
-sub_80898C0: @ 80898C0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE
- beq _080898CE
- movs r0, 0
- b _080898D0
-_080898CE:
- movs r0, 0x1
-_080898D0:
- pop {r1}
- bx r1
- thumb_func_end sub_80898C0
-
- thumb_func_start MetatileBehavior_IsSurfableFishableWater
-MetatileBehavior_IsSurfableFishableWater: @ 80898D4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _080898F8
- cmp r0, 0x15
- beq _080898F8
- cmp r0, 0x11
- beq _080898F8
- cmp r0, 0x12
- beq _080898F8
- cmp r0, 0x14
- beq _080898F8
- subs r0, 0x50
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bhi _080898FC
-_080898F8:
- movs r0, 0x1
- b _080898FE
-_080898FC:
- movs r0, 0
-_080898FE:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSurfableFishableWater
-
- thumb_func_start sub_8089904
-sub_8089904: @ 8089904
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xF
- beq _08089912
- movs r0, 0
- b _08089914
-_08089912:
- movs r0, 0x1
-_08089914:
- pop {r1}
- bx r1
- thumb_func_end sub_8089904
-
- thumb_func_start sub_8089918
-sub_8089918: @ 8089918
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x66
- beq _08089926
- movs r0, 0
- b _08089928
-_08089926:
- movs r0, 0x1
-_08089928:
- pop {r1}
- bx r1
- thumb_func_end sub_8089918
-
- thumb_func_start sub_808992C
-sub_808992C: @ 808992C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD2
- beq _0808993A
- movs r0, 0
- b _0808993C
-_0808993A:
- movs r0, 0x1
-_0808993C:
- pop {r1}
- bx r1
- thumb_func_end sub_808992C
-
- thumb_func_start MetatileBehavior_IsMuddySlope
-@ bool8 MetatileBehavior_IsMuddySlope(u8 metatileBehavior)
-MetatileBehavior_IsMuddySlope: @ 8089940
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD0
- beq _0808994E
- movs r0, 0
- b _08089950
-_0808994E:
- movs r0, 0x1
-_08089950:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsMuddySlope
-
- thumb_func_start MetatileBehavior_IsBumpySlope
-MetatileBehavior_IsBumpySlope: @ 8089954
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD1
- beq _08089962
- movs r0, 0
- b _08089964
-_08089962:
- movs r0, 0x1
-_08089964:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsBumpySlope
-
- thumb_func_start MetatileBehavior_IsIsolatedVerticalRail
-MetatileBehavior_IsIsolatedVerticalRail: @ 8089968
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD3
- beq _08089976
- movs r0, 0
- b _08089978
-_08089976:
- movs r0, 0x1
-_08089978:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsIsolatedVerticalRail
-
- thumb_func_start MetatileBehavior_IsIsolatedHorizontalRail
-MetatileBehavior_IsIsolatedHorizontalRail: @ 808997C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD4
- beq _0808998A
- movs r0, 0
- b _0808998C
-_0808998A:
- movs r0, 0x1
-_0808998C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsIsolatedHorizontalRail
-
- thumb_func_start MetatileBehavior_IsVerticalRail
-MetatileBehavior_IsVerticalRail: @ 8089990
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD5
- beq _0808999E
- movs r0, 0
- b _080899A0
-_0808999E:
- movs r0, 0x1
-_080899A0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsVerticalRail
-
- thumb_func_start MetatileBehavior_IsHorizontalRail
-MetatileBehavior_IsHorizontalRail: @ 80899A4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD6
- beq _080899B2
- movs r0, 0
- b _080899B4
-_080899B2:
- movs r0, 0x1
-_080899B4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsHorizontalRail
-
- thumb_func_start MetatileBehavior_IsSeaweed
-MetatileBehavior_IsSeaweed: @ 80899B8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x22
- beq _080899C6
- cmp r0, 0x2A
- bne _080899CA
-_080899C6:
- movs r0, 0x1
- b _080899CC
-_080899CA:
- movs r0, 0
-_080899CC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSeaweed
-
- thumb_func_start MetatileBehavior_IsRunningDisallowed
-MetatileBehavior_IsRunningDisallowed: @ 80899D0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA
- beq _080899EC
- cmp r0, 0x3
- beq _080899EC
- cmp r0, 0x28
- beq _080899EC
- bl MetatileBehavior_IsPacifidlogLog
- lsls r0, 24
- cmp r0, 0
- beq _080899F0
-_080899EC:
- movs r0, 0x1
- b _080899F2
-_080899F0:
- movs r0, 0
-_080899F2:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsRunningDisallowed
-
- thumb_func_start sub_80899F8
-sub_80899F8: @ 80899F8
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xFE
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x1
- bls _08089A12
- cmp r1, 0x24
- beq _08089A12
- cmp r1, 0x9
- bne _08089A16
-_08089A12:
- movs r0, 0x1
- b _08089A18
-_08089A16:
- movs r0, 0
-_08089A18:
- pop {r1}
- bx r1
- thumb_func_end sub_80899F8
-
- thumb_func_start sub_8089A1C
-sub_8089A1C: @ 8089A1C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8E
- beq _08089A2A
- movs r0, 0
- b _08089A2C
-_08089A2A:
- movs r0, 0x1
-_08089A2C:
- pop {r1}
- bx r1
- thumb_func_end sub_8089A1C
-
- thumb_func_start sub_8089A30
-sub_8089A30: @ 8089A30
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE0
- beq _08089A3E
- movs r0, 0
- b _08089A40
-_08089A3E:
- movs r0, 0x1
-_08089A40:
- pop {r1}
- bx r1
- thumb_func_end sub_8089A30
-
- thumb_func_start sub_8089A44
-sub_8089A44: @ 8089A44
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE1
- beq _08089A52
- movs r0, 0
- b _08089A54
-_08089A52:
- movs r0, 0x1
-_08089A54:
- pop {r1}
- bx r1
- thumb_func_end sub_8089A44
-
- thumb_func_start sub_8089A58
-sub_8089A58: @ 8089A58
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE2
- beq _08089A66
- movs r0, 0
- b _08089A68
-_08089A66:
- movs r0, 0x1
-_08089A68:
- pop {r1}
- bx r1
- thumb_func_end sub_8089A58
-
- thumb_func_start sub_8089A6C
-sub_8089A6C: @ 8089A6C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE3
- beq _08089A7A
- movs r0, 0
- b _08089A7C
-_08089A7A:
- movs r0, 0x1
-_08089A7C:
- pop {r1}
- bx r1
- thumb_func_end sub_8089A6C
-
- thumb_func_start sub_8089A80
-sub_8089A80: @ 8089A80
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE4
- beq _08089A8E
- movs r0, 0
- b _08089A90
-_08089A8E:
- movs r0, 0x1
-_08089A90:
- pop {r1}
- bx r1
- thumb_func_end sub_8089A80
-
- thumb_func_start sub_8089A94
-sub_8089A94: @ 8089A94
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE5
- beq _08089AA2
- movs r0, 0
- b _08089AA4
-_08089AA2:
- movs r0, 0x1
-_08089AA4:
- pop {r1}
- bx r1
- thumb_func_end sub_8089A94
-
- thumb_func_start sub_8089AA8
-sub_8089AA8: @ 8089AA8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE6
- beq _08089AB6
- movs r0, 0
- b _08089AB8
-_08089AB6:
- movs r0, 0x1
-_08089AB8:
- pop {r1}
- bx r1
- thumb_func_end sub_8089AA8
-
- thumb_func_start sub_8089ABC
-sub_8089ABC: @ 8089ABC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD
- beq _08089ACA
- movs r0, 0
- b _08089ACC
-_08089ACA:
- movs r0, 0x1
-_08089ACC:
- pop {r1}
- bx r1
- thumb_func_end sub_8089ABC
-
- thumb_func_start sub_8089AD0
-sub_8089AD0: @ 8089AD0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _08089AE2
- cmp r0, 0xE8
- beq _08089AE6
-_08089AE2:
- movs r0, 0
- b _08089AE8
-_08089AE6:
- movs r0, 0x1
-_08089AE8:
- pop {r1}
- bx r1
- thumb_func_end sub_8089AD0
-
- thumb_func_start sub_8089AEC
-sub_8089AEC: @ 8089AEC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _08089AFE
- cmp r0, 0xE7
- beq _08089B02
-_08089AFE:
- movs r0, 0
- b _08089B04
-_08089B02:
- movs r0, 0x1
-_08089B04:
- pop {r1}
- bx r1
- thumb_func_end sub_8089AEC
-
- thumb_func_start MetatileBehavior_IsQuestionnaire
-MetatileBehavior_IsQuestionnaire: @ 8089B08
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8F
- beq _08089B16
- movs r0, 0
- b _08089B18
-_08089B16:
- movs r0, 0x1
-_08089B18:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsQuestionnaire
-
- thumb_func_start MetatileBehavior_IsLongGrass2
-MetatileBehavior_IsLongGrass2: @ 8089B1C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _08089B2A
- movs r0, 0
- b _08089B2C
-_08089B2A:
- movs r0, 0x1
-_08089B2C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsLongGrass2
-
- thumb_func_start MetatileBehavior_IsLongGrassSouthEdge
-MetatileBehavior_IsLongGrassSouthEdge: @ 8089B30
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9
- beq _08089B3E
- movs r0, 0
- b _08089B40
-_08089B3E:
- movs r0, 0x1
-_08089B40:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsLongGrassSouthEdge
-
- thumb_func_start MetatileBehavior_IsTrainerHillTimer
-MetatileBehavior_IsTrainerHillTimer: @ 8089B44
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE9
- beq _08089B52
- movs r0, 0
- b _08089B54
-_08089B52:
- movs r0, 0x1
-_08089B54:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsTrainerHillTimer
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/money.s b/asm/money.s
deleted file mode 100644
index 53e795714..000000000
--- a/asm/money.s
+++ /dev/null
@@ -1,311 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
-
-
-
- thumb_func_start sub_80E51B0
-sub_80E51B0: @ 80E51B0
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- ldr r1, =gSpecialVar_0x8005
- ldrh r1, [r1]
- bl IsEnoughMoney
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80E51B0
-
- thumb_func_start sub_80E51D4
-sub_80E51D4: @ 80E51D4
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- ldr r1, =gSpecialVar_0x8005
- ldrh r1, [r1]
- bl SubtractMoney
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80E51D4
-
- thumb_func_start PrintMoneyAmountInMoneyBox
-@ void PrintMoneyAmountInMoneyBox(u8 windowId, int amount, s8 a3)
-PrintMoneyAmountInMoneyBox: @ 80E51F4
- push {lr}
- sub sp, 0x4
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp]
- movs r1, 0x26
- movs r2, 0x1
- bl PrintMoneyAmount
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end PrintMoneyAmountInMoneyBox
-
- thumb_func_start PrintMoneyAmount
-@ void PrintMoneyAmount(u8 windowId, char x, char y, int amount, u8 a5)
-PrintMoneyAmount: @ 80E5214
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- ldr r4, [sp, 0x24]
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r4, 24
- lsrs r5, r4, 24
- ldr r4, =gStringVar1
- adds r0, r4, 0
- adds r1, r3, 0
- movs r2, 0
- movs r3, 0x6
- bl ConvertIntToDecimalStringN
- adds r0, r4, 0
- bl StringLength
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x6
- subs r1, r0
- ldr r2, =gStringVar4
- adds r0, r1, 0
- subs r1, 0x1
- cmp r0, 0
- ble _080E5264
- movs r3, 0x77
-_080E5258:
- strb r3, [r2]
- adds r2, 0x1
- adds r0, r1, 0
- subs r1, 0x1
- cmp r0, 0
- bgt _080E5258
-_080E5264:
- ldr r1, =gText_PokedollarVar1
- adds r0, r2, 0
- bl StringExpandPlaceholders
- ldr r2, =gStringVar4
- str r6, [sp]
- str r5, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- adds r0, r7, 0
- movs r1, 0x1
- mov r3, r8
- bl PrintTextOnWindow
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end PrintMoneyAmount
-
- thumb_func_start set_window_border_style_and_print_money_box
-@ void set_window_border_style_and_print_money_box(u8 windowId, u16 tileStart, u8 palette, int amount)
-set_window_border_style_and_print_money_box: @ 80E5298
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r6, r0, 0
- adds r4, r1, 0
- adds r5, r2, 0
- mov r8, r3
- lsls r6, 24
- lsrs r6, 24
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 24
- lsrs r5, 24
- adds r0, r6, 0
- movs r1, 0
- adds r2, r4, 0
- adds r3, r5, 0
- bl SetWindowBorderStyle
- adds r0, r6, 0
- mov r1, r8
- movs r2, 0
- bl PrintMoneyAmountInMoneyBox
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end set_window_border_style_and_print_money_box
-
- thumb_func_start sub_80E52D4
-sub_80E52D4: @ 80E52D4
- push {lr}
- adds r1, r0, 0
- ldr r0, =gUnknown_02039F98
- ldrb r0, [r0]
- movs r2, 0
- bl PrintMoneyAmountInMoneyBox
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80E52D4
-
- thumb_func_start sub_80E52EC
-@ void sub_80E52EC(int money, int x, int y)
-sub_80E52EC: @ 80E52EC
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x18
- mov r8, r0
- adds r4, r1, 0
- adds r3, r2, 0
- lsls r4, 24
- lsls r3, 24
- lsrs r6, r4, 24
- movs r0, 0x80
- lsls r0, 17
- adds r4, r0
- lsrs r4, 24
- lsrs r5, r3, 24
- adds r3, r0
- lsrs r3, 24
- movs r0, 0xA
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0xF
- str r0, [sp, 0x8]
- movs r0, 0x8
- str r0, [sp, 0xC]
- add r0, sp, 0x10
- movs r1, 0
- adds r2, r4, 0
- bl SetWindowTemplateFields
- ldr r4, =gUnknown_02039F98
- add r0, sp, 0x10
- bl AddWindow
- strb r0, [r4]
- ldrb r0, [r4]
- movs r1, 0
- bl FillWindowPixelBuffer
- ldrb r0, [r4]
- bl PutWindowTilemap
- ldrb r0, [r4]
- movs r1, 0x1
- bl CopyWindowToVram
- ldrb r0, [r4]
- movs r1, 0x85
- lsls r1, 2
- movs r2, 0xE
- mov r3, r8
- bl set_window_border_style_and_print_money_box
- lsls r6, 19
- movs r0, 0x98
- lsls r0, 13
- adds r6, r0
- lsrs r6, 16
- lsls r5, 19
- movs r0, 0xB0
- lsls r0, 12
- adds r5, r0
- lsrs r5, 16
- adds r0, r6, 0
- adds r1, r5, 0
- bl AddMoneyLabelObject
- add sp, 0x18
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80E52EC
-
- thumb_func_start sub_80E5384
-sub_80E5384: @ 80E5384
- push {r4,lr}
- bl RemoveMoneyLabelObject
- ldr r4, =gUnknown_02039F98
- ldrb r0, [r4]
- movs r1, 0
- bl sub_8198070
- ldrb r0, [r4]
- movs r1, 0x2
- bl CopyWindowToVram
- ldrb r0, [r4]
- bl RemoveWindow
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80E5384
-
- thumb_func_start AddMoneyLabelObject
-AddMoneyLabelObject: @ 80E53AC
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- ldr r0, =gUnknown_0858C2A4
- bl LoadCompressedObjectPic
- ldr r0, =gUnknown_0858C2AC
- bl LoadCompressedObjectPalette
- ldr r0, =gUnknown_0858C28C
- lsls r4, 16
- asrs r4, 16
- lsls r5, 16
- asrs r5, 16
- adds r1, r4, 0
- adds r2, r5, 0
- movs r3, 0
- bl CreateSprite
- ldr r1, =gUnknown_02039F99
- strb r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end AddMoneyLabelObject
-
- thumb_func_start RemoveMoneyLabelObject
-RemoveMoneyLabelObject: @ 80E53F4
- push {lr}
- ldr r0, =gUnknown_02039F99
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- bl DestroySpriteAndFreeResources
- pop {r0}
- bx r0
- .pool
- thumb_func_end RemoveMoneyLabelObject
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/mystery_event_menu.s b/asm/mystery_event_menu.s
index 49de57848..df8e443a1 100644
--- a/asm/mystery_event_menu.s
+++ b/asm/mystery_event_menu.s
@@ -337,7 +337,7 @@ _08178C54:
lsls r0, 24
cmp r0, 0
beq _08178D00
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _08178C68
@@ -435,13 +435,13 @@ _08178D28:
_08178D36:
b _08178E34
_08178D38:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
cmp r0, 0
bne _08178D44
b _08178E58
_08178D44:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
ldr r1, =gMain
movs r2, 0x87
lsls r2, 3
@@ -462,7 +462,7 @@ _08178D60:
b _08178E3C
.pool
_08178D74:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r6, [r0]
cmp r6, 0
bne _08178E58
diff --git a/asm/mystery_event_script.s b/asm/mystery_event_script.s
index d544f689f..ce8591981 100644
--- a/asm/mystery_event_script.s
+++ b/asm/mystery_event_script.s
@@ -46,7 +46,7 @@ sub_8153804: @ 8153804
ldr r1, =gUnknown_08674C86
bl StringExpandPlaceholders
movs r0, 0x3
- bl sub_81538C4
+ bl SetMysteryEventScriptStatus
pop {r0}
bx r0
.pool
@@ -140,13 +140,13 @@ _081538AC:
.pool
thumb_func_end sub_81538A0
- thumb_func_start sub_81538C4
-sub_81538C4: @ 81538C4
+ thumb_func_start SetMysteryEventScriptStatus
+SetMysteryEventScriptStatus: @ 81538C4
ldr r1, =gUnknown_0203BBC0
str r0, [r1, 0x6C]
bx lr
.pool
- thumb_func_end sub_81538C4
+ thumb_func_end SetMysteryEventScriptStatus
thumb_func_start sub_81538D0
sub_81538D0: @ 81538D0
diff --git a/asm/naming_screen.s b/asm/naming_screen.s
index 1839a7568..22d7b260e 100644
--- a/asm/naming_screen.s
+++ b/asm/naming_screen.s
@@ -840,7 +840,7 @@ pokemon_transfer_to_pc_with_message: @ 80E34E4
bl VarGet
lsls r0, 24
lsrs r0, 24
- bl sav3_get_box_name
+ bl GetBoxNamePtr
adds r1, r0, 0
adds r0, r4, 0
bl StringCopy
@@ -859,7 +859,7 @@ _080E3534:
bl VarGet
lsls r0, 24
lsrs r0, 24
- bl sav3_get_box_name
+ bl GetBoxNamePtr
adds r1, r0, 0
adds r0, r4, 0
bl StringCopy
@@ -874,7 +874,7 @@ _080E3534:
bl get_unknown_box_id
lsls r0, 24
lsrs r0, 24
- bl sav3_get_box_name
+ bl GetBoxNamePtr
adds r1, r0, 0
adds r0, r4, 0
bl StringCopy
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 1e47701ae..f2e681b9b 100755
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -5441,7 +5441,7 @@ sub_81B2E64: @ 81B2E64
mov r2, r9
lsls r1, r2, 16
asrs r1, 16
- bl sub_8075060
+ bl GetHPBarLevel
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
@@ -5495,7 +5495,7 @@ _081B2F04:
asrs r1, 16
ldr r2, [r6]
ldrb r2, [r2, 0x1A]
- bl sub_8075034
+ bl GetScaledHPFraction
lsls r0, 24
lsrs r5, r0, 24
ldrb r0, [r6, 0x8]
@@ -10051,7 +10051,7 @@ task_launch_hm_phase_2: @ 81B5750
cmp r0, 0x1
bne _081B577C
bl brm_get_selected_species
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 16
lsrs r0, 16
str r0, [r1]
@@ -10135,7 +10135,7 @@ _081B57FE:
hm_surf_run_dp02scr: @ 81B5804
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -10239,7 +10239,7 @@ sub_81B58A8: @ 81B58A8
hm2_waterfall: @ 81B58D4
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -10299,7 +10299,7 @@ _081B594E:
sub_81B5958: @ 81B5958
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -10314,7 +10314,7 @@ sub_81B5958: @ 81B5958
sub_81B5974: @ 81B5974
push {lr}
bl sub_809D1E8
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1, 0x4]
@@ -10452,7 +10452,7 @@ sub_81B5A8C: @ 81B5A8C
asrs r2, 16
adds r0, r1, 0
adds r1, r2, 0
- bl sub_8075060
+ bl GetHPBarLevel
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
@@ -13868,7 +13868,7 @@ sub_81B7810: @ 81B7810
adds r0, r7, 0
adds r1, r4, 0
movs r2, 0x1
- bl sub_813DA40
+ bl BeginEvolutionScene
adds r0, r5, 0
bl DestroyTask
b _081B786E
@@ -15205,7 +15205,7 @@ sub_81B841C: @ 81B841C
beq _081B8438
adds r0, r1, 0
movs r1, 0x1
- bl sub_80D6D70
+ bl AddPCItem
b _081B8440
.pool
_081B8438:
@@ -15872,7 +15872,7 @@ sub_81B8958: @ 81B8958
thumb_func_start sub_81B8984
sub_81B8984: @ 81B8984
push {lr}
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _081B8994
@@ -16222,13 +16222,13 @@ _081B8CB0:
strb r0, [r6, 0x2]
b _081B8D58
_081B8CBE:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _081B8CFC
movs r5, 0x1
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
mov r2, sp
ldr r1, =gBattlePartyID
lsls r0, 24
@@ -16255,7 +16255,7 @@ _081B8CF0:
_081B8CFC:
movs r5, 0x2
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
mov r1, sp
ldr r4, =gBattlePartyID
lsls r0, 24
@@ -16264,7 +16264,7 @@ _081B8CFC:
ldrh r0, [r0]
strb r0, [r1]
movs r0, 0x2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
mov r1, sp
lsls r0, 24
lsrs r0, 23
@@ -16344,19 +16344,19 @@ sub_81B8D88: @ 81B8D88
cmp r0, 0
bne _081B8DB0
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
movs r0, 0x2
b _081B8DBC
_081B8DB0:
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r4, r0, 24
movs r0, 0x3
_081B8DBC:
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r6, r0, 24
bl sub_81B1250
@@ -16382,7 +16382,7 @@ _081B8DE2:
strb r0, [r5, 0x2]
b _081B8E72
_081B8DF0:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
bne _081B8E28
diff --git a/asm/player_pc.s b/asm/player_pc.s
index 14062347c..cd91ed3e1 100644
--- a/asm/player_pc.s
+++ b/asm/player_pc.s
@@ -31,7 +31,7 @@ _0816AE1A:
ldrh r0, [r0]
adds r1, r6
ldrh r1, [r1]
- bl sub_80D6D70
+ bl AddPCItem
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/pokeball.s b/asm/pokeball.s
index 06958d7d2..fed227c80 100755
--- a/asm/pokeball.s
+++ b/asm/pokeball.s
@@ -17,7 +17,7 @@ sub_80753E8: @ 80753E8
ldr r1, =gDoingBattleAnim
movs r0, 0x1
strb r0, [r1]
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r6, =gActiveBank
ldrb r1, [r6]
@@ -185,7 +185,7 @@ _08075548:
.pool
_08075584:
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
ldr r1, =gBankTarget
strb r0, [r1]
movs r0, 0x1
@@ -992,7 +992,7 @@ _08075C22:
movs r2, 0xC
bl PlayCry4
_08075C2E:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
mov r2, r8
@@ -1082,7 +1082,7 @@ _08075CD8:
movs r2, 0xB
bl PlayCry4
_08075CE4:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
mov r2, r8
@@ -1199,23 +1199,23 @@ _08075DD4:
lsrs r0, 16
mov r9, r0
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
cmp r5, r0
beq _08075E00
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
cmp r5, r0
bne _08075E56
_08075E00:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08075E56
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r1, [r0, 0x9]
@@ -1243,11 +1243,11 @@ _08075E4C:
movs r2, 0x80
bl m4aMPlayVolumeControl
_08075E56:
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08075E70
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r1, [r0, 0x9]
@@ -1261,13 +1261,13 @@ _08075E70:
.pool
_08075E80:
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
cmp r5, r0
beq _08075E9C
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -1278,7 +1278,7 @@ _08075E9C:
_08075EA0:
movs r4, 0x2
_08075EA2:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
mov r2, r8
@@ -1508,7 +1508,7 @@ _0807605C:
strh r1, [r0, 0x26]
ldr r0, =gDoingBattleAnim
strb r2, [r0]
- ldr r4, =gUnknown_020244D0
+ ldr r4, =gBattleSpritesDataPtr
ldr r0, [r4]
ldr r0, [r0, 0x4]
lsls r1, r6, 1
@@ -1619,7 +1619,7 @@ _08076130:
ands r0, r1
cmp r0, 0
beq _08076196
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x4]
lsls r1, r7, 1
@@ -1815,11 +1815,11 @@ _080762F8:
ldrb r0, [r5, 0x6]
strh r0, [r5, 0x3A]
strh r1, [r5, 0x2E]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _08076358
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r1, [r0, 0x9]
@@ -1830,7 +1830,7 @@ _080762F8:
movs r0, 0x3A
ldrsh r4, [r5, r0]
movs r0, 0x2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -1888,11 +1888,11 @@ sub_8076398: @ 8076398
ble _080763EC
movs r0, 0
strh r0, [r5, 0x2E]
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _080763E8
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0, 0x8]
ldrb r1, [r0, 0x9]
@@ -1903,7 +1903,7 @@ sub_8076398: @ 8076398
movs r0, 0x3A
ldrsh r4, [r5, r0]
movs r0, 0x3
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
cmp r4, r0
diff --git a/asm/pokeblock_feed.s b/asm/pokeblock_feed.s
index d82c5df07..1f8e45f0a 100644
--- a/asm/pokeblock_feed.s
+++ b/asm/pokeblock_feed.s
@@ -95,7 +95,7 @@ _08179C48:
bl FreeAllSpritePalettes
b _08179D32
_08179C4E:
- bl init_uns_table_pokemon_copy
+ bl AllocateMonSpritesGfx
ldr r1, =gMain
movs r2, 0x87
lsls r2, 3
@@ -322,7 +322,7 @@ _08179E48:
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x8]
adds r2, r5, 0
@@ -797,7 +797,7 @@ sub_817A2C0: @ 817A2C0
ldr r0, =gUnknown_0203BD18
ldr r0, [r0]
bl Free
- bl sub_805F094
+ bl FreeMonSpritesGfx
_0817A304:
pop {r4}
pop {r0}
diff --git a/asm/pokedex.s b/asm/pokedex.s
index fdaacde2c..f9ee0eeab 100644
--- a/asm/pokedex.s
+++ b/asm/pokedex.s
@@ -8429,8 +8429,8 @@ _080BFDB4:
.pool
thumb_func_end sub_80BFD7C
- thumb_func_start sub_80BFDF4
-sub_80BFDF4: @ 80BFDF4
+ thumb_func_start CreateDexDisplayMonDataTask
+CreateDexDisplayMonDataTask: @ 80BFDF4
push {r4-r6,lr}
adds r4, r0, 0
adds r5, r1, 0
@@ -8460,7 +8460,7 @@ sub_80BFDF4: @ 80BFDF4
pop {r1}
bx r1
.pool
- thumb_func_end sub_80BFDF4
+ thumb_func_end CreateDexDisplayMonDataTask
thumb_func_start sub_80BFE38
sub_80BFE38: @ 80BFE38
diff --git a/asm/pokemon_2.s b/asm/pokemon_2.s
deleted file mode 100644
index 17856f6d3..000000000
--- a/asm/pokemon_2.s
+++ /dev/null
@@ -1,356 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start CopyPlayerPartyMonToBattleData
-CopyPlayerPartyMonToBattleData: @ 806B9FC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x18
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x14]
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- movs r0, 0x64
- mov r5, r9
- muls r5, r0
- ldr r0, =gPlayerParty
- adds r5, r0
- adds r0, r5, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- ldr r1, =gBattleMons
- mov r8, r1
- movs r1, 0x58
- ldr r2, [sp, 0x14]
- adds r4, r2, 0
- muls r4, r1
- mov r3, r8
- adds r6, r4, r3
- strh r0, [r6]
- adds r0, r5, 0
- movs r1, 0xC
- movs r2, 0
- bl GetMonData
- strh r0, [r6, 0x2E]
- movs r6, 0
- mov r0, r8
- adds r0, 0x24
- adds r7, r4, r0
-_0806BA4E:
- adds r1, r6, 0
- adds r1, 0xD
- adds r0, r5, 0
- movs r2, 0
- bl GetMonData
- movs r1, 0xC
- add r1, r8
- mov r10, r1
- adds r1, r4, r1
- strh r0, [r1]
- adds r1, r6, 0
- adds r1, 0x11
- adds r0, r5, 0
- movs r2, 0
- bl GetMonData
- strb r0, [r7]
- adds r7, 0x1
- adds r4, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _0806BA4E
- movs r0, 0x64
- mov r4, r9
- muls r4, r0
- ldr r0, =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x15
- movs r2, 0
- bl GetMonData
- movs r2, 0xC
- negs r2, r2
- add r2, r10
- mov r9, r2
- movs r1, 0x58
- ldr r3, [sp, 0x14]
- adds r5, r3, 0
- muls r5, r1
- adds r7, r5, r2
- adds r1, r7, 0
- adds r1, 0x3B
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x20
- movs r2, 0
- bl GetMonData
- adds r1, r7, 0
- adds r1, 0x2B
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x19
- movs r2, 0
- bl GetMonData
- mov r1, r10
- adds r1, 0x38
- adds r1, r5, r1
- str r0, [r1]
- adds r0, r4, 0
- movs r1, 0x27
- movs r2, 0
- bl GetMonData
- movs r6, 0x1F
- ands r0, r6
- ldrb r2, [r7, 0x14]
- movs r1, 0x20
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r7, 0x14]
- adds r0, r4, 0
- movs r1, 0x28
- movs r2, 0
- bl GetMonData
- movs r1, 0x1F
- mov r8, r1
- mov r2, r8
- ands r0, r2
- lsls r0, 5
- ldrh r2, [r7, 0x14]
- ldr r1, =0xfffffc1f
- ands r1, r2
- orrs r1, r0
- strh r1, [r7, 0x14]
- adds r0, r4, 0
- movs r1, 0x29
- movs r2, 0
- bl GetMonData
- ands r0, r6
- lsls r0, 2
- ldrb r2, [r7, 0x15]
- movs r1, 0x7D
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r7, 0x15]
- adds r0, r4, 0
- movs r1, 0x2A
- movs r2, 0
- bl GetMonData
- movs r1, 0x1F
- ands r1, r0
- lsls r1, 15
- ldr r0, [r7, 0x14]
- ldr r2, =0xfff07fff
- ands r0, r2
- orrs r0, r1
- str r0, [r7, 0x14]
- adds r0, r4, 0
- movs r1, 0x2B
- movs r2, 0
- bl GetMonData
- mov r3, r8
- ands r0, r3
- lsls r0, 4
- ldrh r2, [r7, 0x16]
- ldr r1, =0xfffffe0f
- ands r1, r2
- orrs r1, r0
- strh r1, [r7, 0x16]
- adds r0, r4, 0
- movs r1, 0x2C
- movs r2, 0
- bl GetMonData
- ands r0, r6
- lsls r0, 1
- ldrb r2, [r7, 0x17]
- movs r1, 0x3F
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r7, 0x17]
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0
- bl GetMonData
- mov r1, r10
- adds r1, 0x3C
- adds r1, r5, r1
- str r0, [r1]
- adds r0, r4, 0
- movs r1, 0x37
- movs r2, 0
- bl GetMonData
- mov r1, r10
- adds r1, 0x40
- adds r1, r5, r1
- str r0, [r1]
- adds r0, r4, 0
- movs r1, 0x38
- movs r2, 0
- bl GetMonData
- adds r1, r7, 0
- adds r1, 0x2A
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x39
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x28]
- adds r0, r4, 0
- movs r1, 0x3A
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x2C]
- adds r0, r4, 0
- movs r1, 0x3B
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x2]
- adds r0, r4, 0
- movs r1, 0x3C
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x4]
- adds r0, r4, 0
- movs r1, 0x3D
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x6]
- adds r0, r4, 0
- movs r1, 0x3E
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x8]
- adds r0, r4, 0
- movs r1, 0x3F
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0xA]
- adds r0, r4, 0
- movs r1, 0x2D
- movs r2, 0
- bl GetMonData
- movs r1, 0x1
- ands r0, r1
- lsls r0, 6
- ldrb r2, [r7, 0x17]
- movs r1, 0x41
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r7, 0x17]
- adds r0, r4, 0
- movs r1, 0x2E
- movs r2, 0
- bl GetMonData
- lsls r0, 7
- ldrb r2, [r7, 0x17]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r7, 0x17]
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0
- bl GetMonData
- mov r1, r10
- adds r1, 0x48
- adds r1, r5, r1
- str r0, [r1]
- ldr r2, =gBaseStats
- ldrh r1, [r7]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x6]
- adds r1, r7, 0
- adds r1, 0x21
- strb r0, [r1]
- ldrh r1, [r7]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x7]
- adds r1, r7, 0
- adds r1, 0x22
- strb r0, [r1]
- ldrh r0, [r7]
- ldrb r1, [r7, 0x17]
- lsrs r1, 7
- bl GetAbilityBySpecies
- adds r1, r7, 0
- adds r1, 0x20
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, r10
- adds r0, 0x24
- adds r0, r5, r0
- mov r1, sp
- bl StringCopy10
- mov r2, r10
- adds r2, 0x30
- adds r2, r5, r2
- adds r0, r4, 0
- movs r1, 0x7
- bl GetMonData
- ldr r0, [sp, 0x14]
- bl GetBankSide
- ldr r1, =gBattleStruct
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0xA8
- ldr r1, [r1]
- adds r1, r0
- ldrh r0, [r7, 0x28]
- strh r0, [r1]
- movs r2, 0x6
- mov r1, r9
- movs r6, 0x7
- add r5, r10
- adds r0, r5, 0
- adds r0, 0x13
-_0806BCB2:
- strb r2, [r0]
- subs r0, 0x1
- subs r6, 0x1
- cmp r6, 0
- bge _0806BCB2
- movs r2, 0
- movs r0, 0x58
- ldr r3, [sp, 0x14]
- muls r0, r3
- adds r1, 0x50
- adds r0, r1
- str r2, [r0]
- ldr r0, [sp, 0x14]
- bl sub_803FA70
- ldr r0, [sp, 0x14]
- movs r1, 0
- bl sub_805EF84
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end CopyPlayerPartyMonToBattleData
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokemon_icon.s b/asm/pokemon_icon.s
index e90253ab0..6009bd3f3 100755
--- a/asm/pokemon_icon.s
+++ b/asm/pokemon_icon.s
@@ -32,7 +32,7 @@ sub_80D2CC4: @ 80D2CC4
str r0, [sp, 0x18]
adds r0, r4, 0
adds r2, r5, 0
- bl sub_80D2EDC
+ bl GetMonIconPtr
str r0, [sp, 0x1C]
ldr r0, =gUnknown_0857C5B4
str r0, [sp, 0x20]
@@ -271,9 +271,9 @@ _080D2ED2:
bx r1
thumb_func_end sub_80D2E84
- thumb_func_start sub_80D2EDC
-@ void *sub_80D2EDC(u16 speciesId, u32 personality, bool32)
-sub_80D2EDC: @ 80D2EDC
+ thumb_func_start GetMonIconPtr
+@ void *GetMonIconPtr(u16 speciesId, u32 personality, bool32)
+GetMonIconPtr: @ 80D2EDC
push {r4,lr}
adds r4, r2, 0
lsls r0, 16
@@ -286,7 +286,7 @@ sub_80D2EDC: @ 80D2EDC
pop {r4}
pop {r1}
bx r1
- thumb_func_end sub_80D2EDC
+ thumb_func_end GetMonIconPtr
thumb_func_start sub_80D2EF8
sub_80D2EF8: @ 80D2EF8
@@ -534,8 +534,8 @@ sub_80D30A0: @ 80D30A0
.pool
thumb_func_end sub_80D30A0
- thumb_func_start sub_80D30B0
-sub_80D30B0: @ 80D30B0
+ thumb_func_start GetValidMonIconPalettePtr
+GetValidMonIconPalettePtr: @ 80D30B0
push {lr}
lsls r0, 16
lsrs r2, r0, 16
@@ -556,7 +556,7 @@ _080D30C2:
pop {r1}
bx r1
.pool
- thumb_func_end sub_80D30B0
+ thumb_func_end GetValidMonIconPalettePtr
thumb_func_start sub_80D30DC
sub_80D30DC: @ 80D30DC
diff --git a/asm/pokemon_item_effect.s b/asm/pokemon_item_effect.s
index c798d7753..49b205967 100644
--- a/asm/pokemon_item_effect.s
+++ b/asm/pokemon_item_effect.s
@@ -221,7 +221,7 @@ _0806BEE0:
mov r0, r8
movs r2, 0
ldr r3, [sp, 0x10]
- bl sub_813DA40
+ bl BeginEvolutionScene
movs r0, 0
bl _0806CD5C
_0806BEF0:
@@ -1155,7 +1155,7 @@ _0806C6AE:
movs r0, 0
movs r1, 0
movs r2, 0
- bl dp01_build_cmdbuf_x00_a_b_0
+ bl EmitGetMonData
ldrb r0, [r4]
bl MarkBufferBankForExecution
strb r5, [r4]
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 6cca9c144..d1f7bd161 100755
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -1019,7 +1019,7 @@ _080C777E:
_080C779E:
lsls r0, r5, 24
lsrs r0, 24
- bl sav3_get_box_name
+ bl GetBoxNamePtr
ldr r1, =gText_Box
bl StringCopy
adds r4, r5, 0x1
@@ -1043,7 +1043,7 @@ _080C77C2:
lsrs r5, r0, 16
cmp r5, 0xD
bls _080C77C2
- bl sub_80D242C
+ bl ResetWaldaWallpaper
pop {r4-r6}
pop {r0}
bx r0
@@ -1566,7 +1566,7 @@ sub_80C7BE4: @ 80C7BE4
lsls r4, 2
adds r0, r4
ldrb r0, [r0]
- bl sav3_get_box_name
+ bl GetBoxNamePtr
mov r10, r0
mov r1, r9
ldr r0, [r1]
@@ -5424,7 +5424,7 @@ _080C9F1C:
bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
- bl sav3_get_box_name
+ bl GetBoxNamePtr
adds r1, r0, 0
movs r0, 0
str r0, [sp]
@@ -6902,7 +6902,7 @@ sub_80CABE0: @ 80CABE0
cmp r1, r0
beq _080CAC0A
ldr r0, =0x000008d7
- bl FlagReset
+ bl FlagClear
ldr r4, =0x00004036
bl StorageGetCurrentBox
adds r1, r0, 0
@@ -7122,7 +7122,7 @@ sub_80CADD8: @ 80CADD8
bl sub_80CFF34
movs r0, 0x15
bl sub_80CFF34
- bl sub_80D2494
+ bl IsWaldaWallpaperUnlocked
cmp r0, 0
beq _080CAE04
movs r0, 0x16
@@ -10421,7 +10421,7 @@ _080CC888:
b _080CC9DA
.pool
_080CC8C4:
- bl sub_80D24A8
+ bl GetWaldaWallpaperPatternId
lsls r1, r0, 1
adds r1, r0
lsls r1, 2
@@ -10448,13 +10448,13 @@ _080CC8C4:
adds r1, r4
movs r2, 0x20
bl CpuSet
- bl sub_80D2510
+ bl GetWaldaWallpaperColorsPtr
ldr r1, [r7]
ldr r2, =0x00000794
adds r1, r2
movs r2, 0x2
bl CpuSet
- bl sub_80D2510
+ bl GetWaldaWallpaperColorsPtr
ldr r1, [r7]
ldr r3, =0x000007b4
adds r1, r3
@@ -10500,7 +10500,7 @@ _080CC976:
adds r1, r5
str r0, [r1]
ldr r4, =gUnknown_0857B004
- bl sub_80D24DC
+ bl GetWaldaWallpaperIconId
lsls r0, 2
adds r0, r4
ldr r0, [r0]
@@ -10831,7 +10831,7 @@ sub_80CCB50: @ 80CCB50
ldr r5, =0x000021b8
adds r4, r5
mov r0, r8
- bl sav3_get_box_name
+ bl GetBoxNamePtr
adds r1, r0, 0
adds r0, r4, 0
movs r2, 0
@@ -10852,7 +10852,7 @@ sub_80CCB50: @ 80CCB50
ldr r0, [sp, 0x2C]
bl LoadSpriteSheet
mov r0, r8
- bl sav3_get_box_name
+ bl GetBoxNamePtr
bl sub_80CD00C
movs r4, 0
lsls r0, 16
@@ -10997,7 +10997,7 @@ _080CCDB0:
ldr r5, =0x000021b8
adds r4, r5
ldr r0, [sp, 0x28]
- bl sav3_get_box_name
+ bl GetBoxNamePtr
adds r1, r0, 0
adds r0, r4, 0
movs r2, 0
@@ -11027,7 +11027,7 @@ _080CCDB0:
movs r2, 0x4
bl LoadPalette
ldr r0, [sp, 0x28]
- bl sav3_get_box_name
+ bl GetBoxNamePtr
bl sub_80CD00C
lsls r0, 16
mov r1, r10
@@ -17910,7 +17910,7 @@ sub_80D07B0: @ 80D07B0
beq _080D0828
adds r0, r5, 0
movs r2, 0x1
- bl sub_80D2EDC
+ bl GetMonIconPtr
adds r4, r0, 0
adds r0, r5, 0
bl sub_80D3080
@@ -21085,8 +21085,8 @@ _080D20CA:
bx r1
thumb_func_end GetBoxedMonPtr
- thumb_func_start sav3_get_box_name
-sav3_get_box_name: @ 80D20D0
+ thumb_func_start GetBoxNamePtr
+GetBoxNamePtr: @ 80D20D0
push {lr}
lsls r0, 24
lsrs r2, r0, 24
@@ -21106,7 +21106,7 @@ _080D20EC:
pop {r1}
bx r1
.pool
- thumb_func_end sav3_get_box_name
+ thumb_func_end GetBoxNamePtr
thumb_func_start sub_80D20F8
sub_80D20F8: @ 80D20F8
@@ -21544,8 +21544,8 @@ _080D241E:
bx r1
thumb_func_end sub_80D23A8
- thumb_func_start sub_80D242C
-sub_80D242C: @ 80D242C
+ thumb_func_start ResetWaldaWallpaper
+ResetWaldaWallpaper: @ 80D242C
ldr r2, =gSaveBlock1Ptr
ldr r0, [r2]
ldr r1, =0x00003d84
@@ -21575,10 +21575,10 @@ sub_80D242C: @ 80D242C
strb r0, [r1]
bx lr
.pool
- thumb_func_end sub_80D242C
+ thumb_func_end ResetWaldaWallpaper
- thumb_func_start sub_80D2480
-sub_80D2480: @ 80D2480
+ thumb_func_start SetWaldaWallpaperLockedOrUnlocked
+SetWaldaWallpaperLockedOrUnlocked: @ 80D2480
ldr r1, =gSaveBlock1Ptr
ldr r1, [r1]
ldr r2, =0x00003d86
@@ -21586,10 +21586,10 @@ sub_80D2480: @ 80D2480
strb r0, [r1]
bx lr
.pool
- thumb_func_end sub_80D2480
+ thumb_func_end SetWaldaWallpaperLockedOrUnlocked
- thumb_func_start sub_80D2494
-sub_80D2494: @ 80D2494
+ thumb_func_start IsWaldaWallpaperUnlocked
+IsWaldaWallpaperUnlocked: @ 80D2494
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldr r1, =0x00003d86
@@ -21597,10 +21597,10 @@ sub_80D2494: @ 80D2494
ldrb r0, [r0]
bx lr
.pool
- thumb_func_end sub_80D2494
+ thumb_func_end IsWaldaWallpaperUnlocked
- thumb_func_start sub_80D24A8
-sub_80D24A8: @ 80D24A8
+ thumb_func_start GetWaldaWallpaperPatternId
+GetWaldaWallpaperPatternId: @ 80D24A8
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldr r1, =0x00003d85
@@ -21608,10 +21608,10 @@ sub_80D24A8: @ 80D24A8
ldrb r0, [r0]
bx lr
.pool
- thumb_func_end sub_80D24A8
+ thumb_func_end GetWaldaWallpaperPatternId
- thumb_func_start sub_80D24BC
-sub_80D24BC: @ 80D24BC
+ thumb_func_start SetWaldaWallpaperPatternId
+SetWaldaWallpaperPatternId: @ 80D24BC
push {lr}
lsls r0, 24
lsrs r1, r0, 24
@@ -21626,10 +21626,10 @@ _080D24D0:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80D24BC
+ thumb_func_end SetWaldaWallpaperPatternId
- thumb_func_start sub_80D24DC
-sub_80D24DC: @ 80D24DC
+ thumb_func_start GetWaldaWallpaperIconId
+GetWaldaWallpaperIconId: @ 80D24DC
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldr r1, =0x00003d84
@@ -21637,10 +21637,10 @@ sub_80D24DC: @ 80D24DC
ldrb r0, [r0]
bx lr
.pool
- thumb_func_end sub_80D24DC
+ thumb_func_end GetWaldaWallpaperIconId
- thumb_func_start sub_80D24F0
-sub_80D24F0: @ 80D24F0
+ thumb_func_start SetWaldaWallpaperIconId
+SetWaldaWallpaperIconId: @ 80D24F0
push {lr}
lsls r0, 24
lsrs r1, r0, 24
@@ -21655,20 +21655,20 @@ _080D2504:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80D24F0
+ thumb_func_end SetWaldaWallpaperIconId
- thumb_func_start sub_80D2510
-sub_80D2510: @ 80D2510
+ thumb_func_start GetWaldaWallpaperColorsPtr
+GetWaldaWallpaperColorsPtr: @ 80D2510
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldr r1, =0x00003d70
adds r0, r1
bx lr
.pool
- thumb_func_end sub_80D2510
+ thumb_func_end GetWaldaWallpaperColorsPtr
- thumb_func_start sub_80D2524
-sub_80D2524: @ 80D2524
+ thumb_func_start SetWaldaWallpaperColors
+SetWaldaWallpaperColors: @ 80D2524
push {r4,lr}
ldr r2, =gSaveBlock1Ptr
ldr r2, [r2]
@@ -21682,20 +21682,20 @@ sub_80D2524: @ 80D2524
pop {r0}
bx r0
.pool
- thumb_func_end sub_80D2524
+ thumb_func_end SetWaldaWallpaperColors
- thumb_func_start sub_80D2548
-sub_80D2548: @ 80D2548
+ thumb_func_start GetWaldaPhrasePtr
+GetWaldaPhrasePtr: @ 80D2548
ldr r0, =gSaveBlock1Ptr
ldr r0, [r0]
ldr r1, =0x00003d74
adds r0, r1
bx lr
.pool
- thumb_func_end sub_80D2548
+ thumb_func_end GetWaldaPhrasePtr
- thumb_func_start sub_80D255C
-sub_80D255C: @ 80D255C
+ thumb_func_start SetWaldaPhrase
+SetWaldaPhrase: @ 80D255C
push {lr}
adds r1, r0, 0
ldr r0, =gSaveBlock1Ptr
@@ -21706,10 +21706,10 @@ sub_80D255C: @ 80D255C
pop {r0}
bx r0
.pool
- thumb_func_end sub_80D255C
+ thumb_func_end SetWaldaPhrase
- thumb_func_start sub_80D2578
-sub_80D2578: @ 80D2578
+ thumb_func_start IsWaldaPhraseEmpty
+IsWaldaPhraseEmpty: @ 80D2578
push {lr}
movs r1, 0
ldr r0, =gSaveBlock1Ptr
@@ -21725,7 +21725,7 @@ _080D258C:
pop {r1}
bx r1
.pool
- thumb_func_end sub_80D2578
+ thumb_func_end IsWaldaPhraseEmpty
thumb_func_start sub_80D259C
sub_80D259C: @ 80D259C
diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s
index 2ad67ba5a..fd2518075 100755
--- a/asm/pokemon_summary_screen.s
+++ b/asm/pokemon_summary_screen.s
@@ -5,7832 +5,6 @@
.text
- thumb_func_start sub_81BF8EC
-sub_81BF8EC: @ 81BF8EC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r1
- adds r5, r2, 0
- adds r6, r3, 0
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- ldr r4, =gUnknown_0203CF1C
- ldr r0, =0x000040f8
- bl AllocZeroed
- str r0, [r4]
- ldr r1, =0x000040bc
- adds r0, r1
- strb r7, [r0]
- ldr r0, [r4]
- mov r2, r8
- str r2, [r0]
- adds r1, 0x2
- adds r0, r1
- strb r5, [r0]
- ldr r0, [r4]
- ldr r2, =0x000040bf
- adds r0, r2
- strb r6, [r0]
- ldr r1, [r4]
- ldr r0, [sp, 0x18]
- str r0, [r1, 0x4]
- cmp r7, 0x2
- bne _081BF94C
- subs r2, 0x2
- adds r1, r2
- movs r0, 0x1
- b _081BF952
- .pool
-_081BF94C:
- ldr r0, =0x000040bd
- adds r1, r0
- movs r0, 0
-_081BF952:
- strb r0, [r1]
- cmp r7, 0x1
- beq _081BF9A0
- cmp r7, 0x1
- bgt _081BF96C
- cmp r7, 0
- beq _081BF97C
- ldr r2, =gUnknown_0203CF1C
- b _081BF9EE
- .pool
-_081BF96C:
- cmp r7, 0x2
- beq _081BF97C
- cmp r7, 0x3
- beq _081BF9D0
- ldr r2, =gUnknown_0203CF1C
- b _081BF9EE
- .pool
-_081BF97C:
- ldr r2, =gUnknown_0203CF1C
- ldr r0, [r2]
- ldr r1, =0x000040c1
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- ldr r1, =0x000040c2
- adds r0, r1
- movs r1, 0x3
- b _081BF9EC
- .pool
-_081BF9A0:
- ldr r2, =gUnknown_0203CF1C
- ldr r0, [r2]
- ldr r1, =0x000040c1
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- ldr r1, =0x000040c2
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0]
- ldr r0, [r2]
- ldr r1, =0x000040c8
- adds r0, r1
- strb r7, [r0]
- b _081BF9EE
- .pool
-_081BF9D0:
- ldr r2, =gUnknown_0203CF1C
- ldr r0, [r2]
- ldr r1, =0x000040c1
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- ldr r0, [r2]
- ldr r1, =0x000040c2
- adds r0, r1
- strb r7, [r0]
- ldr r0, [r2]
- adds r1, 0x1
- adds r0, r1
- movs r1, 0x1
-_081BF9EC:
- strb r1, [r0]
-_081BF9EE:
- ldr r0, [r2]
- ldr r2, =0x000040c1
- adds r1, r0, r2
- ldrb r1, [r1]
- subs r2, 0x1
- adds r0, r2
- strb r1, [r0]
- movs r0, 0xFF
- bl sub_81C488C
- ldr r0, =gBattleSpritesGfx
- ldr r0, [r0]
- cmp r0, 0
- bne _081BFA12
- movs r0, 0
- movs r1, 0
- bl sub_806F2AC
-_081BFA12:
- ldr r0, =sub_81BFAE4
- bl SetMainCallback2
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81BF8EC
-
- thumb_func_start sub_81BFA38
-sub_81BFA38: @ 81BFA38
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- mov r8, r0
- adds r4, r1, 0
- adds r5, r2, 0
- ldr r6, [sp, 0x18]
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 16
- lsrs r6, 16
- str r3, [sp]
- movs r0, 0x3
- mov r1, r8
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_81BF8EC
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c4
- adds r0, r1
- strh r6, [r0]
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81BFA38
-
- thumb_func_start sub_81BFA80
-sub_81BFA80: @ 81BFA80
- push {r4,lr}
- sub sp, 0x4
- ldr r4, [sp, 0xC]
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- str r4, [sp]
- bl sub_81BF8EC
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040ef
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81BFA80
-
- thumb_func_start sub_81BFAB4
-sub_81BFAB4: @ 81BFAB4
- push {lr}
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl do_scheduled_bg_tilemap_copies_to_vram
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_81BFAB4
-
- thumb_func_start sub_81BFAD0
-sub_81BFAD0: @ 81BFAD0
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_81BFAD0
-
- thumb_func_start sub_81BFAE4
-sub_81BFAE4: @ 81BFAE4
- push {lr}
-_081BFAE6:
- bl sub_81221EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081BFB0A
- bl sub_81BFB10
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081BFB0A
- bl sub_81221AC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081BFAE6
-_081BFB0A:
- pop {r0}
- bx r0
- thumb_func_end sub_81BFAE4
-
- thumb_func_start sub_81BFB10
-sub_81BFB10: @ 81BFB10
- push {r4,lr}
- sub sp, 0x4
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x18
- bls _081BFB24
- b _081BFE00
-_081BFB24:
- lsls r0, 2
- ldr r1, =_081BFB38
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081BFB38:
- .4byte _081BFB9C
- .4byte _081BFBAA
- .4byte _081BFBBC
- .4byte _081BFBD0
- .4byte _081BFBE4
- .4byte _081BFBEA
- .4byte _081BFC04
- .4byte _081BFC20
- .4byte _081BFC26
- .4byte _081BFC38
- .4byte _081BFC58
- .4byte _081BFC7C
- .4byte _081BFC82
- .4byte _081BFC94
- .4byte _081BFCAC
- .4byte _081BFCC0
- .4byte _081BFCD8
- .4byte _081BFCF8
- .4byte _081BFD34
- .4byte _081BFD50
- .4byte _081BFD60
- .4byte _081BFD74
- .4byte _081BFD7A
- .4byte _081BFDB0
- .4byte _081BFDCC
-_081BFB9C:
- bl SetVBlankHBlankCallbacksToNull
- bl sub_8121DA0
- bl clear_scheduled_bg_copies_to_vram
- b _081BFDE6
-_081BFBAA:
- bl remove_some_task
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFBBC:
- bl ResetPaletteFade
- ldr r2, =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- b _081BFDE4
- .pool
-_081BFBD0:
- bl ResetSpriteData
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFBE4:
- bl FreeAllSpritePalettes
- b _081BFDE6
-_081BFBEA:
- bl sub_81BFE24
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040f0
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- b _081BFDE6
- .pool
-_081BFC04:
- bl sub_81BFEB0
- lsls r0, 24
- cmp r0, 0
- bne _081BFC10
- b _081BFE18
-_081BFC10:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFC20:
- bl sub_81C2554
- b _081BFDE6
-_081BFC26:
- bl sub_81C1BA0
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFC38:
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_81C0098
- ldr r0, [r4]
- ldr r1, =0x000040f0
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- b _081BFDE6
- .pool
-_081BFC58:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0xC
- bl sub_81C00F0
- lsls r0, 24
- cmp r0, 0
- bne _081BFC6A
- b _081BFE18
-_081BFC6A:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFC7C:
- bl sub_81C25E8
- b _081BFDE6
-_081BFC82:
- bl sub_81C286C
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFC94:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c0
- adds r0, r1
- ldrb r0, [r0]
- bl sub_81C2D9C
- b _081BFDE6
- .pool
-_081BFCAC:
- bl sub_81C0348
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFCC0:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c0
- adds r0, r1
- ldrb r0, [r0]
- bl sub_81C2AFC
- b _081BFDE6
- .pool
-_081BFCD8:
- bl sub_81C4190
- bl sub_81C42C8
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040f0
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- b _081BFDE6
- .pool
-_081BFCF8:
- ldr r4, =gUnknown_0203CF1C
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0xC
- ldr r2, =0x000040f0
- adds r1, r2
- bl sub_81C45F4
- ldr r1, [r4]
- ldr r2, =0x000040d3
- adds r1, r2
- strb r0, [r1]
- ldr r1, [r4]
- adds r2, r1, r2
- ldrb r0, [r2]
- cmp r0, 0xFF
- bne _081BFD1C
- b _081BFE18
-_081BFD1C:
- ldr r0, =0x000040f0
- adds r1, r0
- movs r0, 0
- strh r0, [r1]
- b _081BFDE6
- .pool
-_081BFD34:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0xC
- bl sub_81C4984
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFD50:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0xC
- bl sub_81C4A08
- b _081BFDE6
- .pool
-_081BFD60:
- bl sub_81C4A88
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFD74:
- bl sub_81C4280
- b _081BFDE6
-_081BFD7A:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040bc
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _081BFDA0
- ldr r0, =sub_81C0510
- movs r1, 0
- bl CreateTask
- b _081BFDE6
- .pool
-_081BFDA0:
- ldr r0, =sub_81C171C
- movs r1, 0
- bl CreateTask
- b _081BFDE6
- .pool
-_081BFDB0:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _081BFDEE
- .pool
-_081BFDCC:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r2, =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
-_081BFDE4:
- strb r0, [r2, 0x8]
-_081BFDE6:
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
-_081BFDEE:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _081BFE18
- .pool
-_081BFE00:
- ldr r0, =sub_81BFAD0
- bl SetVBlankCallback
- ldr r0, =sub_81BFAB4
- bl SetMainCallback2
- movs r0, 0x1
- b _081BFE1A
- .pool
-_081BFE18:
- movs r0, 0
-_081BFE1A:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81BFB10
-
- thumb_func_start sub_81BFE24
-sub_81BFE24: @ 81BFE24
- push {r4,lr}
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_0861CBB4
- movs r0, 0
- movs r2, 0x4
- bl InitBgsFromTemplates
- ldr r4, =gUnknown_0203CF1C
- ldr r1, [r4]
- ldr r0, =0x000020bc
- adds r1, r0
- movs r0, 0x1
- bl SetBgTilemapBuffer
- ldr r1, [r4]
- ldr r0, =0x000010bc
- adds r1, r0
- movs r0, 0x2
- bl SetBgTilemapBuffer
- ldr r1, [r4]
- adds r1, 0xBC
- movs r0, 0x3
- bl SetBgTilemapBuffer
- bl sub_8121E10
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x3
- bl schedule_bg_copy_tilemap_to_vram
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81BFE24
-
- thumb_func_start sub_81BFEB0
-sub_81BFEB0: @ 81BFEB0
- push {r4,lr}
- sub sp, 0x4
- ldr r1, =gUnknown_0203CF1C
- ldr r0, [r1]
- ldr r2, =0x000040f0
- adds r0, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0xC
- bls _081BFEC8
- b _081C008C
-_081BFEC8:
- lsls r0, 2
- ldr r1, =_081BFEE0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081BFEE0:
- .4byte _081BFF14
- .4byte _081BFF30
- .4byte _081BFF60
- .4byte _081BFF78
- .4byte _081BFF90
- .4byte _081BFFA8
- .4byte _081BFFC0
- .4byte _081BFFF0
- .4byte _081BFFFC
- .4byte _081C0018
- .4byte _081C0024
- .4byte _081C0040
- .4byte _081C0064
-_081BFF14:
- bl reset_temp_tile_data_buffers
- ldr r1, =gUnknown_08D97D0C
- movs r0, 0
- str r0, [sp]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl decompress_and_copy_tile_data_to_vram
- b _081C0046
- .pool
-_081BFF30:
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081BFF3E
- b _081C008C
-_081BFF3E:
- ldr r0, =gUnknown_08D9862C
- ldr r4, =gUnknown_0203CF1C
- ldr r1, [r4]
- adds r1, 0xBC
- bl LZDecompressWram
- ldr r1, [r4]
- ldr r2, =0x000040f0
- adds r1, r2
- b _081C004E
- .pool
-_081BFF60:
- ldr r0, =gUnknown_08D98CC8
- ldr r1, [r4]
- ldr r2, =0x000008bc
- adds r1, r2
- bl LZDecompressWram
- ldr r1, [r4]
- b _081C004A
- .pool
-_081BFF78:
- ldr r0, =gUnknown_08D987FC
- ldr r1, [r4]
- ldr r2, =0x000018bc
- adds r1, r2
- bl LZDecompressWram
- ldr r1, [r4]
- b _081C004A
- .pool
-_081BFF90:
- ldr r0, =gUnknown_08D9898C
- ldr r1, [r4]
- ldr r2, =0x000028bc
- adds r1, r2
- bl LZDecompressWram
- ldr r1, [r4]
- b _081C004A
- .pool
-_081BFFA8:
- ldr r0, =gUnknown_08D98B28
- ldr r1, [r4]
- ldr r2, =0x000038bc
- adds r1, r2
- bl LZDecompressWram
- ldr r1, [r4]
- b _081C004A
- .pool
-_081BFFC0:
- ldr r0, =gUnknown_08D9853C
- movs r2, 0x80
- lsls r2, 1
- movs r1, 0
- bl LoadCompressedPalette
- ldr r0, =gUnknown_08D85620
- movs r1, 0x81
- movs r2, 0x1E
- bl LoadPalette
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040f0
- adds r1, r2
- b _081C004E
- .pool
-_081BFFF0:
- ldr r0, =gUnknown_0861CFBC
- bl LoadCompressedObjectPic
- b _081C0046
- .pool
-_081BFFFC:
- ldr r0, =gUnknown_0861D074
- bl LoadCompressedObjectPic
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040f0
- adds r1, r2
- b _081C004E
- .pool
-_081C0018:
- ldr r0, =gUnknown_0861D0F8
- bl LoadCompressedObjectPic
- b _081C0046
- .pool
-_081C0024:
- ldr r0, =gUnknown_0861D100
- bl LoadCompressedObjectPalette
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040f0
- adds r1, r2
- b _081C004E
- .pool
-_081C0040:
- ldr r0, =gUnknown_0861D07C
- bl LoadCompressedObjectPalette
-_081C0046:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
-_081C004A:
- ldr r0, =0x000040f0
- adds r1, r0
-_081C004E:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _081C008C
- .pool
-_081C0064:
- ldr r0, =gUnknown_08D97B84
- movs r1, 0xE8
- lsls r1, 1
- movs r2, 0x60
- bl LoadCompressedPalette
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040f0
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- movs r0, 0x1
- b _081C008E
- .pool
-_081C008C:
- movs r0, 0
-_081C008E:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81BFEB0
-
- thumb_func_start sub_81C0098
-sub_81C0098: @ 81C0098
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040bd
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C00D0
- ldr r2, [r1]
- ldr r4, =0x000040be
- adds r0, r1, r4
- ldrb r1, [r0]
- movs r0, 0x64
- muls r1, r0
- adds r1, r2
- adds r0, r3, 0
- movs r2, 0x64
- bl memcpy
- b _081C00E6
- .pool
-_081C00D0:
- ldr r0, [r1]
- ldr r2, =0x000040be
- adds r1, r2
- ldrb r2, [r1]
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 4
- adds r0, r1
- adds r1, r3, 0
- bl sub_8069004
-_081C00E6:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0098
-
- thumb_func_start sub_81C00F0
-sub_81C00F0: @ 81C00F0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r5, r0, 0
- ldr r0, =gUnknown_0203CF1C
- ldr r7, [r0]
- adds r6, r7, 0
- adds r6, 0x70
- ldr r1, =0x000040f0
- adds r0, r7, r1
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, 0x1
- beq _081C0198
- cmp r0, 0x1
- bgt _081C0120
- cmp r0, 0
- beq _081C012C
- b _081C0314
- .pool
-_081C0120:
- cmp r0, 0x2
- beq _081C01DC
- cmp r0, 0x3
- bne _081C012A
- b _081C02A8
-_081C012A:
- b _081C0314
-_081C012C:
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- strh r0, [r6]
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- strh r0, [r6, 0x2]
- adds r0, r5, 0
- movs r1, 0x19
- bl GetMonData
- str r0, [r6, 0x10]
- adds r0, r5, 0
- movs r1, 0x38
- bl GetMonData
- strb r0, [r6, 0x5]
- adds r0, r5, 0
- movs r1, 0x2E
- bl GetMonData
- strb r0, [r6, 0x8]
- adds r0, r5, 0
- movs r1, 0xC
- bl GetMonData
- strh r0, [r6, 0x2E]
- adds r0, r5, 0
- movs r1, 0
- bl GetMonData
- str r0, [r6, 0xC]
- adds r0, r5, 0
- movs r1, 0x4
- bl GetMonData
- adds r1, r7, 0
- adds r1, 0xA5
- strb r0, [r1]
- lsls r0, 24
- cmp r0, 0
- beq _081C018C
- movs r0, 0x1
- strb r0, [r6, 0x4]
- b _081C0322
-_081C018C:
- adds r0, r5, 0
- movs r1, 0x2D
- bl GetMonData
- strb r0, [r6, 0x4]
- b _081C0322
-_081C0198:
- movs r4, 0
- movs r0, 0x8C
- adds r0, r7
- mov r8, r0
- movs r1, 0xA4
- adds r1, r7
- mov r9, r1
- adds r6, r7, 0
- adds r6, 0x84
-_081C01AA:
- adds r1, r4, 0
- adds r1, 0xD
- adds r0, r5, 0
- bl GetMonData
- strh r0, [r6]
- adds r1, r4, 0
- adds r1, 0x11
- adds r0, r5, 0
- bl GetMonData
- mov r2, r8
- adds r1, r2, r4
- strb r0, [r1]
- adds r6, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- bls _081C01AA
- adds r0, r5, 0
- movs r1, 0x15
- bl GetMonData
- mov r1, r9
- strb r0, [r1]
- b _081C0322
-_081C01DC:
- ldr r1, [r7]
- ldr r0, =gPlayerParty
- cmp r1, r0
- beq _081C01F8
- ldr r2, =0x000040bc
- adds r0, r7, r2
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _081C01F8
- ldr r1, =0x000040ef
- adds r0, r7, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _081C0254
-_081C01F8:
- adds r0, r5, 0
- bl GetNature
- adds r1, r6, 0
- adds r1, 0x33
- strb r0, [r1]
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- strh r0, [r6, 0x20]
- adds r0, r5, 0
- movs r1, 0x3A
- bl GetMonData
- strh r0, [r6, 0x22]
- adds r0, r5, 0
- movs r1, 0x3B
- bl GetMonData
- strh r0, [r6, 0x24]
- adds r0, r5, 0
- movs r1, 0x3C
- bl GetMonData
- strh r0, [r6, 0x26]
- adds r0, r5, 0
- movs r1, 0x3E
- bl GetMonData
- strh r0, [r6, 0x28]
- adds r0, r5, 0
- movs r1, 0x3F
- bl GetMonData
- strh r0, [r6, 0x2A]
- adds r0, r5, 0
- movs r1, 0x3D
- b _081C02A0
- .pool
-_081C0254:
- adds r0, r5, 0
- bl GetNature
- adds r1, r7, 0
- adds r1, 0xA3
- strb r0, [r1]
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- strh r0, [r6, 0x20]
- adds r0, r5, 0
- movs r1, 0x3A
- bl GetMonData
- strh r0, [r6, 0x22]
- adds r0, r5, 0
- movs r1, 0x54
- bl GetMonData
- strh r0, [r6, 0x24]
- adds r0, r5, 0
- movs r1, 0x55
- bl GetMonData
- strh r0, [r6, 0x26]
- adds r0, r5, 0
- movs r1, 0x57
- bl GetMonData
- strh r0, [r6, 0x28]
- adds r0, r5, 0
- movs r1, 0x58
- bl GetMonData
- strh r0, [r6, 0x2A]
- adds r0, r5, 0
- movs r1, 0x56
-_081C02A0:
- bl GetMonData
- strh r0, [r6, 0x2C]
- b _081C0322
-_081C02A8:
- adds r4, r7, 0
- adds r4, 0xA6
- adds r0, r5, 0
- movs r1, 0x7
- adds r2, r4, 0
- bl GetMonData
- adds r0, r5, 0
- movs r1, 0x3
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ConvertInternationalString
- adds r0, r5, 0
- bl sub_81B205C
- strb r0, [r6, 0x7]
- adds r0, r5, 0
- movs r1, 0x31
- bl GetMonData
- adds r1, r7, 0
- adds r1, 0xA2
- strb r0, [r1]
- adds r0, r5, 0
- movs r1, 0x1
- bl GetMonData
- str r0, [r6, 0x48]
- adds r0, r5, 0
- movs r1, 0x23
- bl GetMonData
- strb r0, [r6, 0x9]
- adds r0, r5, 0
- movs r1, 0x24
- bl GetMonData
- strb r0, [r6, 0xA]
- adds r0, r5, 0
- movs r1, 0x25
- bl GetMonData
- strb r0, [r6, 0xB]
- adds r0, r5, 0
- movs r1, 0x20
- bl GetMonData
- strh r0, [r6, 0x30]
- b _081C0322
-_081C0314:
- adds r0, r5, 0
- movs r1, 0x52
- bl GetMonData
- strb r0, [r6, 0x6]
- movs r0, 0x1
- b _081C0332
-_081C0322:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040f0
- adds r1, r2
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0
-_081C0332:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81C00F0
-
- thumb_func_start sub_81C0348
-sub_81C0348: @ 81C0348
- push {r4-r6,lr}
- ldr r6, =gUnknown_0203CF1C
- ldr r2, [r6]
- ldr r1, =0x000040c0
- adds r0, r2, r1
- ldrb r0, [r0]
- subs r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _081C037C
- movs r0, 0
- movs r1, 0xFF
- bl sub_81C1DA4
- movs r0, 0
- movs r1, 0xFF
- movs r2, 0
- bl sub_81C1EFC
- b _081C03D8
- .pool
-_081C037C:
- ldr r1, =0x000040c6
- adds r0, r2, r1
- ldrb r1, [r0]
- lsls r1, 1
- adds r0, r2, 0
- adds r0, 0x84
- adds r0, r1
- ldrh r0, [r0]
- bl sub_81C240C
- ldr r0, [r6]
- ldr r5, =0x000020bc
- adds r0, r5
- movs r1, 0x3
- movs r2, 0
- bl sub_81C2194
- ldr r0, [r6]
- ldr r4, =0x000030bc
- adds r0, r4
- movs r1, 0x1
- movs r2, 0
- bl sub_81C2194
- ldr r1, [r6]
- adds r1, r4
- movs r0, 0x1
- bl SetBgTilemapBuffer
- ldr r1, [r6]
- adds r1, r5
- movs r0, 0x2
- bl SetBgTilemapBuffer
- movs r1, 0x80
- lsls r1, 9
- movs r0, 0x2
- movs r2, 0x1
- bl ChangeBgX
- movs r0, 0x13
- bl ClearWindowTilemap
- movs r0, 0xD
- bl ClearWindowTilemap
-_081C03D8:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x77
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C0400
- movs r0, 0
- movs r1, 0xFF
- bl sub_81C2074
- b _081C0416
- .pool
-_081C0400:
- ldr r2, =0x000040c0
- adds r0, r1, r2
- ldrb r0, [r0]
- subs r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _081C0416
- movs r0, 0xD
- bl PutWindowTilemap
-_081C0416:
- bl sub_81C2524
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0xC
- bl sub_81C2228
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0348
-
- thumb_func_start sub_81C0434
-sub_81C0434: @ 81C0434
- push {lr}
- bl FreeAllWindowBuffers
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- bl Free
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0434
-
- thumb_func_start sub_81C044C
-sub_81C044C: @ 81C044C
- 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, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81C0484
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C044C
-
- thumb_func_start sub_81C0484
-sub_81C0484: @ 81C0484
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_81221EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C04EC
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _081C04EC
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- bl SetMainCallback2
- ldr r1, =gUnknown_0203CF20
- ldr r0, [r4]
- ldr r2, =0x000040be
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- bl sub_81C4898
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- bl StopCryAndClearCrySongs
- ldr r0, =gMPlay_BGM
- ldr r1, =0x0000ffff
- movs r2, 0x80
- lsls r2, 1
- bl m4aMPlayVolumeControl
- ldr r0, =gBattleSpritesGfx
- ldr r0, [r0]
- cmp r0, 0
- bne _081C04E2
- movs r0, 0
- bl sub_806F47C
-_081C04E2:
- bl sub_81C0434
- adds r0, r5, 0
- bl DestroyTask
-_081C04EC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0484
-
- thumb_func_start sub_81C0510
-sub_81C0510: @ 81C0510
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_81221EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C05FE
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r2, 0x80
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- bne _081C05FE
- ldr r5, =gMain
- ldrh r1, [r5, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _081C0550
- movs r1, 0x1
- negs r1, r1
- adds r0, r4, 0
- bl sub_81C0604
- b _081C05FE
- .pool
-_081C0550:
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _081C0562
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81C0604
- b _081C05FE
-_081C0562:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _081C0576
- bl GetLRKeysState
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C0582
-_081C0576:
- movs r1, 0x1
- negs r1, r1
- adds r0, r4, 0
- bl sub_81C0A8C
- b _081C05FE
-_081C0582:
- ldrh r1, [r5, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _081C0598
- bl GetLRKeysState
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _081C05A2
-_081C0598:
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81C0A8C
- b _081C05FE
-_081C05A2:
- ldrh r1, [r5, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _081C05E6
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c0
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _081C05FE
- cmp r0, 0
- bne _081C05D8
- bl sub_81C48F0
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_81C044C
- b _081C05FE
- .pool
-_081C05D8:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_81C0E48
- b _081C05FE
-_081C05E6:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081C05FE
- bl sub_81C48F0
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_81C044C
-_081C05FE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_81C0510
-
- thumb_func_start sub_81C0604
-sub_81C0604: @ 81C0604
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- adds r4, r5, 0
- ldr r1, =gUnknown_0203CF1C
- ldr r3, [r1]
- ldr r2, =0x000040c3
- adds r0, r3, r2
- ldrb r0, [r0]
- adds r6, r1, 0
- cmp r0, 0
- bne _081C06EE
- ldr r1, =0x000040bd
- adds r0, r3, r1
- ldrb r2, [r0]
- cmp r2, 0x1
- bne _081C0678
- adds r1, 0x3
- adds r0, r3, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _081C0654
- lsls r1, r5, 24
- asrs r1, 24
- movs r4, 0x2
- eors r1, r2
- negs r0, r1
- orrs r0, r1
- asrs r0, 31
- ands r4, r0
- b _081C065C
- .pool
-_081C0654:
- movs r4, 0x3
- cmp r5, 0x1
- bne _081C065C
- movs r4, 0x1
-_081C065C:
- ldr r2, [r6]
- ldr r0, [r2]
- ldr r3, =0x000040be
- adds r1, r2, r3
- ldrb r1, [r1]
- adds r3, 0x1
- adds r2, r3
- ldrb r2, [r2]
- adds r3, r4, 0
- bl sub_80D214C
- b _081C0696
- .pool
-_081C0678:
- bl sub_81B1250
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C068E
- lsls r0, r5, 24
- asrs r0, 24
- bl sub_81C09B4
- b _081C0696
-_081C068E:
- lsls r0, r4, 24
- asrs r0, 24
- bl sub_81C08F8
-_081C0696:
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _081C06EE
- movs r0, 0x5
- bl PlaySE
- ldr r5, =gUnknown_0203CF1C
- ldr r0, [r5]
- adds r0, 0x77
- ldrb r0, [r0]
- cmp r0, 0
- beq _081C06D4
- movs r0, 0x2
- movs r1, 0x1
- bl sub_81C4204
- movs r0, 0xD
- bl ClearWindowTilemap
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0
- movs r1, 0x2
- bl sub_81C2074
-_081C06D4:
- ldr r0, [r5]
- ldr r1, =0x000040be
- adds r0, r1
- movs r2, 0
- strb r4, [r0]
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- strh r2, [r0, 0x8]
- ldr r1, =sub_81C0704
- str r1, [r0]
-_081C06EE:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0604
-
- thumb_func_start sub_81C0704
-sub_81C0704: @ 81C0704
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r4, r1, 3
- ldr r6, =gTasks + 0x8
- adds r5, r4, r6
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0xC
- bls _081C071E
- b _081C08BC
-_081C071E:
- lsls r0, 2
- ldr r1, =_081C0730
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081C0730:
- .4byte _081C0764
- .4byte _081C076A
- .4byte _081C0780
- .4byte _081C07A8
- .4byte _081C07C8
- .4byte _081C07E0
- .4byte _081C07F0
- .4byte _081C0800
- .4byte _081C0828
- .4byte _081C086C
- .4byte _081C0872
- .4byte _081C0878
- .4byte _081C0894
-_081C0764:
- bl StopCryAndClearCrySongs
- b _081C08EC
-_081C076A:
- bl sub_81C4898
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040d3
- b _081C0786
- .pool
-_081C0780:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040d4
-_081C0786:
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- bl DestroySpriteAndFreeResources
- b _081C08EC
- .pool
-_081C07A8:
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_81C0098
- ldr r0, [r4]
- ldr r1, =0x000040f0
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- b _081C08EC
- .pool
-_081C07C8:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0xC
- bl sub_81C00F0
- lsls r0, 24
- cmp r0, 0
- bne _081C07DA
- b _081C08F2
-_081C07DA:
- b _081C08EC
- .pool
-_081C07E0:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0xC
- bl sub_81C49E0
- b _081C08EC
- .pool
-_081C07F0:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0xC
- bl sub_81C4A08
- b _081C08EC
- .pool
-_081C0800:
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- adds r0, 0x77
- ldrb r0, [r0]
- cmp r0, 0
- beq _081C0816
- movs r1, 0x2
- negs r1, r1
- movs r0, 0xA
- bl sub_81C2074
-_081C0816:
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_81C2228
- movs r0, 0
- strh r0, [r5, 0x2]
- b _081C08EC
- .pool
-_081C0828:
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- adds r0, 0xC
- adds r1, r5, 0x2
- bl sub_81C45F4
- ldr r1, [r4]
- ldr r2, =0x000040d3
- adds r1, r2
- strb r0, [r1]
- ldr r0, [r4]
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _081C08F2
- ldr r2, =gSprites
- adds r1, r0, 0
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x1
- strh r1, [r0, 0x32]
- bl sub_81C0E24
- movs r0, 0
- strh r0, [r5, 0x2]
- b _081C08EC
- .pool
-_081C086C:
- bl sub_81C4280
- b _081C08EC
-_081C0872:
- bl sub_81C25E8
- b _081C08EC
-_081C0878:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c0
- adds r0, r1
- ldrb r0, [r0]
- bl sub_81C2D9C
- bl sub_81C2524
- b _081C08EC
- .pool
-_081C0894:
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040d3
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0
- strh r1, [r0, 0x32]
- b _081C08EC
- .pool
-_081C08BC:
- bl sub_81221EC
- lsls r0, 24
- cmp r0, 0
- bne _081C08F2
- ldr r0, =sub_81C20F0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _081C08F2
- strh r0, [r5]
- adds r0, r6, 0
- subs r0, 0x8
- adds r0, r4, r0
- ldr r1, =sub_81C0510
- str r1, [r0]
- b _081C08F2
- .pool
-_081C08EC:
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_081C08F2:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81C0704
-
- thumb_func_start sub_81C08F8
-sub_81C08F8: @ 81C08F8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gUnknown_0203CF1C
- ldr r2, [r1]
- ldr r7, [r2]
- ldr r3, =0x000040c0
- adds r0, r2, r3
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r0, 0
- bne _081C0960
- lsls r0, r4, 24
- asrs r3, r0, 24
- movs r1, 0x1
- negs r1, r1
- adds r6, r0, 0
- cmp r3, r1
- bne _081C0928
- ldr r1, =0x000040be
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _081C0988
-_081C0928:
- asrs r0, r6, 24
- cmp r0, 0x1
- bne _081C0940
- ldr r0, [r5]
- ldr r2, =0x000040be
- adds r1, r0, r2
- ldr r3, =0x000040bf
- adds r0, r3
- ldrb r1, [r1]
- ldrb r0, [r0]
- cmp r1, r0
- bcs _081C0988
-_081C0940:
- ldr r0, [r5]
- ldr r1, =0x000040be
- adds r0, r1
- ldrb r0, [r0]
- adds r0, r4
- lsls r0, 24
- asrs r0, 24
- b _081C09AE
- .pool
-_081C0960:
- ldr r3, =0x000040be
- adds r0, r2, r3
- ldrb r5, [r0]
- lsls r6, r4, 24
-_081C0968:
- lsls r0, r5, 24
- asrs r0, 24
- asrs r1, r6, 24
- adds r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- asrs r4, r0, 24
- cmp r4, 0
- blt _081C0988
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040bf
- adds r0, r1
- ldrb r0, [r0]
- cmp r4, r0
- ble _081C099C
-_081C0988:
- movs r0, 0x1
- negs r0, r0
- b _081C09AE
- .pool
-_081C099C:
- movs r0, 0x64
- muls r0, r4
- adds r0, r7, r0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _081C0968
- adds r0, r4, 0
-_081C09AE:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_81C08F8
-
- thumb_func_start sub_81C09B4
-sub_81C09B4: @ 81C09B4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r12, r0
- ldr r6, =gUnknown_0203CF1C
- ldr r0, [r6]
- ldr r1, [r0]
- mov r8, r1
- movs r5, 0
- movs r2, 0
- ldr r3, =gUnknown_0861CC1C
- movs r1, 0
- ldrsb r1, [r3, r1]
- ldr r4, =0x000040be
- adds r0, r4
- ldrb r0, [r0]
- cmp r1, r0
- beq _081C09FC
- adds r7, r3, 0
- adds r3, r4, 0
-_081C09E0:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x5
- bhi _081C09FC
- adds r0, r2, r7
- movs r1, 0
- ldrsb r1, [r0, r1]
- ldr r0, [r6]
- adds r0, r3
- ldrb r0, [r0]
- cmp r1, r0
- bne _081C09E0
- adds r5, r2, 0
-_081C09FC:
- mov r0, r12
- lsls r6, r0, 24
- ldr r7, =gUnknown_0861CC1C
-_081C0A02:
- lsls r0, r5, 24
- asrs r0, 24
- asrs r1, r6, 24
- adds r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, r5, 24
- lsrs r0, r1, 24
- cmp r0, 0x5
- bhi _081C0A40
- asrs r0, r1, 24
- adds r0, r7
- movs r4, 0
- ldrsb r4, [r0, r4]
- movs r0, 0x64
- muls r0, r4
- add r0, r8
- bl sub_81C0A50
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C0A02
- adds r0, r4, 0
- b _081C0A44
- .pool
-_081C0A40:
- movs r0, 0x1
- negs r0, r0
-_081C0A44:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_81C09B4
-
- thumb_func_start sub_81C0A50
-sub_81C0A50: @ 81C0A50
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _081C0A84
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040be
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C0A78
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _081C0A84
-_081C0A78:
- movs r0, 0x1
- b _081C0A86
- .pool
-_081C0A84:
- movs r0, 0
-_081C0A86:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81C0A50
-
- thumb_func_start sub_81C0A8C
-sub_81C0A8C: @ 81C0A8C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r6, r0, 24
- str r6, [sp]
- lsls r1, 24
- lsrs r3, r1, 24
- str r3, [sp, 0x4]
- ldr r0, =gUnknown_0203CF1C
- mov r8, r0
- ldr r2, [r0]
- adds r1, r2, 0
- adds r1, 0x70
- lsls r0, r6, 2
- adds r0, r6
- lsls r7, r0, 3
- ldr r0, =gTasks + 0x8
- mov r9, r0
- adds r0, r7, r0
- str r0, [sp, 0x8]
- ldrb r1, [r1, 0x4]
- mov r10, r1
- cmp r1, 0
- bne _081C0B6E
- lsls r0, r3, 24
- asrs r5, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r5, r0
- bne _081C0AE0
- ldr r1, =0x000040c0
- adds r0, r2, r1
- ldr r3, =0x000040c1
- adds r1, r2, r3
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- beq _081C0B6E
-_081C0AE0:
- cmp r5, 0x1
- bne _081C0AF4
- ldr r1, =0x000040c0
- adds r0, r2, r1
- ldr r3, =0x000040c2
- adds r1, r2, r3
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- beq _081C0B6E
-_081C0AF4:
- movs r0, 0x5
- bl PlaySE
- mov r1, r8
- ldr r0, [r1]
- ldr r4, =0x000040c0
- adds r0, r4
- ldrb r0, [r0]
- bl sub_81C2C38
- mov r2, r8
- ldr r1, [r2]
- adds r1, r4
- ldrb r0, [r1]
- ldr r3, [sp, 0x4]
- adds r0, r3
- strb r0, [r1]
- mov r1, r10
- ldr r0, [sp, 0x8]
- strh r1, [r0]
- cmp r5, 0x1
- bne _081C0B4C
- ldr r1, =sub_81C0B8C
- mov r0, r9
- subs r0, 0x8
- adds r0, r7, r0
- ldr r2, [r0]
- adds r0, r6, 0
- bl SetTaskFuncWithFollowupFunc
- b _081C0B5C
- .pool
-_081C0B4C:
- ldr r1, =sub_81C0CC4
- mov r0, r9
- subs r0, 0x8
- adds r0, r7, r0
- ldr r2, [r0]
- ldr r0, [sp]
- bl SetTaskFuncWithFollowupFunc
-_081C0B5C:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r2, =0x000040c0
- adds r0, r2
- ldrb r0, [r0]
- bl sub_81C2DE4
- bl sub_81C424C
-_081C0B6E:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0A8C
-
- thumb_func_start sub_81C0B8C
-sub_81C0B8C: @ 81C0B8C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _081C0C2A
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r3, =0x000040c9
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C0BE0
- movs r0, 0x1
- strh r0, [r4, 0x2]
- movs r0, 0x1
- movs r1, 0x7
- movs r2, 0x1
- bl SetBgAttribute
- movs r0, 0x2
- movs r1, 0x7
- movs r2, 0x2
- bl SetBgAttribute
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- b _081C0BFE
- .pool
-_081C0BE0:
- movs r0, 0x2
- strh r0, [r4, 0x2]
- movs r0, 0x2
- movs r1, 0x7
- movs r2, 0x1
- bl SetBgAttribute
- movs r0, 0x1
- movs r1, 0x7
- movs r2, 0x2
- bl SetBgAttribute
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
-_081C0BFE:
- ldrb r0, [r4, 0x2]
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- ldrb r0, [r4, 0x2]
- ldr r1, =gUnknown_0203CF1C
- ldr r1, [r1]
- ldr r3, =0x000040c0
- adds r2, r1, r3
- ldrb r2, [r2]
- lsls r2, 12
- adds r2, 0xBC
- adds r1, r2
- bl SetBgTilemapBuffer
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
-_081C0C2A:
- ldrb r0, [r4, 0x2]
- movs r1, 0x80
- lsls r1, 6
- movs r2, 0x1
- bl ChangeBgX
- ldrh r0, [r4]
- adds r0, 0x20
- strh r0, [r4]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xFF
- ble _081C0C52
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_81C0C68
- str r0, [r1]
-_081C0C52:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0B8C
-
- thumb_func_start sub_81C0C68
-sub_81C0C68: @ 81C0C68
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r2, r4, 2
- adds r2, r4
- lsls r2, 3
- ldr r0, =gTasks + 0x8
- adds r2, r0
- ldr r5, =gUnknown_0203CF1C
- ldr r3, [r5]
- ldr r0, =0x000040c9
- adds r3, r0
- ldrb r0, [r3]
- movs r1, 0x1
- eors r0, r1
- movs r1, 0
- strb r0, [r3]
- strh r1, [r2, 0x2]
- strh r1, [r2]
- bl sub_81C1BA0
- ldr r0, [r5]
- ldr r1, =0x000040c0
- adds r0, r1
- ldrb r0, [r0]
- bl sub_81C2AFC
- bl sub_81C4280
- bl sub_81C0E24
- adds r0, r4, 0
- bl SwitchTaskToFollowupFunc
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0C68
-
- thumb_func_start sub_81C0CC4
-sub_81C0CC4: @ 81C0CC4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _081C0D0C
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c9
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C0CFC
- movs r0, 0x2
- b _081C0CFE
- .pool
-_081C0CFC:
- movs r0, 0x1
-_081C0CFE:
- strh r0, [r4, 0x2]
- ldrb r0, [r4, 0x2]
- movs r1, 0x80
- lsls r1, 9
- movs r2, 0
- bl ChangeBgX
-_081C0D0C:
- ldrb r0, [r4, 0x2]
- movs r1, 0x80
- lsls r1, 6
- movs r2, 0x2
- bl ChangeBgX
- ldrh r0, [r4]
- adds r0, 0x20
- strh r0, [r4]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xFF
- ble _081C0D34
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_81C0D44
- str r0, [r1]
-_081C0D34:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0CC4
-
- thumb_func_start sub_81C0D44
-sub_81C0D44: @ 81C0D44
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c9
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C0D8C
- movs r0, 0x1
- movs r1, 0x7
- movs r2, 0x1
- bl SetBgAttribute
- movs r0, 0x2
- movs r1, 0x7
- movs r2, 0x2
- bl SetBgAttribute
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- b _081C0DA6
- .pool
-_081C0D8C:
- movs r0, 0x2
- movs r1, 0x7
- movs r2, 0x1
- bl SetBgAttribute
- movs r0, 0x1
- movs r1, 0x7
- movs r2, 0x2
- bl SetBgAttribute
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
-_081C0DA6:
- ldr r6, =gUnknown_0203CF1C
- ldr r2, [r6]
- ldr r7, =0x000040c0
- adds r1, r2, r7
- ldrb r0, [r1]
- cmp r0, 0x1
- bls _081C0DD0
- ldrb r0, [r4, 0x2]
- ldrb r1, [r1]
- lsls r1, 12
- ldr r3, =0xfffff0bc
- adds r1, r3
- adds r1, r2, r1
- bl SetBgTilemapBuffer
- ldrb r0, [r4, 0x2]
- movs r1, 0x80
- lsls r1, 9
- movs r2, 0
- bl ChangeBgX
-_081C0DD0:
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- ldr r2, [r6]
- ldr r0, =0x000040c9
- adds r2, r0
- ldrb r0, [r2]
- movs r1, 0x1
- eors r0, r1
- movs r1, 0
- strb r0, [r2]
- strh r1, [r4, 0x2]
- strh r1, [r4]
- bl sub_81C1BA0
- ldr r0, [r6]
- adds r0, r7
- ldrb r0, [r0]
- bl sub_81C2AFC
- bl sub_81C4280
- bl sub_81C0E24
- adds r0, r5, 0
- bl SwitchTaskToFollowupFunc
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0D44
-
- thumb_func_start sub_81C0E24
-sub_81C0E24: @ 81C0E24
- push {lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040c0
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _081C0E3C
- adds r0, r1, 0
- adds r0, 0xC
- bl sub_81C22CC
-_081C0E3C:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0E24
-
- thumb_func_start sub_81C0E48
-sub_81C0E48: @ 81C0E48
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r5, =gUnknown_0203CF1C
- ldr r0, [r5]
- ldr r2, =0x000040c6
- adds r0, r2
- movs r1, 0
- strb r1, [r0]
- ldr r1, [r5]
- adds r2, r1, r2
- ldrb r0, [r2]
- lsls r0, 1
- adds r1, 0x84
- adds r1, r0
- ldrh r6, [r1]
- mov r8, r6
- movs r0, 0x13
- bl ClearWindowTilemap
- ldr r2, =gSprites
- ldr r0, [r5]
- ldr r1, =0x000040d5
- adds r0, r1
- 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 _081C0E96
- movs r0, 0xD
- bl ClearWindowTilemap
-_081C0E96:
- movs r4, 0x3
- negs r4, r4
- movs r0, 0x9
- adds r1, r4, 0
- bl sub_81C1DA4
- movs r0, 0x9
- adds r1, r4, 0
- adds r2, r6, 0
- bl sub_81C1EFC
- ldr r0, [r5]
- ldr r1, =0x000040c8
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C0EC4
- movs r0, 0x5
- bl ClearWindowTilemap
- movs r0, 0x6
- bl PutWindowTilemap
-_081C0EC4:
- ldr r0, [r5]
- ldr r1, =0x000020bc
- adds r0, r1
- movs r1, 0x3
- movs r2, 0
- bl sub_81C2194
- ldr r0, [r5]
- ldr r1, =0x000030bc
- adds r0, r1
- movs r1, 0x1
- movs r2, 0
- bl sub_81C2194
- mov r0, r8
- bl sub_81C3E9C
- bl sub_81C3F44
- bl sub_81C44F0
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x8
- bl sub_81C4AF8
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81C0F44
- str r1, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C0E48
-
- thumb_func_start sub_81C0F44
-sub_81C0F44: @ 81C0F44
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- bl sub_81221EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C103A
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _081C0F98
- movs r0, 0x4
- strh r0, [r4]
- movs r1, 0x1
- negs r1, r1
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r0, =0x000040c6
- adds r2, r0
- adds r0, r4, 0
- bl sub_81C1070
- b _081C103A
- .pool
-_081C0F98:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _081C0FC0
- movs r0, 0x4
- strh r0, [r4]
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r0, =0x000040c6
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81C1070
- b _081C103A
- .pool
-_081C0FC0:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _081C1026
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040c8
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _081C0FE8
- subs r2, 0x4
- adds r0, r1, r2
- ldr r0, [r0]
- ldr r1, =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 11
- cmp r0, r1
- bne _081C1004
-_081C0FE8:
- movs r0, 0x5
- bl PlaySE
- adds r0, r5, 0
- bl sub_81C11F4
- b _081C103A
- .pool
-_081C1004:
- bl sub_81C1040
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C101E
- movs r0, 0x5
- bl PlaySE
- adds r0, r5, 0
- bl sub_81C129C
- b _081C103A
-_081C101E:
- movs r0, 0x20
- bl PlaySE
- b _081C103A
-_081C1026:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081C103A
- movs r0, 0x5
- bl PlaySE
- adds r0, r6, 0
- bl sub_81C11F4
-_081C103A:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81C0F44
-
- thumb_func_start sub_81C1040
-sub_81C1040: @ 81C1040
- push {lr}
- movs r1, 0x1
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r2, r0, 0
- adds r2, 0x84
-_081C104C:
- lsls r0, r1, 1
- adds r0, r2, r0
- ldrh r0, [r0]
- cmp r0, 0
- beq _081C1060
- movs r0, 0x1
- b _081C106C
- .pool
-_081C1060:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bls _081C104C
- movs r0, 0
-_081C106C:
- pop {r1}
- bx r1
- thumb_func_end sub_81C1040
-
- thumb_func_start sub_81C1070
-sub_81C1070: @ 81C1070
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r7, r0, 0
- adds r4, r1, 0
- mov r8, r2
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- mov r0, r8
- ldrb r6, [r0]
- movs r2, 0
- lsls r4, 24
- asrs r4, 24
- mov r12, r4
- movs r1, 0
- ldrsh r4, [r7, r1]
- ldrb r0, [r7]
- lsls r3, r0, 24
-_081C109C:
- lsls r0, r6, 24
- asrs r0, 24
- add r0, r12
- lsls r0, 24
- lsrs r6, r0, 24
- asrs r0, 24
- cmp r0, r4
- ble _081C10B0
- movs r6, 0
- b _081C10B6
-_081C10B0:
- cmp r0, 0
- bge _081C10B6
- lsrs r6, r3, 24
-_081C10B6:
- lsls r0, r6, 24
- asrs r1, r0, 24
- mov r9, r0
- cmp r1, 0x4
- bne _081C10C2
- b _081C11CC
-_081C10C2:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- lsls r1, 1
- adds r0, 0x84
- adds r0, r1
- ldrh r5, [r0]
- cmp r5, 0
- bne _081C10E2
- lsls r0, r2, 24
- movs r1, 0x80
- lsls r1, 17
- adds r0, r1
- lsrs r2, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _081C109C
-_081C10E2:
- adds r0, r5, 0
- bl sub_81C240C
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- adds r0, r5, 0
- bl sub_81C3E9C
- mov r1, r8
- ldrb r0, [r1]
- cmp r0, 0x4
- bne _081C1110
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c4
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- beq _081C1118
-_081C1110:
- movs r1, 0x2
- ldrsh r0, [r7, r1]
- cmp r0, 0x1
- bne _081C115E
-_081C1118:
- movs r0, 0x13
- bl ClearWindowTilemap
- ldr r2, =gSprites
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040d5
- adds r0, r1
- 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 _081C1142
- movs r0, 0xD
- bl ClearWindowTilemap
-_081C1142:
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r4, 0x3
- negs r4, r4
- movs r0, 0x9
- adds r1, r4, 0
- bl sub_81C1DA4
- movs r0, 0x9
- adds r1, r4, 0
- adds r2, r5, 0
- bl sub_81C1EFC
-_081C115E:
- mov r1, r8
- ldrb r0, [r1]
- cmp r0, 0x4
- beq _081C11A0
- mov r1, r9
- asrs r0, r1, 24
- cmp r0, 0x4
- bne _081C11A0
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c4
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- bne _081C11A0
- movs r0, 0xE
- bl ClearWindowTilemap
- movs r0, 0xF
- bl ClearWindowTilemap
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0
- movs r1, 0x3
- bl sub_81C1DA4
- movs r0, 0
- movs r1, 0x3
- movs r2, 0
- bl sub_81C1EFC
-_081C11A0:
- mov r0, r8
- strb r6, [r0]
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c6
- adds r0, r1
- cmp r8, r0
- bne _081C11E0
- movs r0, 0x8
- bl sub_81C4D18
- b _081C11E6
- .pool
-_081C11CC:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c4
- adds r0, r1
- ldrh r5, [r0]
- b _081C10E2
- .pool
-_081C11E0:
- movs r0, 0x12
- bl sub_81C4D18
-_081C11E6:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81C1070
-
- thumb_func_start sub_81C11F4
-sub_81C11F4: @ 81C11F4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r0, 0x8
- bl sub_81C4C60
- movs r0, 0x6
- bl ClearWindowTilemap
- movs r0, 0x5
- bl PutWindowTilemap
- movs r0, 0
- bl sub_81C3E9C
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- ldr r1, =0x000020bc
- adds r0, r1
- movs r1, 0x3
- movs r2, 0x1
- bl sub_81C2194
- ldr r0, [r4]
- ldr r1, =0x000030bc
- adds r0, r1
- movs r1, 0x1
- movs r2, 0x1
- bl sub_81C2194
- bl sub_81C4064
- ldr r0, [r4]
- ldr r1, =0x000040c6
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x4
- beq _081C125E
- movs r0, 0xE
- bl ClearWindowTilemap
- movs r0, 0xF
- bl ClearWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl sub_81C1DA4
- movs r0, 0
- movs r1, 0x3
- movs r2, 0
- bl sub_81C1EFC
-_081C125E:
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_81C0510
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C11F4
-
- thumb_func_start sub_81C129C
-sub_81C129C: @ 81C129C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r2, =0x000040c6
- adds r1, r0, r2
- ldrb r1, [r1]
- adds r2, 0x1
- adds r0, r2
- strb r1, [r0]
- movs r0, 0x1
- bl sub_81C4C84
- movs r0, 0x12
- bl sub_81C4AF8
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81C12E4
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C129C
-
- thumb_func_start sub_81C12E4
-sub_81C12E4: @ 81C12E4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- bl sub_81221EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C13AA
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _081C1338
- movs r0, 0x3
- strh r0, [r4]
- movs r1, 0x1
- negs r1, r1
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r0, =0x000040c7
- adds r2, r0
- adds r0, r4, 0
- bl sub_81C1070
- b _081C13AA
- .pool
-_081C1338:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _081C1360
- movs r0, 0x3
- strh r0, [r4]
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r0, =0x000040c7
- adds r2, r0
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81C1070
- b _081C13AA
- .pool
-_081C1360:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _081C139A
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r2, =0x000040c6
- adds r1, r0, r2
- adds r2, 0x1
- adds r0, r2
- ldrb r1, [r1]
- ldrb r0, [r0]
- cmp r1, r0
- bne _081C1390
- adds r0, r5, 0
- movs r1, 0
- bl sub_81C13B0
- b _081C13AA
- .pool
-_081C1390:
- adds r0, r5, 0
- movs r1, 0x1
- bl sub_81C13B0
- b _081C13AA
-_081C139A:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081C13AA
- adds r0, r6, 0
- movs r1, 0
- bl sub_81C13B0
-_081C13AA:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81C12E4
-
- thumb_func_start sub_81C13B0
-sub_81C13B0: @ 81C13B0
- push {r4-r7,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- movs r0, 0
- bl sub_81C4C84
- movs r0, 0x12
- bl sub_81C4C60
- cmp r4, 0x1
- bne _081C1464
- ldr r0, =gUnknown_0203CF1C
- ldr r3, [r0]
- ldr r1, =0x000040bd
- adds r0, r3, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C1410
- ldr r0, [r3]
- ldr r2, =0x000040be
- adds r1, r3, r2
- ldrb r2, [r1]
- movs r1, 0x64
- muls r1, r2
- adds r0, r1
- ldr r4, =0x000040c6
- adds r1, r3, r4
- ldrb r1, [r1]
- adds r4, 0x1
- adds r2, r3, r4
- ldrb r2, [r2]
- bl sub_81C14BC
- b _081C1430
- .pool
-_081C1410:
- ldr r0, [r3]
- ldr r2, =0x000040be
- adds r1, r3, r2
- ldrb r2, [r1]
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 4
- adds r0, r1
- ldr r4, =0x000040c6
- adds r1, r3, r4
- ldrb r1, [r1]
- adds r4, 0x1
- adds r2, r3, r4
- ldrb r2, [r2]
- bl sub_81C15EC
-_081C1430:
- ldr r5, =gUnknown_0203CF1C
- ldr r0, [r5]
- adds r0, 0xC
- bl sub_81C0098
- ldr r1, [r5]
- ldr r6, =0x000040c6
- adds r0, r1, r6
- ldrb r0, [r0]
- ldr r4, =0x000040c7
- adds r1, r4
- ldrb r1, [r1]
- bl sub_81C40A0
- ldr r1, [r5]
- adds r0, r1, r6
- ldrb r0, [r0]
- adds r1, r4
- ldrb r1, [r1]
- bl sub_81C4568
- ldr r0, [r5]
- adds r4, r0, r4
- ldrb r1, [r4]
- adds r0, r6
- strb r1, [r0]
-_081C1464:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040c6
- adds r0, r1, r2
- ldrb r0, [r0]
- lsls r0, 1
- adds r1, 0x84
- adds r1, r0
- ldrh r4, [r1]
- adds r0, r4, 0
- bl sub_81C3E9C
- adds r0, r4, 0
- bl sub_81C240C
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81C0F44
- str r1, [r0]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C13B0
-
- thumb_func_start sub_81C14BC
-sub_81C14BC: @ 81C14BC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x28
- adds r7, r0, 0
- adds r4, r1, 0
- adds r6, r2, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r6, 24
- lsrs r6, 24
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- lsls r0, r4, 1
- mov r10, r0
- adds r1, r2, 0
- adds r1, 0x84
- adds r0, r1, r0
- str r0, [sp, 0x8]
- ldrh r0, [r0]
- mov r3, sp
- adds r3, 0x2
- str r3, [sp, 0x1C]
- strh r0, [r3]
- lsls r0, r6, 1
- mov r9, r0
- add r1, r9
- str r1, [sp, 0xC]
- ldrh r1, [r1]
- mov r0, sp
- strh r1, [r0]
- adds r1, r2, 0
- adds r1, 0x8C
- adds r3, r1, r4
- str r3, [sp, 0x10]
- ldrb r0, [r3]
- mov r3, sp
- adds r3, 0x5
- str r3, [sp, 0x24]
- strb r0, [r3]
- adds r1, r6
- str r1, [sp, 0x14]
- ldrb r0, [r1]
- mov r1, sp
- adds r1, 0x4
- str r1, [sp, 0x20]
- strb r0, [r1]
- adds r2, 0xA4
- str r2, [sp, 0x18]
- ldrb r0, [r2]
- mov r5, sp
- adds r5, 0x6
- strb r0, [r5]
- ldr r1, =gUnknown_08329D22
- adds r0, r4, r1
- ldrb r0, [r0]
- mov r8, r0
- ldrb r0, [r5]
- adds r2, r0, 0
- mov r3, r8
- ands r2, r3
- mov r3, r10
- asrs r2, r3
- lsls r2, 24
- lsrs r2, 24
- adds r1, r6, r1
- ldrb r1, [r1]
- mov r12, r1
- adds r1, r0, 0
- mov r3, r12
- ands r1, r3
- mov r3, r9
- asrs r1, r3
- lsls r1, 24
- lsrs r1, 24
- mov r3, r8
- bics r0, r3
- strb r0, [r5]
- ldrb r0, [r5]
- mov r3, r12
- bics r0, r3
- strb r0, [r5]
- mov r0, r9
- lsls r2, r0
- mov r3, r10
- lsls r1, r3
- adds r2, r1
- ldrb r0, [r5]
- orrs r0, r2
- strb r0, [r5]
- adds r1, r4, 0
- adds r1, 0xD
- adds r0, r7, 0
- mov r2, sp
- bl SetMonData
- adds r1, r6, 0
- adds r1, 0xD
- adds r0, r7, 0
- ldr r2, [sp, 0x1C]
- bl SetMonData
- adds r4, 0x11
- adds r0, r7, 0
- adds r1, r4, 0
- ldr r2, [sp, 0x20]
- bl SetMonData
- adds r6, 0x11
- adds r0, r7, 0
- adds r1, r6, 0
- ldr r2, [sp, 0x24]
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x15
- adds r2, r5, 0
- bl SetMonData
- mov r0, sp
- ldrh r0, [r0]
- ldr r1, [sp, 0x8]
- strh r0, [r1]
- ldr r3, [sp, 0x1C]
- ldrh r0, [r3]
- ldr r1, [sp, 0xC]
- strh r0, [r1]
- ldr r3, [sp, 0x20]
- ldrb r0, [r3]
- ldr r1, [sp, 0x10]
- strb r0, [r1]
- ldr r3, [sp, 0x24]
- ldrb r0, [r3]
- ldr r1, [sp, 0x14]
- strb r0, [r1]
- ldrb r0, [r5]
- ldr r3, [sp, 0x18]
- strb r0, [r3]
- add sp, 0x28
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C14BC
-
- thumb_func_start sub_81C15EC
-sub_81C15EC: @ 81C15EC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x28
- adds r7, r0, 0
- adds r4, r1, 0
- adds r6, r2, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r6, 24
- lsrs r6, 24
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- lsls r0, r4, 1
- mov r10, r0
- adds r1, r2, 0
- adds r1, 0x84
- adds r0, r1, r0
- str r0, [sp, 0x8]
- ldrh r0, [r0]
- mov r3, sp
- adds r3, 0x2
- str r3, [sp, 0x1C]
- strh r0, [r3]
- lsls r0, r6, 1
- mov r9, r0
- add r1, r9
- str r1, [sp, 0xC]
- ldrh r1, [r1]
- mov r0, sp
- strh r1, [r0]
- adds r1, r2, 0
- adds r1, 0x8C
- adds r3, r1, r4
- str r3, [sp, 0x10]
- ldrb r0, [r3]
- mov r3, sp
- adds r3, 0x5
- str r3, [sp, 0x24]
- strb r0, [r3]
- adds r1, r6
- str r1, [sp, 0x14]
- ldrb r0, [r1]
- mov r1, sp
- adds r1, 0x4
- str r1, [sp, 0x20]
- strb r0, [r1]
- adds r2, 0xA4
- str r2, [sp, 0x18]
- ldrb r0, [r2]
- mov r5, sp
- adds r5, 0x6
- strb r0, [r5]
- ldr r1, =gUnknown_08329D22
- adds r0, r4, r1
- ldrb r0, [r0]
- mov r8, r0
- ldrb r0, [r5]
- adds r2, r0, 0
- mov r3, r8
- ands r2, r3
- mov r3, r10
- asrs r2, r3
- lsls r2, 24
- lsrs r2, 24
- adds r1, r6, r1
- ldrb r1, [r1]
- mov r12, r1
- adds r1, r0, 0
- mov r3, r12
- ands r1, r3
- mov r3, r9
- asrs r1, r3
- lsls r1, 24
- lsrs r1, 24
- mov r3, r8
- bics r0, r3
- strb r0, [r5]
- ldrb r0, [r5]
- mov r3, r12
- bics r0, r3
- strb r0, [r5]
- mov r0, r9
- lsls r2, r0
- mov r3, r10
- lsls r1, r3
- adds r2, r1
- ldrb r0, [r5]
- orrs r0, r2
- strb r0, [r5]
- adds r1, r4, 0
- adds r1, 0xD
- adds r0, r7, 0
- mov r2, sp
- bl SetBoxMonData
- adds r1, r6, 0
- adds r1, 0xD
- adds r0, r7, 0
- ldr r2, [sp, 0x1C]
- bl SetBoxMonData
- adds r4, 0x11
- adds r0, r7, 0
- adds r1, r4, 0
- ldr r2, [sp, 0x20]
- bl SetBoxMonData
- adds r6, 0x11
- adds r0, r7, 0
- adds r1, r6, 0
- ldr r2, [sp, 0x24]
- bl SetBoxMonData
- adds r0, r7, 0
- movs r1, 0x15
- adds r2, r5, 0
- bl SetBoxMonData
- mov r0, sp
- ldrh r0, [r0]
- ldr r1, [sp, 0x8]
- strh r0, [r1]
- ldr r3, [sp, 0x1C]
- ldrh r0, [r3]
- ldr r1, [sp, 0xC]
- strh r0, [r1]
- ldr r3, [sp, 0x20]
- ldrb r0, [r3]
- ldr r1, [sp, 0x10]
- strb r0, [r1]
- ldr r3, [sp, 0x24]
- ldrb r0, [r3]
- ldr r1, [sp, 0x14]
- strb r0, [r1]
- ldrb r0, [r5]
- ldr r3, [sp, 0x18]
- strb r0, [r3]
- add sp, 0x28
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C15EC
-
- thumb_func_start sub_81C171C
-sub_81C171C: @ 81C171C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_81C44F0
- movs r0, 0x8
- bl sub_81C4AF8
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81C174C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C171C
-
- thumb_func_start sub_81C174C
-sub_81C174C: @ 81C174C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- bl sub_81221EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C176A
- b _081C189A
-_081C176A:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r2, 0x80
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _081C177A
- b _081C189A
-_081C177A:
- ldr r6, =gMain
- ldrh r1, [r6, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _081C17B4
- movs r0, 0x4
- strh r0, [r4]
- movs r1, 0x1
- negs r1, r1
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r0, =0x000040c6
- adds r2, r0
- adds r0, r4, 0
- bl sub_81C1070
- b _081C189A
- .pool
-_081C17B4:
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _081C17DC
- movs r0, 0x4
- strh r0, [r4]
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r1, =0x000040c6
- adds r2, r1
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81C1070
- b _081C189A
- .pool
-_081C17DC:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _081C17F0
- bl GetLRKeysState
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C17FC
-_081C17F0:
- movs r1, 0x1
- negs r1, r1
- adds r0, r5, 0
- bl sub_81C0A8C
- b _081C189A
-_081C17FC:
- ldrh r1, [r6, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _081C1812
- bl GetLRKeysState
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _081C181C
-_081C1812:
- adds r0, r5, 0
- movs r1, 0x1
- bl sub_81C0A8C
- b _081C189A
-_081C181C:
- ldrh r1, [r6, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _081C1876
- bl sub_81C18A8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C1868
- bl sub_81C48F0
- movs r0, 0x5
- bl PlaySE
- ldr r2, =gUnknown_0203CF21
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040c6
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r1, =gSpecialVar_0x8005
- ldrb r0, [r2]
- strh r0, [r1]
- adds r0, r5, 0
- bl sub_81C044C
- b _081C189A
- .pool
-_081C1868:
- movs r0, 0x20
- bl PlaySE
- adds r0, r5, 0
- bl sub_81C18F4
- b _081C189A
-_081C1876:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081C189A
- bl sub_81C48F0
- movs r0, 0x5
- bl PlaySE
- ldr r1, =gUnknown_0203CF21
- movs r0, 0x4
- strb r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0x4
- strh r0, [r1]
- adds r0, r5, 0
- bl sub_81C044C
-_081C189A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C174C
-
- thumb_func_start sub_81C18A8
-sub_81C18A8: @ 81C18A8
- push {lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r0, =0x000040c6
- adds r1, r2, r0
- ldrb r0, [r1]
- cmp r0, 0x4
- beq _081C18DA
- ldr r3, =0x000040c4
- adds r0, r2, r3
- ldrh r0, [r0]
- cmp r0, 0
- beq _081C18DA
- ldrb r1, [r1]
- lsls r1, 1
- adds r0, r2, 0
- adds r0, 0x84
- adds r0, r1
- ldrh r0, [r0]
- bl sub_81B6D14
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C18EC
-_081C18DA:
- movs r0, 0x1
- b _081C18EE
- .pool
-_081C18EC:
- movs r0, 0
-_081C18EE:
- pop {r1}
- bx r1
- thumb_func_end sub_81C18A8
-
- thumb_func_start sub_81C18F4
-sub_81C18F4: @ 81C18F4
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0xE
- bl ClearWindowTilemap
- movs r0, 0xF
- bl ClearWindowTilemap
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0
- movs r1, 0x3
- bl sub_81C1DA4
- movs r0, 0
- movs r1, 0x3
- movs r2, 0
- bl sub_81C1EFC
- bl sub_81C4154
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81C1940
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C18F4
-
- thumb_func_start sub_81C1940
-sub_81C1940: @ 81C1940
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- mov r8, r0
- ldr r0, =gTasks + 0x8
- mov r9, r0
- mov r4, r8
- add r4, r9
- ldr r0, =sub_81C1E20
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C196C
- b _081C1B74
-_081C196C:
- ldr r6, =gMain
- ldrh r1, [r6, 0x2E]
- movs r0, 0x40
- ands r0, r1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- beq _081C19B0
- movs r0, 0x1
- strh r0, [r4, 0x2]
- movs r0, 0x4
- strh r0, [r4]
- movs r1, 0x1
- negs r1, r1
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r0, =0x000040c6
- adds r2, r0
- adds r0, r4, 0
- bl sub_81C1070
- movs r0, 0
- strh r0, [r4, 0x2]
- b _081C1B6A
- .pool
-_081C19B0:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _081C19DC
- movs r0, 0x1
- strh r0, [r4, 0x2]
- movs r0, 0x4
- strh r0, [r4]
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r1, =0x000040c6
- adds r2, r1
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81C1070
- strh r5, [r4, 0x2]
- b _081C1B6A
- .pool
-_081C19DC:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _081C19F0
- bl GetLRKeysState
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C1A64
-_081C19F0:
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- ldr r2, =0x000040c0
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _081C1A00
- b _081C1B74
-_081C1A00:
- movs r0, 0x13
- bl ClearWindowTilemap
- ldr r2, =gSprites
- ldr r0, [r4]
- ldr r1, =0x000040d5
- adds r0, r1
- 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 _081C1A28
- movs r0, 0xD
- bl ClearWindowTilemap
-_081C1A28:
- ldr r1, [r4]
- ldr r2, =0x000040c6
- adds r0, r1, r2
- ldrb r0, [r0]
- lsls r0, 1
- adds r1, 0x84
- adds r1, r0
- ldrh r5, [r1]
- mov r0, r9
- subs r0, 0x8
- add r0, r8
- ldr r1, =sub_81C174C
- str r1, [r0]
- movs r1, 0x1
- negs r1, r1
- adds r0, r7, 0
- b _081C1ACE
- .pool
-_081C1A64:
- ldrh r1, [r6, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _081C1A7A
- bl GetLRKeysState
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _081C1B04
-_081C1A7A:
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- ldr r1, =0x000040c0
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _081C1B74
- movs r0, 0x13
- bl ClearWindowTilemap
- ldr r2, =gSprites
- ldr r0, [r4]
- ldr r1, =0x000040d5
- adds r0, r1
- 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 _081C1AB0
- movs r0, 0xD
- bl ClearWindowTilemap
-_081C1AB0:
- ldr r1, [r4]
- ldr r2, =0x000040c6
- adds r0, r1, r2
- ldrb r0, [r0]
- lsls r0, 1
- adds r1, 0x84
- adds r1, r0
- ldrh r5, [r1]
- mov r0, r9
- subs r0, 0x8
- add r0, r8
- ldr r1, =sub_81C174C
- str r1, [r0]
- adds r0, r7, 0
- movs r1, 0x1
-_081C1ACE:
- bl sub_81C0A8C
- movs r4, 0x2
- negs r4, r4
- movs r0, 0x9
- adds r1, r4, 0
- bl sub_81C1DA4
- movs r0, 0x9
- adds r1, r4, 0
- adds r2, r5, 0
- bl sub_81C1EFC
- b _081C1B74
- .pool
-_081C1B04:
- ldrh r1, [r6, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _081C1B74
- movs r0, 0x13
- bl ClearWindowTilemap
- ldr r2, =gSprites
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- ldr r1, =0x000040d5
- adds r0, r1
- 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 _081C1B38
- movs r0, 0xD
- bl ClearWindowTilemap
-_081C1B38:
- ldr r1, [r4]
- ldr r2, =0x000040c6
- adds r0, r1, r2
- ldrb r0, [r0]
- lsls r0, 1
- adds r1, 0x84
- adds r1, r0
- ldrh r5, [r1]
- adds r0, r5, 0
- bl sub_81C3E9C
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- movs r4, 0x3
- negs r4, r4
- movs r0, 0x9
- adds r1, r4, 0
- bl sub_81C1DA4
- movs r0, 0x9
- adds r1, r4, 0
- adds r2, r5, 0
- bl sub_81C1EFC
-_081C1B6A:
- mov r0, r9
- subs r0, 0x8
- add r0, r8
- ldr r1, =sub_81C174C
- str r1, [r0]
-_081C1B74:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C1940
-
- thumb_func_start sub_81C1B94
-sub_81C1B94: @ 81C1B94
- ldr r0, =gUnknown_0203CF21
- ldrb r0, [r0]
- bx lr
- .pool
- thumb_func_end sub_81C1B94
-
- thumb_func_start sub_81C1BA0
-sub_81C1BA0: @ 81C1BA0
- push {r4-r7,lr}
- sub sp, 0xC
- movs r0, 0x20
- bl Alloc
- adds r4, r0, 0
- movs r5, 0
-_081C1BAE:
- lsls r0, r5, 25
- lsrs r1, r0, 24
- adds r6, r1, 0
- ldr r0, =gUnknown_0203CF1C
- ldr r3, [r0]
- ldr r2, =0x000040c1
- adds r0, r3, r2
- ldrb r0, [r0]
- cmp r5, r0
- bcs _081C1BD8
- lsls r0, r1, 1
- adds r0, r4
- movs r1, 0x40
- strh r1, [r0]
- strh r1, [r0, 0x2]
- movs r1, 0x50
- b _081C1BEE
- .pool
-_081C1BD8:
- ldr r7, =0x000040c2
- adds r0, r3, r7
- ldrb r2, [r0]
- cmp r5, r2
- bls _081C1BF8
- lsls r0, r1, 1
- adds r0, r4
- movs r1, 0x4A
- strh r1, [r0]
- strh r1, [r0, 0x2]
- movs r1, 0x5A
-_081C1BEE:
- strh r1, [r0, 0x10]
- strh r1, [r0, 0x12]
- b _081C1C78
- .pool
-_081C1BF8:
- ldr r7, =0x000040c0
- adds r0, r3, r7
- ldrb r0, [r0]
- cmp r5, r0
- bcs _081C1C1C
- lsls r1, 1
- adds r1, r4
- movs r0, 0x46
- strh r0, [r1]
- movs r0, 0x47
- strh r0, [r1, 0x2]
- movs r0, 0x56
- strh r0, [r1, 0x10]
- movs r0, 0x57
- b _081C1C76
- .pool
-_081C1C1C:
- cmp r5, r0
- bne _081C1C4C
- cmp r5, r2
- beq _081C1C38
- lsls r1, 1
- adds r1, r4
- movs r0, 0x41
- strh r0, [r1]
- movs r0, 0x42
- strh r0, [r1, 0x2]
- movs r0, 0x51
- strh r0, [r1, 0x10]
- movs r0, 0x52
- b _081C1C76
-_081C1C38:
- lsls r1, 1
- adds r1, r4
- movs r0, 0x4B
- strh r0, [r1]
- movs r0, 0x4C
- strh r0, [r1, 0x2]
- movs r0, 0x5B
- strh r0, [r1, 0x10]
- movs r0, 0x5C
- b _081C1C76
-_081C1C4C:
- cmp r5, r2
- beq _081C1C64
- lsls r1, 1
- adds r1, r4
- movs r0, 0x43
- strh r0, [r1]
- movs r0, 0x44
- strh r0, [r1, 0x2]
- movs r0, 0x53
- strh r0, [r1, 0x10]
- movs r0, 0x54
- b _081C1C76
-_081C1C64:
- lsls r1, r6, 1
- adds r1, r4
- movs r0, 0x48
- strh r0, [r1]
- movs r0, 0x49
- strh r0, [r1, 0x2]
- movs r0, 0x58
- strh r0, [r1, 0x10]
- movs r0, 0x59
-_081C1C76:
- strh r0, [r1, 0x12]
-_081C1C78:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _081C1BAE
- movs r0, 0x8
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x10
- str r0, [sp, 0x8]
- movs r0, 0x3
- adds r1, r4, 0
- movs r2, 0xB
- movs r3, 0
- bl CopyToBgTilemapBufferRect_ChangePalette
- movs r0, 0x3
- bl schedule_bg_copy_tilemap_to_vram
- adds r0, r4, 0
- bl Free
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81C1BA0
-
- thumb_func_start sub_81C1CB0
-sub_81C1CB0: @ 81C1CB0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- adds r4, r0, 0
- mov r8, r1
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r3, 24
- lsrs r5, r3, 24
- ldrb r1, [r4, 0x6]
- ldrb r0, [r4, 0x7]
- lsls r0, 1
- muls r0, r1
- bl Alloc
- adds r7, r0, 0
- mov r1, sp
- ldrh r0, [r4, 0x4]
- strh r0, [r1]
- ldrb r1, [r4, 0x7]
- ldrb r0, [r4, 0x6]
- adds r2, r1, 0
- muls r2, r0
- movs r0, 0x80
- lsls r0, 17
- orrs r2, r0
- mov r0, sp
- adds r1, r7, 0
- bl CpuSet
- ldrb r0, [r4, 0x6]
- cmp r0, r6
- beq _081C1D60
- cmp r5, 0
- bne _081C1D30
- movs r5, 0
- ldrb r0, [r4, 0x7]
- cmp r5, r0
- bcs _081C1D60
-_081C1D00:
- ldrb r2, [r4, 0x6]
- adds r1, r2, 0
- muls r1, r5
- adds r3, r6, r1
- lsls r3, 1
- ldr r0, [r4]
- adds r0, r3
- lsls r1, 1
- adds r1, r7, r1
- subs r2, r6
- ldr r3, =0x001fffff
- ands r2, r3
- bl CpuSet
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- ldrb r3, [r4, 0x7]
- cmp r5, r3
- bcc _081C1D00
- b _081C1D60
- .pool
-_081C1D30:
- movs r5, 0
- ldrb r0, [r4, 0x7]
- cmp r5, r0
- bcs _081C1D60
-_081C1D38:
- ldrb r2, [r4, 0x6]
- adds r1, r2, 0
- muls r1, r5
- lsls r3, r1, 1
- ldr r0, [r4]
- adds r0, r3
- adds r1, r6, r1
- lsls r1, 1
- adds r1, r7, r1
- subs r2, r6
- ldr r3, =0x001fffff
- ands r2, r3
- bl CpuSet
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- ldrb r3, [r4, 0x7]
- cmp r5, r3
- bcc _081C1D38
-_081C1D60:
- movs r5, 0
- b _081C1D8A
- .pool
-_081C1D68:
- ldrb r2, [r4, 0x6]
- adds r0, r2, 0
- muls r0, r5
- lsls r0, 1
- adds r0, r7, r0
- ldrb r1, [r4, 0x9]
- adds r1, r5
- lsls r1, 5
- ldrb r3, [r4, 0x8]
- adds r1, r3
- lsls r1, 1
- add r1, r8
- bl CpuSet
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_081C1D8A:
- ldrb r0, [r4, 0x7]
- cmp r5, r0
- bcc _081C1D68
- adds r0, r7, 0
- bl Free
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81C1CB0
-
- thumb_func_start sub_81C1DA4
-sub_81C1DA4: @ 81C1DA4
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 16
- lsrs r4, r1, 16
- asrs r1, 16
- ldr r3, =gUnknown_0861CC04
- ldrb r2, [r3, 0x6]
- cmp r1, r2
- ble _081C1DBA
- adds r4, r2, 0
-_081C1DBA:
- lsls r0, r4, 16
- asrs r0, 16
- cmp r0, 0
- beq _081C1DC6
- cmp r0, r2
- bne _081C1DE8
-_081C1DC6:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r0, =0x000020bc
- adds r1, r0
- lsls r2, r4, 24
- lsrs r2, 24
- adds r0, r3, 0
- movs r3, 0x1
- bl sub_81C1CB0
- b _081C1E12
- .pool
-_081C1DE8:
- ldr r5, =sub_81C1E20
- adds r0, r5, 0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- bne _081C1E04
- adds r0, r5, 0
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r2, r0, 24
-_081C1E04:
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- strh r4, [r0, 0x8]
- strh r6, [r0, 0xA]
-_081C1E12:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C1DA4
-
- thumb_func_start sub_81C1E20
-sub_81C1E20: @ 81C1E20
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldrh r0, [r4]
- ldrh r1, [r4, 0x2]
- adds r0, r1
- strh r0, [r4, 0x2]
- lsls r0, 16
- cmp r0, 0
- bge _081C1E50
- movs r0, 0
- strh r0, [r4, 0x2]
- ldr r7, =gUnknown_0861CC04
- b _081C1E60
- .pool
-_081C1E50:
- movs r0, 0x2
- ldrsh r1, [r4, r0]
- ldr r0, =gUnknown_0861CC04
- ldrb r2, [r0, 0x6]
- adds r7, r0, 0
- cmp r1, r2
- ble _081C1E60
- strh r2, [r4, 0x2]
-_081C1E60:
- ldr r5, =gUnknown_0203CF1C
- ldr r1, [r5]
- ldr r0, =0x000020bc
- adds r1, r0
- ldrb r2, [r4, 0x2]
- adds r0, r7, 0
- movs r3, 0x1
- bl sub_81C1CB0
- movs r1, 0x2
- ldrsh r0, [r4, r1]
- cmp r0, 0
- ble _081C1E80
- ldrb r7, [r7, 0x6]
- cmp r0, r7
- blt _081C1EE0
-_081C1E80:
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bge _081C1EAC
- ldr r0, [r5]
- ldr r1, =0x000040c0
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _081C1ED4
- movs r0, 0xE
- bl PutWindowTilemap
- b _081C1ED4
- .pool
-_081C1EAC:
- ldr r2, =gSprites
- ldr r0, [r5]
- ldr r1, =0x000040d5
- adds r0, r1
- 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 _081C1ECE
- movs r0, 0xD
- bl PutWindowTilemap
-_081C1ECE:
- movs r0, 0x13
- bl PutWindowTilemap
-_081C1ED4:
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- adds r0, r6, 0
- bl DestroyTask
-_081C1EE0:
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C1E20
-
- thumb_func_start sub_81C1EFC
-sub_81C1EFC: @ 81C1EFC
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r7, r0, 16
- lsls r1, 16
- lsls r2, 16
- lsrs r6, r2, 16
- lsrs r4, r1, 16
- asrs r1, 16
- ldr r3, =gUnknown_0861CC10
- ldrb r2, [r3, 0x6]
- cmp r1, r2
- ble _081C1F16
- adds r4, r2, 0
-_081C1F16:
- lsls r0, r4, 16
- asrs r0, 16
- cmp r0, 0
- beq _081C1F22
- cmp r0, r2
- bne _081C1F44
-_081C1F22:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r0, =0x000030bc
- adds r1, r0
- lsls r2, r4, 24
- lsrs r2, 24
- adds r0, r3, 0
- movs r3, 0x1
- bl sub_81C1CB0
- b _081C1F70
- .pool
-_081C1F44:
- ldr r5, =sub_81C1F80
- adds r0, r5, 0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- bne _081C1F60
- adds r0, r5, 0
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r2, r0, 24
-_081C1F60:
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- strh r4, [r0, 0x8]
- strh r7, [r0, 0xA]
- strh r6, [r0, 0xC]
-_081C1F70:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C1EFC
-
- thumb_func_start sub_81C1F80
-sub_81C1F80: @ 81C1F80
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldrh r0, [r4]
- ldrh r1, [r4, 0x2]
- adds r0, r1
- strh r0, [r4, 0x2]
- lsls r0, 16
- cmp r0, 0
- bge _081C1FB0
- movs r0, 0
- strh r0, [r4, 0x2]
- ldr r7, =gUnknown_0861CC10
- b _081C1FC0
- .pool
-_081C1FB0:
- movs r0, 0x2
- ldrsh r1, [r4, r0]
- ldr r0, =gUnknown_0861CC10
- ldrb r2, [r0, 0x6]
- adds r7, r0, 0
- cmp r1, r2
- ble _081C1FC0
- strh r2, [r4, 0x2]
-_081C1FC0:
- ldr r5, =gUnknown_0203CF1C
- ldr r1, [r5]
- ldr r0, =0x000030bc
- adds r1, r0
- ldrb r2, [r4, 0x2]
- adds r0, r7, 0
- movs r3, 0x1
- bl sub_81C1CB0
- movs r1, 0x2
- ldrsh r0, [r4, r1]
- cmp r0, 0
- ble _081C1FE0
- ldrb r7, [r7, 0x6]
- cmp r0, r7
- blt _081C2058
-_081C1FE0:
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bge _081C2024
- ldr r0, [r5]
- ldr r1, =0x000040c0
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C2006
- ldr r0, =sub_81C0B8C
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _081C2006
- movs r0, 0xF
- bl PutWindowTilemap
-_081C2006:
- ldrh r0, [r4, 0x4]
- bl sub_81C240C
- b _081C204C
- .pool
-_081C2024:
- ldr r2, =gSprites
- ldr r0, [r5]
- ldr r1, =0x000040d5
- adds r0, r1
- 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 _081C2046
- movs r0, 0xD
- bl PutWindowTilemap
-_081C2046:
- movs r0, 0x13
- bl PutWindowTilemap
-_081C204C:
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- adds r0, r6, 0
- bl DestroyTask
-_081C2058:
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C1F80
-
- thumb_func_start sub_81C2074
-sub_81C2074: @ 81C2074
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 16
- lsrs r4, r1, 16
- asrs r1, 16
- ldr r3, =gUnknown_0861CBEC
- ldrb r2, [r3, 0x6]
- cmp r1, r2
- ble _081C208A
- adds r4, r2, 0
-_081C208A:
- lsls r0, r4, 16
- asrs r0, 16
- cmp r0, 0
- beq _081C2096
- cmp r0, r2
- bne _081C20C8
-_081C2096:
- ldr r5, =gUnknown_0203CF1C
- ldr r1, [r5]
- adds r1, 0xBC
- lsls r4, 24
- lsrs r4, 24
- adds r0, r3, 0
- adds r2, r4, 0
- movs r3, 0
- bl sub_81C1CB0
- ldr r0, =gUnknown_0861CBF8
- ldr r1, [r5]
- adds r1, 0xBC
- adds r2, r4, 0
- movs r3, 0
- bl sub_81C1CB0
- b _081C20E2
- .pool
-_081C20C8:
- ldr r0, =sub_81C20F0
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- strh r5, [r1, 0xA]
-_081C20E2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2074
-
- thumb_func_start sub_81C20F0
-sub_81C20F0: @ 81C20F0
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r5, r0, r1
- ldrh r0, [r5]
- ldrh r1, [r5, 0x2]
- adds r0, r1
- strh r0, [r5, 0x2]
- lsls r0, 16
- cmp r0, 0
- bge _081C2120
- movs r0, 0
- strh r0, [r5, 0x2]
- ldr r7, =gUnknown_0861CBEC
- b _081C2130
- .pool
-_081C2120:
- movs r0, 0x2
- ldrsh r1, [r5, r0]
- ldr r0, =gUnknown_0861CBEC
- ldrb r2, [r0, 0x6]
- adds r7, r0, 0
- cmp r1, r2
- ble _081C2130
- strh r2, [r5, 0x2]
-_081C2130:
- ldr r4, =gUnknown_0203CF1C
- ldr r1, [r4]
- adds r1, 0xBC
- ldrb r2, [r5, 0x2]
- adds r0, r7, 0
- movs r3, 0
- bl sub_81C1CB0
- ldr r0, =gUnknown_0861CBF8
- ldr r1, [r4]
- adds r1, 0xBC
- ldrb r2, [r5, 0x2]
- movs r3, 0
- bl sub_81C1CB0
- movs r0, 0x3
- bl schedule_bg_copy_tilemap_to_vram
- movs r1, 0x2
- ldrsh r0, [r5, r1]
- cmp r0, 0
- ble _081C2162
- ldrb r7, [r7, 0x6]
- cmp r0, r7
- blt _081C2180
-_081C2162:
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bge _081C217A
- bl sub_81C4A88
- movs r0, 0xD
- bl PutWindowTilemap
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
-_081C217A:
- adds r0, r6, 0
- bl DestroyTask
-_081C2180:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C20F0
-
- thumb_func_start sub_81C2194
-sub_81C2194: @ 81C2194
- push {r4-r7,lr}
- adds r6, r0, 0
- lsls r2, 24
- lsls r1, 28
- lsrs r4, r1, 16
- ldr r7, =0x0000056a
- cmp r2, 0
- bne _081C21E4
- movs r3, 0
- ldr r5, =gUnknown_08DC3CD4
-_081C21A8:
- adds r2, r7, r3
- lsls r2, 1
- adds r2, r6
- lsls r0, r3, 1
- adds r0, r5
- ldrh r1, [r0]
- adds r1, r4, r1
- strh r1, [r2]
- adds r0, r2, 0
- adds r0, 0x40
- strh r1, [r0]
- adds r2, 0x80
- adds r0, r3, 0
- adds r0, 0x14
- lsls r0, 1
- adds r0, r5
- ldrh r0, [r0]
- adds r0, r4, r0
- strh r0, [r2]
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x13
- bls _081C21A8
- b _081C221C
- .pool
-_081C21E4:
- movs r3, 0
- ldr r5, =gUnknown_08DC3CD4
-_081C21E8:
- adds r1, r7, r3
- lsls r1, 1
- adds r1, r6
- adds r0, r3, 0
- adds r0, 0x14
- lsls r0, 1
- adds r0, r5
- ldrh r0, [r0]
- adds r0, r4, r0
- strh r0, [r1]
- adds r2, r1, 0
- adds r2, 0x40
- adds r0, r3, 0
- adds r0, 0x28
- lsls r0, 1
- adds r0, r5
- ldrh r0, [r0]
- adds r0, r4, r0
- strh r0, [r2]
- adds r1, 0x80
- strh r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x13
- bls _081C21E8
-_081C221C:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2194
-
- thumb_func_start sub_81C2228
-sub_81C2228: @ 81C2228
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0
- bl CheckPartyPokerus
- lsls r0, 24
- cmp r0, 0
- bne _081C225C
- adds r0, r4, 0
- movs r1, 0
- bl CheckPartyHasHadPokerus
- lsls r0, 24
- cmp r0, 0
- beq _081C225C
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r2, =0x00000502
- adds r1, r0, r2
- movs r2, 0x2C
- b _081C2266
- .pool
-_081C225C:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r2, =0x00000502
- adds r1, r0, r2
- ldr r2, =0x0000081a
-_081C2266:
- strh r2, [r1]
- ldr r1, =0x00000d02
- adds r0, r1
- strh r2, [r0]
- movs r0, 0x3
- bl schedule_bg_copy_tilemap_to_vram
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2228
-
- thumb_func_start sub_81C228C
-sub_81C228C: @ 81C228C
- push {lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _081C22AC
- movs r0, 0x8
- str r0, [sp]
- str r1, [sp, 0x4]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0x4
- movs r3, 0x8
- bl sub_8199C30
- b _081C22C0
-_081C22AC:
- movs r0, 0x8
- str r0, [sp]
- movs r0, 0x5
- str r0, [sp, 0x4]
- movs r0, 0x3
- movs r1, 0x1
- movs r2, 0x4
- movs r3, 0x8
- bl sub_8199C30
-_081C22C0:
- movs r0, 0x3
- bl schedule_bg_copy_tilemap_to_vram
- add sp, 0x8
- pop {r0}
- bx r0
- thumb_func_end sub_81C228C
-
- thumb_func_start sub_81C22CC
-sub_81C22CC: @ 81C22CC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- adds r6, r1, 0
- adds r6, 0x70
- ldrb r1, [r6, 0x5]
- mov r8, r0
- cmp r1, 0x63
- bhi _081C2340
- ldr r5, =gExperienceTables
- adds r2, r1, 0
- adds r1, r2, 0x1
- lsls r1, 2
- ldr r4, =gBaseStats
- ldrh r3, [r6]
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r4
- ldrb r3, [r0, 0x13]
- movs r0, 0xCA
- lsls r0, 1
- muls r0, r3
- adds r1, r0
- adds r1, r5
- lsls r2, 2
- adds r2, r0
- adds r2, r5
- ldr r1, [r1]
- ldr r2, [r2]
- subs r1, r2
- ldr r0, [r6, 0x10]
- subs r4, r0, r2
- lsls r0, r4, 6
- bl __udivsi3
- adds r6, r0, 0
- movs r7, 0
- adds r0, r7, 0
- orrs r0, r6
- cmp r0, 0
- bne _081C2344
- cmp r4, 0
- beq _081C2344
- movs r6, 0x1
- movs r7, 0
- b _081C2344
- .pool
-_081C2340:
- movs r6, 0
- movs r7, 0
-_081C2344:
- mov r1, r8
- ldr r0, [r1]
- ldr r2, =0x00001d66
- adds r2, r0
- mov r9, r2
- movs r0, 0
- mov r12, r0
- ldr r1, =0x00002062
- mov r10, r1
-_081C2356:
- cmp r7, 0
- bgt _081C2362
- cmp r7, 0
- bne _081C237C
- cmp r6, 0x7
- bls _081C237C
-_081C2362:
- mov r2, r12
- lsls r0, r2, 1
- add r0, r9
- ldr r2, =0x0000206a
- adds r1, r2, 0
- strh r1, [r0]
- b _081C23B6
- .pool
-_081C237C:
- mov r1, r12
- lsls r0, r1, 1
- add r0, r9
- mov r8, r0
- adds r5, r7, 0
- adds r4, r6, 0
- cmp r7, 0
- bge _081C2394
- movs r4, 0x7
- movs r5, 0
- adds r4, r6
- adcs r5, r7
-_081C2394:
- lsls r3, r5, 29
- lsrs r2, r4, 3
- adds r0, r3, 0
- orrs r0, r2
- asrs r1, r5, 3
- lsrs r5, r0, 29
- lsls r4, r1, 3
- adds r3, r5, 0
- orrs r3, r4
- lsls r2, r0, 3
- adds r1, r7, 0
- adds r0, r6, 0
- subs r0, r2
- sbcs r1, r3
- add r0, r10
- mov r2, r8
- strh r0, [r2]
-_081C23B6:
- movs r0, 0x8
- negs r0, r0
- asrs r1, r0, 31
- adds r6, r0
- adcs r7, r1
- cmp r7, 0
- bge _081C23C8
- movs r6, 0
- movs r7, 0
-_081C23C8:
- mov r0, r12
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r12, r0
- cmp r0, 0x7
- bls _081C2356
- movs r0, 0x1
- bl GetBgTilemapBuffer
- ldr r1, =gUnknown_0203CF1C
- ldr r1, [r1]
- ldr r2, =0x000010bc
- adds r1, r2
- cmp r0, r1
- bne _081C23F8
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- b _081C23FE
- .pool
-_081C23F8:
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
-_081C23FE:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81C22CC
-
- thumb_func_start sub_81C240C
-sub_81C240C: @ 81C240C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000038bc
- adds r5, r0, r1
- cmp r3, 0
- beq _081C2510
- ldr r1, =gContestEffects
- ldr r2, =gContestMoves
- lsls r3, 3
- adds r0, r3, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldrb r4, [r0, 0x1]
- mov r9, r1
- mov r8, r2
- mov r10, r3
- cmp r4, 0xFF
- beq _081C244C
- adds r0, r4, 0
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 24
- lsrs r4, r0, 24
-_081C244C:
- movs r2, 0
- movs r6, 0x3
- movs r3, 0xF3
- lsls r3, 2
-_081C2454:
- cmp r4, 0xFF
- beq _081C2484
- cmp r2, r4
- bcs _081C2484
- lsrs r0, r2, 2
- adds r1, r2, 0
- ands r1, r6
- lsls r0, 5
- adds r0, r1
- lsls r0, 1
- adds r0, r5
- adds r0, r3
- ldr r7, =0x0000103a
- b _081C2496
- .pool
-_081C2484:
- lsrs r0, r2, 2
- adds r1, r2, 0
- ands r1, r6
- lsls r0, 5
- adds r0, r1
- lsls r0, 1
- adds r0, r5
- adds r0, r3
- ldr r7, =0x00001039
-_081C2496:
- adds r1, r7, 0
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x7
- bls _081C2454
- mov r0, r10
- add r0, r8
- ldrb r0, [r0]
- lsls r0, 2
- add r0, r9
- ldrb r4, [r0, 0x2]
- cmp r4, 0xFF
- beq _081C24C0
- adds r0, r4, 0
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 24
- lsrs r4, r0, 24
-_081C24C0:
- movs r2, 0
- movs r6, 0x3
- ldr r3, =0x0000044c
-_081C24C6:
- cmp r4, 0xFF
- beq _081C24F0
- cmp r2, r4
- bcs _081C24F0
- lsrs r0, r2, 2
- adds r1, r2, 0
- ands r1, r6
- lsls r0, 5
- adds r0, r1
- lsls r0, 1
- adds r0, r5
- adds r0, r3
- ldr r7, =0x0000103c
- b _081C2502
- .pool
-_081C24F0:
- lsrs r0, r2, 2
- adds r1, r2, 0
- ands r1, r6
- lsls r0, 5
- adds r0, r1
- lsls r0, 1
- adds r0, r5
- adds r0, r3
- ldr r7, =0x0000103d
-_081C2502:
- adds r1, r7, 0
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x7
- bls _081C24C6
-_081C2510:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C240C
-
- thumb_func_start sub_81C2524
-sub_81C2524: @ 81C2524
- push {lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0x74
- ldrb r0, [r0]
- cmp r0, 0
- beq _081C2544
- movs r1, 0x80
- lsls r1, 9
- movs r0, 0x3
- movs r2, 0
- bl ChangeBgX
- b _081C254E
- .pool
-_081C2544:
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
-_081C254E:
- pop {r0}
- bx r0
- thumb_func_end sub_81C2524
-
- thumb_func_start sub_81C2554
-sub_81C2554: @ 81C2554
- push {r4,r5,lr}
- ldr r0, =gUnknown_0861CC24
- bl InitWindows
- bl DeactivateAllTextPrinters
- movs r4, 0
-_081C2562:
- adds r0, r4, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x13
- bls _081C2562
- movs r4, 0
- ldr r5, =gUnknown_0203CF1C
- ldr r3, =0x000040cb
- movs r2, 0xFF
-_081C257C:
- ldr r0, [r5]
- adds r0, r3
- adds r0, r4
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _081C257C
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2554
-
- thumb_func_start sub_81C25A4
-sub_81C25A4: @ 81C25A4
- push {r4-r6,lr}
- sub sp, 0x14
- ldr r4, [sp, 0x24]
- ldr r5, [sp, 0x28]
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- movs r6, 0
- str r6, [sp]
- str r4, [sp, 0x4]
- lsls r4, r5, 1
- adds r4, r5
- ldr r5, =gUnknown_0861CD2C
- adds r4, r5
- str r4, [sp, 0x8]
- str r6, [sp, 0xC]
- str r1, [sp, 0x10]
- movs r1, 0x1
- bl AddTextPrinterParametrized2
- add sp, 0x14
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C25A4
-
- thumb_func_start sub_81C25E8
-sub_81C25E8: @ 81C25E8
- push {lr}
- movs r0, 0x11
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0x12
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0x13
- movs r1, 0
- bl FillWindowPixelBuffer
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0x74
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C2618
- bl sub_81C2628
- b _081C261C
- .pool
-_081C2618:
- bl sub_81C2794
-_081C261C:
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- pop {r0}
- bx r0
- thumb_func_end sub_81C25E8
-
- thumb_func_start sub_81C2628
-sub_81C2628: @ 81C2628
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x18
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- movs r1, 0xC
- adds r1, r0
- mov r8, r1
- adds r7, r0, 0
- adds r7, 0x70
- ldrh r0, [r7]
- bl SpeciesToPokedexNum
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, =0x0000ffff
- cmp r5, r0
- beq _081C26CE
- ldr r6, =gStringVar1
- ldr r1, =gText_UnkCtrlF908Clear01
- adds r0, r6, 0
- bl StringCopy
- ldr r4, =gStringVar2
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x2
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r0, r6, 0
- adds r1, r4, 0
- bl StringAppend
- mov r0, r8
- bl IsMonShiny
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _081C26AC
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- movs r0, 0x11
- adds r1, r6, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- movs r0, 0
- bl sub_81C228C
- b _081C26C6
- .pool
-_081C26AC:
- movs r0, 0
- str r0, [sp]
- movs r0, 0x7
- str r0, [sp, 0x4]
- movs r0, 0x11
- adds r1, r6, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- movs r0, 0x1
- bl sub_81C228C
-_081C26C6:
- movs r0, 0x11
- bl PutWindowTilemap
- b _081C26EE
-_081C26CE:
- movs r0, 0x11
- bl ClearWindowTilemap
- mov r0, r8
- bl IsMonShiny
- lsls r0, 24
- cmp r0, 0
- bne _081C26E8
- movs r0, 0
- bl sub_81C228C
- b _081C26EE
-_081C26E8:
- movs r0, 0x1
- bl sub_81C228C
-_081C26EE:
- ldr r4, =gStringVar1
- ldr r1, =gText_LevelSymbol
- adds r0, r4, 0
- bl StringCopy
- ldr r5, =gStringVar2
- ldrb r1, [r7, 0x5]
- adds r0, r5, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r0, r4, 0
- adds r1, r5, 0
- bl StringAppend
- movs r6, 0
- str r6, [sp]
- movs r5, 0x1
- str r5, [sp, 0x4]
- movs r0, 0x13
- adds r1, r4, 0
- movs r2, 0x18
- movs r3, 0x11
- bl sub_81C25A4
- mov r0, r8
- adds r1, r4, 0
- bl GetMonNickname
- str r6, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x12
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- add r1, sp, 0x8
- movs r0, 0xBA
- strb r0, [r1]
- mov r0, sp
- adds r0, 0x9
- ldrh r2, [r7, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- str r6, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x13
- add r1, sp, 0x8
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldrh r1, [r7, 0x2]
- mov r0, r8
- bl sub_81C27DC
- movs r0, 0x12
- bl PutWindowTilemap
- movs r0, 0x13
- bl PutWindowTilemap
- add sp, 0x18
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2628
-
- thumb_func_start sub_81C2794
-sub_81C2794: @ 81C2794
- push {r4,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0xC
- ldr r4, =gStringVar1
- adds r1, r4, 0
- bl GetMonNickname
- movs r0, 0
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- movs r0, 0x12
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- movs r0, 0x12
- bl PutWindowTilemap
- movs r0, 0x11
- bl ClearWindowTilemap
- movs r0, 0x13
- bl ClearWindowTilemap
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2794
-
- thumb_func_start sub_81C27DC
-sub_81C27DC: @ 81C27DC
- push {lr}
- sub sp, 0x8
- lsls r1, 16
- lsrs r1, 16
- cmp r1, 0x20
- beq _081C282C
- cmp r1, 0x1D
- beq _081C282C
- bl GetMonGender
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _081C27FE
- cmp r0, 0xFE
- beq _081C2818
- b _081C282C
-_081C27FE:
- ldr r1, =gText_MaleSymbol
- str r0, [sp]
- movs r0, 0x3
- str r0, [sp, 0x4]
- movs r0, 0x13
- movs r2, 0x39
- movs r3, 0x11
- bl sub_81C25A4
- b _081C282C
- .pool
-_081C2818:
- ldr r1, =gText_FemaleSymbol
- movs r0, 0
- str r0, [sp]
- movs r0, 0x4
- str r0, [sp, 0x4]
- movs r0, 0x13
- movs r2, 0x39
- movs r3, 0x11
- bl sub_81C25A4
-_081C282C:
- add sp, 0x8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C27DC
-
- thumb_func_start sub_81C2838
-sub_81C2838: @ 81C2838
- push {r4,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- ldr r3, =gUnknown_0861CDD3
- cmp r1, 0
- bne _081C284A
- subs r3, 0x80
-_081C284A:
- lsls r2, 16
- lsrs r2, 16
- movs r0, 0x10
- str r0, [sp]
- str r0, [sp, 0x4]
- adds r0, r4, 0
- adds r1, r3, 0
- movs r3, 0
- bl BlitBitmapToWindow
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2838
-
- thumb_func_start sub_81C286C
-sub_81C286C: @ 81C286C
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r1, =gText_PkmnInfo
- movs r5, 0
- str r5, [sp]
- movs r6, 0x1
- str r6, [sp, 0x4]
- movs r0, 0
- movs r2, 0x2
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_PkmnSkills
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0x1
- movs r2, 0x2
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_BattleMoves
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0x2
- movs r2, 0x2
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_ContestMoves
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0x3
- movs r2, 0x2
- movs r3, 0x1
- bl sub_81C25A4
- ldr r7, =gText_Cancel2
- movs r0, 0x1
- adds r1, r7, 0
- movs r2, 0x3E
- bl GetStringRightAlignXOffset
- adds r4, r0, 0
- adds r2, r4, 0
- subs r2, 0x10
- cmp r2, 0
- bge _081C28CC
- movs r2, 0
-_081C28CC:
- movs r0, 0x4
- movs r1, 0
- bl sub_81C2838
- lsls r2, r4, 24
- lsrs r2, 24
- str r5, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x4
- adds r1, r7, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r7, =gText_Info
- movs r0, 0x1
- adds r1, r7, 0
- movs r2, 0x3E
- bl GetStringRightAlignXOffset
- adds r4, r0, 0
- adds r2, r4, 0
- subs r2, 0x10
- cmp r2, 0
- bge _081C28FE
- movs r2, 0
-_081C28FE:
- movs r0, 0x5
- movs r1, 0
- bl sub_81C2838
- lsls r2, r4, 24
- lsrs r2, 24
- str r5, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x5
- adds r1, r7, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r7, =gText_Switch
- movs r0, 0x1
- adds r1, r7, 0
- movs r2, 0x3E
- bl GetStringRightAlignXOffset
- adds r4, r0, 0
- adds r2, r4, 0
- subs r2, 0x10
- cmp r2, 0
- bge _081C2930
- movs r2, 0
-_081C2930:
- movs r0, 0x6
- movs r1, 0
- bl sub_81C2838
- lsls r2, r4, 24
- lsrs r2, 24
- str r5, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x6
- adds r1, r7, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_RentalPkmn
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0x8
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_TypeSlash
- str r5, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x9
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r4, =gText_HP4
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x2A
- bl GetStringCenterAlignXOffset
- adds r0, 0x6
- lsls r2, r0, 24
- lsrs r2, 24
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xA
- adds r1, r4, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r4, =gText_Attack3
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x2A
- bl GetStringCenterAlignXOffset
- adds r0, 0x6
- lsls r2, r0, 24
- lsrs r2, 24
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xA
- adds r1, r4, 0
- movs r3, 0x11
- bl sub_81C25A4
- ldr r4, =gText_Defense3
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x2A
- bl GetStringCenterAlignXOffset
- adds r0, 0x6
- lsls r2, r0, 24
- lsrs r2, 24
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xA
- adds r1, r4, 0
- movs r3, 0x21
- bl sub_81C25A4
- ldr r4, =gText_SpAtk4
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x24
- bl GetStringCenterAlignXOffset
- adds r0, 0x2
- lsls r2, r0, 24
- lsrs r2, 24
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xB
- adds r1, r4, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r4, =gText_SpDef4
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x24
- bl GetStringCenterAlignXOffset
- adds r0, 0x2
- lsls r2, r0, 24
- lsrs r2, 24
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xB
- adds r1, r4, 0
- movs r3, 0x11
- bl sub_81C25A4
- ldr r4, =gText_Speed2
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x24
- bl GetStringCenterAlignXOffset
- adds r0, 0x2
- lsls r2, r0, 24
- lsrs r2, 24
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xB
- adds r1, r4, 0
- movs r3, 0x21
- bl sub_81C25A4
- ldr r1, =gText_ExpPoints
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xC
- movs r2, 0x6
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_NextLv
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xC
- movs r2, 0x6
- movs r3, 0x11
- bl sub_81C25A4
- ldr r1, =gText_Status
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xD
- movs r2, 0x2
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_Power
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xE
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_Accuracy2
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xE
- movs r2, 0
- movs r3, 0x11
- bl sub_81C25A4
- ldr r1, =gText_Appeal
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xF
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_Jam
- str r5, [sp]
- str r6, [sp, 0x4]
- movs r0, 0xF
- movs r2, 0
- movs r3, 0x11
- bl sub_81C25A4
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C286C
-
- thumb_func_start sub_81C2AFC
-sub_81C2AFC: @ 81C2AFC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- movs r0, 0
- bl ClearWindowTilemap
- movs r0, 0x1
- bl ClearWindowTilemap
- movs r0, 0x2
- bl ClearWindowTilemap
- movs r0, 0x3
- bl ClearWindowTilemap
- cmp r4, 0x1
- beq _081C2B66
- cmp r4, 0x1
- bgt _081C2B2A
- cmp r4, 0
- beq _081C2B34
- b _081C2C06
-_081C2B2A:
- cmp r5, 0x2
- beq _081C2B80
- cmp r5, 0x3
- beq _081C2BC4
- b _081C2C06
-_081C2B34:
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x4
- bl PutWindowTilemap
- bl sub_81A6BF4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C2B58
- bl sub_81B9E94
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C2B5E
-_081C2B58:
- movs r0, 0x8
- bl PutWindowTilemap
-_081C2B5E:
- movs r0, 0x9
- bl PutWindowTilemap
- b _081C2C06
-_081C2B66:
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0xA
- bl PutWindowTilemap
- movs r0, 0xB
- bl PutWindowTilemap
- movs r0, 0xC
- bl PutWindowTilemap
- b _081C2C06
-_081C2B80:
- movs r0, 0x2
- bl PutWindowTilemap
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040bc
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C2BBC
- adds r2, 0x8
- adds r0, r1, r2
- ldr r0, [r0]
- ldr r1, =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 11
- cmp r0, r1
- beq _081C2C06
- movs r0, 0xE
- bl PutWindowTilemap
- b _081C2C06
- .pool
-_081C2BBC:
- movs r0, 0x5
- bl PutWindowTilemap
- b _081C2C06
-_081C2BC4:
- movs r0, 0x3
- bl PutWindowTilemap
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040bc
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C2C00
- adds r2, 0x8
- adds r0, r1, r2
- ldr r0, [r0]
- ldr r1, =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 11
- cmp r0, r1
- beq _081C2C06
- movs r0, 0xF
- bl PutWindowTilemap
- b _081C2C06
- .pool
-_081C2C00:
- movs r0, 0x5
- bl PutWindowTilemap
-_081C2C06:
- movs r4, 0
- ldr r5, =gUnknown_0203CF1C
-_081C2C0A:
- ldr r0, [r5]
- ldr r1, =0x000040cb
- adds r0, r1
- adds r0, r4
- ldrb r0, [r0]
- bl PutWindowTilemap
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _081C2C0A
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2AFC
-
- thumb_func_start sub_81C2C38
-sub_81C2C38: @ 81C2C38
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0x1
- beq _081C2C84
- cmp r0, 0x1
- bgt _081C2C4E
- cmp r0, 0
- beq _081C2C58
- b _081C2D0E
-_081C2C4E:
- cmp r1, 0x2
- beq _081C2C98
- cmp r1, 0x3
- beq _081C2CD4
- b _081C2D0E
-_081C2C58:
- movs r0, 0x4
- bl ClearWindowTilemap
- bl sub_81A6BF4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C2C76
- bl sub_81B9E94
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C2C7C
-_081C2C76:
- movs r0, 0x8
- bl ClearWindowTilemap
-_081C2C7C:
- movs r0, 0x9
- bl ClearWindowTilemap
- b _081C2D0E
-_081C2C84:
- movs r0, 0xA
- bl ClearWindowTilemap
- movs r0, 0xB
- bl ClearWindowTilemap
- movs r0, 0xC
- bl ClearWindowTilemap
- b _081C2D0E
-_081C2C98:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040bc
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C2CCC
- adds r2, 0x8
- adds r0, r1, r2
- ldr r0, [r0]
- ldr r1, =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 11
- cmp r0, r1
- beq _081C2D0E
- movs r0, 0xE
- bl ClearWindowTilemap
- b _081C2D0E
- .pool
-_081C2CCC:
- movs r0, 0x5
- bl ClearWindowTilemap
- b _081C2D0E
-_081C2CD4:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040bc
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C2D08
- adds r2, 0x8
- adds r0, r1, r2
- ldr r0, [r0]
- ldr r1, =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 11
- cmp r0, r1
- beq _081C2D0E
- movs r0, 0xF
- bl ClearWindowTilemap
- b _081C2D0E
- .pool
-_081C2D08:
- movs r0, 0x5
- bl ClearWindowTilemap
-_081C2D0E:
- movs r4, 0
-_081C2D10:
- adds r0, r4, 0
- bl sub_81C2D68
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _081C2D10
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81C2C38
-
- thumb_func_start sub_81C2D2C
-sub_81C2D2C: @ 81C2D2C
- push {r4,lr}
- adds r3, r0, 0
- lsls r1, 24
- lsrs r2, r1, 24
- ldr r0, =gUnknown_0203CF1C
- ldr r4, =0x000040cb
- adds r1, r2, r4
- ldr r0, [r0]
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0xFF
- bne _081C2D56
- lsls r0, r2, 3
- adds r0, r3, r0
- bl AddWindow
- strb r0, [r4]
- ldrb r0, [r4]
- movs r1, 0
- bl FillWindowPixelBuffer
-_081C2D56:
- ldrb r0, [r4]
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81C2D2C
-
- thumb_func_start sub_81C2D68
-sub_81C2D68: @ 81C2D68
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_0203CF1C
- ldr r2, =0x000040cb
- adds r0, r2
- ldr r1, [r1]
- adds r4, r1, r0
- ldrb r0, [r4]
- cmp r0, 0xFF
- beq _081C2D8C
- bl ClearWindowTilemap
- ldrb r0, [r4]
- bl RemoveWindow
- movs r0, 0xFF
- strb r0, [r4]
-_081C2D8C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2D68
-
- thumb_func_start sub_81C2D9C
-sub_81C2D9C: @ 81C2D9C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
-_081C2DA4:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040cb
- adds r0, r1
- adds r1, r0, r4
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _081C2DBA
- movs r1, 0
- bl FillWindowPixelBuffer
-_081C2DBA:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x7
- bls _081C2DA4
- ldr r0, =gUnknown_0861CE54
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl _call_via_r0
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2D9C
-
- thumb_func_start sub_81C2DE4
-sub_81C2DE4: @ 81C2DE4
- push {lr}
- lsls r0, 24
- ldr r1, =gUnknown_0861CE64
- lsrs r0, 22
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x10
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2DE4
-
- thumb_func_start sub_81C2E00
-sub_81C2E00: @ 81C2E00
- push {lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0x74
- ldrb r0, [r0]
- cmp r0, 0
- beq _081C2E24
- bl sub_81C335C
- bl sub_81C33CC
- bl sub_81C3428
- bl sub_81C349C
- b _081C2E3C
- .pool
-_081C2E24:
- bl sub_81C2EC4
- bl sub_81C2F5C
- bl sub_81C2FD8
- bl sub_81C302C
- bl sub_81C307C
- bl sub_81C3194
-_081C2E3C:
- pop {r0}
- bx r0
- thumb_func_end sub_81C2E00
-
- thumb_func_start sub_81C2E40
-sub_81C2E40: @ 81C2E40
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldrh r0, [r4]
- subs r0, 0x1
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x6
- bhi _081C2EB8
- lsls r0, 2
- ldr r1, =_081C2E70
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081C2E70:
- .4byte _081C2E8C
- .4byte _081C2E92
- .4byte _081C2E98
- .4byte _081C2E9E
- .4byte _081C2EA4
- .4byte _081C2EAA
- .4byte _081C2EB0
-_081C2E8C:
- bl sub_81C2EC4
- b _081C2EB8
-_081C2E92:
- bl sub_81C2F5C
- b _081C2EB8
-_081C2E98:
- bl sub_81C2FD8
- b _081C2EB8
-_081C2E9E:
- bl sub_81C302C
- b _081C2EB8
-_081C2EA4:
- bl sub_81C307C
- b _081C2EB8
-_081C2EAA:
- bl sub_81C3194
- b _081C2EB8
-_081C2EB0:
- adds r0, r2, 0
- bl DestroyTask
- b _081C2EBE
-_081C2EB8:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_081C2EBE:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81C2E40
-
- thumb_func_start sub_81C2EC4
-sub_81C2EC4: @ 81C2EC4
- push {r4-r6,lr}
- sub sp, 0x8
- bl sub_81A6BF4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C2F54
- bl sub_81B9E94
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C2F54
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gText_OTSlash
- movs r6, 0
- str r6, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0
- bl GetStringWidth
- adds r2, r0, 0
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xA2
- ldrb r0, [r0]
- cmp r0, 0
- bne _081C2F40
- adds r1, 0xA6
- lsls r2, 24
- lsrs r2, 24
- str r6, [sp]
- movs r0, 0x5
- str r0, [sp, 0x4]
- adds r0, r5, 0
- movs r3, 0x1
- bl sub_81C25A4
- b _081C2F54
- .pool
-_081C2F40:
- adds r1, 0xA6
- lsls r2, 24
- lsrs r2, 24
- str r6, [sp]
- movs r0, 0x6
- str r0, [sp, 0x4]
- adds r0, r5, 0
- movs r3, 0x1
- bl sub_81C25A4
-_081C2F54:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81C2EC4
-
- thumb_func_start sub_81C2F5C
-sub_81C2F5C: @ 81C2F5C
- push {r4,r5,lr}
- sub sp, 0x8
- bl sub_81A6BF4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C2FC0
- bl sub_81B9E94
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C2FC0
- ldr r5, =gStringVar1
- ldr r1, =gText_UnkCtrlF907F908
- adds r0, r5, 0
- bl StringCopy
- ldr r1, =gUnknown_0203CF1C
- ldr r1, [r1]
- adds r1, 0xB8
- ldrh r1, [r1]
- movs r2, 0x2
- movs r3, 0x5
- bl ConvertIntToDecimalStringN
- movs r0, 0x1
- adds r1, r5, 0
- movs r2, 0x38
- bl GetStringRightAlignXOffset
- adds r4, r0, 0
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0x1
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0
- str r1, [sp]
- movs r1, 0x1
- str r1, [sp, 0x4]
- adds r1, r5, 0
- adds r2, r4, 0
- movs r3, 0x1
- bl sub_81C25A4
-_081C2FC0:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2F5C
-
- thumb_func_start sub_81C2FD8
-sub_81C2FD8: @ 81C2FD8
- push {r4,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x70
- ldrh r0, [r0]
- adds r1, 0x78
- ldrb r1, [r1]
- bl GetAbilityBySpecies
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0x2
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0xD
- muls r1, r4
- ldr r2, =gAbilityNames
- adds r1, r2
- movs r2, 0
- str r2, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C2FD8
-
- thumb_func_start sub_81C302C
-sub_81C302C: @ 81C302C
- push {r4,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x70
- ldrh r0, [r0]
- adds r1, 0x78
- ldrb r1, [r1]
- bl GetAbilityBySpecies
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0x2
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gAbilityDescriptionPointers
- lsls r4, 2
- adds r4, r1
- ldr r1, [r4]
- movs r2, 0
- str r2, [sp]
- str r2, [sp, 0x4]
- movs r3, 0x11
- bl sub_81C25A4
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C302C
-
- thumb_func_start sub_81C307C
-sub_81C307C: @ 81C307C
- push {r4-r6,lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r4, r0, 0
- adds r4, 0x70
- bl sub_81AFBF0
- ldr r1, =gUnknown_0861CE74
- movs r0, 0
- bl sub_81AFC0C
- ldr r1, =gUnknown_0861CE7B
- movs r0, 0x1
- bl sub_81AFC0C
- bl sub_81C31C0
- bl sub_81A6BF4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C30C2
- bl sub_81B9E94
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081C30C2
- bl sub_81C3304
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C30E0
-_081C30C2:
- ldr r0, =gStringVar4
- ldr r1, =gText_XNature
- bl sub_81AFC28
- b _081C3182
- .pool
-_081C30E0:
- movs r0, 0x20
- bl Alloc
- adds r6, r0, 0
- movs r0, 0x20
- bl Alloc
- adds r5, r0, 0
- adds r0, r6, 0
- bl sub_81C31F0
- ldrb r0, [r4, 0x9]
- cmp r0, 0xD4
- bhi _081C310C
- adds r1, r0, 0
- adds r0, r5, 0
- bl sub_8124610
- movs r0, 0x4
- adds r1, r5, 0
- bl sub_81AFC0C
-_081C310C:
- bl sub_81C3220
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C3148
- ldrb r0, [r4, 0xA]
- cmp r0, 0
- bne _081C3134
- ldrb r0, [r4, 0x9]
- ldr r1, =gText_XNatureHatchedAtYZ
- cmp r0, 0xD4
- bls _081C3170
- ldr r1, =gText_XNatureHatchedSomewhereAt
- b _081C3170
- .pool
-_081C3134:
- ldrb r0, [r4, 0x9]
- ldr r1, =gText_XNatureMetAtYZ
- cmp r0, 0xD4
- bls _081C3170
- ldr r1, =gText_XNatureMetSomewhereAt
- b _081C3170
- .pool
-_081C3148:
- ldrb r0, [r4, 0x9]
- cmp r0, 0xFF
- bne _081C3158
- ldr r1, =gText_XNatureFatefulEncounter
- b _081C3170
- .pool
-_081C3158:
- cmp r0, 0xFE
- beq _081C316E
- bl sub_81C32BC
- lsls r0, 24
- cmp r0, 0
- beq _081C316E
- ldrb r0, [r4, 0x9]
- ldr r1, =gText_XNatureProbablyMetAt
- cmp r0, 0xD4
- bls _081C3170
-_081C316E:
- ldr r1, =gText_XNatureObtainedInTrade
-_081C3170:
- ldr r0, =gStringVar4
- bl sub_81AFC28
- adds r0, r6, 0
- bl Free
- adds r0, r5, 0
- bl Free
-_081C3182:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C307C
-
- thumb_func_start sub_81C3194
-sub_81C3194: @ 81C3194
- push {lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0x3
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gStringVar4
- movs r2, 0
- str r2, [sp]
- str r2, [sp, 0x4]
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3194
-
- thumb_func_start sub_81C31C0
-sub_81C31C0: @ 81C31C0
- push {lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =gNatureNamePointers
- adds r0, 0xA3
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x2
- bl sub_81AFC0C
- ldr r1, =gText_EmptyString5
- movs r0, 0x5
- bl sub_81AFC0C
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C31C0
-
- thumb_func_start sub_81C31F0
-sub_81C31F0: @ 81C31F0
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0x7A
- ldrb r1, [r0]
- cmp r1, 0
- bne _081C3202
- movs r1, 0x5
-_081C3202:
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- movs r0, 0x3
- adds r1, r4, 0
- bl sub_81AFC0C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C31F0
-
- thumb_func_start sub_81C3220
-sub_81C3220: @ 81C3220
- push {r4-r6,lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r6, r0, 0
- adds r6, 0x70
- ldr r1, [r0]
- ldr r0, =gEnemyParty
- cmp r1, r0
- bne _081C326C
- bl GetMultiplayerId
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gLinkPlayers
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r0, r2, 0x4
- adds r0, r1, r0
- ldrh r4, [r0]
- adds r0, r1, r2
- ldrb r5, [r0, 0x13]
- ldr r0, =gStringVar1
- adds r2, 0x8
- adds r1, r2
- bl StringCopy
- b _081C3282
- .pool
-_081C326C:
- bl sub_80F0020
- adds r4, r0, 0
- ldr r0, =0x0000ffff
- ands r4, r0
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- ldrb r5, [r1, 0x8]
- ldr r0, =gStringVar1
- bl StringCopy
-_081C3282:
- adds r0, r6, 0
- adds r0, 0x32
- ldrb r0, [r0]
- cmp r5, r0
- bne _081C32A4
- ldr r0, [r6, 0x48]
- ldr r1, =0x0000ffff
- ands r0, r1
- cmp r4, r0
- bne _081C32A4
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x36
- bl StringCompareWithoutExtCtrlCodes
- cmp r0, 0
- beq _081C32B4
-_081C32A4:
- movs r0, 0
- b _081C32B6
- .pool
-_081C32B4:
- movs r0, 0x1
-_081C32B6:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_81C3220
-
- thumb_func_start sub_81C32BC
-sub_81C32BC: @ 81C32BC
- push {lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0x70
- ldrb r0, [r0, 0xB]
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _081C32D8
- movs r0, 0
- b _081C32DA
- .pool
-_081C32D8:
- movs r0, 0x1
-_081C32DA:
- pop {r1}
- bx r1
- thumb_func_end sub_81C32BC
-
- thumb_func_start sub_81C32E0
-sub_81C32E0: @ 81C32E0
- push {lr}
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r0, 0x70
- ldrb r0, [r0, 0xB]
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bls _081C32FC
- movs r0, 0
- b _081C32FE
- .pool
-_081C32FC:
- movs r0, 0x1
-_081C32FE:
- pop {r1}
- bx r1
- thumb_func_end sub_81C32E0
-
- thumb_func_start sub_81C3304
-sub_81C3304: @ 81C3304
- push {lr}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _081C3354
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081C3354
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040be
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _081C333A
- cmp r0, 0x4
- beq _081C333A
- cmp r0, 0x5
- bne _081C3354
-_081C333A:
- movs r0, 0x1
- b _081C3356
- .pool
-_081C3354:
- movs r0, 0
-_081C3356:
- pop {r1}
- bx r1
- thumb_func_end sub_81C3304
-
- thumb_func_start sub_81C335C
-sub_81C335C: @ 81C335C
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x8
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0
- bl sub_81C2D2C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gText_OTSlash
- mov r8, r0
- movs r0, 0x1
- mov r1, r8
- movs r2, 0
- bl GetStringWidth
- adds r5, r0, 0
- movs r0, 0
- mov r9, r0
- str r0, [sp]
- movs r6, 0x1
- str r6, [sp, 0x4]
- adds r0, r4, 0
- mov r1, r8
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gText_FiveMarks
- lsls r5, 24
- lsrs r5, 24
- mov r0, r9
- str r0, [sp]
- str r6, [sp, 0x4]
- adds r0, r4, 0
- adds r2, r5, 0
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C335C
-
- thumb_func_start sub_81C33CC
-sub_81C33CC: @ 81C33CC
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r5, =gStringVar1
- ldr r1, =gText_UnkCtrlF907F908
- adds r0, r5, 0
- bl StringCopy
- ldr r1, =gText_FiveMarks
- adds r0, r5, 0
- bl StringAppend
- movs r0, 0x1
- adds r1, r5, 0
- movs r2, 0x38
- bl GetStringRightAlignXOffset
- adds r4, r0, 0
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0x1
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0
- str r1, [sp]
- movs r1, 0x1
- str r1, [sp, 0x4]
- adds r1, r5, 0
- adds r2, r4, 0
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C33CC
-
- thumb_func_start sub_81C3428
-sub_81C3428: @ 81C3428
- push {r4,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0x70
- adds r0, 0xA5
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _081C3448
- ldr r4, =gText_EggWillTakeALongTime
- b _081C346C
- .pool
-_081C3448:
- ldrh r0, [r1, 0x30]
- cmp r0, 0x5
- bhi _081C3458
- ldr r4, =gText_EggAboutToHatch
- b _081C346C
- .pool
-_081C3458:
- cmp r0, 0xA
- bhi _081C3464
- ldr r4, =gText_EggWillHatchSoon
- b _081C346C
- .pool
-_081C3464:
- ldr r4, =gText_EggWillTakeALongTime
- cmp r0, 0x28
- bhi _081C346C
- ldr r4, =gText_EggWillTakeSomeTime
-_081C346C:
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0x2
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- str r1, [sp]
- str r1, [sp, 0x4]
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3428
-
- thumb_func_start sub_81C349C
-sub_81C349C: @ 81C349C
- push {r4,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r4, r0, 0
- adds r4, 0x70
- adds r0, 0xA5
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _081C3500
- ldrb r0, [r4, 0x9]
- cmp r0, 0xFF
- bne _081C34C4
- ldr r4, =gText_PeculiarEggNicePlace
- b _081C3502
- .pool
-_081C34C4:
- bl sub_81C32BC
- lsls r0, 24
- cmp r0, 0
- beq _081C34D8
- bl sub_81C3220
- lsls r0, 24
- cmp r0, 0
- bne _081C34E0
-_081C34D8:
- ldr r4, =gText_PeculiarEggTrade
- b _081C3502
- .pool
-_081C34E0:
- ldrb r0, [r4, 0x9]
- cmp r0, 0xFD
- bne _081C3500
- bl sub_81C32E0
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gText_EggFromTraveler
- cmp r0, 0x1
- bne _081C3502
- ldr r4, =gText_EggFromHotSprings
- b _081C3502
- .pool
-_081C3500:
- ldr r4, =gText_OddEggFoundByCouple
-_081C3502:
- ldr r0, =gUnknown_0861CCCC
- movs r1, 0x3
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- str r1, [sp]
- str r1, [sp, 0x4]
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C349C
-
- thumb_func_start sub_81C3530
-sub_81C3530: @ 81C3530
- push {lr}
- bl sub_81C35E4
- bl sub_81C3690
- bl sub_81C3710
- bl sub_81C37D8
- bl sub_81C3808
- bl sub_81C3890
- bl sub_81C38C0
- pop {r0}
- bx r0
- thumb_func_end sub_81C3530
-
- thumb_func_start sub_81C3554
-sub_81C3554: @ 81C3554
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldrh r0, [r4]
- subs r0, 0x1
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- bhi _081C35D6
- lsls r0, 2
- ldr r1, =_081C3584
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081C3584:
- .4byte _081C35A4
- .4byte _081C35AA
- .4byte _081C35B0
- .4byte _081C35B6
- .4byte _081C35BC
- .4byte _081C35C2
- .4byte _081C35C8
- .4byte _081C35CE
-_081C35A4:
- bl sub_81C35E4
- b _081C35D6
-_081C35AA:
- bl sub_81C3690
- b _081C35D6
-_081C35B0:
- bl sub_81C3710
- b _081C35D6
-_081C35B6:
- bl sub_81C37D8
- b _081C35D6
-_081C35BC:
- bl sub_81C3808
- b _081C35D6
-_081C35C2:
- bl sub_81C3890
- b _081C35D6
-_081C35C8:
- bl sub_81C38C0
- b _081C35D6
-_081C35CE:
- adds r0, r2, 0
- bl DestroyTask
- b _081C35DC
-_081C35D6:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_081C35DC:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81C3554
-
- thumb_func_start sub_81C35E4
-sub_81C35E4: @ 81C35E4
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- adds r0, 0x9E
- ldrh r0, [r0]
- cmp r0, 0xAF
- bne _081C3628
- bl sub_81B1250
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081C3628
- ldr r0, [r4]
- ldr r1, =0x000040be
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _081C3614
- cmp r0, 0x4
- beq _081C3614
- cmp r0, 0x5
- bne _081C3628
-_081C3614:
- movs r0, 0xAF
- bl ItemId_GetItem
- adds r5, r0, 0
- b _081C3650
- .pool
-_081C3628:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0x9E
- ldrh r0, [r1]
- cmp r0, 0
- bne _081C3644
- ldr r5, =gText_None
- b _081C3650
- .pool
-_081C3644:
- ldrh r0, [r1]
- ldr r4, =gStringVar1
- adds r1, r4, 0
- bl CopyItemName
- adds r5, r4, 0
-_081C3650:
- movs r0, 0x1
- adds r1, r5, 0
- movs r2, 0x48
- bl GetStringCenterAlignXOffset
- adds r4, r0, 0
- adds r4, 0x6
- ldr r0, =gUnknown_0861CCEC
- movs r1, 0
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0
- str r1, [sp]
- str r1, [sp, 0x4]
- adds r1, r5, 0
- adds r2, r4, 0
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C35E4
-
- thumb_func_start sub_81C3690
-sub_81C3690: @ 81C3690
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0x76
- ldrb r0, [r1]
- cmp r0, 0
- bne _081C36B0
- ldr r5, =gText_None
- b _081C36C8
- .pool
-_081C36B0:
- ldr r0, =gStringVar1
- ldrb r1, [r1]
- movs r2, 0x1
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar4
- ldr r1, =gText_RibbonsVar1
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r5, r4, 0
-_081C36C8:
- movs r0, 0x1
- adds r1, r5, 0
- movs r2, 0x46
- bl GetStringCenterAlignXOffset
- adds r4, r0, 0
- adds r4, 0x6
- ldr r0, =gUnknown_0861CCEC
- movs r1, 0x1
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0
- str r1, [sp]
- str r1, [sp, 0x4]
- adds r1, r5, 0
- adds r2, r4, 0
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3690
-
- thumb_func_start sub_81C3710
-sub_81C3710: @ 81C3710
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- movs r0, 0x8
- bl Alloc
- mov r9, r0
- movs r0, 0x8
- bl Alloc
- mov r8, r0
- movs r0, 0x8
- bl Alloc
- adds r6, r0, 0
- movs r0, 0x8
- bl Alloc
- adds r5, r0, 0
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- adds r0, 0x90
- ldrh r1, [r0]
- mov r0, r9
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r0, [r4]
- adds r0, 0x92
- ldrh r1, [r0]
- mov r0, r8
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r0, [r4]
- adds r0, 0x94
- ldrh r1, [r0]
- adds r0, r6, 0
- movs r2, 0x1
- movs r3, 0x7
- bl ConvertIntToDecimalStringN
- ldr r0, [r4]
- adds r0, 0x96
- ldrh r1, [r0]
- adds r0, r5, 0
- movs r2, 0x1
- movs r3, 0x7
- bl ConvertIntToDecimalStringN
- bl sub_81AFBF0
- movs r0, 0
- mov r1, r9
- bl sub_81AFC0C
- movs r0, 0x1
- mov r1, r8
- bl sub_81AFC0C
- movs r0, 0x2
- adds r1, r6, 0
- bl sub_81AFC0C
- movs r0, 0x3
- adds r1, r5, 0
- bl sub_81AFC0C
- ldr r0, =gStringVar4
- ldr r1, =gUnknown_0861CE82
- bl sub_81AFC28
- mov r0, r9
- bl Free
- mov r0, r8
- bl Free
- adds r0, r6, 0
- bl Free
- adds r0, r5, 0
- bl Free
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3710
-
- thumb_func_start sub_81C37D8
-sub_81C37D8: @ 81C37D8
- push {lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0861CCEC
- movs r1, 0x2
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gStringVar4
- movs r2, 0
- str r2, [sp]
- str r2, [sp, 0x4]
- movs r2, 0x4
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C37D8
-
- thumb_func_start sub_81C3808
-sub_81C3808: @ 81C3808
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- ldr r0, =gStringVar1
- mov r8, r0
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- adds r0, 0x98
- ldrh r1, [r0]
- mov r0, r8
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r6, =gStringVar2
- ldr r0, [r4]
- adds r0, 0x9A
- ldrh r1, [r0]
- adds r0, r6, 0
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r5, =gStringVar3
- ldr r0, [r4]
- adds r0, 0x9C
- ldrh r1, [r0]
- adds r0, r5, 0
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- bl sub_81AFBF0
- movs r0, 0
- mov r1, r8
- bl sub_81AFC0C
- movs r0, 0x1
- adds r1, r6, 0
- bl sub_81AFC0C
- movs r0, 0x2
- adds r1, r5, 0
- bl sub_81AFC0C
- ldr r0, =gStringVar4
- ldr r1, =gUnknown_0861CE8E
- bl sub_81AFC28
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3808
-
- thumb_func_start sub_81C3890
-sub_81C3890: @ 81C3890
- push {lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0861CCEC
- movs r1, 0x3
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gStringVar4
- movs r2, 0
- str r2, [sp]
- str r2, [sp, 0x4]
- movs r2, 0x2
- movs r3, 0x1
- bl sub_81C25A4
- add sp, 0x8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3890
-
- thumb_func_start sub_81C38C0
-sub_81C38C0: @ 81C38C0
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- adds r5, r0, 0
- adds r5, 0x70
- ldr r0, =gUnknown_0861CCEC
- movs r1, 0x4
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r4, =gStringVar1
- ldr r1, [r5, 0x10]
- adds r0, r4, 0
- movs r2, 0x1
- movs r3, 0x7
- bl ConvertIntToDecimalStringN
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x2A
- bl GetStringRightAlignXOffset
- adds r0, 0x2
- lsls r2, r0, 24
- lsrs r2, 24
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- adds r0, r6, 0
- adds r1, r4, 0
- movs r3, 0x1
- bl sub_81C25A4
- ldrb r0, [r5, 0x5]
- cmp r0, 0x63
- bhi _081C3948
- ldr r4, =gExperienceTables
- adds r1, r0, 0
- adds r1, 0x1
- lsls r1, 2
- ldr r3, =gBaseStats
- ldrh r2, [r5]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r3
- ldrb r2, [r0, 0x13]
- movs r0, 0xCA
- lsls r0, 1
- muls r0, r2
- adds r1, r0
- adds r1, r4
- ldr r1, [r1]
- ldr r0, [r5, 0x10]
- subs r1, r0
- b _081C394A
- .pool
-_081C3948:
- movs r1, 0
-_081C394A:
- ldr r4, =gStringVar1
- adds r0, r4, 0
- movs r2, 0x1
- movs r3, 0x6
- bl ConvertIntToDecimalStringN
- movs r0, 0x1
- adds r1, r4, 0
- movs r2, 0x2A
- bl GetStringRightAlignXOffset
- adds r0, 0x2
- lsls r2, r0, 24
- lsrs r2, 24
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- adds r0, r6, 0
- adds r1, r4, 0
- movs r3, 0x11
- bl sub_81C25A4
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C38C0
-
- thumb_func_start sub_81C3984
-sub_81C3984: @ 81C3984
- push {r4,lr}
- movs r0, 0
- bl sub_81C3B08
- movs r0, 0x1
- bl sub_81C3B08
- movs r0, 0x2
- bl sub_81C3B08
- movs r0, 0x3
- bl sub_81C3B08
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- ldr r1, =0x000040bc
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C39EA
- bl sub_81C3F44
- ldr r1, [r4]
- ldr r0, =0x000040c6
- adds r2, r1, r0
- ldrb r0, [r2]
- cmp r0, 0x4
- bne _081C39DC
- ldr r0, =0x000040c4
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _081C39EA
- bl sub_81C3E9C
- b _081C39EA
- .pool
-_081C39DC:
- ldrb r0, [r2]
- lsls r0, 1
- adds r1, 0x84
- adds r1, r0
- ldrh r0, [r1]
- bl sub_81C3E9C
-_081C39EA:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81C3984
-
- thumb_func_start sub_81C39F0
-sub_81C39F0: @ 81C39F0
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldrh r0, [r4]
- subs r0, 0x1
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- bhi _081C3AFC
- lsls r0, 2
- ldr r1, =_081C3A20
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081C3A20:
- .4byte _081C3A40
- .4byte _081C3A48
- .4byte _081C3A50
- .4byte _081C3A58
- .4byte _081C3A60
- .4byte _081C3A7C
- .4byte _081C3ABE
- .4byte _081C3AF4
-_081C3A40:
- movs r0, 0
- bl sub_81C3B08
- b _081C3AFC
-_081C3A48:
- movs r0, 0x1
- bl sub_81C3B08
- b _081C3AFC
-_081C3A50:
- movs r0, 0x2
- bl sub_81C3B08
- b _081C3AFC
-_081C3A58:
- movs r0, 0x3
- bl sub_81C3B08
- b _081C3AFC
-_081C3A60:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040bc
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C3AFC
- bl sub_81C3F44
- b _081C3AFC
- .pool
-_081C3A7C:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040bc
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C3AFC
- ldr r0, =0x000040c6
- adds r2, r1, r0
- ldrb r0, [r2]
- cmp r0, 0x4
- bne _081C3AB0
- ldr r2, =0x000040c4
- adds r0, r1, r2
- ldrh r0, [r0]
- strh r0, [r4, 0x2]
- b _081C3AFC
- .pool
-_081C3AB0:
- ldrb r0, [r2]
- lsls r0, 1
- adds r1, 0x84
- adds r1, r0
- ldrh r0, [r1]
- strh r0, [r4, 0x2]
- b _081C3AFC
-_081C3ABE:
- ldr r0, =gUnknown_0203CF1C
- ldr r1, [r0]
- ldr r2, =0x000040bc
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C3AFC
- adds r2, 0x8
- adds r0, r1, r2
- ldr r0, [r0]
- ldr r1, =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 11
- cmp r0, r1
- beq _081C3AFC
- ldrh r0, [r4, 0x2]
- bl sub_81C3E9C
- b _081C3AFC
- .pool
-_081C3AF4:
- adds r0, r2, 0
- bl DestroyTask
- b _081C3B02
-_081C3AFC:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_081C3B02:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81C39F0
-
- thumb_func_start sub_81C3B08
-sub_81C3B08: @ 81C3B08
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- mov r10, r0
- ldr r4, =gUnknown_0861CD14
- adds r0, r4, 0
- movs r1, 0
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81C2D2C
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
- lsls r1, r7, 1
- mov r0, r10
- adds r0, 0x84
- adds r0, r1
- ldrh r5, [r0]
- cmp r5, 0
- beq _081C3C00
- mov r0, r10
- adds r0, 0xA4
- ldrb r1, [r0]
- adds r0, r5, 0
- adds r2, r7, 0
- bl CalculatePPWithBonus
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- movs r0, 0xD
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gMoveNames
- adds r1, r0
- lsls r0, r7, 4
- mov r9, r0
- mov r3, r9
- adds r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- mov r0, r8
- movs r2, 0
- bl sub_81C25A4
- ldr r0, =gStringVar1
- mov r8, r0
- mov r5, r10
- adds r5, 0x8C
- adds r5, r7
- ldrb r1, [r5]
- movs r2, 0x1
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar2
- adds r0, r4, 0
- adds r1, r6, 0
- movs r2, 0x1
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- bl sub_81AFBF0
- movs r0, 0
- mov r1, r8
- bl sub_81AFC0C
- movs r0, 0x1
- adds r1, r4, 0
- bl sub_81AFC0C
- ldr r4, =gStringVar4
- ldr r1, =gUnknown_0861CE97
- adds r0, r4, 0
- bl sub_81AFC28
- adds r7, r4, 0
- ldrb r0, [r5]
- adds r1, r6, 0
- bl sub_814FC20
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- adds r5, 0x9
- movs r0, 0x1
- adds r1, r7, 0
- movs r2, 0x2C
- bl GetStringRightAlignXOffset
- mov r4, r9
- b _081C3C26
- .pool
-_081C3C00:
- ldr r1, =gText_OneDash
- lsls r4, r7, 4
- adds r3, r4, 0x1
- lsls r3, 24
- lsrs r3, 24
- str r5, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- mov r0, r8
- movs r2, 0
- bl sub_81C25A4
- ldr r7, =gText_TwoDashes
- movs r5, 0xC
- movs r0, 0x1
- adds r1, r7, 0
- movs r2, 0x2C
- bl GetStringCenterAlignXOffset
-_081C3C26:
- lsls r2, r0, 24
- lsrs r2, 24
- adds r3, r4, 0x1
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0
- str r0, [sp]
- lsls r0, r5, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- ldr r0, [sp, 0x8]
- adds r1, r7, 0
- bl sub_81C25A4
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3B08
-
- thumb_func_start sub_81C3C5C
-sub_81C3C5C: @ 81C3C5C
- push {r4-r6,lr}
- sub sp, 0x8
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- beq _081C3CFC
- movs r0, 0x13
- str r0, [sp]
- movs r0, 0x20
- str r0, [sp, 0x4]
- movs r0, 0xE
- movs r1, 0
- movs r2, 0x35
- movs r3, 0
- bl FillWindowPixelRect
- ldr r2, =gBattleMoves
- lsls r1, r5, 1
- adds r0, r1, r5
- lsls r0, 2
- adds r2, r0, r2
- ldrb r0, [r2, 0x1]
- adds r6, r1, 0
- cmp r0, 0x1
- bhi _081C3C9C
- ldr r1, =gText_ThreeDashes
- b _081C3CAC
- .pool
-_081C3C9C:
- ldr r4, =gStringVar1
- ldrb r1, [r2, 0x1]
- adds r0, r4, 0
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r1, r4, 0
-_081C3CAC:
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0xE
- movs r2, 0x35
- movs r3, 0x1
- bl sub_81C25A4
- ldr r1, =gBattleMoves
- adds r0, r6, r5
- lsls r0, 2
- adds r1, r0, r1
- ldrb r0, [r1, 0x3]
- cmp r0, 0
- bne _081C3CDC
- ldr r1, =gText_ThreeDashes
- b _081C3CEC
- .pool
-_081C3CDC:
- ldr r4, =gStringVar1
- ldrb r1, [r1, 0x3]
- adds r0, r4, 0
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r1, r4, 0
-_081C3CEC:
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0xE
- movs r2, 0x35
- movs r3, 0x11
- bl sub_81C25A4
-_081C3CFC:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3C5C
-
- thumb_func_start sub_81C3D08
-sub_81C3D08: @ 81C3D08
- push {r4,lr}
- movs r0, 0
- bl sub_81C3B08
- movs r0, 0x1
- bl sub_81C3B08
- movs r0, 0x2
- bl sub_81C3B08
- movs r0, 0x3
- bl sub_81C3B08
- ldr r4, =gUnknown_0203CF1C
- ldr r0, [r4]
- ldr r1, =0x000040bc
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C3D40
- bl sub_81C3F44
- ldr r0, [r4]
- ldr r1, =0x000040c6
- adds r0, r1
- ldrb r0, [r0]
- bl sub_81C3E2C
-_081C3D40:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81C3D08
-
- thumb_func_start sub_81C3D54
-sub_81C3D54: @ 81C3D54
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldrh r0, [r4]
- subs r0, 0x1
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x6
- bhi _081C3E20
- lsls r0, 2
- ldr r1, =_081C3D84
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081C3D84:
- .4byte _081C3DA0
- .4byte _081C3DA8
- .4byte _081C3DB0
- .4byte _081C3DB8
- .4byte _081C3DC0
- .4byte _081C3DDC
- .4byte _081C3E18
-_081C3DA0:
- movs r0, 0
- bl sub_81C3B08
- b _081C3E20
-_081C3DA8:
- movs r0, 0x1
- bl sub_81C3B08
- b _081C3E20
-_081C3DB0:
- movs r0, 0x2
- bl sub_81C3B08
- b _081C3E20
-_081C3DB8:
- movs r0, 0x3
- bl sub_81C3B08
- b _081C3E20
-_081C3DC0:
- ldr r0, =gUnknown_0203CF1C
- ldr r0, [r0]
- ldr r1, =0x000040bc
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C3E20
- bl sub_81C3F44
- b _081C3E20
- .pool
-_081C3DDC:
- ldr r0, =gUnknown_0203CF1C
- ldr r2, [r0]
- ldr r1, =0x000040bc
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _081C3E20
- adds r1, 0x8
- adds r0, r2, r1
- ldr r0, [r0]
- ldr r1, =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 11
- cmp r0, r1
- beq _081C3E20
- ldr r1, =0x000040c6
- adds r0, r2, r1
- ldrb r0, [r0]
- bl sub_81C3E2C
- b _081C3E20
- .pool
-_081C3E18:
- adds r0, r2, 0
- bl DestroyTask
- b _081C3E26
-_081C3E20:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_081C3E26:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81C3D54
-
thumb_func_start sub_81C3E2C
sub_81C3E2C: @ 81C3E2C
push {r4,lr}
@@ -8807,7 +981,7 @@ _081C4620:
lsls r0, r2, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x8]
b _081C46D6
@@ -8817,12 +991,12 @@ _081C4668:
lsls r0, r2, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
b _081C46B0
.pool
_081C4680:
- ldr r0, =gBattleSpritesGfx
+ ldr r0, =gMonSpritesGfxPtr
ldr r3, [r0]
adds r4, r0, 0
cmp r3, 0
diff --git a/asm/pokenav.s b/asm/pokenav.s
index 58e60c51d..0c7a80742 100755
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -13136,7 +13136,7 @@ _081CD8E4:
ldr r2, =0x00006325
adds r4, r2
adds r0, r3, 0
- bl sav3_get_box_name
+ bl GetBoxNamePtr
adds r1, r0, 0
adds r0, r4, 0
_081CD8F4:
@@ -24164,7 +24164,7 @@ _081D2F2C:
adds r4, r5, 0x5
lsls r0, r7, 24
lsrs r0, 24
- bl sav3_get_box_name
+ bl GetBoxNamePtr
adds r1, r0, 0
adds r0, r4, 0
_081D2F3A:
@@ -27356,7 +27356,7 @@ _081D4870:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8088E64
+ bl MetatileBehavior_IsPokeGrass
lsls r0, 24
lsrs r0, 24
_081D4888:
@@ -28252,7 +28252,7 @@ _081D4FB6:
lsls r0, 24
cmp r0, 0
beq _081D500C
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _081D4FE6
@@ -28280,7 +28280,7 @@ _081D4FEC:
strb r0, [r4]
b _081D500C
_081D4FF8:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _081D500C
@@ -28673,13 +28673,13 @@ _081D5374:
bl sub_80097E8
b _081D53C0
_081D537A:
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
cmp r0, 0
bne _081D5386
b _081D548A
_081D5386:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
movs r0, 0xF
strb r0, [r4, 0x8]
b _081D548A
@@ -28694,7 +28694,7 @@ _081D5390:
b _081D548A
.pool
_081D53A8:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _081D548A
diff --git a/asm/porthole.s b/asm/porthole.s
deleted file mode 100644
index 282f6f584..000000000
--- a/asm/porthole.s
+++ /dev/null
@@ -1,282 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80FB59C
-sub_80FB59C: @ 80FB59C
- push {r4-r6,lr}
- sub sp, 0xC
- mov r4, sp
- adds r4, 0x5
- mov r5, sp
- adds r5, 0x6
- add r6, sp, 0x8
- add r0, sp, 0x4
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl sub_8137FFC
- lsls r0, 24
- cmp r0, 0
- bne _080FB5DE
- add r0, sp, 0x4
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0
- ldrsb r1, [r4, r1]
- movs r2, 0x1
- negs r2, r2
- movs r3, 0
- ldrsb r3, [r5, r3]
- movs r4, 0
- ldrsb r4, [r6, r4]
- str r4, [sp]
- bl warp1_set
- movs r0, 0x1
- b _080FB5E0
-_080FB5DE:
- movs r0, 0
-_080FB5E0:
- add sp, 0xC
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80FB59C
-
- thumb_func_start sub_80FB5E8
-sub_80FB5E8: @ 80FB5E8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- ldr r0, =0x000040b4
- bl GetVarPointer
- adds r7, r0, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
- adds r6, r3, 0x4
- movs r0, 0
- ldrsh r2, [r4, r0]
- cmp r2, 0x1
- beq _080FB648
- cmp r2, 0x1
- bgt _080FB624
- cmp r2, 0
- beq _080FB62E
- b _080FB6E2
- .pool
-_080FB624:
- cmp r2, 0x2
- beq _080FB68A
- cmp r2, 0x3
- beq _080FB6C4
- b _080FB6E2
-_080FB62E:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080FB6E2
- strh r2, [r4, 0x2]
- movs r0, 0x2
- strh r0, [r4]
- b _080FB6E2
- .pool
-_080FB648:
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _080FB656
- strh r2, [r4, 0x2]
-_080FB656:
- ldrb r1, [r6, 0x1]
- ldrb r2, [r3, 0x4]
- movs r0, 0xFF
- bl sub_80D3340
- lsls r0, 24
- cmp r0, 0
- beq _080FB6E2
- movs r0, 0x1
- bl sub_8137FC0
- cmp r0, 0x1
- bne _080FB686
- ldrh r0, [r7]
- cmp r0, 0x2
- bne _080FB680
- movs r0, 0x9
- b _080FB682
- .pool
-_080FB680:
- movs r0, 0xA
-_080FB682:
- strh r0, [r7]
- b _080FB692
-_080FB686:
- movs r0, 0x2
- strh r0, [r4]
-_080FB68A:
- movs r1, 0x2
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080FB698
-_080FB692:
- movs r0, 0x3
- strh r0, [r4]
- b _080FB6E2
-_080FB698:
- ldrh r0, [r7]
- cmp r0, 0x2
- bne _080FB6AC
- ldrb r1, [r6, 0x1]
- ldrb r2, [r6]
- ldr r3, =gUnknown_0858E8AB
- b _080FB6B2
- .pool
-_080FB6AC:
- ldrb r1, [r6, 0x1]
- ldrb r2, [r6]
- ldr r3, =gUnknown_0858E8AD
-_080FB6B2:
- movs r0, 0xFF
- bl exec_movement
- movs r0, 0x1
- strh r0, [r4]
- b _080FB6E2
- .pool
-_080FB6C4:
- ldr r0, =0x00004001
- bl FlagReset
- movs r0, 0x80
- lsls r0, 7
- bl FlagReset
- movs r0, 0
- bl copy_saved_warp2_bank_and_enter_x_to_warp1
- bl sp13E_warp_to_last_warp
- adds r0, r5, 0
- bl DestroyTask
-_080FB6E2:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FB5E8
-
- thumb_func_start sub_80FB6EC
-sub_80FB6EC: @ 80FB6EC
- push {r4,lr}
- sub sp, 0x4
- ldr r1, =SpriteCallbackDummy
- movs r0, 0
- str r0, [sp]
- movs r0, 0x8C
- movs r2, 0x70
- movs r3, 0x50
- bl AddPseudoFieldObject
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r4, r1, r2
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldr r0, =0x000040b4
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x2
- bne _080FB74C
- movs r0, 0x4
- bl FieldObjectDirectionToImageAnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- b _080FB75E
- .pool
-_080FB74C:
- movs r0, 0x3
- bl FieldObjectDirectionToImageAnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
-_080FB75E:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80FB6EC
-
- thumb_func_start sub_80FB768
-sub_80FB768: @ 80FB768
- push {lr}
- bl sub_80FB6EC
- ldr r2, =gMapObjects
- ldr r0, =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x1]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0, 0x1]
- bl pal_fill_black
- ldr r0, =sub_80FB5E8
- movs r1, 0x50
- bl CreateTask
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FB768
-
- thumb_func_start sub_80FB7A4
-sub_80FB7A4: @ 80FB7A4
- push {lr}
- ldr r0, =0x0000088d
- bl FlagSet
- ldr r0, =0x00004001
- bl FlagSet
- movs r0, 0x80
- lsls r0, 7
- bl FlagSet
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x4
- ldrsb r1, [r0, r1]
- movs r2, 0x5
- ldrsb r2, [r0, r2]
- movs r3, 0x1
- negs r3, r3
- movs r0, 0
- bl saved_warp2_set
- bl sub_80FB59C
- bl sub_80AF8B8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FB7A4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/rayquaza_scene.s b/asm/rayquaza_scene.s
index fdfd22979..f9936f1ca 100755
--- a/asm/rayquaza_scene.s
+++ b/asm/rayquaza_scene.s
@@ -5968,26 +5968,5 @@ _081D99B4:
bx r0
thumb_func_end sub_81D98B4
- thumb_func_start sub_81D99BC
-sub_81D99BC: @ 81D99BC
- push {r4,lr}
- bl sub_80D2578
- cmp r0, 0
- bne _081D99DC
- ldr r4, =gStringVar1
- bl sub_80D2548
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- movs r0, 0x1
- b _081D99DE
- .pool
-_081D99DC:
- movs r0, 0
-_081D99DE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81D99BC
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/record_mixing.s b/asm/record_mixing.s
index a62022cc7..7e9ea30d1 100644
--- a/asm/record_mixing.s
+++ b/asm/record_mixing.s
@@ -849,7 +849,7 @@ _080E745A:
strh r0, [r5, 0x20]
b _080E7566
_080E7464:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080E746E
@@ -1066,7 +1066,7 @@ sub_80E7630: @ 80E7630
ldr r1, =gTasks
adds r0, r1
mov r10, r0
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
str r0, [sp, 0x4]
@@ -1135,7 +1135,7 @@ _080E76DC:
bl memcpy
_080E76E4:
mov r0, r8
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
mov r0, r9
lsls r1, r0, 1
adds r1, r5, r1
@@ -1162,7 +1162,7 @@ _080E7714:
lsrs r0, 24
mov r8, r0
_080E771C:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r8, r0
@@ -1179,7 +1179,7 @@ _080E771C:
adds r1, 0x1
strh r1, [r0, 0x8]
_080E773E:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
ldr r4, [sp, 0x8]
@@ -1302,7 +1302,7 @@ sub_80E7810: @ 80E7810
sub_80E7820: @ 80E7820
lsls r0, 24
lsrs r0, 16
- ldr r1, =gUnknown_020223C4
+ ldr r1, =gBlockRecvBuffer
adds r0, r1
bx lr
.pool
@@ -1312,7 +1312,7 @@ sub_80E7820: @ 80E7820
sub_80E7830: @ 80E7830
push {r4,lr}
adds r4, r0, 0
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
@@ -1341,7 +1341,7 @@ _080E7856:
.pool
_080E7868:
movs r0, 0
- bl sub_800A2A4
+ bl GetLinkPlayerTrainerId
adds r2, r0, 0
movs r0, 0x1
ands r2, r0
@@ -1362,7 +1362,7 @@ _080E7880:
.pool
_080E7894:
movs r0, 0
- bl sub_800A2A4
+ bl GetLinkPlayerTrainerId
movs r1, 0x9
bl __umodsi3
adds r2, r0, 0
@@ -1523,7 +1523,7 @@ _080E79CE:
adds r4, r1, 0
adds r4, 0x20
adds r0, r4, 0
- bl sub_8009228
+ bl IsStringJapanese
cmp r0, 0
beq _080E79F2
adds r0, r4, 0
@@ -1738,7 +1738,7 @@ sub_80E7B60: @ 80E7B60
ldr r0, =gLinkPlayers
ldrh r0, [r0, 0x4]
bl SeedRng2
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r4, r0, 24
movs r0, 0
@@ -1878,7 +1878,7 @@ _080E7C9A:
bne _080E7CEE
adds r0, r5, 0
adds r0, 0x24
- bl sub_8009228
+ bl IsStringJapanese
cmp r0, 0
beq _080E7CBA
adds r0, r5, 0
@@ -1901,7 +1901,7 @@ _080E7CC6:
adds r4, r0, 0
adds r0, r5, 0
adds r0, 0x2C
- bl sub_8009228
+ bl IsStringJapanese
cmp r0, 0
beq _080E7CE2
ldrb r0, [r4]
@@ -1931,7 +1931,7 @@ _080E7CFA:
lsrs r0, 16
mov r8, r0
_080E7D04:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r8, r0
@@ -2266,7 +2266,7 @@ sub_80E7F68: @ 80E7F68
bne _080E7FE4
ldrh r0, [r4]
movs r1, 0x1
- bl sub_80D6D1C
+ bl CheckPCHasItem
lsls r0, 24
cmp r0, 0
bne _080E7FE4
@@ -2368,7 +2368,7 @@ _080E807C:
bl sub_800AC34
b _080E80F2
_080E8090:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080E810A
@@ -3557,7 +3557,7 @@ sub_80E89AC: @ 80E89AC
adds r6, r0, 0
mov r8, r1
mov r9, r2
- bl sub_8009FCC
+ bl GetLinkPlayerCount
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
diff --git a/asm/recorded_battle.s b/asm/recorded_battle.s
index 94d96b2f8..2209312c2 100644
--- a/asm/recorded_battle.s
+++ b/asm/recorded_battle.s
@@ -95,7 +95,7 @@ sub_8184E58: @ 8184E58
ldrb r0, [r0]
cmp r0, 0x1
bne _08184EA0
- ldr r1, =gUnknown_0203BD2C
+ ldr r1, =gRecordedBattleRngSeed
ldr r0, =gRngValue
ldr r0, [r0]
str r0, [r1]
@@ -112,7 +112,7 @@ _08184EA0:
cmp r0, 0x2
bne _08184EAC
ldr r0, =gRngValue
- ldr r1, =gUnknown_0203BD2C
+ ldr r1, =gRecordedBattleRngSeed
ldr r1, [r1]
str r1, [r0]
_08184EAC:
@@ -125,7 +125,7 @@ _08184EAC:
bl GetMultiplayerId
ldr r1, =gUnknown_0203C7B4
strb r0, [r1]
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
mov r10, r0
@@ -236,8 +236,8 @@ _08184FA0:
.pool
thumb_func_end sub_8184E58
- thumb_func_start sub_8184FBC
-sub_8184FBC: @ 8184FBC
+ thumb_func_start RecordedBattle_SetBankAction
+RecordedBattle_SetBankAction: @ 8184FBC
push {r4-r6,lr}
lsls r0, 24
lsrs r5, r0, 24
@@ -269,10 +269,10 @@ _08184FF0:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8184FBC
+ thumb_func_end RecordedBattle_SetBankAction
- thumb_func_start sub_8185008
-sub_8185008: @ 8185008
+ thumb_func_start RecordedBattle_ClearBankAction
+RecordedBattle_ClearBankAction: @ 8185008
push {r4-r7,lr}
lsls r0, 24
lsrs r5, r0, 24
@@ -310,7 +310,7 @@ _08185046:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8185008
+ thumb_func_end RecordedBattle_ClearBankAction
thumb_func_start sub_8185054
sub_8185054: @ 8185054
@@ -348,7 +348,7 @@ _0818507A:
movs r2, 0
movs r3, 0x10
bl BeginNormalPaletteFade
- ldr r0, =sub_80384E4
+ ldr r0, =CB2_QuitRecordedBattle
bl SetMainCallback2
movs r0, 0xFF
b _081850C6
@@ -505,7 +505,7 @@ _081851D0:
adds r4, 0x1C
adds r5, 0x1
_081851DA:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -681,8 +681,8 @@ _08185332:
bx r1
thumb_func_end sub_81852F0
- thumb_func_start sub_8185338
-sub_8185338: @ 8185338
+ thumb_func_start MoveRecordedBattleToSaveData
+MoveRecordedBattleToSaveData: @ 8185338
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -779,7 +779,7 @@ _081853BA:
movs r4, 0x9D
lsls r4, 3
adds r1, r7, r4
- ldr r5, =gUnknown_0203BD2C
+ ldr r5, =gRecordedBattleRngSeed
ldr r0, [r5]
str r0, [r1]
ldr r0, =gUnknown_0203C7B8
@@ -1469,7 +1469,7 @@ _08185A14:
pop {r1}
bx r1
.pool
- thumb_func_end sub_8185338
+ thumb_func_end MoveRecordedBattleToSaveData
thumb_func_start sub_8185A54
sub_8185A54: @ 8185A54
@@ -1576,7 +1576,7 @@ sub_8185B1C: @ 8185B1C
ldr r0, =gMain
ldr r1, =sub_8185AB0
str r1, [r0, 0x8]
- ldr r0, =sub_8036760
+ ldr r0, =CB2_InitBattle
bl SetMainCallback2
adds r0, r4, 0
bl DestroyTask
@@ -1701,7 +1701,7 @@ _08185C2A:
adds r6, 0x1
cmp r6, 0x3
ble _08185BBE
- ldr r1, =gUnknown_0203BD2C
+ ldr r1, =gRecordedBattleRngSeed
movs r3, 0x9D
lsls r3, 3
adds r0, r7, r3
@@ -2212,7 +2212,7 @@ _081860C2:
ldr r1, [sp, 0x4C]
lsrs r0, r1, 24
movs r1, 0x6
- bl sub_8184FBC
+ bl RecordedBattle_SetBankAction
movs r5, 0
ldr r2, =gUnknown_0203CC70
mov r8, r2
@@ -2241,7 +2241,7 @@ _081860F0:
lsrs r1, 24
ldr r2, [sp, 0x4C]
lsrs r0, r2, 24
- bl sub_8184FBC
+ bl RecordedBattle_SetBankAction
b _08186118
.pool
_08186110:
@@ -2655,8 +2655,8 @@ sub_8186444: @ 8186444
.pool
thumb_func_end sub_8186444
- thumb_func_start rfu_lacks_rfufunc
-rfu_lacks_rfufunc: @ 8186450
+ thumb_func_start sub_8186450
+sub_8186450: @ 8186450
push {lr}
movs r1, 0
ldr r0, =gUnknown_0203CCD0
@@ -2669,7 +2669,7 @@ _0818645E:
pop {r1}
bx r1
.pool
- thumb_func_end rfu_lacks_rfufunc
+ thumb_func_end sub_8186450
thumb_func_start sub_8186468
sub_8186468: @ 8186468
diff --git a/asm/region_map.s b/asm/region_map.s
index 150b4893e..032bdf7a5 100644
--- a/asm/region_map.s
+++ b/asm/region_map.s
@@ -1939,7 +1939,7 @@ sub_8123C00: @ 8123C00
adds r1, r4, 0
adds r2, r5, 0
adds r3, r6, 0
- bl sub_8137FFC
+ bl GetSSTidalLocation
lsls r0, 24
lsrs r0, 24
mov r10, r5
diff --git a/asm/reset_rtc_screen.s b/asm/reset_rtc_screen.s
index ac2c1181c..1f5ef83d8 100644
--- a/asm/reset_rtc_screen.s
+++ b/asm/reset_rtc_screen.s
@@ -291,7 +291,7 @@ sub_809EB04: @ 809EB04
lsrs r5, 24
ldr r0, =gUnknown_085104C4
bl LoadSpritePalette
- ldr r0, =gUnknown_085104F0
+ ldr r0, =gSpriteTemplate_85104F0
mov r8, r0
movs r1, 0x35
movs r2, 0x44
@@ -655,7 +655,7 @@ sub_809EDE8: @ 809EDE8
lsls r0, r4, 1
adds r0, r4
lsls r0, 2
- ldr r1, =gUnknown_0851041C
+ ldr r1, =gUnknown_08510420 - 0x4
adds r2, r0, r1
ldr r1, =gMain
ldrh r3, [r1, 0x2E]
diff --git a/asm/reshow_battle_screen.s b/asm/reshow_battle_screen.s
deleted file mode 100644
index f83a11ff1..000000000
--- a/asm/reshow_battle_screen.s
+++ /dev/null
@@ -1,1040 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start nullsub_35
-nullsub_35: @ 80A92F4
- bx lr
- thumb_func_end nullsub_35
-
- thumb_func_start sub_80A92F8
-sub_80A92F8: @ 80A92F8
- push {lr}
- ldr r2, =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- movs r0, 0
- bl SetHBlankCallback
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0x4C
- movs r1, 0
- bl SetGpuReg
- ldr r0, =gBattleScripting
- adds r2, r0, 0
- adds r2, 0x21
- movs r1, 0
- strb r1, [r2]
- adds r0, 0x22
- strb r1, [r0]
- ldr r0, =c2_80777E8
- bl SetMainCallback2
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A92F8
-
- thumb_func_start c2_80777E8
-c2_80777E8: @ 80A933C
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r0, =gBattleScripting
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x13
- bls _080A934C
- b _080A95A4
-_080A934C:
- lsls r0, 2
- ldr r1, =_080A9360
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080A9360:
- .4byte _080A93B0
- .4byte _080A942C
- .4byte _080A9444
- .4byte _080A944A
- .4byte _080A9450
- .4byte _080A9460
- .4byte _080A9466
- .4byte _080A948E
- .4byte _080A9492
- .4byte _080A9496
- .4byte _080A949A
- .4byte _080A94B8
- .4byte _080A94C0
- .4byte _080A94C8
- .4byte _080A94D0
- .4byte _080A94D8
- .4byte _080A94E0
- .4byte _080A94E8
- .4byte _080A94F0
- .4byte _080A94F8
-_080A93B0:
- bl dp12_8087EA4
- bl trs_config
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0
- bl SetBgAttribute
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0
- bl SetBgAttribute
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- bl ResetPaletteFade
- ldr r0, =gUnknown_02022E14
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_02022E16
- strh r1, [r0]
- ldr r0, =gUnknown_02022E18
- strh r1, [r0]
- ldr r0, =gUnknown_02022E1A
- strh r1, [r0]
- ldr r0, =gUnknown_02022E1C
- strh r1, [r0]
- ldr r0, =gUnknown_02022E1E
- strh r1, [r0]
- ldr r0, =gUnknown_02022E20
- strh r1, [r0]
- ldr r0, =gUnknown_02022E22
- strh r1, [r0]
- b _080A95D2
- .pool
-_080A942C:
- movs r0, 0
- str r0, [sp, 0x4]
- movs r1, 0xC0
- lsls r1, 19
- ldr r2, =0x01006000
- add r0, sp, 0x4
- bl CpuFastSet
- b _080A95D2
- .pool
-_080A9444:
- bl sub_8035AA4
- b _080A95D2
-_080A944A:
- bl ResetSpriteData
- b _080A95D2
-_080A9450:
- bl FreeAllSpritePalettes
- ldr r1, =gReservedSpritePaletteCount
- movs r0, 0x4
- strb r0, [r1]
- b _080A95D2
- .pool
-_080A9460:
- bl sub_805E350
- b _080A95D2
-_080A9466:
- ldr r5, =gBattleScripting
- adds r4, r5, 0
- adds r4, 0x22
- ldrb r0, [r4]
- bl sub_805E08C
- lsls r0, 24
- cmp r0, 0
- beq _080A9484
- movs r0, 0
- strb r0, [r4]
- b _080A95D2
- .pool
-_080A9484:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- adds r1, r5, 0
- b _080A94AA
-_080A948E:
- movs r0, 0
- b _080A949C
-_080A9492:
- movs r0, 0x1
- b _080A949C
-_080A9496:
- movs r0, 0x2
- b _080A949C
-_080A949A:
- movs r0, 0x3
-_080A949C:
- bl sub_80A9614
- lsls r0, 24
- cmp r0, 0
- beq _080A94A8
- b _080A95D2
-_080A94A8:
- ldr r1, =gBattleScripting
-_080A94AA:
- adds r1, 0x21
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- b _080A95D2
- .pool
-_080A94B8:
- movs r0, 0
- bl sub_80A9708
- b _080A95D2
-_080A94C0:
- movs r0, 0x1
- bl sub_80A9708
- b _080A95D2
-_080A94C8:
- movs r0, 0x2
- bl sub_80A9708
- b _080A95D2
-_080A94D0:
- movs r0, 0x3
- bl sub_80A9708
- b _080A95D2
-_080A94D8:
- movs r0, 0
- bl sub_80A9ADC
- b _080A95D2
-_080A94E0:
- movs r0, 0x1
- bl sub_80A9ADC
- b _080A95D2
-_080A94E8:
- movs r0, 0x2
- bl sub_80A9ADC
- b _080A95D2
-_080A94F0:
- movs r0, 0x3
- bl sub_80A9ADC
- b _080A95D2
-_080A94F8:
- bl sub_805EC84
- movs r0, 0x1
- bl GetBankByPlayerAI
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r7, =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r7
- ldrh r0, [r0]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gEnemyParty
- adds r0, r5
- movs r1, 0xB
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_805EE54
- bl battle_type_is_double
- lsls r0, 24
- cmp r0, 0
- beq _080A955C
- movs r0, 0x3
- bl GetBankByPlayerAI
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r0, r4, 1
- adds r0, r7
- ldrh r0, [r0]
- muls r0, r6
- adds r0, r5
- movs r1, 0xB
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_805EE54
-_080A955C:
- ldr r1, =gUnknown_020244AC
- ldr r0, =gBankInMenu
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0
- bl sub_8059CB4
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- beq _080A95D2
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- beq _080A95D2
- bl sub_800E0E8
- movs r0, 0
- movs r1, 0
- bl sub_800DFB4
- b _080A95D2
- .pool
-_080A95A4:
- ldr r0, =vblank_cb_08078BB4
- bl SetVBlankCallback
- bl sub_80A95F4
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginHardwarePaletteFade
- ldr r2, =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x8]
- ldr r0, =sub_8038420
- bl SetMainCallback2
- bl sub_805EF14
-_080A95D2:
- ldr r1, =gBattleScripting
- adds r1, 0x21
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_80777E8
-
- thumb_func_start sub_80A95F4
-sub_80A95F4: @ 80A95F4
- ldr r3, =0x0400000a
- ldrb r2, [r3]
- movs r1, 0xD
- negs r1, r1
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3]
- ldr r2, =0x0400000c
- ldrb r0, [r2]
- ands r1, r0
- strb r1, [r2]
- bx lr
- .pool
- thumb_func_end sub_80A95F4
-
- thumb_func_start sub_80A9614
-sub_80A9614: @ 80A9614
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r4, r0
- bcs _080A96FC
- adds r0, r4, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080A9676
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r4, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _080A966C
- ldr r1, =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- adds r1, r4, 0
- bl sub_805DC0C
- b _080A96F4
- .pool
-_080A966C:
- adds r0, r4, 0
- movs r1, 0
- bl sub_805E7DC
- b _080A96F4
-_080A9676:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0x80
- ands r1, r2
- cmp r1, 0
- beq _080A9698
- cmp r4, 0
- bne _080A9698
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- b _080A96AA
- .pool
-_080A9698:
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 2
- ands r0, r1
- cmp r0, 0
- beq _080A96B2
- cmp r4, 0
- bne _080A96B2
- movs r0, 0x6
-_080A96AA:
- movs r1, 0
- bl sub_805DF84
- b _080A96F4
-_080A96B2:
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r1, [r0]
- lsls r0, r4, 2
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _080A96EC
- ldr r1, =gBattlePartyID
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- adds r1, r4, 0
- bl sub_805DD7C
- b _080A96F4
- .pool
-_080A96EC:
- adds r0, r4, 0
- movs r1, 0
- bl sub_805E7DC
-_080A96F4:
- ldr r0, =gBattleScripting
- adds r0, 0x22
- movs r1, 0
- strb r1, [r0]
-_080A96FC:
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80A9614
-
- thumb_func_start sub_80A9708
-sub_80A9708: @ 80A9708
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r7, r0
- bcc _080A9722
- b _080A9AA0
-_080A9722:
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0]
- lsls r2, r7, 2
- adds r0, r2, r0
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- str r2, [sp]
- cmp r0, 0
- beq _080A9748
- adds r0, r7, 0
- bl sub_80A614C
- b _080A974E
- .pool
-_080A9748:
- adds r0, r7, 0
- bl sub_80A6138
-_080A974E:
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- adds r0, r7, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080A9762
- b _080A986C
-_080A9762:
- ldr r1, =gBattlePartyID
- lsls r0, r7, 1
- adds r6, r0, r1
- ldrh r0, [r6]
- movs r1, 0x64
- mov r10, r1
- mov r2, r10
- muls r2, r0
- adds r0, r2, 0
- ldr r1, =gEnemyParty
- mov r9, r1
- add r0, r9
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _080A9786
- b _080A9AA0
-_080A9786:
- ldrh r0, [r6]
- mov r2, r10
- muls r2, r0
- adds r0, r2, 0
- add r0, r9
- movs r1, 0xB
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r7, 0
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_806A068
- ldr r5, =gUnknown_0202499C
- adds r0, r7, 0
- movs r1, 0x2
- bl sub_80A5C6C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r7, 0
- bl sub_80A82E4
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- adds r0, r5, 0
- adds r1, r4, 0
- mov r2, r8
- bl CreateSprite
- ldr r1, =gBankSpriteIds
- adds r4, r7, r1
- strb r0, [r4]
- ldr r5, =gSprites
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- lsls r3, r7, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, =SpriteCallbackDummy
- str r1, [r0]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r7, [r0, 0x2E]
- ldrh r0, [r6]
- mov r1, r10
- muls r1, r0
- adds r0, r1, 0
- add r0, r9
- movs r1, 0xB
- bl GetMonData
- ldrb r2, [r4]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r5
- strh r0, [r1, 0x32]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, =gBattleMonForms
- adds r1, r7, r1
- ldrb r1, [r1]
- bl StartSpriteAnim
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0]
- ldr r2, [sp]
- adds r0, r2, r0
- b _080A9A50
- .pool
-_080A986C:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0x80
- ands r1, r2
- cmp r1, 0
- beq _080A98D0
- cmp r7, 0
- bne _080A98D0
- ldr r5, =gSaveBlock2Ptr
- ldr r0, [r5]
- ldrb r4, [r0, 0x8]
- movs r0, 0
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_806A12C
- ldr r6, =gUnknown_0202499C
- ldr r1, =gUnknown_08305D2C
- ldr r0, [r5]
- ldrb r0, [r0, 0x8]
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- movs r4, 0x8
- subs r4, r0
- lsls r4, 18
- movs r0, 0xA0
- lsls r0, 15
- adds r4, r0
- asrs r4, 16
- movs r0, 0
- bl sub_80A82E4
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- adds r0, r6, 0
- b _080A9914
- .pool
-_080A98D0:
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 2
- ands r0, r1
- cmp r0, 0
- beq _080A9968
- cmp r7, 0
- bne _080A9968
- movs r0, 0
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x6
- bl sub_806A12C
- ldr r5, =gUnknown_0202499C
- ldr r0, =gUnknown_08305D2C
- ldrb r0, [r0, 0x18]
- movs r4, 0x8
- subs r4, r0
- lsls r4, 18
- movs r1, 0xA0
- lsls r1, 15
- adds r4, r1
- asrs r4, 16
- movs r0, 0
- bl sub_80A82E4
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- adds r0, r5, 0
-_080A9914:
- movs r1, 0x50
- adds r2, r4, 0
- bl CreateSprite
- ldr r3, =gBankSpriteIds
- strb r0, [r3]
- ldr r4, =gSprites
- ldrb r0, [r3]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- strb r0, [r1, 0x5]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, =SpriteCallbackDummy
- str r1, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r7, [r0, 0x2E]
- b _080A9A70
- .pool
-_080A9968:
- ldr r1, =gBattlePartyID
- lsls r0, r7, 1
- adds r6, r0, r1
- ldrh r0, [r6]
- movs r2, 0x64
- mov r10, r2
- mov r1, r10
- muls r1, r0
- adds r0, r1, 0
- ldr r2, =gPlayerParty
- mov r9, r2
- add r0, r9
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _080A998C
- b _080A9AA0
-_080A998C:
- ldrh r0, [r6]
- mov r1, r10
- muls r1, r0
- adds r0, r1, 0
- add r0, r9
- movs r1, 0xB
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r7, 0
- bl GetBankIdentity
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_806A068
- ldr r5, =gUnknown_0202499C
- adds r0, r7, 0
- movs r1, 0x2
- bl sub_80A5C6C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r7, 0
- bl sub_80A82E4
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- adds r0, r5, 0
- adds r1, r4, 0
- mov r2, r8
- bl CreateSprite
- ldr r1, =gBankSpriteIds
- adds r4, r7, r1
- strb r0, [r4]
- ldr r5, =gSprites
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- lsls r3, r7, 4
- ldrb r2, [r1, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, =SpriteCallbackDummy
- str r1, [r0]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r7, [r0, 0x2E]
- ldrh r0, [r6]
- mov r2, r10
- muls r2, r0
- adds r0, r2, 0
- add r0, r9
- movs r1, 0xB
- bl GetMonData
- ldrb r2, [r4]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r5
- strh r0, [r1, 0x32]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, =gBattleMonForms
- adds r1, r7, r1
- ldrb r1, [r1]
- bl StartSpriteAnim
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0]
- ldr r1, [sp]
- adds r0, r1, r0
-_080A9A50:
- ldrh r1, [r0, 0x2]
- ldr r0, =0x00000181
- cmp r1, r0
- bne _080A9A70
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r0, r5, 0
- adds r0, 0x8
- adds r1, r0
- ldr r0, =gUnknown_08309AAC
- ldr r2, =0x00000604
- adds r0, r2
- ldr r0, [r0]
- str r0, [r1]
-_080A9A70:
- ldr r1, =gSprites
- ldr r0, =gBankSpriteIds
- adds r0, r7, r0
- ldrb r0, [r0]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- ldr r0, =gUnknown_020244D0
- ldr r0, [r0]
- ldr r0, [r0]
- ldr r1, [sp]
- adds r0, r1, r0
- ldr r1, [r0]
- lsls r1, 31
- adds r2, 0x3E
- lsrs r1, 31
- lsls r1, 2
- ldrb r3, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
-_080A9AA0:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A9708
-
- thumb_func_start sub_80A9ADC
-sub_80A9ADC: @ 80A9ADC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r5, r0
- bcc _080A9AEC
- b _080A9C5E
-_080A9AEC:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r2, 0x80
- ands r1, r2
- cmp r1, 0
- beq _080A9B0C
- cmp r5, 0
- bne _080A9B0C
- bl battle_make_oam_safari_battle
- b _080A9B24
- .pool
-_080A9B0C:
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 2
- ands r0, r1
- cmp r0, 0
- beq _080A9B1E
- cmp r5, 0
- bne _080A9B1E
- b _080A9C5E
-_080A9B1E:
- adds r0, r5, 0
- bl battle_make_oam_normal_battle
-_080A9B24:
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gHealthBoxesIds
- adds r4, r5, r0
- strb r6, [r4]
- adds r0, r5, 0
- bl sub_8072B18
- adds r0, r6, 0
- bl sub_80729D0
- adds r0, r5, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080A9B6C
- ldrb r0, [r4]
- ldr r1, =gBattlePartyID
- lsls r4, r5, 1
- adds r1, r4, r1
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, =gEnemyParty
- adds r1, r2
- movs r2, 0
- bl healthbar_draw_field_maybe
- b _080A9BB8
- .pool
-_080A9B6C:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080A9BA0
- ldrb r0, [r4]
- ldr r1, =gBattlePartyID
- lsls r4, r5, 1
- adds r1, r4, r1
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, =gPlayerParty
- adds r1, r2
- movs r2, 0xA
- bl healthbar_draw_field_maybe
- b _080A9BB8
- .pool
-_080A9BA0:
- ldrb r0, [r4]
- ldr r1, =gBattlePartyID
- lsls r4, r5, 1
- adds r1, r4, r1
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, =gPlayerParty
- adds r1, r2
- movs r2, 0
- bl healthbar_draw_field_maybe
-_080A9BB8:
- adds r0, r5, 0
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _080A9BD4
- adds r0, r5, 0
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _080A9BF0
-_080A9BD4:
- ldr r0, =gHealthBoxesIds
- adds r0, r5, r0
- ldrb r0, [r0]
- movs r1, 0x1
- bl nullsub_30
- b _080A9BFC
- .pool
-_080A9BF0:
- ldr r0, =gHealthBoxesIds
- adds r0, r5, r0
- ldrb r0, [r0]
- movs r1, 0
- bl nullsub_30
-_080A9BFC:
- adds r0, r5, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080A9C34
- ldr r0, =gBattlePartyID
- adds r0, r4, r0
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _080A9C5E
- adds r0, r6, 0
- bl sub_8072984
- b _080A9C5E
- .pool
-_080A9C34:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080A9C5E
- ldr r0, =gBattlePartyID
- adds r0, r4, r0
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _080A9C5E
- adds r0, r6, 0
- bl sub_8072984
-_080A9C5E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A9ADC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/roamer.s b/asm/roamer.s
deleted file mode 100644
index f6b48f10f..000000000
--- a/asm/roamer.s
+++ /dev/null
@@ -1,502 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
- thumb_func_start ClearRoamerData
-ClearRoamerData: @ 8161B34
- push {r4,r5,lr}
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldr r4, =0x000031dc
- adds r0, r4
- movs r1, 0
- movs r2, 0x1C
- bl memset
- ldr r0, [r5]
- adds r0, r4
- ldr r1, =0x00000197
- strh r1, [r0, 0x8]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ClearRoamerData
-
- thumb_func_start ClearRoamerLocationData
-ClearRoamerLocationData: @ 8161B60
- push {r4-r6,lr}
- movs r2, 0
- ldr r6, =sRoamerLocation
- ldr r4, =sLocationHistory
- movs r3, 0
- adds r5, r4, 0x1
-_08161B6C:
- lsls r1, r2, 1
- adds r0, r1, r4
- strb r3, [r0]
- adds r1, r5
- strb r3, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x2
- bls _08161B6C
- movs r0, 0
- strb r0, [r6]
- strb r0, [r6, 0x1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ClearRoamerLocationData
-
- thumb_func_start CreateInitialRoamerMon
-CreateInitialRoamerMon: @ 8161B94
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- lsls r0, 16
- cmp r0, 0
- bne _08161BBC
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r2, =0x000031dc
- adds r1, r2
- ldr r2, =0x00000197
- b _08161BC8
- .pool
-_08161BBC:
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r2, =0x000031dc
- adds r1, r2
- movs r2, 0xCC
- lsls r2, 1
-_08161BC8:
- strh r2, [r1, 0x8]
- adds r7, r0, 0
- ldr r6, =gEnemyParty
- ldr r0, [r7]
- ldr r5, =0x000031dc
- adds r0, r5
- ldrh r1, [r0, 0x8]
- movs r4, 0
- str r4, [sp]
- str r4, [sp, 0x4]
- str r4, [sp, 0x8]
- str r4, [sp, 0xC]
- adds r0, r6, 0
- movs r2, 0x28
- movs r3, 0x20
- bl CreateMon
- ldr r0, [r7]
- adds r0, r5
- movs r1, 0x28
- strb r1, [r0, 0xC]
- ldr r0, [r7]
- adds r0, r5
- strb r4, [r0, 0xD]
- ldr r0, [r7]
- adds r0, r5
- movs r1, 0x1
- strb r1, [r0, 0x13]
- adds r0, r6, 0
- movs r1, 0x42
- bl GetMonData
- ldr r1, [r7]
- adds r1, r5
- str r0, [r1]
- adds r0, r6, 0
- movs r1, 0
- bl GetMonData
- ldr r1, [r7]
- adds r1, r5
- str r0, [r1, 0x4]
- adds r0, r6, 0
- movs r1, 0x3A
- bl GetMonData
- ldr r1, [r7]
- adds r1, r5
- movs r2, 0
- mov r8, r2
- strh r0, [r1, 0xA]
- adds r0, r6, 0
- movs r1, 0x16
- bl GetMonData
- ldr r1, [r7]
- adds r1, r5
- strb r0, [r1, 0xE]
- adds r0, r6, 0
- movs r1, 0x17
- bl GetMonData
- ldr r1, [r7]
- adds r1, r5
- strb r0, [r1, 0xF]
- adds r0, r6, 0
- movs r1, 0x18
- bl GetMonData
- ldr r1, [r7]
- adds r1, r5
- strb r0, [r1, 0x10]
- adds r0, r6, 0
- movs r1, 0x21
- bl GetMonData
- ldr r1, [r7]
- adds r1, r5
- strb r0, [r1, 0x11]
- adds r0, r6, 0
- movs r1, 0x2F
- bl GetMonData
- ldr r1, [r7]
- adds r1, r5
- strb r0, [r1, 0x12]
- ldr r4, =sRoamerLocation
- mov r0, r8
- strb r0, [r4]
- bl Random
- ldr r5, =sRoamerLocations
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x14
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 1
- adds r1, r5
- ldrb r0, [r1]
- strb r0, [r4, 0x1]
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end CreateInitialRoamerMon
-
- thumb_func_start InitRoamer
-InitRoamer: @ 8161CBC
- push {lr}
- bl ClearRoamerData
- bl ClearRoamerLocationData
- ldr r0, =gSpecialVar_0x8004
- ldrh r0, [r0]
- bl CreateInitialRoamerMon
- pop {r0}
- bx r0
- .pool
- thumb_func_end InitRoamer
-
- thumb_func_start UpdateLocationHistoryForRoamer
-UpdateLocationHistoryForRoamer: @ 8161CD8
- ldr r0, =sLocationHistory
- ldrb r1, [r0, 0x2]
- strb r1, [r0, 0x4]
- ldrb r1, [r0, 0x3]
- strb r1, [r0, 0x5]
- ldrb r1, [r0]
- strb r1, [r0, 0x2]
- ldrb r1, [r0, 0x1]
- strb r1, [r0, 0x3]
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x4]
- strb r1, [r0]
- ldrb r1, [r2, 0x5]
- strb r1, [r0, 0x1]
- bx lr
- .pool
- thumb_func_end UpdateLocationHistoryForRoamer
-
- thumb_func_start RoamerMoveToOtherLocationSet
-RoamerMoveToOtherLocationSet: @ 8161D00
- push {r4,r5,lr}
- movs r1, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r2, =0x000031dc
- adds r0, r2
- ldrb r0, [r0, 0x13]
- cmp r0, 0
- beq _08161D3E
- ldr r0, =sRoamerLocation
- strb r1, [r0]
- ldr r5, =sRoamerLocations
- adds r4, r0, 0
-_08161D1A:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x14
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 1
- adds r1, r5
- ldrb r1, [r1]
- ldrb r0, [r4, 0x1]
- cmp r0, r1
- beq _08161D1A
- strb r1, [r4, 0x1]
-_08161D3E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end RoamerMoveToOtherLocationSet
-
- thumb_func_start RoamerMove
-RoamerMove: @ 8161D54
- push {r4-r7,lr}
- movs r4, 0
- bl Random
- lsls r0, 16
- movs r1, 0xF0
- lsls r1, 12
- ands r1, r0
- cmp r1, 0
- bne _08161D6E
- bl RoamerMoveToOtherLocationSet
- b _08161DE2
-_08161D6E:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000031dc
- adds r0, r1
- ldrb r0, [r0, 0x13]
- cmp r0, 0
- beq _08161DE2
- ldr r7, =sRoamerLocation
- ldr r3, =sRoamerLocations
-_08161D80:
- lsls r0, r4, 1
- adds r0, r4
- lsls r2, r0, 1
- adds r1, r2, r3
- ldrb r0, [r7, 0x1]
- ldrb r1, [r1]
- cmp r0, r1
- bne _08161DD8
- ldr r6, =sRoamerLocations
- adds r5, r2, 0x1
- ldr r4, =sLocationHistory
-_08161D96:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x5
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- adds r0, r5
- adds r0, r6
- ldrb r1, [r0]
- ldrb r0, [r4, 0x4]
- cmp r0, 0
- bne _08161DBA
- ldrb r0, [r4, 0x5]
- cmp r0, r1
- beq _08161D96
-_08161DBA:
- cmp r1, 0xFF
- beq _08161D96
- strb r1, [r7, 0x1]
- b _08161DE2
- .pool
-_08161DD8:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x13
- bls _08161D80
-_08161DE2:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end RoamerMove
-
- thumb_func_start IsRoamerAt
-IsRoamerAt: @ 8161DE8
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r3, =0x000031dc
- adds r0, r3
- ldrb r0, [r0, 0x13]
- cmp r0, 0
- beq _08161E20
- ldr r0, =sRoamerLocation
- ldrb r3, [r0]
- cmp r2, r3
- bne _08161E20
- ldrb r0, [r0, 0x1]
- cmp r1, r0
- bne _08161E20
- movs r0, 0x1
- b _08161E22
- .pool
-_08161E20:
- movs r0, 0
-_08161E22:
- pop {r1}
- bx r1
- thumb_func_end IsRoamerAt
-
- thumb_func_start CreateRoamerMonInstance
-CreateRoamerMonInstance: @ 8161E28
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r5, =gEnemyParty
- bl ZeroEnemyPartyMons
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r1, =0x000031dc
- adds r0, r1
- ldrh r1, [r0, 0x8]
- ldrb r2, [r0, 0xC]
- ldr r3, [r0]
- ldr r0, [r0, 0x4]
- str r0, [sp]
- adds r0, r5, 0
- bl CreateMonWithIVsPersonality
- ldr r2, [r4]
- ldr r0, =0x000031e9
- adds r2, r0
- adds r0, r5, 0
- movs r1, 0x37
- bl SetMonData
- ldr r2, [r4]
- ldr r1, =0x000031e6
- adds r2, r1
- adds r0, r5, 0
- movs r1, 0x39
- bl SetMonData
- ldr r2, [r4]
- ldr r0, =0x000031ea
- adds r2, r0
- adds r0, r5, 0
- movs r1, 0x16
- bl SetMonData
- ldr r2, [r4]
- ldr r1, =0x000031eb
- adds r2, r1
- adds r0, r5, 0
- movs r1, 0x17
- bl SetMonData
- ldr r2, [r4]
- ldr r0, =0x000031ec
- adds r2, r0
- adds r0, r5, 0
- movs r1, 0x18
- bl SetMonData
- ldr r2, [r4]
- ldr r1, =0x000031ed
- adds r2, r1
- adds r0, r5, 0
- movs r1, 0x21
- bl SetMonData
- ldr r2, [r4]
- ldr r0, =0x000031ee
- adds r2, r0
- adds r0, r5, 0
- movs r1, 0x2F
- bl SetMonData
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end CreateRoamerMonInstance
-
- thumb_func_start TryStartRoamerEncounter
-TryStartRoamerEncounter: @ 8161EDC
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldrb r0, [r1, 0x4]
- ldrb r1, [r1, 0x5]
- bl IsRoamerAt
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08161F10
- bl Random
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- cmp r1, 0
- bne _08161F10
- bl CreateRoamerMonInstance
- movs r0, 0x1
- b _08161F12
- .pool
-_08161F10:
- movs r0, 0
-_08161F12:
- pop {r1}
- bx r1
- thumb_func_end TryStartRoamerEncounter
-
- thumb_func_start UpdateRoamerHPStatus
-UpdateRoamerHPStatus: @ 8161F18
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r1, 0x39
- bl GetMonData
- ldr r5, =gSaveBlock1Ptr
- ldr r1, [r5]
- ldr r4, =0x000031dc
- adds r1, r4
- strh r0, [r1, 0xA]
- adds r0, r6, 0
- movs r1, 0x37
- bl GetMonData
- ldr r1, [r5]
- adds r1, r4
- strb r0, [r1, 0xD]
- bl RoamerMoveToOtherLocationSet
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end UpdateRoamerHPStatus
-
- thumb_func_start SetRoamerInactive
-SetRoamerInactive: @ 8161F4C
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000031dc
- adds r0, r1
- movs r1, 0
- strb r1, [r0, 0x13]
- bx lr
- .pool
- thumb_func_end SetRoamerInactive
-
- thumb_func_start GetRoamerLocation
-GetRoamerLocation: @ 8161F64
- ldr r3, =sRoamerLocation
- ldrb r2, [r3]
- strb r2, [r0]
- ldrb r0, [r3, 0x1]
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end GetRoamerLocation
-
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/rom3.s b/asm/rom3.s
deleted file mode 100644
index c3a730836..000000000
--- a/asm/rom3.s
+++ /dev/null
@@ -1,3775 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start battle_wireless_setup_if_required_maybe
-battle_wireless_setup_if_required_maybe: @ 8032654
- push {lr}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08032686
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803266E
- bl sub_800B488
-_0803266E:
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803267A
- bl sub_8009734
-_0803267A:
- ldr r0, =task00_08081A90
- movs r1, 0
- bl CreateTask
- bl sub_8033244
-_08032686:
- pop {r0}
- bx r0
- .pool
- thumb_func_end battle_wireless_setup_if_required_maybe
-
- thumb_func_start sub_803269C
-sub_803269C: @ 803269C
- push {r4-r7,lr}
- sub sp, 0x14
- ldr r0, =gBattleMainFunc
- ldr r1, =nullsub_20
- str r1, [r0]
- movs r0, 0
- str r0, [sp, 0x10]
- movs r1, 0
- ldr r7, =gBattleBankFunc
- ldr r6, =gUnknown_020244AC
- movs r2, 0
- ldr r5, =gUnknown_020244B0
- ldr r4, =nullsub_21
- ldr r3, =gBanksBySide
-_080326B8:
- 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 _080326B8
- bl battle_wireless_setup_if_required_maybe
- ldr r0, =gBattleExecBuffer
- movs r5, 0
- str r5, [r0]
- bl sub_80A3934
- bl ClearBattleMonForms
- movs r0, 0xF
- bl BattleAI_HandleItemUseBeforeAISetup
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08032728
- bl ZeroEnemyPartyMons
- ldr r4, =gEnemyParty
- movs r1, 0x90
- 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
-_08032728:
- ldr r0, =gUnknown_02022FF4
- str r5, [r0]
- ldr r0, =gUnknown_0202428C
- strb r5, [r0]
- add sp, 0x14
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803269C
-
- thumb_func_start sub_8032768
-sub_8032768: @ 8032768
- push {r4,r5,lr}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- bne _08032784
- movs r0, 0x1
- bl sub_8184DA4
- b _0803278A
- .pool
-_08032784:
- movs r0, 0x2
- bl sub_8184DA4
-_0803278A:
- ldr r4, =gBattleTypeFlags
- ldr r0, [r4]
- movs r1, 0x80
- lsls r1, 17
- ands r0, r1
- cmp r0, 0
- bne _0803279C
- bl sub_8185EB8
-_0803279C:
- ldr r0, [r4]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080327B0
- bl b_setup_bx_link
- b _080327B4
- .pool
-_080327B0:
- bl b_setup_bx
-_080327B4:
- bl sub_8033050
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- bne _080327E2
- movs r4, 0
- ldr r0, =gNoOfAllBanks
- ldrb r1, [r0]
- cmp r4, r1
- bge _080327E2
- adds r5, r0, 0
-_080327D0:
- lsls r0, r4, 24
- lsrs r0, 24
- movs r1, 0
- bl sub_81B8D64
- adds r4, 0x1
- ldrb r0, [r5]
- cmp r4, r0
- blt _080327D0
-_080327E2:
- movs r4, 0
- ldr r3, =gBattleStruct
- movs r2, 0xD2
- lsls r2, 1
- movs r1, 0
-_080327EC:
- ldr r0, [r3]
- adds r0, r4, r0
- adds r0, r2
- strb r1, [r0]
- adds r4, 0x1
- cmp r4, 0x5F
- bls _080327EC
- movs r4, 0
- ldr r3, =gBattleStruct
- movs r2, 0x81
- lsls r2, 2
- movs r1, 0
-_08032804:
- ldr r0, [r3]
- adds r0, r4, r0
- adds r0, r2
- strb r1, [r0]
- adds r4, 0x1
- cmp r4, 0x67
- bls _08032804
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8032768
-
- thumb_func_start b_setup_bx
-b_setup_bx: @ 8032824
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gBattleTypeFlags
- ldr r3, [r0]
- movs r5, 0x80
- lsls r5, 15
- ands r5, r3
- cmp r5, 0
- beq _080328E4
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_8039ECC
- str r0, [r1]
- movs r4, 0x80
- lsls r4, 17
- ands r4, r3
- cmp r4, 0
- beq _08032874
- ldr r2, =gBattleBankFunc
- ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand
- str r0, [r2]
- ldr r1, =gBanksBySide
- movs r0, 0
- strb r0, [r1]
- b _0803287E
- .pool
-_08032874:
- ldr r2, =gBattleBankFunc
- ldr r0, =SetBankFuncToPlayerBufferRunCommand
- str r0, [r2]
- ldr r1, =gBanksBySide
- strb r4, [r1]
-_0803287E:
- ldr r3, =SetBankFuncToOpponentBufferRunCommand
- str r3, [r2, 0x4]
- movs r0, 0x1
- strb r0, [r1, 0x1]
- ldr r0, =SetBankFuncToPlayerPartnerBufferRunCommand
- str r0, [r2, 0x8]
- movs r0, 0x2
- strb r0, [r1, 0x2]
- str r3, [r2, 0xC]
- movs r0, 0x3
- strb r0, [r1, 0x3]
- ldr r1, =gNoOfAllBanks
- movs r0, 0x4
- strb r0, [r1]
- movs r0, 0
- movs r1, 0
- bl sub_81B8D64
- movs r0, 0x1
- movs r1, 0
- bl sub_81B8D64
- movs r0, 0x2
- movs r1, 0x1
- bl sub_81B8D64
- movs r0, 0x3
- movs r1, 0x1
- bl sub_81B8D64
- ldr r0, =gBattlePartyID
- movs r1, 0
- strh r1, [r0]
- strh r1, [r0, 0x2]
- movs r1, 0x3
- b _08032A76
- .pool
-_080328E4:
- movs r7, 0x1
- adds r0, r3, 0
- ands r0, r7
- cmp r0, 0
- beq _080328F0
- b _080329E0
-_080328F0:
- ldr r0, =gBattleMainFunc
- ldr r2, =sub_8039ECC
- str r2, [r0]
- movs r1, 0x80
- ands r1, r3
- mov r12, r2
- cmp r1, 0
- beq _08032918
- ldr r1, =gBattleBankFunc
- ldr r0, =SetBankFuncToSafariBufferRunCommand
- b _08032934
- .pool
-_08032918:
- movs r0, 0x80
- lsls r0, 2
- ands r3, r0
- cmp r3, 0
- beq _08032930
- ldr r1, =gBattleBankFunc
- ldr r0, =SetBankFuncToWallyBufferRunCommand
- b _08032934
- .pool
-_08032930:
- ldr r1, =gBattleBankFunc
- ldr r0, =SetBankFuncToPlayerBufferRunCommand
-_08032934:
- str r0, [r1]
- mov r10, r1
- ldr r4, =gBanksBySide
- movs r0, 0
- mov r9, r0
- mov r1, r9
- strb r1, [r4]
- mov r5, r10
- ldr r2, =SetBankFuncToOpponentBufferRunCommand
- mov r8, r2
- str r2, [r5, 0x4]
- movs r6, 0x1
- strb r6, [r4, 0x1]
- ldr r2, =gNoOfAllBanks
- movs r7, 0x2
- strb r7, [r2]
- ldr r0, =gBattleTypeFlags
- ldr r3, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r3
- cmp r0, 0
- bne _08032964
- b _08032CB2
-_08032964:
- movs r1, 0x80
- lsls r1, 18
- ands r1, r3
- cmp r1, 0
- beq _080329CC
- movs r1, 0x80
- lsls r1, 24
- ands r1, r3
- cmp r1, 0
- beq _080329B4
- mov r1, r12
- ldr r0, =gBattleMainFunc
- str r1, [r0]
- ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand
- str r0, [r5]
- mov r1, r9
- strb r1, [r4]
- ldr r0, =SetBankFuncToRecordedOpponentBufferRunCommand
- str r0, [r5, 0x4]
- strb r6, [r4, 0x1]
- strb r7, [r2]
- b _08032CB2
- .pool
-_080329B4:
- ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand
- str r0, [r5, 0x4]
- strb r1, [r4, 0x1]
- ldr r0, =SetBankFuncToRecordedOpponentBufferRunCommand
- str r0, [r5]
- strb r6, [r4]
- strb r7, [r2]
- b _08032CB2
- .pool
-_080329CC:
- ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand
- mov r2, r10
- str r0, [r2]
- strb r1, [r4]
- mov r0, r8
- str r0, [r2, 0x4]
- strb r6, [r4, 0x1]
- b _08032CB2
- .pool
-_080329E0:
- ldr r1, =sub_8039ECC
- ldr r2, =gBattleMainFunc
- str r1, [r2]
- ldr r2, =gBattleBankFunc
- ldr r0, =SetBankFuncToPlayerBufferRunCommand
- str r0, [r2]
- ldr r4, =gBanksBySide
- strb r5, [r4]
- ldr r6, =SetBankFuncToOpponentBufferRunCommand
- str r6, [r2, 0x4]
- strb r7, [r4, 0x1]
- str r0, [r2, 0x8]
- movs r0, 0x2
- mov r12, r0
- mov r1, r12
- strb r1, [r4, 0x2]
- str r6, [r2, 0xC]
- movs r0, 0x3
- mov r8, r0
- mov r1, r8
- strb r1, [r4, 0x3]
- ldr r0, =gNoOfAllBanks
- mov r10, r0
- movs r1, 0x4
- mov r9, r1
- strb r1, [r0]
- movs r0, 0x80
- lsls r0, 17
- ands r0, r3
- cmp r0, 0
- bne _08032A20
- b _08032CB2
-_08032A20:
- movs r1, 0xA0
- lsls r1, 1
- adds r0, r3, 0
- ands r0, r1
- cmp r0, r1
- bne _08032AA0
- ldr r0, =sub_8039ECC
- ldr r1, =gBattleMainFunc
- str r0, [r1]
- ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand
- str r0, [r2]
- strb r5, [r4]
- str r6, [r2, 0x4]
- strb r7, [r4, 0x1]
- str r0, [r2, 0x8]
- mov r0, r12
- strb r0, [r4, 0x2]
- str r6, [r2, 0xC]
- mov r1, r8
- strb r1, [r4, 0x3]
- mov r0, r9
- mov r2, r10
- strb r0, [r2]
- movs r0, 0
- movs r1, 0
- bl sub_81B8D64
- movs r0, 0x1
- movs r1, 0
- bl sub_81B8D64
- movs r0, 0x2
- movs r1, 0x1
- bl sub_81B8D64
- movs r0, 0x3
- movs r1, 0x1
- bl sub_81B8D64
- ldr r0, =gBattlePartyID
- strh r5, [r0]
- strh r5, [r0, 0x2]
- mov r1, r8
-_08032A76:
- strh r1, [r0, 0x4]
- strh r1, [r0, 0x6]
- b _08032CB2
- .pool
-_08032AA0:
- movs r5, 0x40
- ands r5, r3
- cmp r5, 0
- bne _08032AAA
- b _08032C3C
-_08032AAA:
- ldr r0, =gUnknown_0203C7B4
- ldrb r5, [r0]
- movs r0, 0
- mov r10, r0
- ldr r1, =gLinkPlayers
- mov r12, r1
- adds r7, r4, 0
- mov r8, r0
- ldr r6, =gBattlePartyID
- movs r4, 0
- movs r2, 0x3
- mov r9, r2
-_08032AC2:
- mov r1, r12
- adds r0, r4, r1
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _08032AE4
- cmp r0, 0x1
- bge _08032AFC
- cmp r0, 0
- beq _08032AE8
- b _08032B06
- .pool
-_08032AE4:
- cmp r0, 0x3
- bne _08032B06
-_08032AE8:
- ldr r0, =gLinkPlayers
- adds r0, r4, r0
- ldrb r0, [r0, 0x18]
- movs r1, 0
- bl sub_81B8D64
- b _08032B06
- .pool
-_08032AFC:
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1
- bl sub_81B8D64
-_08032B06:
- cmp r10, r5
- bne _08032B56
- ldr r0, =gLinkPlayers
- adds r3, r4, r0
- ldrh r1, [r3, 0x18]
- lsls r1, 2
- ldr r2, =gBattleBankFunc
- adds r1, r2
- ldr r2, =SetBankFuncToRecordedPlayerBufferRunCommand
- str r2, [r1]
- ldrh r1, [r3, 0x18]
- mov r12, r0
- cmp r1, 0x2
- bgt _08032B38
- cmp r1, 0x1
- bge _08032B4C
- cmp r1, 0
- beq _08032B3C
- b _08032C2C
- .pool
-_08032B38:
- cmp r1, 0x3
- bne _08032C2C
-_08032B3C:
- 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 _08032C12
-_08032B4C:
- adds r1, r7
- movs r0, 0x2
- strb r0, [r1]
- ldrh r0, [r3, 0x18]
- b _08032C24
-_08032B56:
- ldr r2, =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 _08032B80
- 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 _08032B92
- b _08032BD8
- .pool
-_08032B80:
- 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 _08032BD8
-_08032B92:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- lsls r0, 2
- ldr r1, =gBattleBankFunc
- adds r0, r1
- ldr r1, =SetBankFuncToRecordedPlayerBufferRunCommand
- str r1, [r0]
- ldrh r1, [r2, 0x18]
- cmp r1, 0x2
- bgt _08032BBC
- cmp r1, 0x1
- bge _08032BD0
- cmp r1, 0
- beq _08032BC0
- b _08032C2C
- .pool
-_08032BBC:
- cmp r1, 0x3
- bne _08032C2C
-_08032BC0:
- 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 _08032C12
-_08032BD0:
- adds r1, r7
- movs r0, 0x2
- strb r0, [r1]
- b _08032C22
-_08032BD8:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- lsls r0, 2
- ldr r1, =gBattleBankFunc
- adds r0, r1
- ldr r1, =SetBankFuncToRecordedOpponentBufferRunCommand
- str r1, [r0]
- ldrh r0, [r2, 0x18]
- cmp r0, 0x2
- bgt _08032C00
- cmp r0, 0x1
- bge _08032C1C
- cmp r0, 0
- beq _08032C04
- b _08032C2C
- .pool
-_08032C00:
- cmp r0, 0x3
- bne _08032C2C
-_08032C04:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- adds r0, r7
- movs r1, 0x1
- strb r1, [r0]
- ldrh r0, [r2, 0x18]
-_08032C12:
- lsls r0, 1
- adds r0, r6
- mov r1, r8
- strh r1, [r0]
- b _08032C2C
-_08032C1C:
- adds r0, r7
- mov r1, r9
- strb r1, [r0]
-_08032C22:
- ldrh r0, [r2, 0x18]
-_08032C24:
- lsls r0, 1
- adds r0, r6
- mov r2, r9
- strh r2, [r0]
-_08032C2C:
- adds r4, 0x1C
- movs r0, 0x1
- add r10, r0
- mov r1, r10
- cmp r1, 0x3
- bgt _08032C3A
- b _08032AC2
-_08032C3A:
- b _08032CB2
-_08032C3C:
- movs r1, 0x4
- ands r1, r3
- cmp r1, 0
- beq _08032C7C
- ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand
- str r0, [r2]
- strb r5, [r4]
- str r0, [r2, 0x8]
- mov r0, r12
- strb r0, [r4, 0x2]
- movs r0, 0x80
- lsls r0, 18
- ands r3, r0
- cmp r3, 0
- beq _08032C70
- ldr r0, =SetBankFuncToRecordedOpponentBufferRunCommand
- str r0, [r2, 0x4]
- strb r7, [r4, 0x1]
- str r0, [r2, 0xC]
- mov r1, r8
- strb r1, [r4, 0x3]
- b _08032CB2
- .pool
-_08032C70:
- str r6, [r2, 0x4]
- strb r7, [r4, 0x1]
- str r6, [r2, 0xC]
- mov r2, r8
- strb r2, [r4, 0x3]
- b _08032CB2
-_08032C7C:
- ldr r0, =SetBankFuncToRecordedPlayerBufferRunCommand
- str r0, [r2, 0x4]
- strb r1, [r4, 0x1]
- str r0, [r2, 0xC]
- mov r0, r12
- strb r0, [r4, 0x3]
- movs r0, 0x80
- lsls r0, 18
- ands r3, r0
- cmp r3, 0
- beq _08032CA8
- ldr r0, =SetBankFuncToRecordedOpponentBufferRunCommand
- str r0, [r2]
- strb r7, [r4]
- str r0, [r2, 0x8]
- mov r1, r8
- strb r1, [r4, 0x2]
- b _08032CB2
- .pool
-_08032CA8:
- str r6, [r2]
- strb r7, [r4]
- str r6, [r2, 0x8]
- mov r2, r8
- strb r2, [r4, 0x2]
-_08032CB2:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end b_setup_bx
-
- thumb_func_start b_setup_bx_link
-b_setup_bx_link: @ 8032CC0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r4, =gBattleTypeFlags
- ldr r1, [r4]
- movs r5, 0x1
- adds r3, r1, 0
- ands r3, r5
- cmp r3, 0
- bne _08032D48
- movs r4, 0x4
- ands r4, r1
- cmp r4, 0
- beq _08032D1C
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_8039ECC
- str r0, [r1]
- ldr r2, =gBattleBankFunc
- ldr r0, =SetBankFuncToPlayerBufferRunCommand
- str r0, [r2]
- ldr r1, =gBanksBySide
- strb r3, [r1]
- ldr r0, =SetBankFuncToLinkOpponentBufferRunCommand
- str r0, [r2, 0x4]
- strb r5, [r1, 0x1]
- ldr r1, =gNoOfAllBanks
- movs r0, 0x2
- b _0803303A
- .pool
-_08032D1C:
- ldr r2, =gBattleBankFunc
- ldr r0, =SetBankFuncToPlayerBufferRunCommand
- str r0, [r2, 0x4]
- ldr r1, =gBanksBySide
- strb r4, [r1, 0x1]
- ldr r0, =SetBankFuncToLinkOpponentBufferRunCommand
- str r0, [r2]
- strb r5, [r1]
- ldr r1, =gNoOfAllBanks
- movs r0, 0x2
- b _0803303A
- .pool
-_08032D48:
- movs r0, 0x41
- ands r0, r1
- cmp r0, 0x1
- bne _08032DD0
- movs r6, 0x4
- adds r3, r6, 0
- ands r3, r1
- cmp r3, 0
- beq _08032D98
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_8039ECC
- str r0, [r1]
- ldr r2, =gBattleBankFunc
- ldr r4, =SetBankFuncToPlayerBufferRunCommand
- str r4, [r2]
- ldr r1, =gBanksBySide
- movs r0, 0
- strb r0, [r1]
- ldr r3, =SetBankFuncToLinkOpponentBufferRunCommand
- 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 _08032DB4
- .pool
-_08032D98:
- ldr r2, =gBattleBankFunc
- ldr r0, =SetBankFuncToPlayerBufferRunCommand
- str r0, [r2, 0x4]
- ldr r1, =gBanksBySide
- strb r3, [r1, 0x1]
- ldr r3, =SetBankFuncToLinkOpponentBufferRunCommand
- 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]
-_08032DB4:
- ldr r0, =gNoOfAllBanks
- strb r6, [r0]
- b _0803303C
- .pool
-_08032DD0:
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _08032E8C
- movs r4, 0x4
- adds r3, r4, 0
- ands r3, r1
- cmp r3, 0
- beq _08032E1C
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_8039ECC
- str r0, [r1]
- ldr r2, =gBattleBankFunc
- ldr r0, =SetBankFuncToPlayerBufferRunCommand
- str r0, [r2]
- ldr r1, =gBanksBySide
- movs r0, 0
- strb r0, [r1]
- ldr r3, =SetBankFuncToOpponentBufferRunCommand
- str r3, [r2, 0x4]
- strb r5, [r1, 0x1]
- ldr r0, =SetBankFuncToLinkPartnerBufferRunCommand
- b _08032E2E
- .pool
-_08032E1C:
- ldr r2, =gBattleBankFunc
- ldr r0, =SetBankFuncToLinkPartnerBufferRunCommand
- str r0, [r2]
- ldr r1, =gBanksBySide
- strb r3, [r1]
- ldr r3, =SetBankFuncToLinkOpponentBufferRunCommand
- str r3, [r2, 0x4]
- strb r5, [r1, 0x1]
- ldr r0, =SetBankFuncToPlayerBufferRunCommand
-_08032E2E:
- str r0, [r2, 0x8]
- movs r0, 0x2
- strb r0, [r1, 0x2]
- str r3, [r2, 0xC]
- movs r0, 0x3
- strb r0, [r1, 0x3]
- ldr r0, =gNoOfAllBanks
- strb r4, [r0]
- movs r0, 0
- movs r1, 0
- bl sub_81B8D64
- movs r0, 0x1
- movs r1, 0
- bl sub_81B8D64
- movs r0, 0x2
- movs r1, 0x1
- bl sub_81B8D64
- movs r0, 0x3
- movs r1, 0x1
- bl sub_81B8D64
- ldr r0, =gBattlePartyID
- movs r1, 0
- strh r1, [r0]
- strh r1, [r0, 0x2]
- movs r1, 0x3
- strh r1, [r0, 0x4]
- strh r1, [r0, 0x6]
- b _0803303C
- .pool
-_08032E8C:
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, [r4]
- movs r1, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08032EA4
- ldr r1, =gBattleMainFunc
- ldr r0, =sub_8039ECC
- str r0, [r1]
-_08032EA4:
- movs r0, 0
- mov r10, r0
- ldr r1, =gLinkPlayers
- mov r12, r1
- ldr r7, =gBanksBySide
- mov r8, r0
- ldr r6, =gBattlePartyID
- movs r4, 0
- movs r2, 0x3
- mov r9, r2
-_08032EB8:
- mov r1, r12
- adds r0, r4, r1
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _08032EE0
- cmp r0, 0x1
- bge _08032EF8
- cmp r0, 0
- beq _08032EE4
- b _08032F02
- .pool
-_08032EE0:
- cmp r0, 0x3
- bne _08032F02
-_08032EE4:
- ldr r0, =gLinkPlayers
- adds r0, r4, r0
- ldrb r0, [r0, 0x18]
- movs r1, 0
- bl sub_81B8D64
- b _08032F02
- .pool
-_08032EF8:
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1
- bl sub_81B8D64
-_08032F02:
- cmp r10, r5
- bne _08032F52
- ldr r0, =gLinkPlayers
- adds r3, r4, r0
- ldrh r1, [r3, 0x18]
- lsls r1, 2
- ldr r2, =gBattleBankFunc
- adds r1, r2
- ldr r2, =SetBankFuncToPlayerBufferRunCommand
- str r2, [r1]
- ldrh r1, [r3, 0x18]
- mov r12, r0
- cmp r1, 0x2
- bgt _08032F34
- cmp r1, 0x1
- bge _08032F48
- cmp r1, 0
- beq _08032F38
- b _08033028
- .pool
-_08032F34:
- cmp r1, 0x3
- bne _08033028
-_08032F38:
- 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 _0803300E
-_08032F48:
- adds r1, r7
- movs r0, 0x2
- strb r0, [r1]
- ldrh r0, [r3, 0x18]
- b _08033020
-_08032F52:
- ldr r2, =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 _08032F7C
- 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 _08032F8E
- b _08032FD4
- .pool
-_08032F7C:
- 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 _08032FD4
-_08032F8E:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- lsls r0, 2
- ldr r1, =gBattleBankFunc
- adds r0, r1
- ldr r1, =SetBankFuncToLinkPartnerBufferRunCommand
- str r1, [r0]
- ldrh r1, [r2, 0x18]
- cmp r1, 0x2
- bgt _08032FB8
- cmp r1, 0x1
- bge _08032FCC
- cmp r1, 0
- beq _08032FBC
- b _08033028
- .pool
-_08032FB8:
- cmp r1, 0x3
- bne _08033028
-_08032FBC:
- 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 _0803300E
-_08032FCC:
- adds r1, r7
- movs r0, 0x2
- strb r0, [r1]
- b _0803301E
-_08032FD4:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- lsls r0, 2
- ldr r1, =gBattleBankFunc
- adds r0, r1
- ldr r1, =SetBankFuncToLinkOpponentBufferRunCommand
- str r1, [r0]
- ldrh r0, [r2, 0x18]
- cmp r0, 0x2
- bgt _08032FFC
- cmp r0, 0x1
- bge _08033018
- cmp r0, 0
- beq _08033000
- b _08033028
- .pool
-_08032FFC:
- cmp r0, 0x3
- bne _08033028
-_08033000:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- adds r0, r7
- movs r1, 0x1
- strb r1, [r0]
- ldrh r0, [r2, 0x18]
-_0803300E:
- lsls r0, 1
- adds r0, r6
- mov r1, r8
- strh r1, [r0]
- b _08033028
-_08033018:
- adds r0, r7
- mov r1, r9
- strb r1, [r0]
-_0803301E:
- ldrh r0, [r2, 0x18]
-_08033020:
- lsls r0, 1
- adds r0, r6
- mov r2, r9
- strh r2, [r0]
-_08033028:
- adds r4, 0x1C
- movs r0, 0x1
- add r10, r0
- mov r1, r10
- cmp r1, 0x3
- bgt _08033036
- b _08032EB8
-_08033036:
- ldr r1, =gNoOfAllBanks
- movs r0, 0x4
-_0803303A:
- strb r0, [r1]
-_0803303C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end b_setup_bx_link
-
- thumb_func_start sub_8033050
-sub_8033050: @ 8033050
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08033068
- b _0803319C
-_08033068:
- movs r0, 0
- mov r8, r0
- b _0803317A
- .pool
-_08033074:
- movs r5, 0
- movs r0, 0x1
- add r0, r8
- mov r10, r0
- ldr r0, =gBanksBySide
- add r0, r8
- mov r9, r0
- mov r0, r8
- lsls r6, r0, 1
- movs r7, 0
-_08033088:
- mov r0, r8
- cmp r0, 0x1
- bgt _080330F0
- mov r0, r9
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080330A8
- ldr r0, =gPlayerParty
- b _080330AA
- .pool
-_080330A8:
- ldr r0, =gEnemyParty
-_080330AA:
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08033170
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _08033170
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _08033170
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _08033170
- ldr r0, =gBattlePartyID
- adds r0, r6, r0
- strh r5, [r0]
- b _08033178
- .pool
-_080330F0:
- mov r0, r9
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08033118
- ldr r0, =gPlayerParty
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08033170
- adds r0, r4, 0
- movs r1, 0xB
- b _0803312C
- .pool
-_08033118:
- ldr r0, =gEnemyParty
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08033170
- adds r0, r4, 0
- movs r1, 0x41
-_0803312C:
- bl GetMonData
- cmp r0, 0
- beq _08033170
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _08033170
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _08033170
- ldr r1, =gBattlePartyID
- mov r0, r8
- subs r0, 0x2
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r5
- beq _08033170
- adds r0, r6, r1
- strh r5, [r0]
- b _08033178
- .pool
-_08033170:
- adds r7, 0x64
- adds r5, 0x1
- cmp r5, 0x5
- ble _08033088
-_08033178:
- mov r8, r10
-_0803317A:
- ldr r0, =gNoOfAllBanks
- ldrb r0, [r0]
- cmp r8, r0
- bge _08033184
- b _08033074
-_08033184:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _0803319C
- ldr r0, =gBattlePartyID
- movs r1, 0
- strh r1, [r0, 0x2]
- movs r1, 0x3
- strh r1, [r0, 0x6]
-_0803319C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8033050
-
- thumb_func_start dp01_prepare_buffer
-dp01_prepare_buffer: @ 80331B8
- 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, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080331E4
- adds r0, r3, 0
- adds r1, r2, 0
- adds r2, r4, 0
- bl PrepareBufferDataTransferLink
- b _08033236
- .pool
-_080331E4:
- cmp r5, 0
- beq _080331EE
- cmp r5, 0x1
- beq _08033218
- b _08033236
-_080331EE:
- movs r3, 0
- cmp r3, r2
- bge _08033236
- ldr r6, =gBattleBufferA
- ldr r5, =gActiveBank
-_080331F8:
- 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 _080331F8
- b _08033236
- .pool
-_08033218:
- movs r3, 0
- cmp r3, r2
- bge _08033236
- ldr r6, =gBattleBufferB
- ldr r5, =gActiveBank
-_08033222:
- 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 _08033222
-_08033236:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end dp01_prepare_buffer
-
- thumb_func_start sub_8033244
-sub_8033244: @ 8033244
- push {r4-r6,lr}
- ldr r0, =task00_wireless_something
- movs r1, 0
- bl CreateTask
- ldr r2, =gUnknown_02022D08
- strb r0, [r2]
- ldr r5, =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, =sub_803375C
- movs r1, 0
- bl CreateTask
- ldr r2, =gUnknown_02022D09
- 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, =gUnknown_02022D0A
- strb r6, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8033244
-
- thumb_func_start PrepareBufferDataTransferLink
-PrepareBufferDataTransferLink: @ 80332F4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r9, r2
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r1, 16
- mov r12, r1
- movs r1, 0x3
- mov r0, r12
- bics r0, r1
- adds r0, 0x4
- mov r8, r0
- ldr r2, =gTasks
- ldr r3, =gUnknown_02022D08
- 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, r8
- adds r0, 0x9
- movs r1, 0x80
- lsls r1, 5
- adds r5, r2, 0
- cmp r0, r1
- ble _08033346
- 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]
-_08033346:
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r2, 0x24
- ldrsh r1, [r0, r2]
- ldr r4, =gUnknown_020244A0
- ldr r0, [r4]
- adds r0, r1
- strb r6, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r7, 0x24
- ldrsh r1, [r0, r7]
- ldr r0, [r4]
- adds r1, r0
- ldr r0, =gActiveBank
- ldrb r0, [r0]
- strb r0, [r1, 0x1]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r2, 0x24
- ldrsh r1, [r0, r2]
- ldr r0, [r4]
- adds r1, r0
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- strb r0, [r1, 0x2]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r7, 0x24
- ldrsh r1, [r0, r7]
- ldr r0, [r4]
- adds r1, r0
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- strb r0, [r1, 0x3]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r1, 0x24
- ldrsh r0, [r0, r1]
- ldr r1, [r4]
- adds r0, r1
- mov r2, r8
- strb r2, [r0, 0x4]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r7, 0x24
- ldrsh r1, [r0, r7]
- ldr r0, [r4]
- adds r1, r0
- movs r0, 0xFF
- lsls r0, 8
- mov r2, r8
- ands r0, r2
- asrs r0, 8
- strb r0, [r1, 0x5]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r7, 0x24
- ldrsh r1, [r0, r7]
- ldr r0, [r4]
- adds r1, r0
- ldr r0, =gAbsentBankFlags
- ldrb r0, [r0]
- strb r0, [r1, 0x6]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r2, 0x24
- ldrsh r1, [r0, r2]
- ldr r0, [r4]
- adds r1, r0
- ldr r0, =gEffectBank
- ldrb r0, [r0]
- strb r0, [r1, 0x7]
- movs r2, 0
- cmp r2, r12
- bge _08033434
- mov r10, r5
- adds r6, r3, 0
-_08033412:
- ldrb r1, [r6]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- add r0, r10
- movs r7, 0x24
- ldrsh r1, [r0, r7]
- ldr r0, [r4]
- adds r1, r2, r1
- adds r1, r0
- mov r7, r9
- adds r0, r7, r2
- ldrb r0, [r0]
- strb r0, [r1, 0x8]
- adds r2, 0x1
- cmp r2, r12
- blt _08033412
-_08033434:
- ldrb r0, [r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r5
- ldrh r0, [r1, 0x24]
- add r0, r8
- 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
- .pool
- thumb_func_end PrepareBufferDataTransferLink
-
- thumb_func_start task00_wireless_something
-task00_wireless_something: @ 8033474
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =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 _08033490
- b _08033640
-_08033490:
- lsls r0, 2
- ldr r1, =_080334A4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080334A4:
- .4byte _080334BC
- .4byte _080334CA
- .4byte _080334E6
- .4byte _08033570
- .4byte _080335E6
- .4byte _08033624
-_080334BC:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r7
- movs r1, 0x64
- strh r1, [r0, 0x1C]
- b _080334F6
-_080334CA:
- 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 _080334E0
- b _08033640
-_080334E0:
- ldrh r0, [r1, 0x1E]
- adds r0, 0x1
- b _0803363E
-_080334E6:
- ldr r0, =gLinkVSyncDisabled
- ldrb r0, [r0]
- cmp r0, 0
- beq _08033504
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r7
-_080334F6:
- ldrh r1, [r0, 0x1E]
- adds r1, 0x1
- strh r1, [r0, 0x1E]
- b _08033640
- .pool
-_08033504:
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _0803351C
- movs r5, 0x2
- b _0803352A
- .pool
-_0803351C:
- movs r0, 0x40
- ands r1, r0
- movs r0, 0x2
- cmp r1, 0
- beq _08033528
- movs r0, 0x4
-_08033528:
- adds r5, r0, 0
-_0803352A:
- bl sub_800ABAC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r5
- bcs _08033538
- b _08033640
-_08033538:
- bl sub_800ABBC
- lsls r0, 24
- cmp r0, 0
- beq _0803355C
- bl sub_800A620
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x1E]
- adds r0, 0x1
- b _0803363E
- .pool
-_0803355C:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x1E]
- adds r0, 0x1
- b _0803363E
- .pool
-_08033570:
- lsls r1, r4, 2
- adds r0, r1, r4
- lsls r0, 3
- adds r2, r0, r7
- movs r3, 0x26
- ldrsh r5, [r2, r3]
- movs r0, 0x24
- ldrsh r6, [r2, r0]
- mov r12, r6
- cmp r5, r12
- beq _08033640
- ldrh r0, [r2, 0x22]
- movs r6, 0x22
- ldrsh r3, [r2, r6]
- cmp r3, 0
- bne _080335E0
- cmp r5, r12
- ble _080335A0
- movs r6, 0x20
- ldrsh r0, [r2, r6]
- cmp r5, r0
- bne _080335A0
- strh r3, [r2, 0x20]
- strh r3, [r2, 0x26]
-_080335A0:
- adds r4, r1, r4
- lsls r4, 3
- adds r4, r7
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- ldr r5, =gUnknown_020244A0
- ldr r0, [r5]
- adds r1, r0
- ldrb r0, [r1, 0x4]
- ldrb r1, [r1, 0x5]
- lsls r1, 8
- orrs r0, r1
- adds r0, 0x8
- lsls r0, 16
- lsrs r6, r0, 16
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x26
- ldrsh r2, [r4, r1]
- ldr r1, [r5]
- adds r1, r2
- adds r2, r6, 0
- bl link_0800A448
- ldrh r0, [r4, 0x1E]
- adds r0, 0x1
- strh r0, [r4, 0x1E]
- b _08033640
- .pool
-_080335E0:
- subs r0, 0x1
- strh r0, [r2, 0x22]
- b _08033640
-_080335E6:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _08033640
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r3, 0x26
- ldrsh r2, [r1, r3]
- ldr r0, =gUnknown_020244A0
- ldr r0, [r0]
- adds r2, r0
- ldrb r0, [r2, 0x4]
- ldrb r2, [r2, 0x5]
- lsls r2, 8
- movs r3, 0x1
- strh r3, [r1, 0x22]
- orrs r0, r2
- ldrh r6, [r1, 0x26]
- adds r0, r6
- adds r0, 0x8
- strh r0, [r1, 0x26]
- b _0803363C
- .pool
-_08033624:
- 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 _08033640
- movs r0, 0x1
- strh r0, [r1, 0x22]
-_0803363C:
- movs r0, 0x3
-_0803363E:
- strh r0, [r1, 0x1E]
-_08033640:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end task00_wireless_something
-
- thumb_func_start sub_8033648
-sub_8033648: @ 8033648
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gUnknown_03003124
- ldrb r0, [r0]
- cmp r0, 0
- beq _08033738
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08033738
- bl sub_8011BD0
- movs r4, 0
- ldr r0, =gUnknown_020223C4
- mov r10, r0
- b _0803372C
- .pool
-_08033680:
- bl sub_800A550
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =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 _08033726
- adds r0, r4, 0
- bl sub_800A5EC
- lsls r0, r4, 8
- mov r4, r10
- adds r3, r0, r4
- ldr r1, =gUnknown_020223C8
- adds r0, r1
- ldrh r6, [r0]
- ldr r7, =gTasks
- ldr r4, =gUnknown_02022D09
- mov r12, r4
- ldrb r1, [r4]
- 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 _080336E0
- ldrh r0, [r2, 0x24]
- strh r0, [r2, 0x20]
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r7
- movs r1, 0
- strh r1, [r0, 0x24]
-_080336E0:
- ldr r2, =gUnknown_020244A4
- mov r4, r12
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r7
- movs r4, 0x24
- ldrsh r1, [r0, r4]
- ldr r0, [r2]
- adds r5, r0, r1
- adds r4, r3, 0
- movs r2, 0
- adds r3, r6, 0
- adds r3, 0x8
- mov r8, r7
- mov r7, r12
- cmp r2, r3
- bge _08033714
-_08033706:
- adds r0, r5, r2
- adds r1, r4, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, r3
- blt _08033706
-_08033714:
- 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]
-_08033726:
- mov r1, r9
- lsls r0, r1, 24
- lsrs r4, r0, 24
-_0803372C:
- bl sub_8009FCC
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- bcc _08033680
-_08033738:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8033648
-
- thumb_func_start sub_803375C
-sub_803375C: @ 803375C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r3, r0, r1
- movs r0, 0x26
- ldrsh r2, [r3, r0]
- movs r4, 0x24
- ldrsh r0, [r3, r4]
- cmp r2, r0
- bne _08033780
- b _0803389C
-_08033780:
- cmp r2, r0
- ble _08033792
- movs r4, 0x20
- ldrsh r0, [r3, r4]
- cmp r2, r0
- bne _08033792
- movs r0, 0
- strh r0, [r3, 0x20]
- strh r0, [r3, 0x26]
-_08033792:
- lsls r2, r7, 2
- adds r0, r2, r7
- lsls r0, 3
- adds r5, r0, r1
- movs r0, 0x26
- ldrsh r1, [r5, r0]
- ldr r3, =gUnknown_020244A4
- mov r8, r3
- ldr r0, [r3]
- adds r3, r1, r0
- ldrb r4, [r3, 0x1]
- ldrb r6, [r3, 0x4]
- ldrb r0, [r3, 0x5]
- lsls r0, 8
- orrs r6, r0
- ldrb r0, [r3]
- mov r9, r2
- cmp r0, 0x1
- beq _0803385C
- cmp r0, 0x1
- bgt _080337CC
- cmp r0, 0
- beq _080337D2
- b _0803388A
- .pool
-_080337CC:
- cmp r0, 0x2
- beq _08033874
- b _0803388A
-_080337D2:
- ldr r2, =gBattleExecBuffer
- ldr r1, =gBitTable
- lsls r0, r4, 2
- adds r0, r1
- ldr r1, [r2]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0803389C
- lsls r0, r4, 9
- ldr r1, =gBattleBufferA
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x8
- adds r2, r6, 0
- bl memcpy
- adds r0, r4, 0
- bl sub_803F850
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x4
- ands r0, r1
- cmp r0, 0
- bne _0803388A
- ldr r2, =gBankAttacker
- movs r4, 0x26
- ldrsh r0, [r5, r4]
- mov r3, r8
- ldr r1, [r3]
- adds r0, r1
- ldrb r0, [r0, 0x2]
- strb r0, [r2]
- ldr r2, =gBankTarget
- movs r4, 0x26
- ldrsh r0, [r5, r4]
- adds r0, r1
- ldrb r0, [r0, 0x3]
- strb r0, [r2]
- ldr r2, =gAbsentBankFlags
- movs r3, 0x26
- ldrsh r0, [r5, r3]
- adds r0, r1
- ldrb r0, [r0, 0x6]
- strb r0, [r2]
- ldr r2, =gEffectBank
- movs r4, 0x26
- ldrsh r0, [r5, r4]
- adds r0, r1
- ldrb r0, [r0, 0x7]
- strb r0, [r2]
- b _0803388A
- .pool
-_0803385C:
- lsls r0, r4, 9
- ldr r1, =gBattleBufferB
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x8
- adds r2, r6, 0
- bl memcpy
- b _0803388A
- .pool
-_08033874:
- ldrb r2, [r3, 0x8]
- ldr r3, =gBattleExecBuffer
- ldr r1, =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]
-_0803388A:
- ldr r0, =gTasks
- mov r2, r9
- adds r1, r2, r7
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x26]
- adds r0, r6, r0
- adds r0, 0x8
- strh r0, [r1, 0x26]
-_0803389C:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_803375C
-
- thumb_func_start dp01_build_cmdbuf_x00_a_b_0
-dp01_build_cmdbuf_x00_a_b_0: @ 80338B4
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 80338D8
- push {r4,r5,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x01_a_b_0
-
- thumb_func_start EmitSetAttributes
-EmitSetAttributes: @ 8033900
- push {r4-r6,lr}
- ldr r4, [sp, 0x10]
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r3, 24
- lsrs r5, r3, 24
- ldr r0, =gUnknown_02022D10
- movs r3, 0x2
- strb r3, [r0]
- strb r1, [r0, 0x1]
- strb r2, [r0, 0x2]
- adds r1, r0, 0
- cmp r5, 0
- beq _0803392E
- adds r3, r1, 0x3
- adds r2, r5, 0
-_08033920:
- ldrb r0, [r4]
- strb r0, [r3]
- adds r4, 0x1
- adds r3, 0x1
- subs r2, 0x1
- cmp r2, 0
- bne _08033920
-_0803392E:
- adds r2, r5, 0x3
- adds r0, r6, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end EmitSetAttributes
-
- thumb_func_start sub_8033940
-sub_8033940: @ 8033940
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r2, 24
- lsrs r4, r2, 24
- ldr r0, =gUnknown_02022D10
- movs r2, 0x3
- strb r2, [r0]
- strb r1, [r0, 0x1]
- strb r4, [r0, 0x2]
- adds r5, r0, 0
- cmp r4, 0
- beq _0803396C
- adds r1, r5, 0x3
- adds r2, r4, 0
-_0803395E:
- ldrb r0, [r3]
- strb r0, [r1]
- adds r3, 0x1
- adds r1, 0x1
- subs r2, 0x1
- cmp r2, 0
- bne _0803395E
-_0803396C:
- adds r2, r4, 0x3
- adds r0, r6, 0
- adds r1, r5, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8033940
-
- thumb_func_start dp01_build_cmdbuf_x04_4_4_4
-dp01_build_cmdbuf_x04_4_4_4: @ 8033980
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x04_4_4_4
-
- thumb_func_start dp01_build_cmdbuf_x05_a_b_c
-dp01_build_cmdbuf_x05_a_b_c: @ 80339A0
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x05_a_b_c
-
- thumb_func_start dp01_build_cmdbuf_x06_a
-dp01_build_cmdbuf_x06_a: @ 80339C4
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- movs r2, 0x6
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .pool
- 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: @ 80339E4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8033A04
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8033A24
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8033A44
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8033A64
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8033A84
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x0C_C_C_C
-
- thumb_func_start dp01_build_cmdbuf_x0D_a
-dp01_build_cmdbuf_x0D_a: @ 8033AA4
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- movs r2, 0xD
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .pool
- thumb_func_end dp01_build_cmdbuf_x0D_a
-
- thumb_func_start sub_8033AC4
-sub_8033AC4: @ 8033AC4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- ldr r1, =gUnknown_02022D10
- 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 _08033AF2
- adds r1, r5, 0x2
- adds r3, r0, 0
-_08033AE4:
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _08033AE4
-_08033AF2:
- 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
- .pool
- thumb_func_end sub_8033AC4
-
- 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: @ 8033B0C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- ldr r4, [sp, 0x20]
- ldr r5, [sp, 0x24]
- ldr r6, [sp, 0x2C]
- mov r8, r6
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 16
- lsrs r1, 16
- lsls r3, 16
- lsrs r3, 16
- ldr r7, =gUnknown_02022D10
- 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]
- mov r0, r8
- strb r0, [r7, 0xB]
- mov r0, r12
- str r0, [sp]
- movs r0, 0xE
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _08033BAC
- str r0, [sp]
- movs r0, 0xE
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- bne _08033BAC
- ldr r0, =gBattleWeather
- ldrh r0, [r0]
- strb r0, [r7, 0xC]
- ands r6, r0
- lsrs r0, r6, 8
- strb r0, [r7, 0xD]
- adds r4, r7, 0
- b _08033BB6
- .pool
-_08033BAC:
- ldr r0, =gUnknown_02022D10
- movs r1, 0
- strb r1, [r0, 0xC]
- strb r1, [r0, 0xD]
- adds r4, r0, 0
-_08033BB6:
- movs r0, 0
- strb r0, [r4, 0xE]
- strb r0, [r4, 0xF]
- adds r0, r4, 0
- adds r0, 0x10
- ldr r1, [sp, 0x28]
- movs r2, 0x1C
- bl memcpy
- mov r0, r9
- adds r1, r4, 0
- movs r2, 0x2C
- bl dp01_prepare_buffer
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- 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: @ 8033BE4
- 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, =gUnknown_02022D10
- movs r0, 0x10
- strb r0, [r2]
- ldr r0, =gBattleOutcome
- 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, =gCurrentMove
- ldrh r0, [r4]
- strh r0, [r2, 0x4]
- ldr r0, =gUnknown_020241EC
- ldrh r0, [r0]
- mov r1, r12
- strh r0, [r1, 0x2]
- ldr r0, =gLastUsedItem
- ldrh r0, [r0]
- strh r0, [r1, 0x4]
- ldr r0, =gLastUsedAbility
- ldrb r0, [r0]
- strb r0, [r1, 0x6]
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x17]
- strb r0, [r1, 0x7]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0x52
- ldrb r1, [r1]
- mov r3, r12
- strb r1, [r3, 0x8]
- adds r0, 0xB1
- ldrb r0, [r0]
- strb r0, [r3, 0x9]
- ldr r0, =gStringBank
- ldrb r0, [r0]
- strb r0, [r3, 0xA]
- ldr r3, =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x2]
- mov r7, r12
- strb r0, [r7, 0xB]
- movs r3, 0
- mov r9, r2
- ldr r0, =gBattleTextBuff3
- mov r8, r0
- adds r2, 0x10
- ldr r0, =gBattleMons
- adds r4, r0, 0
- adds r4, 0x20
-_08033C6A:
- adds r1, r2, r3
- ldrb r0, [r4]
- strb r0, [r1]
- adds r4, 0x58
- adds r3, 0x1
- cmp r3, 0x3
- ble _08033C6A
- movs r3, 0
- mov r5, r12
- adds r5, 0x10
- mov r4, r12
- adds r4, 0x20
- ldr r6, =gBattleTextBuff2
- mov r2, r12
- adds r2, 0x30
-_08033C88:
- adds r1, r5, r3
- ldr r7, =gBattleTextBuff1
- 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 _08033C88
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x10_TODO
-
- thumb_func_start dp01_build_cmdbuf_x11_TODO
-dp01_build_cmdbuf_x11_TODO: @ 8033CFC
- 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, =gUnknown_02022D10
- 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, =gCurrentMove
- ldrh r0, [r0]
- strh r0, [r2, 0x4]
- ldr r0, =gUnknown_020241EC
- ldrh r0, [r0]
- mov r1, r12
- strh r0, [r1, 0x2]
- ldr r0, =gLastUsedItem
- ldrh r0, [r0]
- strh r0, [r1, 0x4]
- ldr r0, =gLastUsedAbility
- ldrb r0, [r0]
- strb r0, [r1, 0x6]
- ldr r0, =gBattleScripting
- ldrb r0, [r0, 0x17]
- strb r0, [r1, 0x7]
- ldr r0, =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x52
- ldrb r0, [r0]
- strb r0, [r1, 0x8]
- movs r3, 0
- mov r9, r2
- ldr r7, =gBattleTextBuff3
- mov r8, r7
- mov r4, r9
- adds r4, 0x10
- ldr r0, =gBattleMons
- adds r2, r0, 0
- adds r2, 0x20
-_08033D5E:
- adds r1, r4, r3
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x58
- adds r3, 0x1
- cmp r3, 0x3
- ble _08033D5E
- movs r3, 0
- mov r5, r12
- adds r5, 0x10
- mov r4, r12
- adds r4, 0x20
- ldr r6, =gBattleTextBuff2
- mov r2, r12
- adds r2, 0x30
-_08033D7C:
- adds r1, r5, r3
- ldr r7, =gBattleTextBuff1
- 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 _08033D7C
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x11_TODO
-
- thumb_func_start dp01_build_cmdbuf_x12_a_bb
-dp01_build_cmdbuf_x12_a_bb: @ 8033DE4
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x12_a_bb
-
- thumb_func_start sub_8033E10
-sub_8033E10: @ 8033E10
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- movs r2, 0x13
- 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
- .pool
- thumb_func_end sub_8033E10
-
- thumb_func_start sub_8033E30
-sub_8033E30: @ 8033E30
- push {r4-r6,lr}
- adds r5, r3, 0
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r3, =gUnknown_02022D10
- 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
-_08033E4C:
- adds r0, r5, r2
- ldrb r0, [r0]
- strb r0, [r4]
- adds r4, 0x1
- adds r2, 0x1
- cmp r2, 0x13
- bls _08033E4C
- adds r0, r6, 0
- movs r2, 0x18
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8033E30
-
- thumb_func_start sub_8033E6C
-sub_8033E6C: @ 8033E6C
- push {r4,r5,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gUnknown_02022D10
- movs r0, 0x15
- strb r0, [r1]
- movs r2, 0
- adds r3, r1, 0x1
-_08033E7E:
- adds r0, r4, r2
- ldrb r0, [r0]
- strb r0, [r3]
- adds r3, 0x1
- adds r2, 0x1
- cmp r2, 0x2
- ble _08033E7E
- adds r0, r5, 0
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8033E6C
-
- 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: @ 8033EA0
- push {r4-r6,lr}
- ldr r6, [sp, 0x10]
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gUnknown_02022D10
- 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
-_08033EBA:
- adds r0, r6, r2
- ldrb r0, [r0]
- strb r0, [r3]
- adds r3, 0x1
- adds r2, 0x1
- cmp r2, 0x2
- ble _08033EBA
- adds r0, r5, 0
- movs r2, 0x8
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- 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: @ 8033EDC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8033EFC
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8033F34
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x19_a_bb
-
- thumb_func_start dp01_build_cmdbuf_x1A_aaaa_bbbb
-dp01_build_cmdbuf_x1A_aaaa_bbbb: @ 8033F68
- push {r4-r6,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x1A_aaaa_bbbb
-
- thumb_func_start dp01_build_cmdbuf_x1B_aaaa_b
-dp01_build_cmdbuf_x1B_aaaa_b: @ 8033FBC
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x1B_aaaa_b
-
- thumb_func_start dp01_build_cmdbuf_x1C_a
-dp01_build_cmdbuf_x1C_a: @ 8033FF8
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- movs r2, 0x1C
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .pool
- 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: @ 8034018
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- ldr r1, =gUnknown_02022D10
- 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 _08034048
- adds r1, r5, 0x4
- adds r3, r4, 0
-_0803403A:
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _0803403A
-_08034048:
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x1D_1D_numargs_varargs
-
- thumb_func_start sub_8034060
-sub_8034060: @ 8034060
- push {r4-r6,lr}
- adds r4, r3, 0
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r2, 16
- lsrs r5, r2, 16
- ldr r2, =gUnknown_02022D10
- 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 _080340B0
- adds r3, r1, 0x7
- adds r2, r5, 0
-_080340A2:
- ldrb r0, [r4]
- strb r0, [r3]
- adds r4, 0x1
- adds r3, 0x1
- subs r2, 0x1
- cmp r2, 0
- bne _080340A2
-_080340B0:
- 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
- .pool
- thumb_func_end sub_8034060
-
- thumb_func_start sub_80340C8
-sub_80340C8: @ 80340C8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- ldr r1, =gUnknown_02022D10
- 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 _080340F6
- adds r1, r5, 0x3
- adds r3, r4, 0
-_080340E8:
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _080340E8
-_080340F6:
- 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
- .pool
- thumb_func_end sub_80340C8
-
- thumb_func_start sub_8034110
-sub_8034110: @ 8034110
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- ldr r1, =gUnknown_02022D10
- 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 _0803413E
- adds r1, r5, 0x3
- adds r3, r4, 0
-_08034130:
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _08034130
-_0803413E:
- 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
- .pool
- thumb_func_end sub_8034110
-
- thumb_func_start dp01_build_cmdbuf_x21_a_bb
-dp01_build_cmdbuf_x21_a_bb: @ 8034158
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8034184
- push {r4,r5,lr}
- adds r4, r2, 0
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r2, =gUnknown_02022D10
- movs r0, 0x22
- strb r0, [r2]
- strb r1, [r2, 0x1]
- movs r3, 0
- adds r1, r2, 0x2
-_08034198:
- adds r0, r4, r3
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, 0x1
- adds r3, 0x1
- cmp r3, 0x2
- ble _08034198
- adds r0, r5, 0
- adds r1, r2, 0
- movs r2, 0x5
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- 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: @ 80341BC
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x23_aa_0
-
- thumb_func_start dp01_build_cmdbuf_x24_aa_0
-dp01_build_cmdbuf_x24_aa_0: @ 80341E8
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8034214
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x25_25_25_25
-
- thumb_func_start dp01_build_cmdbuf_x26_a
-dp01_build_cmdbuf_x26_a: @ 8034234
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- movs r2, 0x26
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .pool
- 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: @ 8034254
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8034274
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8034294
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 80342B4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 80342D4
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x2B_aa_0
-
- thumb_func_start sub_8034300
-sub_8034300: @ 8034300
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r4, =gUnknown_02022D10
- movs r3, 0x2C
- strb r3, [r4]
- strb r1, [r4, 0x1]
- lsrs r1, 8
- strb r1, [r4, 0x2]
- strb r2, [r4, 0x3]
- adds r1, r4, 0
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8034300
-
- thumb_func_start dp01_build_cmdbuf_x2D_2D_2D_2D
-dp01_build_cmdbuf_x2D_2D_2D_2D: @ 803432C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x2D_2D_2D_2D
-
- thumb_func_start dp01_build_cmdbuf_x2E_a
-dp01_build_cmdbuf_x2E_a: @ 803434C
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- movs r2, 0x2E
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .pool
- 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: @ 803436C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x2F_2F_2F_2F
-
- thumb_func_start dp01_build_cmdbuf_x30_TODO
-dp01_build_cmdbuf_x30_TODO: @ 803438C
- push {r4,r5,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r2, 24
- lsrs r2, 24
- ldr r1, =gUnknown_02022D10
- 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
-_080343B4:
- adds r0, r4, r2
- ldrb r0, [r0]
- strb r0, [r3]
- adds r3, 0x1
- adds r2, 0x1
- cmp r2, 0x2F
- ble _080343B4
- adds r0, r5, 0
- movs r2, 0x34
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- 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: @ 80343D4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 80343F4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8034414
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- 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: @ 8034438
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, =gUnknown_02022D10
- 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
- .pool
- thumb_func_end dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
-
- thumb_func_start sub_8034464
-sub_8034464: @ 8034464
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r2, 24
- lsrs r2, 24
- ldr r4, =gUnknown_02022D10
- movs r0, 0x35
- strb r0, [r4]
- strb r1, [r4, 0x1]
- cmp r2, 0
- beq _0803448C
- adds r0, r4, 0x4
- bl sub_81850DC
- strb r0, [r4, 0x2]
- strb r0, [r4, 0x3]
- b _08034490
- .pool
-_0803448C:
- strb r2, [r4, 0x2]
- strb r2, [r4, 0x3]
-_08034490:
- ldr r1, =gUnknown_02022D10
- ldrb r2, [r1, 0x2]
- adds r2, 0x4
- adds r0, r5, 0
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8034464
-
- thumb_func_start dp01_build_cmdbuf_x38_a
-dp01_build_cmdbuf_x38_a: @ 80344A8
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02022D10
- movs r2, 0x36
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .pool
- thumb_func_end dp01_build_cmdbuf_x38_a
-
- thumb_func_start dp01_build_cmdbuf_x37_a
-dp01_build_cmdbuf_x37_a: @ 80344C8
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r4, =gUnknown_02022D10
- movs r0, 0x37
- strb r0, [r4]
- strb r1, [r4, 0x1]
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- ldr r0, =0x00000ca9
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 28
- lsrs r0, 31
- strb r0, [r4, 0x2]
- ldrb r0, [r1]
- lsls r0, 28
- lsrs r0, 31
- strb r0, [r4, 0x3]
- adds r0, r4, 0x6
- bl sub_81850DC
- strb r0, [r4, 0x4]
- strb r0, [r4, 0x5]
- ldrb r2, [r4, 0x4]
- adds r2, 0x6
- adds r0, r5, 0
- adds r1, r4, 0
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end dp01_build_cmdbuf_x37_a
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/rom4.s b/asm/rom4.s
index 9fb9e2bd6..bf682fc51 100644
--- a/asm/rom4.s
+++ b/asm/rom4.s
@@ -36,15 +36,15 @@ flag_var_implications_of_teleport_: @ 8084660
push {lr}
bl player_avatar_init_params_reset
ldr r0, =0x0000088b
- bl FlagReset
+ bl FlagClear
ldr r0, =0x0000088d
- bl FlagReset
+ bl FlagClear
ldr r0, =0x0000088c
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000889
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000888
- bl FlagReset
+ bl FlagClear
pop {r0}
bx r0
.pool
@@ -55,15 +55,15 @@ sub_808469C: @ 808469C
push {lr}
bl player_avatar_init_params_reset
ldr r0, =0x0000088b
- bl FlagReset
+ bl FlagClear
ldr r0, =0x0000088d
- bl FlagReset
+ bl FlagClear
ldr r0, =0x0000088c
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000889
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000888
- bl FlagReset
+ bl FlagClear
ldr r0, =gUnknown_08271862
bl ScriptContext2_RunNewScript
pop {r0}
@@ -76,15 +76,15 @@ flagmods_08054D70: @ 80846E4
push {lr}
bl player_avatar_init_params_reset
ldr r0, =0x0000088b
- bl FlagReset
+ bl FlagClear
ldr r0, =0x0000088d
- bl FlagReset
+ bl FlagClear
ldr r0, =0x0000088c
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000889
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000888
- bl FlagReset
+ bl FlagClear
pop {r0}
bx r0
.pool
@@ -95,15 +95,15 @@ sub_8084720: @ 8084720
push {r4,lr}
bl player_avatar_init_params_reset
ldr r0, =0x0000088b
- bl FlagReset
+ bl FlagClear
ldr r0, =0x0000088d
- bl FlagReset
+ bl FlagClear
ldr r0, =0x0000088c
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000889
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000888
- bl FlagReset
+ bl FlagClear
ldr r4, =0x00004039
adds r0, r4, 0
bl VarGet
@@ -128,7 +128,7 @@ _08084764:
sub_8084788: @ 8084788
push {lr}
ldr r0, =0x0000088c
- bl FlagReset
+ bl FlagClear
bl sub_8085B2C
bl wild_pokemon_reroll
bl UpdateLocationHistoryForRoamer
@@ -324,8 +324,8 @@ _080848F4:
.pool
thumb_func_end CopyFieldObjectTemplateCoordsToSav1
- thumb_func_start update_saveblock1_field_object_coords
-update_saveblock1_field_object_coords: @ 8084910
+ thumb_func_start Overworld_SetMapObjTemplateCoords
+Overworld_SetMapObjTemplateCoords: @ 8084910
push {r4-r6,lr}
lsls r0, 24
lsrs r5, r0, 24
@@ -356,10 +356,10 @@ _08084944:
pop {r4-r6}
pop {r0}
bx r0
- thumb_func_end update_saveblock1_field_object_coords
+ thumb_func_end Overworld_SetMapObjTemplateCoords
- thumb_func_start update_saveblock1_field_object_movement_behavior
-update_saveblock1_field_object_movement_behavior: @ 808494C
+ thumb_func_start Overworld_SetMapObjTemplateMovementType
+Overworld_SetMapObjTemplateMovementType: @ 808494C
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -387,7 +387,7 @@ _08084978:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end update_saveblock1_field_object_movement_behavior
+ thumb_func_end Overworld_SetMapObjTemplateMovementType
thumb_func_start mapdata_load_assets_to_gpu_and_full_redraw
mapdata_load_assets_to_gpu_and_full_redraw: @ 8084980
@@ -710,9 +710,9 @@ warp_in: @ 8084BD8
bx r0
thumb_func_end warp_in
- thumb_func_start warp1_set
-@ void warp1_set(char bank, char map, char warpid, char enter_x, char enter_y)
-warp1_set: @ 8084BEC
+ thumb_func_start Overworld_SetWarpDestination
+@ void Overworld_SetWarpDestination(char bank, char map, char warpid, char enter_x, char enter_y)
+Overworld_SetWarpDestination: @ 8084BEC
push {r4-r6,lr}
sub sp, 0x8
adds r4, r0, 0
@@ -741,7 +741,7 @@ warp1_set: @ 8084BEC
pop {r0}
bx r0
.pool
- thumb_func_end warp1_set
+ thumb_func_end Overworld_SetWarpDestination
thumb_func_start warp1_set_2
@ void warp1_set_2(char bank, char map, char warpid)
@@ -757,7 +757,7 @@ warp1_set_2: @ 8084C28
movs r3, 0x1
negs r3, r3
str r3, [sp]
- bl warp1_set
+ bl Overworld_SetWarpDestination
add sp, 0x4
pop {r0}
bx r0
@@ -857,7 +857,7 @@ sub_8084CCC: @ 8084CCC
lsls r4, 24
asrs r4, 24
str r4, [sp]
- bl warp1_set
+ bl Overworld_SetWarpDestination
_08084CFA:
add sp, 0x4
pop {r4}
@@ -879,8 +879,8 @@ copy_saved_warp3_bank_and_enter_x_to_warp1: @ 8084D04
.pool
thumb_func_end copy_saved_warp3_bank_and_enter_x_to_warp1
- thumb_func_start sub_8084D1C
-sub_8084D1C: @ 8084D1C
+ thumb_func_start Overworld_SetHealLocationWarp
+Overworld_SetHealLocationWarp: @ 8084D1C
push {r4,r5,lr}
sub sp, 0x8
lsls r0, 24
@@ -911,7 +911,7 @@ _08084D50:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8084D1C
+ thumb_func_end Overworld_SetHealLocationWarp
thumb_func_start sub_8084D5C
sub_8084D5C: @ 8084D5C
@@ -1126,7 +1126,7 @@ _08084EF0:
lsls r4, r6, 24
asrs r4, 24
str r4, [sp]
- bl warp1_set
+ bl Overworld_SetWarpDestination
_08084F0A:
add sp, 0x4
pop {r4-r6}
@@ -1289,7 +1289,7 @@ sub_8084FF8: @ 8084FF8
lsls r4, r5, 24
asrs r4, 24
str r4, [sp]
- bl warp1_set
+ bl Overworld_SetWarpDestination
b _0808504C
_08085030:
bl mapheader_run_script_with_tag_x6
@@ -1365,7 +1365,7 @@ mliX_load_map: @ 8085098
negs r3, r3
str r3, [sp]
adds r2, r3, 0
- bl warp1_set
+ bl Overworld_SetWarpDestination
ldr r4, =gMapHeader
ldrb r0, [r4, 0x14]
cmp r0, 0x3A
@@ -1375,14 +1375,14 @@ _080850C8:
bl warp_shift
bl set_current_map_header_from_sav1_save_old_name
bl CopyFieldObjectTemplatesToSav1
- bl sav2_set_x9_depending_on_sav1_map
+ bl TrySetMapSaveWarpStatus
bl ClearTempFieldEventData
bl wild_pokemon_reroll
bl prev_quest_postbuffer_cursor_backup_reset
adds r0, r6, 0
adds r1, r5, 0
bl sub_80B21B4
- bl sub_809E7B0
+ bl DoTimeBasedEvents
bl sub_80AEDBC
bl sub_8085B2C
bl update_sav1_flash_used_on_map
@@ -1404,7 +1404,7 @@ _08085116:
bl sub_80A0A2C
bl UpdateLocationHistoryForRoamer
bl RoamerMove
- bl sub_80AEE20
+ bl DoCurrentWeather
bl wild_encounter_reset_coro_args
bl mapheader_run_script_with_tag_x5
ldr r2, =gMapHeader
@@ -1463,7 +1463,7 @@ _080851A2:
lsls r0, 24
lsrs r6, r0, 24
bl sub_80EB218
- bl sav2_set_x9_depending_on_sav1_map
+ bl TrySetMapSaveWarpStatus
bl ClearTempFieldEventData
bl wild_pokemon_reroll
bl prev_quest_postbuffer_cursor_backup_reset
@@ -1481,14 +1481,14 @@ _080851A2:
bl sub_80B21B4
cmp r7, 0x1
beq _080851EE
- bl sub_809E7B0
+ bl DoTimeBasedEvents
_080851EE:
bl sub_80AEDBC
bl sub_8085B2C
cmp r5, 0
beq _08085200
ldr r0, =0x00000888
- bl FlagReset
+ bl FlagClear
_08085200:
bl update_sav1_flash_used_on_map
bl sav1_reset_battle_music_maybe
@@ -1699,19 +1699,19 @@ _080853AC:
lsls r4, 24
lsrs r5, r4, 24
adds r0, r5, 0
- bl sub_8088F74
+ bl MetatileBehavior_IsDeepSouthWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080853E8
adds r0, r5, 0
- bl sub_8088F58
+ bl MetatileBehavior_IsNonAnimDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08085442
adds r0, r5, 0
- bl sub_8088EFC
+ bl MetatileBehavior_IsDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1858,8 +1858,8 @@ _080854DE:
.pool
thumb_func_end update_sav1_flash_used_on_map
- thumb_func_start sub_80854EC
-sub_80854EC: @ 80854EC
+ thumb_func_start Overworld_SetFlashLevel
+Overworld_SetFlashLevel: @ 80854EC
push {lr}
adds r1, r0, 0
cmp r1, 0
@@ -1878,7 +1878,7 @@ _080854FE:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80854EC
+ thumb_func_end Overworld_SetFlashLevel
thumb_func_start sav1_get_flash_used_on_map
sav1_get_flash_used_on_map: @ 8085514
@@ -2263,14 +2263,14 @@ _080857E8:
.pool
thumb_func_end sub_8085784
- thumb_func_start sav1_set_battle_music_maybe
-sav1_set_battle_music_maybe: @ 80857F4
+ thumb_func_start Overworld_SetSavedMusic
+Overworld_SetSavedMusic: @ 80857F4
ldr r1, =gSaveBlock1Ptr
ldr r1, [r1]
strh r0, [r1, 0x2C]
bx lr
.pool
- thumb_func_end sav1_set_battle_music_maybe
+ thumb_func_end Overworld_SetSavedMusic
thumb_func_start sav1_reset_battle_music_maybe
sav1_reset_battle_music_maybe: @ 8085800
@@ -2339,8 +2339,8 @@ _08085890:
bx r0
thumb_func_end sub_8085810
- thumb_func_start sub_8085898
-sub_8085898: @ 8085898
+ thumb_func_start Overworld_ChangeMusicToDefault
+Overworld_ChangeMusicToDefault: @ 8085898
push {r4,lr}
bl GetCurrentMapMusic
adds r4, r0, 0
@@ -2360,10 +2360,10 @@ _080858BE:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_8085898
+ thumb_func_end Overworld_ChangeMusicToDefault
- thumb_func_start sub_80858C4
-sub_80858C4: @ 80858C4
+ thumb_func_start Overworld_ChangeMusicTo
+Overworld_ChangeMusicTo: @ 80858C4
push {r4,lr}
lsls r0, 16
lsrs r4, r0, 16
@@ -2383,7 +2383,7 @@ _080858E4:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80858C4
+ thumb_func_end Overworld_ChangeMusicTo
thumb_func_start is_warp1_light_level_8_or_9
is_warp1_light_level_8_or_9: @ 80858F0
@@ -3175,7 +3175,7 @@ CB2_NewGame: @ 8085EF8
bl ScriptContext1_Init
bl ScriptContext2_Disable
ldr r1, =gFieldCallback
- ldr r0, =sub_80FB4E0
+ ldr r0, =ExecuteTruckSequence
str r0, [r1]
ldr r1, =gUnknown_03005DB0
movs r0, 0
@@ -3525,8 +3525,8 @@ _08086278:
_08086286:
bl CopyFieldObjectTemplateCoordsToSav1
_0808628A:
- bl sub_809757C
- bl sub_809E7B0
+ bl UnfreezeMapObjects
+ bl DoTimeBasedEvents
bl sub_8084788
ldr r0, =gMapHeader
ldrh r1, [r0, 0x12]
@@ -3640,7 +3640,7 @@ VBlankCB_Field: @ 8086390
bl sub_80BA0A8
bl FieldUpdateBgTilemapScroll
bl TransferPlttBuffer
- bl sub_80A09D0
+ bl TransferTilesetAnimsBuffer
pop {r0}
bx r0
thumb_func_end VBlankCB_Field
diff --git a/asm/rom6.s b/asm/rom6.s
index b18ec1b3e..b729369c8 100644
--- a/asm/rom6.s
+++ b/asm/rom6.s
@@ -167,7 +167,7 @@ sub_8135578: @ 8135578
cmp r4, 0
bne _081355FC
bl player_get_direction_lower_nybble
- ldr r6, =gFieldEffectSpawnParams
+ ldr r6, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r6, 0x4]
@@ -258,7 +258,7 @@ sub_813561C: @ 813561C
thumb_func_start sub_8135654
sub_8135654: @ 8135654
push {r4,lr}
- bl sub_81797DC
+ bl ShouldDoBrailleStrengthEffect
lsls r0, 24
cmp r0, 0
beq _0813568C
@@ -303,7 +303,7 @@ _081356AC:
sub_81356C4: @ 81356C4
push {lr}
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -380,7 +380,7 @@ hm2_dig: @ 8135760
movs r0, 0x26
bl FieldEffectStart
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -404,7 +404,7 @@ sub_8135780: @ 8135780
lsrs r0, r2, 16
strh r0, [r1, 0x18]
strh r2, [r1, 0x1A]
- bl sub_81795E8
+ bl ShouldDoBrailleDigEffect
lsls r0, 24
cmp r0, 0
bne _081357AC
@@ -422,12 +422,12 @@ sub_81357BC: @ 81357BC
push {r4,lr}
movs r0, 0x26
bl FieldEffectActiveListRemove
- bl sub_81795E8
+ bl ShouldDoBrailleDigEffect
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0
beq _081357D6
- bl sub_817963C
+ bl DoBrailleDigEffect
b _081357EE
_081357D6:
ldr r0, =task08_080A1C44
@@ -3329,7 +3329,7 @@ _081370E2:
thumb_func_start sub_81370FC
sub_81370FC: @ 81370FC
push {r4,lr}
- bl sub_81798D0
+ bl ShouldDoBrailleFlyEffect
lsls r0, 24
cmp r0, 0
beq _08137134
@@ -3381,7 +3381,7 @@ hm2_flash: @ 8137178
lsls r4, 24
lsrs r4, 24
bl brm_get_pokemon_selection
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
lsls r0, 24
lsrs r0, 24
str r0, [r1]
@@ -4121,7 +4121,7 @@ _081377BC:
add r2, sp, 0x18
bl SetMonData
adds r0, r4, 0
- bl sub_80EE5A4
+ bl GetRibbonCount
strb r0, [r5, 0x1]
movs r7, 0x1
_0813780A:
@@ -4337,7 +4337,7 @@ sub_8137988: @ 8137988
.pool
_081379C8:
ldr r0, =0x0000089a
- bl FlagReset
+ bl FlagClear
_081379CE:
pop {r0}
bx r0
@@ -4629,7 +4629,7 @@ sub_8137C10: @ 8137C10
ldr r0, =gSpecialVar_0x8004
ldrh r0, [r0]
bl sub_8137A98
- bl box_related_two__2
+ bl ShowFieldMessage
pop {r0}
bx r0
.pool
@@ -4705,7 +4705,7 @@ _08137CAC:
thumb_func_start sub_8137CB4
sub_8137CB4: @ 8137CB4
push {lr}
- ldr r0, =sub_8177888
+ ldr r0, =CB2_ShowDiploma
bl SetMainCallback2
bl ScriptContext2_Enable
pop {r0}
@@ -5030,7 +5030,7 @@ _08137F6E:
movs r1, 0
bl VarSet
movs r0, 0
- bl sav1_set_battle_music_maybe
+ bl Overworld_SetSavedMusic
_08137F7C:
pop {r4}
pop {r0}
@@ -5056,14 +5056,14 @@ sub_8137F90: @ 8137F90
sub_8137FB0: @ 8137FB0
push {lr}
ldr r0, =0x0000088d
- bl FlagReset
+ bl FlagClear
pop {r0}
bx r0
.pool
thumb_func_end sub_8137FB0
- thumb_func_start sub_8137FC0
-sub_8137FC0: @ 8137FC0
+ thumb_func_start CountSSTidalStep
+CountSSTidalStep: @ 8137FC0
push {r4,lr}
lsls r0, 16
lsrs r4, r0, 16
@@ -5091,10 +5091,10 @@ _08137FF6:
pop {r4}
pop {r1}
bx r1
- thumb_func_end sub_8137FC0
+ thumb_func_end CountSSTidalStep
- thumb_func_start sub_8137FFC
-sub_8137FFC: @ 8137FFC
+ thumb_func_start GetSSTidalLocation
+GetSSTidalLocation: @ 8137FFC
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -5203,7 +5203,7 @@ _081380CE:
pop {r4-r7}
pop {r1}
bx r1
- thumb_func_end sub_8137FFC
+ thumb_func_end GetSSTidalLocation
thumb_func_start is_tile_that_overrides_player_control
is_tile_that_overrides_player_control: @ 81380D8
@@ -5399,13 +5399,13 @@ sub_8138240: @ 8138240
bl GetMultiplayerId
lsls r0, 24
lsrs r7, r0, 24
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r5, r0, 24
movs r4, 0
cmp r4, r5
bcs _0813828A
- ldr r0, =gUnknown_0858D144
+ ldr r0, =gTVStringVarPtrs
mov r8, r0
_08138262:
cmp r7, r4
@@ -6378,7 +6378,7 @@ sub_8138AA4: @ 8138AA4
sub_8138AC0: @ 8138AC0
push {lr}
ldr r0, =gStringVar4
- bl box_related_two__2
+ bl ShowFieldMessage
pop {r0}
bx r0
.pool
@@ -6485,7 +6485,7 @@ sub_8138B8C: @ 8138B8C
movs r0, 0x13
movs r1, 0
movs r3, 0x6
- bl warp1_set
+ bl Overworld_SetWarpDestination
b _08138BC2
.pool
_08138BB0:
@@ -6496,7 +6496,7 @@ _08138BB0:
movs r0, 0x13
movs r1, 0x1
movs r3, 0x6
- bl warp1_set
+ bl Overworld_SetWarpDestination
_08138BC2:
add sp, 0x4
pop {r0}
@@ -6537,7 +6537,7 @@ _08138BF6:
thumb_func_start sub_8138C04
sub_8138C04: @ 8138C04
push {r4,lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7051,7 +7051,7 @@ sub_8138FEC: @ 8138FEC
ldr r1, =gSpecialVar_0x8004
ldr r0, =0x000001f5
strh r0, [r1]
- bl FlagReset
+ bl FlagClear
pop {r0}
bx r0
.pool
@@ -7060,7 +7060,7 @@ sub_8138FEC: @ 8138FEC
thumb_func_start sub_8139004
sub_8139004: @ 8139004
push {lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7084,7 +7084,7 @@ _0813902A:
thumb_func_start sub_8139030
sub_8139030: @ 8139030
push {lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7108,7 +7108,7 @@ _08139056:
thumb_func_start sub_813905C
sub_813905C: @ 813905C
push {lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7132,7 +7132,7 @@ _08139082:
thumb_func_start sub_8139088
sub_8139088: @ 8139088
push {lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7156,7 +7156,7 @@ _081390AE:
thumb_func_start sub_81390B4
sub_81390B4: @ 81390B4
push {lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7295,7 +7295,7 @@ RemoveScriptFieldObject: @ 81391AC
thumb_func_start sub_81391D0
sub_81391D0: @ 81391D0
push {lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7347,7 +7347,7 @@ sub_8139228: @ 8139228
sub_8139238: @ 8139238
push {lr}
ldr r0, =gStringVar1
- bl sub_8165284
+ bl GetEreaderTrainerName
pop {r0}
bx r0
.pool
@@ -7479,7 +7479,7 @@ _08139342:
thumb_func_start sub_8139348
sub_8139348: @ 8139348
push {lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7507,7 +7507,7 @@ sub_8139370: @ 8139370
movs r1, 0x1
mov r0, sp
strb r1, [r0]
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7519,7 +7519,7 @@ sub_8139370: @ 8139370
mov r2, sp
bl SetMonData
adds r0, r4, 0
- bl sub_80EE5A4
+ bl GetRibbonCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -7538,7 +7538,7 @@ _081393B6:
thumb_func_start sub_81393C8
sub_81393C8: @ 81393C8
push {lr}
- bl sub_8139688
+ bl GetLeadMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -7858,7 +7858,7 @@ sub_8139648: @ 8139648
cmp r0, 0x1
beq _08139664
movs r0, 0x14
- bl sub_80AED7C
+ bl SetSav1Weather
_08139664:
pop {r0}
bx r0
@@ -7876,14 +7876,14 @@ sub_8139668: @ 8139668
cmp r0, 0x1
beq _08139684
movs r0, 0x15
- bl sub_80AED7C
+ bl SetSav1Weather
_08139684:
pop {r0}
bx r0
thumb_func_end sub_8139668
- thumb_func_start sub_8139688
-sub_8139688: @ 8139688
+ thumb_func_start GetLeadMonIndex
+GetLeadMonIndex: @ 8139688
push {r4-r6,lr}
bl CalculatePlayerPartyCount
lsls r0, 24
@@ -7926,7 +7926,7 @@ _081396D8:
pop {r4-r6}
pop {r1}
bx r1
- thumb_func_end sub_8139688
+ thumb_func_end GetLeadMonIndex
thumb_func_start sub_81396E0
sub_81396E0: @ 81396E0
@@ -8050,7 +8050,7 @@ sub_81397C4: @ 81397C4
cmp r1, r0
bls _081397E0
movs r0, 0
- bl sub_80EF340
+ bl TV_PrintIntToStringVar
b _08139862
.pool
_081397E0:
@@ -9094,7 +9094,7 @@ _0813A062:
lsls r0, 2
adds r0, r7
ldr r0, [r0]
- bl box_related_two__2
+ bl ShowFieldMessage
pop {r4-r7}
pop {r0}
bx r0
@@ -9996,7 +9996,7 @@ _0813A7C6:
lsrs r0, 22
adds r0, r1
ldr r0, [r0]
- bl box_related_two__2
+ bl ShowFieldMessage
pop {r0}
bx r0
.pool
@@ -10036,7 +10036,7 @@ sub_813A820: @ 813A820
lsls r0, r4, 2
adds r0, r1
ldr r0, [r0]
- bl box_related_two__2
+ bl ShowFieldMessage
ldr r0, =0x00004031
adds r1, r4, 0
bl VarSet
@@ -10056,7 +10056,7 @@ sub_813A854: @ 813A854
lsrs r0, 14
adds r0, r4
ldr r0, [r0]
- bl box_related_two__2
+ bl ShowFieldMessage
pop {r4}
pop {r0}
bx r0
@@ -11039,7 +11039,7 @@ _0813B0F8:
ldr r0, =sub_813B160
movs r1, 0x8
bl CreateTask
- ldr r3, =gFieldEffectSpawnParams
+ ldr r3, =gFieldEffectArguments
movs r0, 0x1
str r0, [r3]
movs r0, 0x3A
@@ -11074,7 +11074,7 @@ _0813B13A:
adds r0, r5, r0
ldrb r2, [r0]
movs r0, 0x1
- bl update_saveblock1_field_object_coords
+ bl Overworld_SetMapObjTemplateCoords
add sp, 0x4
pop {r4,r5}
pop {r0}
@@ -11238,7 +11238,7 @@ _0813B27E:
cmp r0, r4
beq _0813B2A6
ldr r0, =0x000008d7
- bl FlagReset
+ bl FlagClear
_0813B2A6:
ldr r0, =0x00004036
lsrs r1, r7, 16
@@ -11564,7 +11564,7 @@ sub_813B534: @ 813B534
str r0, [r2]
movs r0, 0
str r0, [r1]
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0813B552
@@ -11651,11 +11651,11 @@ _0813B5FE:
lsrs r0, 24
ldr r1, =gSpecialVar_0x8004
movs r2, 0x2
- bl link_0800A448
+ bl SendBlock
b _0813B708
.pool
_0813B614:
- bl sub_800A550
+ bl GetBlockReceivedStatus
movs r1, 0x2
ands r1, r0
cmp r1, 0
@@ -11669,14 +11669,14 @@ _0813B622:
b _0813B790
_0813B62E:
ldr r5, =gSpecialVar_0x8005
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
movs r1, 0x80
lsls r1, 1
adds r0, r1
ldrh r0, [r0]
strh r0, [r5]
movs r0, 0x1
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
ldr r0, =gSpecialVar_0x8004
ldrh r0, [r0]
cmp r0, 0x1
@@ -11738,11 +11738,11 @@ _0813B6C2:
lsrs r0, 24
ldr r1, =gScriptResult
movs r2, 0x2
- bl link_0800A448
+ bl SendBlock
b _0813B708
.pool
_0813B6E4:
- bl sub_800A550
+ bl GetBlockReceivedStatus
movs r1, 0x1
ands r1, r0
cmp r1, 0
@@ -11752,11 +11752,11 @@ _0813B6E4:
cmp r0, 0
beq _0813B790
ldr r1, =gScriptResult
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
ldrh r0, [r0]
strh r0, [r1]
movs r0, 0
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
_0813B708:
ldr r1, =gTasks
lsls r0, r4, 2
@@ -11778,7 +11778,7 @@ _0813B728:
cmp r0, 0x2
bne _0813B790
ldr r0, =gUnknown_0824979B
- bl box_related_two__3
+ bl ShowFieldAutoScrollMessage
b _0813B790
.pool
_0813B74C:
@@ -11787,7 +11787,7 @@ _0813B74C:
cmp r0, 0x3
bne _0813B790
ldr r0, =gUnknown_0824979B
- bl box_related_two__3
+ bl ShowFieldAutoScrollMessage
b _0813B790
.pool
_0813B764:
@@ -12075,7 +12075,7 @@ sub_813B9A0: @ 813B9A0
cmp r1, r0
bne _0813B9B6
movs r0, 0x3
- bl sub_8084D1C
+ bl Overworld_SetHealLocationWarp
_0813B9B6:
pop {r0}
bx r0
@@ -12187,16 +12187,16 @@ sub_813BA60: @ 813BA60
adds r1, r2
strh r0, [r1]
ldr r0, =0x00000315
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000316
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00000317
- bl FlagReset
+ bl FlagClear
movs r0, 0xC6
lsls r0, 2
- bl FlagReset
+ bl FlagClear
ldr r0, =0x000002da
- bl FlagReset
+ bl FlagClear
ldr r0, =0x00004095
movs r1, 0x1
bl VarSet
diff --git a/asm/rom_80A5C6C.s b/asm/rom_80A5C6C.s
index ea75d4e2b..bf273ac53 100644
--- a/asm/rom_80A5C6C.s
+++ b/asm/rom_80A5C6C.s
@@ -74,7 +74,7 @@ _080A5D00:
lsls r0, 24
cmp r0, 0
beq _080A5D28
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0x18]
ldrb r1, [r2, 0x4]
@@ -94,7 +94,7 @@ _080A5D28:
lsls r0, 24
cmp r0, 0
beq _080A5D60
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r5, 2
@@ -112,7 +112,7 @@ _080A5D28:
b _080A5D7E
.pool
_080A5D60:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r5, 2
@@ -180,7 +180,7 @@ _080A5DDA:
lsls r0, 24
cmp r0, 0
beq _080A5E04
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0x18]
ldrb r1, [r2, 0x4]
@@ -195,7 +195,7 @@ _080A5E00:
ldr r2, [r2, 0x8]
b _080A5E42
_080A5E04:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
lsls r1, r4, 2
@@ -285,7 +285,7 @@ _080A5EC0:
_080A5EC8:
cmp r5, 0xC9
bne _080A5F58
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
lsls r1, r4, 2
@@ -344,7 +344,7 @@ _080A5F44:
lsls r0, 16
lsrs r0, 16
_080A5F4E:
- ldr r1, =gUnknown_08300D38
+ ldr r1, =gMonFrontPicCoords
lsls r0, 2
b _080A5F90
.pool
@@ -352,7 +352,7 @@ _080A5F58:
ldr r0, =0x00000181
cmp r5, r0
bne _080A5F7C
- ldr r0, =gUnknown_08525F78
+ ldr r0, =gCastformFrontSpriteCoords
ldr r1, =gBattleMonForms
adds r1, r4, r1
ldrb r1, [r1]
@@ -366,11 +366,11 @@ _080A5F7C:
lsls r0, 1
cmp r5, r0
bls _080A5F8C
- ldr r0, =gUnknown_08300D38
+ ldr r0, =gMonFrontPicCoords
b _080A5F92
.pool
_080A5F8C:
- ldr r1, =gUnknown_08300D38
+ ldr r1, =gMonFrontPicCoords
_080A5F8E:
lsls r0, r5, 2
_080A5F90:
@@ -419,11 +419,11 @@ _080A5FE8:
lsls r0, 1
cmp r4, r0
bls _080A5FF8
- ldr r0, =gUnknown_08305DCC
+ ldr r0, =gEnemyMonElevation
b _080A5FFC
.pool
_080A5FF8:
- ldr r0, =gUnknown_08305DCC
+ ldr r0, =gEnemyMonElevation
adds r0, r7, r0
_080A5FFC:
ldrb r5, [r0]
@@ -531,7 +531,7 @@ sub_80A60AC: @ 80A60AC
lsls r0, 24
cmp r0, 0
beq _080A60E8
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0x18]
ldrb r1, [r2, 0x4]
@@ -546,7 +546,7 @@ _080A60E4:
ldrh r1, [r2]
b _080A610E
_080A60E8:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r4, 2
@@ -554,7 +554,7 @@ _080A60E8:
ldrh r0, [r1, 0x2]
cmp r0, 0
bne _080A610C
- ldr r1, =gUnknown_02038438
+ ldr r1, =gAnimSpeciesByBanks
lsls r0, r4, 1
adds r0, r1
ldrh r1, [r0]
@@ -654,7 +654,7 @@ sub_80A6190: @ 80A6190
lsls r0, 24
cmp r0, 0
beq _080A61E4
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r5, 2
@@ -672,7 +672,7 @@ sub_80A6190: @ 80A6190
b _080A6202
.pool
_080A61E4:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r5, 2
@@ -724,9 +724,9 @@ GetAnimBankSpriteId: @ 80A6240
adds r1, r0, 0
cmp r0, 0
bne _080A6268
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _080A62B6
@@ -737,9 +737,9 @@ GetAnimBankSpriteId: @ 80A6240
_080A6268:
cmp r0, 0x1
bne _080A6288
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
- bl sub_80A6A90
+ bl AnimBankSpriteExists
lsls r0, 24
cmp r0, 0
beq _080A62B6
@@ -750,22 +750,22 @@ _080A6268:
_080A6288:
cmp r1, 0x2
bne _080A62A4
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r4, 0x2
eors r0, r4
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A62B6
b _080A62C0
.pool
_080A62A4:
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r4, 0x2
eors r0, r4
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
bne _080A62C0
@@ -1242,7 +1242,7 @@ sub_80A65EC: @ 80A65EC
ldrh r1, [r4, 0x22]
adds r0, r1
strh r0, [r4, 0x34]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -1421,7 +1421,7 @@ move_anim_8074EE0: @ 80A674C
adds r4, r0, 0
bl FreeSpriteOamMatrix
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -1439,7 +1439,7 @@ sub_80A6760: @ 80A6760
ldrh r1, [r4, 0x22]
adds r0, r1
strh r0, [r4, 0x34]
- ldr r5, =gAnimationBankAttacker
+ ldr r5, =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -1518,7 +1518,7 @@ sub_80A67F4: @ 80A67F4
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
pop {r4}
pop {r0}
bx r0
@@ -1537,7 +1537,7 @@ sub_80A6814: @ 80A6814
movs r1, 0
bl SetGpuReg
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r4}
pop {r0}
bx r0
@@ -1547,7 +1547,7 @@ sub_80A6814: @ 80A6814
sub_80A6838: @ 80A6838
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -1575,13 +1575,13 @@ sub_80A6864: @ 80A6864
lsls r1, 16
lsrs r5, r1, 16
mov r8, r5
- ldr r7, =gAnimationBankAttacker
+ ldr r7, =gAnimBankAttacker
ldrb r0, [r7]
movs r1, 0
bl sub_80A5C6C
lsls r0, 24
lsrs r6, r0, 24
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0
bl sub_80A5C6C
@@ -1729,7 +1729,7 @@ sub_80A6980: @ 80A6980
lsls r1, 24
cmp r1, 0
bne _080A69A8
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
bl sub_80A60AC
@@ -1765,7 +1765,7 @@ sub_80A69CC: @ 80A69CC
lsls r1, 24
cmp r1, 0
bne _080A69F0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
bl sub_80A60AC
@@ -1777,7 +1777,7 @@ sub_80A69CC: @ 80A69CC
b _080A6A04
.pool
_080A69F0:
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A60AC
@@ -1810,7 +1810,7 @@ _080A6A04:
GetBankSide: @ 80A6A30
lsls r0, 24
lsrs r0, 24
- ldr r1, =gBanksBySide
+ ldr r1, =gBanksByIdentity
adds r0, r1
ldrb r1, [r0]
movs r0, 0x1
@@ -1823,15 +1823,15 @@ GetBankSide: @ 80A6A30
GetBankIdentity: @ 80A6A44
lsls r0, 24
lsrs r0, 24
- ldr r1, =gBanksBySide
+ ldr r1, =gBanksByIdentity
adds r0, r1
ldrb r0, [r0]
bx lr
.pool
thumb_func_end GetBankIdentity
- thumb_func_start GetBankByPlayerAI
-GetBankByPlayerAI: @ 80A6A54
+ thumb_func_start GetBankByIdentity
+GetBankByIdentity: @ 80A6A54
push {r4,lr}
lsls r0, 24
lsrs r3, r0, 24
@@ -1840,7 +1840,7 @@ GetBankByPlayerAI: @ 80A6A54
ldrb r2, [r0]
cmp r1, r2
bcs _080A6A7E
- ldr r4, =gBanksBySide
+ ldr r4, =gBanksByIdentity
ldrb r0, [r4]
cmp r0, r3
beq _080A6A7E
@@ -1860,10 +1860,10 @@ _080A6A7E:
pop {r1}
bx r1
.pool
- thumb_func_end GetBankByPlayerAI
+ thumb_func_end GetBankByIdentity
- thumb_func_start sub_80A6A90
-sub_80A6A90: @ 80A6A90
+ thumb_func_start AnimBankSpriteExists
+AnimBankSpriteExists: @ 80A6A90
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -1872,18 +1872,18 @@ sub_80A6A90: @ 80A6A90
lsls r0, 24
cmp r0, 0
beq _080A6ABC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
cmp r0, r4
beq _080A6B0A
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
cmp r0, r4
beq _080A6B0A
b _080A6B18
.pool
_080A6ABC:
- ldr r0, =gBanksBySide
+ ldr r0, =gBanksByIdentity
adds r0, r4, r0
ldrb r0, [r0]
cmp r0, 0xFF
@@ -1926,17 +1926,17 @@ _080A6B1A:
pop {r4,r5}
pop {r1}
bx r1
- thumb_func_end sub_80A6A90
+ thumb_func_end AnimBankSpriteExists
- thumb_func_start battle_type_is_double
-battle_type_is_double: @ 80A6B20
+ thumb_func_start IsDoubleBattle
+IsDoubleBattle: @ 80A6B20
ldr r0, =gBattleTypeFlags
ldr r0, [r0]
movs r1, 0x1
ands r0, r1
bx lr
.pool
- thumb_func_end battle_type_is_double
+ thumb_func_end IsDoubleBattle
thumb_func_start sub_80A6B30
sub_80A6B30: @ 80A6B30
@@ -2061,9 +2061,9 @@ sub_80A6BFC: @ 80A6BFC
b _080A6C60
.pool
_080A6C30:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl sub_80A8364
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0x1
@@ -2271,21 +2271,21 @@ _080A6DBE:
movs r0, 0x3
movs r1, 0
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x3
movs r1, 0x1
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
b _080A6DE8
_080A6DD4:
movs r0, 0x3
movs r1, 0
movs r2, 0x1
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
movs r0, 0x3
movs r1, 0x1
movs r2, 0
- bl lcd_bg_operations
+ bl SetAnimBgAttribute
_080A6DE8:
pop {r0}
bx r0
@@ -2934,7 +2934,7 @@ sub_80A7270: @ 80A7270
cmp r0, 0
bne _080A72A6
adds r0, r7, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A72B4
@@ -2976,7 +2976,7 @@ _080A72B4:
lsls r0, 30
cmp r0, 0
bne _080A7312
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0, 0x4]
lsls r0, r7, 1
@@ -3372,7 +3372,7 @@ _080A75F6:
_080A7602:
cmp r7, 0
beq _080A7614
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
adds r1, r0, 0
adds r1, 0x10
@@ -3383,7 +3383,7 @@ _080A7614:
mov r0, r8
cmp r0, 0
beq _080A7628
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
adds r1, r0, 0
adds r1, 0x10
@@ -3394,11 +3394,11 @@ _080A7628:
mov r0, r9
cmp r0, 0
beq _080A764E
- ldr r6, =gAnimationBankAttacker
+ ldr r6, =gAnimBankAttacker
ldrb r0, [r6]
movs r5, 0x2
eors r0, r5
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A764E
@@ -3413,11 +3413,11 @@ _080A764E:
mov r0, r10
cmp r0, 0
beq _080A7674
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
movs r5, 0x2
eors r0, r5
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A7674
@@ -3496,15 +3496,15 @@ _080A76F2:
cmp r5, 0
beq _080A771A
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A771A
movs r0, 0
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
adds r0, 0x10
@@ -3514,15 +3514,15 @@ _080A771A:
cmp r6, 0
beq _080A7746
movs r0, 0x2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A7746
movs r0, 0x2
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
adds r1, r0, 0
@@ -3534,15 +3534,15 @@ _080A7746:
cmp r7, 0
beq _080A7772
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A7772
movs r0, 0x1
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
adds r1, r0, 0
@@ -3555,15 +3555,15 @@ _080A7772:
cmp r0, 0
beq _080A77A0
movs r0, 0x3
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A77A0
movs r0, 0x3
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
adds r1, r0, 0
@@ -3592,7 +3592,7 @@ sub_80A77B4: @ 80A77B4
push {lr}
lsls r0, 24
lsrs r0, 24
- bl GetBankByPlayerAI
+ bl GetBankByIdentity
lsls r0, 24
lsrs r0, 24
pop {r1}
@@ -3670,7 +3670,7 @@ _080A7838:
_080A7842:
adds r0, r5, 0
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -3682,7 +3682,7 @@ _080A7842:
_080A785C:
ldrh r0, [r6, 0x8]
strh r0, [r5, 0x2E]
- ldr r4, =gAnimationBankTarget
+ ldr r4, =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -3701,7 +3701,7 @@ _080A785C:
strh r0, [r5, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
pop {r4-r7}
@@ -3716,7 +3716,7 @@ sub_80A78AC: @ 80A78AC
adds r6, r0, 0
movs r1, 0x1
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -3730,7 +3730,7 @@ _080A78CC:
ldr r4, =gBattleAnimArgs
ldrh r0, [r4, 0x8]
strh r0, [r6, 0x2E]
- ldr r5, =gAnimationBankTarget
+ ldr r5, =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
bl sub_80A5C6C
@@ -3768,7 +3768,7 @@ sub_80A791C: @ 80A791C
cmp r0, 0
beq _080A7930
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080A7930:
pop {r4}
pop {r0}
@@ -3799,17 +3799,17 @@ _080A7954:
adds r0, r5, 0
adds r1, r4, 0
bl sub_80A69CC
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
b _080A7976
.pool
_080A796C:
adds r0, r5, 0
adds r1, r4, 0
bl sub_80A6980
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
_080A7976:
ldrb r6, [r0]
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -3844,7 +3844,7 @@ _080A798E:
strh r0, [r5, 0x36]
ldr r0, =sub_80A6EEC
str r0, [r5, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r5, 0
bl StoreSpriteCallbackInData6
pop {r4-r7}
@@ -4070,7 +4070,7 @@ _080A7B60:
cmp r1, r0
bne _080A7B90
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080A7B90:
pop {r4,r5}
pop {r0}
@@ -4090,7 +4090,7 @@ sub_80A7B98: @ 80A7B98
cmp r3, 0xFF
bne _080A7BBC
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080A7BE2
.pool
_080A7BBC:
@@ -4210,7 +4210,7 @@ _080A7C78:
b _080A7CAC
_080A7CA6:
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080A7CAC:
pop {r4,r5}
pop {r0}
@@ -4230,7 +4230,7 @@ sub_80A7CB4: @ 80A7CB4
cmp r2, 0xFF
bne _080A7CD8
adds r0, r4, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
b _080A7CEE
.pool
_080A7CD8:
@@ -4554,7 +4554,7 @@ _080A7F42:
lsls r0, 24
cmp r0, 0
beq _080A7F78
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r0, [r0, 0x18]
ldrh r2, [r0]
@@ -4571,7 +4571,7 @@ _080A7F78:
lsls r0, 24
cmp r0, 0
bne _080A7FD8
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r5, 2
@@ -4606,7 +4606,7 @@ _080A7FD0:
b _080A8026
.pool
_080A7FD8:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
lsls r0, r5, 2
@@ -4641,7 +4641,7 @@ _080A8018:
b _080A8042
.pool
_080A8024:
- ldr r0, =gUnknown_08300D38
+ ldr r0, =gMonFrontPicCoords
_080A8026:
lsls r1, r2, 2
adds r1, r0
@@ -4807,7 +4807,7 @@ sub_80A8140: @ 80A8140
push {lr}
lsls r0, 24
lsrs r2, r0, 24
- ldr r0, =gHappinessMoveAnim
+ ldr r0, =gAnimFriendship
ldrb r0, [r0]
movs r1, 0
cmp r0, 0x1E
@@ -4823,7 +4823,7 @@ _080A815E:
ldr r0, =gBattleAnimArgs
strh r1, [r0, 0xE]
adds r0, r2, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
pop {r0}
bx r0
.pool
@@ -4837,9 +4837,9 @@ sub_80A8174: @ 80A8174
lsls r0, 24
lsrs r4, r0, 24
adds r7, r4, 0
- ldr r6, =gAnimationBankTarget
+ ldr r6, =gAnimBankTarget
ldrb r0, [r6]
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A81B4
@@ -4863,10 +4863,10 @@ sub_80A8174: @ 80A8174
orrs r0, r2
strb r0, [r1, 0x5]
_080A81B4:
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
mov r8, r0
ldrb r0, [r0]
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A81EC
@@ -4894,7 +4894,7 @@ _080A81EC:
ldrb r0, [r6]
movs r5, 0x2
eors r0, r5
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A8224
@@ -4922,7 +4922,7 @@ _080A8224:
mov r1, r8
ldrb r0, [r1]
eors r0, r5
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A825C
@@ -4968,7 +4968,7 @@ _080A8286:
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl b_side_obj__get_some_boolean
+ bl IsAnimBankSpriteVisible
lsls r0, 24
cmp r0, 0
beq _080A82C8
@@ -5083,8 +5083,8 @@ _080A835C:
bx r1
thumb_func_end sub_80A8328
- thumb_func_start GetBankIdentity_permutated
-GetBankIdentity_permutated: @ 80A8364
+ thumb_func_start sub_80A8364
+sub_80A8364: @ 80A8364
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
@@ -5109,7 +5109,7 @@ _080A838C:
pop {r4}
pop {r1}
bx r1
- thumb_func_end GetBankIdentity_permutated
+ thumb_func_end sub_80A8364
thumb_func_start sub_80A8394
sub_80A8394: @ 80A8394
@@ -5155,7 +5155,7 @@ sub_80A8394: @ 80A8394
bl AllocSpritePalette
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, =gBattleSpritesGfx
+ ldr r4, =gMonSpritesGfxPtr
ldr r0, [r4]
cmp r0, 0
beq _080A8412
@@ -5200,7 +5200,7 @@ _080A8412:
lsrs r0, 24
cmp r0, 0x1
beq _080A845E
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
ldr r2, [sp, 0x40]
@@ -5213,7 +5213,7 @@ _080A845E:
lsls r0, r6, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
movs r3, 0xBE
lsls r3, 1
@@ -5226,7 +5226,7 @@ _080A8488:
lsls r0, r6, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
movs r2, 0xBE
lsls r2, 1
@@ -5263,7 +5263,7 @@ _080A84B0:
lsrs r0, 24
cmp r0, 0x1
beq _080A84F6
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r1, [r0]
ldr r3, [sp, 0x40]
@@ -5276,7 +5276,7 @@ _080A84F6:
lsls r0, r6, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
movs r2, 0xBE
lsls r2, 1
@@ -5294,7 +5294,7 @@ _080A8524:
lsls r0, r6, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
movs r3, 0xBE
lsls r3, 1
@@ -5305,7 +5305,7 @@ _080A8524:
mov r3, r8
bl LoadSpecialPokePic_2
_080A8540:
- ldr r5, =gBattleSpritesGfx
+ ldr r5, =gMonSpritesGfxPtr
ldr r0, [r5]
movs r4, 0xBE
lsls r4, 1
@@ -5338,7 +5338,7 @@ _080A8540:
mov r2, r10
lsls r1, r2, 16
asrs r1, 16
- ldr r3, =gUnknown_08300D38
+ ldr r3, =gMonFrontPicCoords
b _080A85B2
.pool
_080A85A0:
@@ -5416,7 +5416,7 @@ sub_80A861C: @ 80A861C
lsls r0, 24
cmp r0, 0
beq _080A86C4
- ldr r0, =gUnknown_02039F34
+ ldr r0, =gContestResources
ldr r0, [r0]
ldr r2, [r0, 0x18]
ldrb r1, [r2, 0x4]
@@ -5490,7 +5490,7 @@ _080A86C4:
lsls r0, 24
cmp r0, 0
bne _080A8790
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
mov r1, r8
@@ -5580,7 +5580,7 @@ _080A8784:
b _080A8864
.pool
_080A8790:
- ldr r0, =gUnknown_020244D0
+ ldr r0, =gBattleSpritesDataPtr
ldr r0, [r0]
ldr r0, [r0]
mov r1, r8
@@ -5662,7 +5662,7 @@ _080A8834:
add r0, r8
ldrb r0, [r0]
lsls r0, 2
- ldr r1, =gUnknown_08525F78
+ ldr r1, =gCastformFrontSpriteCoords
adds r4, r0, r1
b _080A8866
.pool
@@ -5671,13 +5671,13 @@ _080A8850:
lsls r0, 1
cmp r7, r0
bls _080A8860
- ldr r4, =gUnknown_08300D38
+ ldr r4, =gMonFrontPicCoords
b _080A8866
.pool
_080A8860:
lsls r1, r7, 2
_080A8862:
- ldr r0, =gUnknown_08300D38
+ ldr r0, =gMonFrontPicCoords
_080A8864:
adds r4, r1, r0
_080A8866:
@@ -5807,7 +5807,7 @@ _080A8946:
bl sub_80A5C6C
lsls r0, 24
lsrs r7, r0, 24
- bl battle_type_is_double
+ bl IsDoubleBattle
lsls r0, 24
cmp r0, 0
beq _080A8998
@@ -5941,7 +5941,7 @@ sub_80A8A6C: @ 80A8A6C
push {r4,lr}
adds r4, r0, 0
bl sub_80A6838
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -5998,7 +5998,7 @@ _080A8AB6:
sub_80A8AEC: @ 80A8AEC
push {r4,lr}
adds r4, r0, 0
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -6054,7 +6054,7 @@ sub_80A8B64: @ 80A8B64
push {r4,lr}
adds r4, r0, 0
bl sub_80A6838
- ldr r0, =gAnimationBankAttacker
+ ldr r0, =gAnimBankAttacker
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -6081,7 +6081,7 @@ _080A8B9C:
strh r0, [r4, 0x22]
ldr r0, =sub_80A67D8
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4}
@@ -6106,7 +6106,7 @@ sub_80A8BC4: @ 80A8BC4
lsrs r0, 24
movs r6, 0
strh r0, [r5, 0x8]
- ldr r7, =gAnimationBankAttacker
+ ldr r7, =gAnimBankAttacker
ldrb r0, [r7]
bl GetBankSide
lsls r0, 24
@@ -6283,7 +6283,7 @@ _080A8D58:
ldr r0, =0x00002771
bl FreeSpritePaletteByTag
adds r0, r5, 0
- bl move_anim_task_del
+ bl DestroyAnimVisualTask
_080A8D6C:
pop {r4,r5}
pop {r0}
@@ -6389,7 +6389,7 @@ _080A8E26:
sub_80A8E30: @ 80A8E30
push {r4,r5,lr}
adds r5, r0, 0
- ldr r4, =gAnimationBankAttacker
+ ldr r4, =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
bl sub_80A5C6C
@@ -6465,7 +6465,7 @@ _080A8EC4:
cmp r0, r1
bge _080A8EDC
adds r0, r4, 0
- bl move_anim_8072740
+ bl DestroyAnimSprite
_080A8EDC:
pop {r4,r5}
pop {r0}
@@ -6487,7 +6487,7 @@ sub_80A8EE4: @ 80A8EE4
ldrh r1, [r4, 0x22]
adds r0, r1
strh r0, [r4, 0x36]
- ldr r0, =gAnimationBankTarget
+ ldr r0, =gAnimBankTarget
ldrb r0, [r0]
bl GetBankSide
lsls r0, 24
@@ -6514,7 +6514,7 @@ _080A8F32:
strh r0, [r4, 0x22]
ldr r0, =sub_80A6EEC
str r0, [r4, 0x1C]
- ldr r1, =move_anim_8072740
+ ldr r1, =DestroyAnimSprite
adds r0, r4, 0
bl StoreSpriteCallbackInData6
pop {r4,r5}
diff --git a/asm/save.s b/asm/save.s
deleted file mode 100644
index 825da0756..000000000
--- a/asm/save.s
+++ /dev/null
@@ -1,164 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
- thumb_func_start sub_8153688
-sub_8153688: @ 8153688
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0xB
- bls _081536A2
- b _081537C2
-_081536A2:
- lsls r0, 2
- ldr r1, =_081536B4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081536B4:
- .4byte _081536E4
- .4byte _081536F4
- .4byte _081536FE
- .4byte _0815371A
- .4byte _0815372C
- .4byte _08153742
- .4byte _08153758
- .4byte _08153762
- .4byte _08153778
- .4byte _0815378C
- .4byte _08153796
- .4byte _081537A8
-_081536E4:
- ldr r0, =gSoftResetDisabled
- movs r1, 0x1
- strb r1, [r0]
- movs r0, 0x1
- strh r0, [r4]
- b _081537C2
- .pool
-_081536F4:
- bl sub_800ADF8
- movs r0, 0x2
- strh r0, [r4]
- b _081537C2
-_081536FE:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _081537C2
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08153714
- bl save_serialize_map
-_08153714:
- movs r0, 0x3
- strh r0, [r4]
- b _081537C2
-_0815371A:
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08153726
- bl sub_8076D5C
-_08153726:
- bl sub_8153380
- b _08153752
-_0815372C:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r1, r0, 16
- cmp r1, 0x5
- bne _081537C2
- movs r0, 0
- strh r0, [r4, 0x2]
- strh r1, [r4]
- b _081537C2
-_08153742:
- bl sub_81533AC
- lsls r0, 24
- cmp r0, 0
- beq _08153752
- movs r0, 0x6
- strh r0, [r4]
- b _081537C2
-_08153752:
- movs r0, 0x4
- strh r0, [r4]
- b _081537C2
-_08153758:
- bl sub_81533E0
- movs r0, 0x7
- strh r0, [r4]
- b _081537C2
-_08153762:
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0815376E
- bl sav2_gender2_inplace_and_xFE
-_0815376E:
- bl sub_800ADF8
- movs r0, 0x8
- strh r0, [r4]
- b _081537C2
-_08153778:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _081537C2
- bl sub_8153408
- movs r0, 0x9
- strh r0, [r4]
- b _081537C2
-_0815378C:
- bl sub_800ADF8
- movs r0, 0xA
- strh r0, [r4]
- b _081537C2
-_08153796:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _081537C2
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _081537C2
-_081537A8:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- ble _081537C2
- ldr r1, =gSoftResetDisabled
- movs r0, 0
- strb r0, [r1]
- adds r0, r2, 0
- bl DestroyTask
-_081537C2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8153688
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/save_failed_screen.s b/asm/save_failed_screen.s
deleted file mode 100644
index 182ff8954..000000000
--- a/asm/save_failed_screen.s
+++ /dev/null
@@ -1,707 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8178F44
-sub_8178F44: @ 8178F44
- push {r4,r5,lr}
- sub sp, 0x18
- adds r5, r0, 0
- adds r4, r1, 0
- adds r3, r2, 0
- lsls r3, 24
- add r0, sp, 0x14
- movs r2, 0
- strb r2, [r0]
- adds r1, r0, 0
- movs r0, 0xF
- strb r0, [r1, 0x1]
- movs r0, 0x3
- strb r0, [r1, 0x2]
- ldr r0, =gUnknown_0203BD0E
- ldrb r0, [r0]
- lsls r4, 27
- lsrs r4, 24
- lsrs r3, 21
- adds r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- str r2, [sp]
- str r2, [sp, 0x4]
- str r1, [sp, 0x8]
- str r2, [sp, 0xC]
- str r5, [sp, 0x10]
- movs r1, 0x1
- adds r2, r4, 0
- bl AddTextPrinterParametrized2
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8178F44
-
- thumb_func_start DoSaveFailedScreen
-DoSaveFailedScreen: @ 8178F90
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =sub_8178FDC
- bl SetMainCallback2
- ldr r0, =gUnknown_0203BCFC
- strh r4, [r0]
- ldr r1, =gUnknown_0203BCFE
- movs r2, 0
- movs r0, 0
- strh r0, [r1]
- strh r0, [r1, 0x2]
- ldr r0, =gUnknown_0203BD0E
- strb r2, [r0]
- strb r2, [r0, 0x1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoSaveFailedScreen
-
- thumb_func_start sub_8178FC8
-sub_8178FC8: @ 8178FC8
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_8178FC8
-
- thumb_func_start sub_8178FDC
-sub_8178FDC: @ 8178FDC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r7, r0, r1
- ldrb r0, [r7]
- cmp r0, 0
- beq _08178FF8
- cmp r0, 0x1
- bne _08178FF8
- b _0817925C
-_08178FF8:
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xE
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xC
- movs r1, 0
- bl SetGpuReg
- movs r0, 0xA
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x8
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1C
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1E
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x18
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1A
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x14
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x16
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x10
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x12
- movs r1, 0
- bl SetGpuReg
- add r1, sp, 0x4
- movs r0, 0
- strh r0, [r1]
- ldr r2, =0x040000d4
- str r1, [r2]
- movs r1, 0xC0
- lsls r1, 19
- str r1, [r2, 0x4]
- ldr r0, =0x8100c000
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- movs r3, 0
- mov r8, r3
- str r3, [sp, 0x8]
- add r4, sp, 0x8
- str r4, [r2]
- movs r0, 0xE0
- lsls r0, 19
- str r0, [r2, 0x4]
- ldr r0, =0x85000100
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- add r0, sp, 0x4
- mov r3, r8
- strh r3, [r0]
- str r0, [r2]
- movs r0, 0xA0
- lsls r0, 19
- str r0, [r2, 0x4]
- ldr r0, =0x81000200
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- ldr r0, =gUnknown_085B0E04
- bl LZ77UnCompVram
- ldr r0, =gUnknown_085B0A80
- ldr r1, =0x06007000
- bl LZ77UnCompVram
- ldr r0, =gUnknown_085B0C0C
- ldr r1, =0x06007800
- bl LZ77UnCompVram
- ldr r0, =gUnknown_085EFDE4
- ldr r1, =0x06010020
- bl LZ77UnCompVram
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_085EFD88
- movs r0, 0
- movs r2, 0x3
- bl InitBgsFromTemplates
- ldr r5, =0x0201e000
- movs r0, 0
- adds r1, r5, 0
- bl SetBgTilemapBuffer
- mov r0, r8
- str r0, [sp, 0x8]
- ldr r2, =0x05000200
- adds r0, r4, 0
- adds r1, r5, 0
- bl CpuSet
- ldr r1, =gUnknown_0850E87C
- movs r2, 0x90
- lsls r2, 1
- movs r6, 0x85
- lsls r6, 2
- movs r0, 0
- adds r3, r6, 0
- bl LoadBgTiles
- ldr r0, =gUnknown_085EFD94
- bl InitWindows
- ldr r0, =gUnknown_085EFD9C
- bl AddWindowWithoutTileMap
- ldr r4, =gUnknown_0203BD0E
- strb r0, [r4]
- ldrb r0, [r4]
- movs r1, 0x80
- lsls r1, 4
- adds r2, r5, r1
- movs r1, 0x7
- bl SetWindowAttribute
- ldr r0, =gUnknown_085EFDA4
- bl AddWindowWithoutTileMap
- strb r0, [r4, 0x1]
- ldrb r0, [r4, 0x1]
- movs r3, 0xE8
- lsls r3, 5
- adds r5, r3
- movs r1, 0x7
- adds r2, r5, 0
- bl SetWindowAttribute
- bl DeactivateAllTextPrinters
- bl ResetSpriteData
- bl ResetTasks
- bl ResetPaletteFade
- ldr r0, =gUnknown_085B0A00
- movs r1, 0
- movs r2, 0x40
- bl LoadPalette
- ldr r0, =gUnknown_085EFDC4
- movs r1, 0x80
- lsls r1, 1
- movs r2, 0x20
- bl LoadPalette
- ldr r0, =gUnknown_0850FEFC
- movs r1, 0xE0
- movs r2, 0x20
- bl LoadPalette
- ldr r0, =gUnknown_0860F074
- movs r1, 0xF0
- movs r2, 0x20
- bl LoadPalette
- ldrb r0, [r4]
- movs r1, 0
- adds r2, r6, 0
- movs r3, 0xE
- bl SetWindowBorderStyle
- ldrb r0, [r4, 0x1]
- movs r1, 0
- adds r2, r6, 0
- movs r3, 0xE
- bl SetWindowBorderStyle
- ldrb r0, [r4, 0x1]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldrb r0, [r4]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldrb r0, [r4, 0x1]
- movs r1, 0x2
- bl CopyWindowToVram
- ldrb r0, [r4]
- movs r1, 0x1
- bl CopyWindowToVram
- ldr r0, =gText_SaveFailedCheckingBackup
- movs r1, 0x1
- movs r2, 0
- bl sub_8178F44
- movs r0, 0x1
- negs r0, r0
- mov r1, r8
- str r1, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r0, 0x1
- bl EnableInterrupts
- ldr r0, =sub_8178FC8
- bl SetVBlankCallback
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- ldrb r0, [r7]
- adds r0, 0x1
- strb r0, [r7]
- b _08179272
- .pool
-_0817925C:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _08179272
- ldr r0, =sub_8179288
- bl SetMainCallback2
- ldr r0, =sub_8179454
- bl SetVBlankCallback
-_08179272:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8178FDC
-
- thumb_func_start sub_8179288
-sub_8179288: @ 8179288
- push {r4-r6,lr}
- movs r5, 0
- ldr r0, =gUnknown_0203BCFE
- movs r1, 0x1
- strh r1, [r0]
- ldr r1, =gDamagedSaveSectors
- ldr r0, [r1]
- cmp r0, 0
- beq _081792EC
- adds r6, r1, 0
-_0817929C:
- ldr r0, [r6]
- bl sub_81795AC
- lsls r0, 24
- cmp r0, 0
- bne _08179348
- ldr r4, =gUnknown_0203BD0E
- ldrb r0, [r4]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, =gText_CheckCompleted
- movs r1, 0x1
- movs r2, 0
- bl sub_8178F44
- ldr r0, =gUnknown_0203BCFC
- ldrb r0, [r0]
- bl HandleSavingData
- ldr r0, [r6]
- cmp r0, 0
- beq _081792DC
- ldrb r0, [r4]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, =gText_SaveFailedCheckingBackup
- movs r1, 0x1
- movs r2, 0
- bl sub_8178F44
-_081792DC:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, [r6]
- cmp r0, 0
- beq _081792EC
- cmp r5, 0x2
- bls _0817929C
-_081792EC:
- cmp r5, 0x3
- bne _0817931C
- ldr r0, =gUnknown_0203BD0E
- ldrb r0, [r0]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, =gText_BackupMemoryDamaged
- b _08179330
- .pool
-_0817931C:
- ldr r0, =gUnknown_0203BD0E
- ldrb r0, [r0]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, =gGameContinueCallback
- ldr r0, [r0]
- cmp r0, 0
- bne _08179370
- ldr r0, =gText_SaveCompleteGameCannotContinue
-_08179330:
- movs r1, 0x1
- movs r2, 0
- bl sub_8178F44
- b _0817937A
- .pool
-_08179348:
- ldr r0, =gUnknown_0203BD0E
- ldrb r0, [r0]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, =gText_BackupMemoryDamaged
- movs r1, 0x1
- movs r2, 0
- bl sub_8178F44
- ldr r0, =sub_8179390
- bl SetMainCallback2
- b _08179380
- .pool
-_08179370:
- ldr r0, =gText_SaveCompletePressA
- movs r1, 0x1
- movs r2, 0
- bl sub_8178F44
-_0817937A:
- ldr r0, =sub_81793E0
- bl SetMainCallback2
-_08179380:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8179288
-
- thumb_func_start sub_8179390
-sub_8179390: @ 8179390
- push {lr}
- ldr r1, =gUnknown_0203BCFE
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _081793C4
- ldr r0, =gUnknown_0203BD0E
- ldrb r0, [r0]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, =gText_GamePlayCannotBeContinued
- movs r1, 0x1
- movs r2, 0
- bl sub_8178F44
- ldr r0, =sub_8178FC8
- bl SetVBlankCallback
- ldr r0, =sub_81793E0
- bl SetMainCallback2
-_081793C4:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8179390
-
- thumb_func_start sub_81793E0
-sub_81793E0: @ 81793E0
- push {lr}
- sub sp, 0x4
- ldr r0, =gUnknown_0203BCFE
- movs r2, 0
- strh r2, [r0]
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08179410
- movs r0, 0x1
- negs r0, r0
- str r2, [sp]
- movs r1, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_8178FC8
- bl SetVBlankCallback
- ldr r0, =sub_8179428
- bl SetMainCallback2
-_08179410:
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81793E0
-
- thumb_func_start sub_8179428
-sub_8179428: @ 8179428
- push {r4,r5,lr}
- bl UpdatePaletteFade
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _0817944E
- ldr r5, =gGameContinueCallback
- ldr r0, [r5]
- cmp r0, 0
- bne _08179448
- bl DoSoftReset
- b _0817944E
- .pool
-_08179448:
- bl SetMainCallback2
- str r4, [r5]
-_0817944E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8179428
-
- thumb_func_start sub_8179454
-sub_8179454: @ 8179454
- push {r4,r5,lr}
- ldr r5, =gMain
- ldr r0, [r5, 0x24]
- lsrs r4, r0, 3
- movs r0, 0x7
- ands r4, r0
- ldr r0, =gUnknown_085EFD80
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r5, 0x38]
- str r1, [r5, 0x3C]
- ldrh r1, [r5, 0x3A]
- ldr r0, =0xfffffe00
- ands r0, r1
- movs r1, 0x70
- orrs r0, r1
- strh r0, [r5, 0x3A]
- adds r1, r5, 0
- adds r1, 0x38
- movs r0, 0x48
- strb r0, [r1]
- ldr r0, =gUnknown_0203BCFE
- ldrh r0, [r0]
- cmp r0, 0
- beq _081794DC
- ldr r3, =gUnknown_085EFDAC
- lsls r2, r4, 1
- adds r2, r4
- adds r0, r2, r3
- ldrb r4, [r0]
- ldrh r1, [r5, 0x3C]
- ldr r0, =0xfffffc00
- ands r0, r1
- orrs r0, r4
- strh r0, [r5, 0x3C]
- adds r0, r3, 0x2
- adds r0, r2, r0
- ldrb r1, [r0]
- lsls r1, 4
- adds r3, 0x1
- adds r2, r3
- ldrb r0, [r2]
- lsls r0, 3
- orrs r1, r0
- adds r3, r5, 0
- adds r3, 0x3B
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- b _081794E8
- .pool
-_081794DC:
- ldrh r0, [r5, 0x3C]
- ldr r1, =0xfffffc00
- ands r1, r0
- movs r0, 0x1
- orrs r1, r0
- strh r1, [r5, 0x3C]
-_081794E8:
- ldr r0, =gUnknown_030022F8
- movs r1, 0xE0
- lsls r1, 19
- movs r2, 0x1
- bl CpuFastSet
- ldr r1, =gUnknown_0203BCFE
- ldrh r0, [r1, 0x2]
- cmp r0, 0
- beq _08179500
- subs r0, 0x1
- strh r0, [r1, 0x2]
-_08179500:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8179454
-
- thumb_func_start sub_8179514
-sub_8179514: @ 8179514
- push {r4,lr}
- lsls r0, 16
- lsrs r0, 16
- ldr r4, =gSaveDataBuffer
- movs r3, 0x80
- lsls r3, 5
- movs r1, 0
- adds r2, r4, 0
- bl ReadFlash
- movs r1, 0
- ldr r2, =0x000003ff
-_0817952C:
- ldr r0, [r4]
- cmp r0, 0
- beq _08179540
- movs r0, 0x1
- b _0817954E
- .pool
-_08179540:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- adds r4, 0x4
- cmp r1, r2
- bls _0817952C
- movs r0, 0
-_0817954E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8179514
-
- thumb_func_start sub_8179554
-sub_8179554: @ 8179554
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 16
- lsrs r6, r0, 16
- movs r0, 0
- ldr r1, =0x00000fff
- mov r8, r1
- ldr r7, =ProgramFlashByte
-_08179566:
- movs r4, 0
- adds r5, r0, 0x1
-_0817956A:
- ldr r3, [r7]
- adds r0, r6, 0
- adds r1, r4, 0
- movs r2, 0
- bl _call_via_r3
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r8
- bls _0817956A
- adds r0, r6, 0
- bl sub_8179514
- lsls r0, 24
- lsrs r1, r0, 24
- lsls r0, r5, 16
- lsrs r0, 16
- cmp r1, 0
- beq _08179596
- cmp r0, 0x81
- bls _08179566
-_08179596:
- adds r0, r1, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8179554
-
- thumb_func_start sub_81795AC
-sub_81795AC: @ 81795AC
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r6, 0
-_081795B2:
- movs r4, 0x1
- lsls r4, r6
- adds r0, r5, 0
- ands r0, r4
- cmp r0, 0
- beq _081795CC
- adds r0, r6, 0
- bl sub_8179554
- lsls r0, 24
- cmp r0, 0
- bne _081795CC
- bics r5, r4
-_081795CC:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0x1F
- bls _081795B2
- cmp r5, 0
- beq _081795DE
- movs r0, 0x1
- b _081795E0
-_081795DE:
- movs r0, 0
-_081795E0:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_81795AC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/save_location.s b/asm/save_location.s
deleted file mode 100755
index 1a5b3c6da..000000000
--- a/asm/save_location.s
+++ /dev/null
@@ -1,205 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sav1_are_mapnumbers_in_given_list
-sav1_are_mapnumbers_in_given_list: @ 81AFC84
- push {r4,lr}
- adds r2, r0, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x4
- ldrsb r1, [r0, r1]
- lsls r1, 8
- ldrb r0, [r0, 0x5]
- lsls r0, 24
- asrs r0, 24
- adds r0, r1
- lsls r0, 16
- lsrs r3, r0, 16
- ldrh r0, [r2]
- ldr r1, =0x0000ffff
- cmp r0, r1
- beq _081AFCC4
- adds r4, r1, 0
- adds r1, r2, 0
-_081AFCAA:
- ldrh r0, [r1]
- cmp r0, r3
- bne _081AFCBC
- movs r0, 0x1
- b _081AFCC6
- .pool
-_081AFCBC:
- adds r1, 0x2
- ldrh r0, [r1]
- cmp r0, r4
- bne _081AFCAA
-_081AFCC4:
- movs r0, 0
-_081AFCC6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sav1_are_mapnumbers_in_given_list
-
- thumb_func_start sav1_is_in_pokecenter
-sav1_is_in_pokecenter: @ 81AFCCC
- push {lr}
- ldr r0, =gUnknown_086143BC
- bl sav1_are_mapnumbers_in_given_list
- pop {r1}
- bx r1
- .pool
- thumb_func_end sav1_is_in_pokecenter
-
- thumb_func_start sub_81AFCDC
-sub_81AFCDC: @ 81AFCDC
- push {lr}
- ldr r0, =gUnknown_0861440A
- bl sav1_are_mapnumbers_in_given_list
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81AFCDC
-
- thumb_func_start sub_81AFCEC
-sub_81AFCEC: @ 81AFCEC
- push {lr}
- ldr r0, =gUnknown_0861440E
- bl sav1_are_mapnumbers_in_given_list
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81AFCEC
-
- thumb_func_start sav2_set_x9_bit3_when_sav1_in_pokecenter
-sav2_set_x9_bit3_when_sav1_in_pokecenter: @ 81AFCFC
- push {lr}
- bl sav1_is_in_pokecenter
- cmp r0, 0
- bne _081AFD18
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r1, [r2, 0x9]
- movs r0, 0xFD
- ands r0, r1
- b _081AFD22
- .pool
-_081AFD18:
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r1, [r2, 0x9]
- movs r0, 0x2
- orrs r0, r1
-_081AFD22:
- strb r0, [r2, 0x9]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sav2_set_x9_bit3_when_sav1_in_pokecenter
-
- thumb_func_start sub_81AFD2C
-sub_81AFD2C: @ 81AFD2C
- push {lr}
- bl sub_81AFCDC
- cmp r0, 0
- bne _081AFD48
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r1, [r2, 0x9]
- movs r0, 0xFB
- ands r0, r1
- b _081AFD52
- .pool
-_081AFD48:
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r1, [r2, 0x9]
- movs r0, 0x4
- orrs r0, r1
-_081AFD52:
- strb r0, [r2, 0x9]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81AFD2C
-
- thumb_func_start sub_81AFD5C
-sub_81AFD5C: @ 81AFD5C
- push {lr}
- bl sub_81AFCEC
- cmp r0, 0
- bne _081AFD78
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r1, [r2, 0x9]
- movs r0, 0xF7
- ands r0, r1
- b _081AFD82
- .pool
-_081AFD78:
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r1, [r2, 0x9]
- movs r0, 0x8
- orrs r0, r1
-_081AFD82:
- strb r0, [r2, 0x9]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81AFD5C
-
- thumb_func_start sav2_set_x9_depending_on_sav1_map
-sav2_set_x9_depending_on_sav1_map: @ 81AFD8C
- push {lr}
- bl sav2_set_x9_bit3_when_sav1_in_pokecenter
- bl sub_81AFD2C
- bl sub_81AFD5C
- pop {r0}
- bx r0
- thumb_func_end sav2_set_x9_depending_on_sav1_map
-
- thumb_func_start sub_81AFDA0
-sub_81AFDA0: @ 81AFDA0
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- adds r2, 0xA8
- ldr r0, [r2]
- movs r1, 0x80
- lsls r1, 8
- orrs r0, r1
- movs r1, 0x1
- orrs r0, r1
- movs r1, 0x2
- orrs r0, r1
- movs r1, 0x4
- orrs r0, r1
- movs r1, 0x10
- orrs r0, r1
- movs r1, 0x20
- orrs r0, r1
- movs r1, 0x8
- orrs r0, r1
- str r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_81AFDA0
-
- thumb_func_start sub_81AFDD0
-sub_81AFDD0: @ 81AFDD0
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r1, [r2, 0x9]
- movs r0, 0x80
- orrs r0, r1
- strb r0, [r2, 0x9]
- bx lr
- .pool
- thumb_func_end sub_81AFDD0
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/scrcmd.s b/asm/scrcmd.s
deleted file mode 100644
index 7980ba564..000000000
--- a/asm/scrcmd.s
+++ /dev/null
@@ -1,5744 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start s00_nop
-s00_nop: @ 80992CC
- movs r0, 0
- bx lr
- thumb_func_end s00_nop
-
- thumb_func_start s01_nop
-s01_nop: @ 80992D0
- movs r0, 0
- bx lr
- thumb_func_end s01_nop
-
- thumb_func_start s02_end
-s02_end: @ 80992D4
- push {lr}
- bl StopScript
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s02_end
-
- thumb_func_start s24_execute_ASM_2
-s24_execute_ASM_2: @ 80992E0
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r1, r0, 0
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s24_execute_ASM_2
-
- thumb_func_start s25_extended_cmd
-s25_extended_cmd: @ 80992F8
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- ldr r1, =gUnknown_081DBA64
- lsrs r0, 14
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s25_extended_cmd
-
- thumb_func_start s26_extended_cmd_setvar
-s26_extended_cmd_setvar: @ 8099318
- push {r4-r6,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r6, r0, 0
- ldr r4, =gUnknown_081DBA64
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 14
- adds r0, r4
- ldr r0, [r0]
- bl _call_via_r0
- strh r0, [r6]
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s26_extended_cmd_setvar
-
- thumb_func_start s23_execute_ASM
-s23_execute_ASM: @ 809934C
- push {lr}
- bl ScriptReadWord
- bl _call_via_r0
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s23_execute_ASM
-
- thumb_func_start s27_set_to_waitstate
-s27_set_to_waitstate: @ 809935C
- push {lr}
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end s27_set_to_waitstate
-
- thumb_func_start s05_goto
-s05_goto: @ 8099368
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r1, r0, 0
- adds r0, r4, 0
- bl ScriptJump
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s05_goto
-
- thumb_func_start s03_return
-s03_return: @ 8099380
- push {lr}
- bl ScriptReturn
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s03_return
-
- thumb_func_start s04_call
-s04_call: @ 809938C
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r1, r0, 0
- adds r0, r4, 0
- bl ScriptCall
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s04_call
-
- thumb_func_start s06_if_jump
-@ int s06_if_jump(script_env *env)
-s06_if_jump: @ 80993A4
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r4, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadWord
- adds r2, r0, 0
- ldr r1, =gUnknown_085102C0
- lsls r0, r4, 1
- adds r0, r4
- ldrb r3, [r5, 0x2]
- adds r0, r3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080993D2
- adds r0, r5, 0
- adds r1, r2, 0
- bl ScriptJump
-_080993D2:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s06_if_jump
-
- thumb_func_start s07_if_call
-s07_if_call: @ 80993E0
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r4, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadWord
- adds r2, r0, 0
- ldr r1, =gUnknown_085102C0
- lsls r0, r4, 1
- adds r0, r4
- ldrb r3, [r5, 0x2]
- adds r0, r3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _0809940E
- adds r0, r5, 0
- adds r1, r2, 0
- bl ScriptCall
-_0809940E:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s07_if_call
-
- thumb_func_start sB8_set_virtual_address
-@ int sB8_set_virtual_address(script_env *env)
-sB8_set_virtual_address: @ 809941C
- push {r4,lr}
- ldr r4, [r0, 0x8]
- subs r4, 0x1
- bl ScriptReadWord
- ldr r1, =gUnknown_020375C4
- subs r0, r4
- str r0, [r1]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sB8_set_virtual_address
-
- thumb_func_start sB9_virtual_jump
-@ int sB9_virtual_jump(script_env *env)
-sB9_virtual_jump: @ 8099438
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r1, r0, 0
- ldr r0, =gUnknown_020375C4
- ldr r0, [r0]
- subs r1, r0
- adds r0, r4, 0
- bl ScriptJump
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sB9_virtual_jump
-
- thumb_func_start sBA_virtual_call
-sBA_virtual_call: @ 809945C
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r1, r0, 0
- ldr r0, =gUnknown_020375C4
- ldr r0, [r0]
- subs r1, r0
- adds r0, r4, 0
- bl ScriptCall
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sBA_virtual_call
-
- thumb_func_start sBB_virtual_if_jump
-sBB_virtual_if_jump: @ 8099480
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r4, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadWord
- ldr r1, =gUnknown_020375C4
- ldr r1, [r1]
- subs r2, r0, r1
- ldr r1, =gUnknown_085102C0
- lsls r0, r4, 1
- adds r0, r4
- ldrb r3, [r5, 0x2]
- adds r0, r3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080994B2
- adds r0, r5, 0
- adds r1, r2, 0
- bl ScriptJump
-_080994B2:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sBB_virtual_if_jump
-
- thumb_func_start sBC_virtual_if_call
-sBC_virtual_if_call: @ 80994C4
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r4, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadWord
- ldr r1, =gUnknown_020375C4
- ldr r1, [r1]
- subs r2, r0, r1
- ldr r1, =gUnknown_085102C0
- lsls r0, r4, 1
- adds r0, r4
- ldrb r3, [r5, 0x2]
- adds r0, r3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080994F6
- adds r0, r5, 0
- adds r1, r2, 0
- bl ScriptCall
-_080994F6:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sBC_virtual_if_call
-
- thumb_func_start s08_jumpstd
-s08_jumpstd: @ 8099508
- push {lr}
- adds r2, r0, 0
- ldr r0, [r2, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r2, 0x8]
- lsls r1, 2
- ldr r0, =gUnknown_081DC2A0
- adds r1, r0
- ldr r0, =gUnknown_081DC2CC
- cmp r1, r0
- bcs _08099528
- ldr r1, [r1]
- adds r0, r2, 0
- bl ScriptJump
-_08099528:
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s08_jumpstd
-
- thumb_func_start s09_callstd
-s09_callstd: @ 8099538
- push {lr}
- adds r2, r0, 0
- ldr r0, [r2, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r2, 0x8]
- lsls r1, 2
- ldr r0, =gUnknown_081DC2A0
- adds r1, r0
- ldr r0, =gUnknown_081DC2CC
- cmp r1, r0
- bcs _08099558
- ldr r1, [r1]
- adds r0, r2, 0
- bl ScriptCall
-_08099558:
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s09_callstd
-
- thumb_func_start s0A_jumpstd_if
-s0A_jumpstd_if: @ 8099568
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, [r3, 0x8]
- ldrb r2, [r0]
- adds r0, 0x1
- str r0, [r3, 0x8]
- ldrb r4, [r0]
- adds r0, 0x1
- str r0, [r3, 0x8]
- ldr r1, =gUnknown_085102C0
- lsls r0, r2, 1
- adds r0, r2
- ldrb r2, [r3, 0x2]
- adds r0, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080995A0
- lsls r0, r4, 2
- ldr r1, =gUnknown_081DC2A0
- adds r1, r0, r1
- ldr r0, =gUnknown_081DC2CC
- cmp r1, r0
- bcs _080995A0
- ldr r1, [r1]
- adds r0, r3, 0
- bl ScriptJump
-_080995A0:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s0A_jumpstd_if
-
- thumb_func_start s0B_callstd_if
-s0B_callstd_if: @ 80995B4
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, [r3, 0x8]
- ldrb r2, [r0]
- adds r0, 0x1
- str r0, [r3, 0x8]
- ldrb r4, [r0]
- adds r0, 0x1
- str r0, [r3, 0x8]
- ldr r1, =gUnknown_085102C0
- lsls r0, r2, 1
- adds r0, r2
- ldrb r2, [r3, 0x2]
- adds r0, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080995EC
- lsls r0, r4, 2
- ldr r1, =gUnknown_081DC2A0
- adds r1, r0, r1
- ldr r0, =gUnknown_081DC2CC
- cmp r1, r0
- bcs _080995EC
- ldr r1, [r1]
- adds r0, r3, 0
- bl ScriptCall
-_080995EC:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s0B_callstd_if
-
- thumb_func_start s0C_restore_execution_after_sCF
-s0C_restore_execution_after_sCF: @ 8099600
- push {lr}
- ldr r1, =gUnknown_020375C0
- ldr r1, [r1]
- bl ScriptJump
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s0C_restore_execution_after_sCF
-
- thumb_func_start s0D_endscript_killram
-s0D_endscript_killram: @ 8099614
- push {r4,lr}
- adds r4, r0, 0
- bl ClearRamScript
- adds r0, r4, 0
- bl StopScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s0D_endscript_killram
-
- thumb_func_start s0E_set_byte
-s0E_set_byte: @ 809962C
- push {lr}
- ldr r1, [r0, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- adds r0, r2, 0
- bl sub_81538C4
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s0E_set_byte
-
- thumb_func_start s0F_u32_var_to_const
-@ int s0F_u32_var_to_const(script_env *env)
-s0F_u32_var_to_const: @ 8099644
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r0, [r4, 0x8]
- ldrb r5, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- adds r0, r4, 0
- bl ScriptReadWord
- lsls r5, 2
- adds r4, 0x64
- adds r4, r5
- str r0, [r4]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s0F_u32_var_to_const
-
- thumb_func_start s12_u32_var_to_ptr
-@ int s12_u32_var_to_ptr(script_env *env)
-s12_u32_var_to_ptr: @ 8099668
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r0, [r4, 0x8]
- ldrb r5, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- adds r0, r4, 0
- bl ScriptReadWord
- lsls r5, 2
- adds r4, 0x64
- adds r4, r5
- ldrb r0, [r0]
- str r0, [r4]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s12_u32_var_to_ptr
-
- thumb_func_start s11_u8_ptr_to_const
-@ int s11_u8_ptr_to_const(script_env *env)
-s11_u8_ptr_to_const: @ 809968C
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadWord
- strb r4, [r0]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s11_u8_ptr_to_const
-
- thumb_func_start s10_u8_var_to_const
-@ int s10_u8_var_to_const(script_env *env)
-s10_u8_var_to_const: @ 80996A4
- ldr r1, [r0, 0x8]
- ldrb r3, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- lsls r3, 2
- adds r2, r0, 0
- adds r2, 0x64
- adds r2, r3
- ldrb r3, [r1]
- str r3, [r2]
- adds r1, 0x1
- str r1, [r0, 0x8]
- movs r0, 0
- bx lr
- thumb_func_end s10_u8_var_to_const
-
- thumb_func_start s13_u8_var_to_ptr
-@ int s13_u8_var_to_ptr(script_env *env)
-s13_u8_var_to_ptr: @ 80996C0
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r0, [r4, 0x8]
- ldrb r5, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- adds r0, r4, 0
- bl ScriptReadWord
- lsls r5, 2
- adds r4, 0x64
- adds r4, r5
- ldr r1, [r4]
- strb r1, [r0]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s13_u8_var_to_ptr
-
- thumb_func_start s14_u32_var_to_var
-s14_u32_var_to_var: @ 80996E4
- ldr r1, [r0, 0x8]
- ldrb r3, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- lsls r3, 2
- adds r0, 0x64
- adds r3, r0, r3
- lsls r2, 2
- adds r0, r2
- ldr r0, [r0]
- str r0, [r3]
- movs r0, 0
- bx lr
- thumb_func_end s14_u32_var_to_var
-
- thumb_func_start s15_u8_ptr_to_ptr
-s15_u8_ptr_to_ptr: @ 8099704
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r5, r0, 0
- adds r0, r4, 0
- bl ScriptReadWord
- ldrb r0, [r0]
- strb r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s15_u8_ptr_to_ptr
-
- thumb_func_start s16_u16_gvar_to_const
-s16_u16_gvar_to_const: @ 8099720
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r4, r0, 0
- adds r0, r5, 0
- bl ScriptReadHalfword
- strh r0, [r4]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s16_u16_gvar_to_const
-
- thumb_func_start s19_u16_gvar_gvar
-s19_u16_gvar_gvar: @ 8099744
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r5, r0, 0
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- ldrh r0, [r0]
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s19_u16_gvar_gvar
-
- thumb_func_start s1A_u16_gvar_gvar
-s1A_u16_gvar_gvar: @ 8099770
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r5, r0, 0
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s1A_u16_gvar_gvar
-
- thumb_func_start compare_012
-compare_012: @ 809979C
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- cmp r0, r1
- bcs _080997AE
- movs r0, 0
- b _080997B8
-_080997AE:
- cmp r0, r1
- beq _080997B6
- movs r0, 0x2
- b _080997B8
-_080997B6:
- movs r0, 0x1
-_080997B8:
- pop {r1}
- bx r1
- thumb_func_end compare_012
-
- thumb_func_start s1B_cmp_u8_var_var
-s1B_cmp_u8_var_var: @ 80997BC
- push {r4,lr}
- adds r4, r0, 0
- ldr r2, [r4, 0x8]
- ldrb r0, [r2]
- lsls r0, 2
- adds r3, r4, 0
- adds r3, 0x64
- adds r0, r3, r0
- ldrb r0, [r0]
- adds r2, 0x1
- str r2, [r4, 0x8]
- ldrb r1, [r2]
- lsls r1, 2
- adds r3, r1
- ldrb r1, [r3]
- adds r2, 0x1
- str r2, [r4, 0x8]
- bl compare_012
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s1B_cmp_u8_var_var
-
- thumb_func_start s1C_cmp_u8_var_const
-s1C_cmp_u8_var_const: @ 80997EC
- push {r4,lr}
- adds r4, r0, 0
- ldr r2, [r4, 0x8]
- ldrb r1, [r2]
- lsls r1, 2
- adds r0, 0x64
- adds r0, r1
- ldrb r0, [r0]
- adds r2, 0x1
- str r2, [r4, 0x8]
- ldrb r1, [r2]
- adds r2, 0x1
- str r2, [r4, 0x8]
- bl compare_012
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s1C_cmp_u8_var_const
-
- thumb_func_start s1D_cmp_u8_var_ptr
-s1D_cmp_u8_var_ptr: @ 8099814
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r2, [r4, 0x8]
- ldrb r1, [r2]
- lsls r1, 2
- adds r0, 0x64
- adds r0, r1
- ldrb r5, [r0]
- adds r2, 0x1
- str r2, [r4, 0x8]
- adds r0, r4, 0
- bl ScriptReadWord
- ldrb r1, [r0]
- adds r0, r5, 0
- bl compare_012
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s1D_cmp_u8_var_ptr
-
- thumb_func_start s1E_cmp_u8_ptr_var
-s1E_cmp_u8_ptr_var: @ 8099840
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- ldrb r0, [r0]
- ldr r3, [r4, 0x8]
- ldrb r2, [r3]
- lsls r2, 2
- adds r1, r4, 0
- adds r1, 0x64
- adds r1, r2
- ldrb r1, [r1]
- adds r3, 0x1
- str r3, [r4, 0x8]
- bl compare_012
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s1E_cmp_u8_ptr_var
-
- thumb_func_start s1F_cmp_u8_ptr_const
-s1F_cmp_u8_ptr_const: @ 809986C
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- ldrb r0, [r0]
- ldr r2, [r4, 0x8]
- ldrb r1, [r2]
- adds r2, 0x1
- str r2, [r4, 0x8]
- bl compare_012
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s1F_cmp_u8_ptr_const
-
- thumb_func_start s20_cmp_u8_ptr_ptr
-s20_cmp_u8_ptr_ptr: @ 809988C
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- ldrb r5, [r0]
- adds r0, r4, 0
- bl ScriptReadWord
- ldrb r1, [r0]
- adds r0, r5, 0
- bl compare_012
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s20_cmp_u8_ptr_ptr
-
- thumb_func_start s21_cmp_u16_gvar_const
-s21_cmp_u16_gvar_const: @ 80998B0
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- ldrh r5, [r0]
- adds r0, r4, 0
- bl ScriptReadHalfword
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r5, 0
- bl compare_012
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s21_cmp_u16_gvar_const
-
- thumb_func_start s22_cmp_u16_gvar_gvar
-s22_cmp_u16_gvar_gvar: @ 80998E0
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r5, r0, 0
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- ldrh r2, [r5]
- ldrh r1, [r0]
- adds r0, r2, 0
- bl compare_012
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s22_cmp_u16_gvar_gvar
-
- thumb_func_start s17_u16_gvar_add_const
-s17_u16_gvar_add_const: @ 8099914
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r4, r0, 0
- adds r0, r5, 0
- bl ScriptReadHalfword
- ldrh r1, [r4]
- adds r0, r1
- strh r0, [r4]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s17_u16_gvar_add_const
-
- thumb_func_start sub_809993C
-sub_809993C: @ 809993C
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r5, r0, 0
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldrh r1, [r5]
- subs r1, r0
- strh r1, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_809993C
-
- thumb_func_start s8F_get_random_val
-s8F_get_random_val: @ 809996C
- push {r4,r5,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r5, =gScriptResult
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r4, 0
- bl __umodsi3
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s8F_get_random_val
-
- thumb_func_start sub_80999A0
-sub_80999A0: @ 80999A0
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- ldr r5, =gScriptResult
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl AddBagItem
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80999A0
-
- thumb_func_start sub_80999E4
-sub_80999E4: @ 80999E4
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- ldr r5, =gScriptResult
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl RemoveBagItem
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80999E4
-
- thumb_func_start sub_8099A28
-sub_8099A28: @ 8099A28
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- ldr r5, =gScriptResult
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl CheckBagHasSpace
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099A28
-
- thumb_func_start sub_8099A6C
-sub_8099A6C: @ 8099A6C
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- ldr r5, =gScriptResult
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl CheckBagHasItem
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099A6C
-
- thumb_func_start s48_get_item_type
-s48_get_item_type: @ 8099AB0
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r4, =gScriptResult
- bl GetPocketByItemId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s48_get_item_type
-
- thumb_func_start sub_8099ADC
-sub_8099ADC: @ 8099ADC
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r5, =gScriptResult
- adds r0, r4, 0
- bl sub_80D6D70
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099ADC
-
- thumb_func_start sub_8099B20
-sub_8099B20: @ 8099B20
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r5, =gScriptResult
- adds r0, r4, 0
- bl sub_80D6D1C
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099B20
-
- thumb_func_start sub_8099B64
-sub_8099B64: @ 8099B64
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r4, =gScriptResult
- lsls r0, 24
- lsrs r0, 24
- bl DecorationAdd
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099B64
-
- thumb_func_start sub_8099B90
-sub_8099B90: @ 8099B90
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r4, =gScriptResult
- lsls r0, 24
- lsrs r0, 24
- bl DecorationRemove
- lsls r0, 24
- asrs r0, 24
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099B90
-
- thumb_func_start sub_8099BBC
-sub_8099BBC: @ 8099BBC
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r4, =gScriptResult
- lsls r0, 24
- lsrs r0, 24
- bl DecorationCheckSpace
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099BBC
-
- thumb_func_start sub_8099BE8
-sub_8099BE8: @ 8099BE8
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r4, =gScriptResult
- lsls r0, 24
- lsrs r0, 24
- bl sub_8161918
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099BE8
-
- thumb_func_start s29_flag_set
-@ int s29_flag_set(script_env *env)
-s29_flag_set: @ 8099C14
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl FlagSet
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s29_flag_set
-
- thumb_func_start s2A_flag_clear
-@ int s2A_flag_clear(script_env *env)
-s2A_flag_clear: @ 8099C28
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl FlagReset
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s2A_flag_clear
-
- thumb_func_start s2B_flag_check
-@ int s2B_flag_check(script_env *env)
-s2B_flag_check: @ 8099C3C
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl FlagGet
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s2B_flag_check
-
- thumb_func_start sC3_unknown
-@ int sC3_unknown(script_env *env)
-sC3_unknown: @ 8099C58
- push {lr}
- ldr r1, [r0, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- adds r0, r2, 0
- bl IncrementGameStat
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sC3_unknown
-
- thumb_func_start s9A_unknown
-@ int s9A_unknown(script_env *env)
-s9A_unknown: @ 8099C70
- push {lr}
- ldr r1, [r0, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- adds r0, r2, 0
- bl sub_80B009C
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end s9A_unknown
-
- thumb_func_start s99_unknown
-@ int s99_unknown(script_env *env)
-s99_unknown: @ 8099C8C
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl sub_80854EC
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s99_unknown
-
- thumb_func_start sub_8099CA8
-sub_8099CA8: @ 8099CA8
- push {lr}
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08099CC0
- movs r0, 0
- b _08099CC2
- .pool
-_08099CC0:
- movs r0, 0x1
-_08099CC2:
- pop {r1}
- bx r1
- thumb_func_end sub_8099CA8
-
- thumb_func_start s97_screen_special_effect
-@ int s97_screen_special_effect(script_env *env)
-s97_screen_special_effect: @ 8099CC8
- push {r4,lr}
- adds r4, r0, 0
- ldr r1, [r4, 0x8]
- ldrb r0, [r1]
- adds r1, 0x1
- str r1, [r4, 0x8]
- movs r1, 0
- bl fade_screen
- ldr r1, =sub_8099CA8
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s97_screen_special_effect
-
- thumb_func_start s98_refade_with_timer
-@ int s98_refade_with_timer(script_env *env)
-s98_refade_with_timer: @ 8099CF0
- push {r4,lr}
- adds r4, r0, 0
- ldr r2, [r4, 0x8]
- ldrb r0, [r2]
- adds r2, 0x1
- str r2, [r4, 0x8]
- ldrb r1, [r2]
- adds r2, 0x1
- str r2, [r4, 0x8]
- lsls r1, 24
- asrs r1, 24
- bl fade_screen
- ldr r1, =sub_8099CA8
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s98_refade_with_timer
-
- thumb_func_start sub_8099D20
-@ int sub_8099D20(script_env *env)
-sub_8099D20: @ 8099D20
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r4, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- cmp r4, 0x1
- beq _08099D3E
- cmp r4, 0x1
- bgt _08099D3A
- cmp r4, 0
- beq _08099D60
- b _08099D3E
-_08099D3A:
- cmp r4, 0x2
- beq _08099D60
-_08099D3E:
- ldr r0, =gPlttBufferUnfaded
- ldr r1, =gPaletteDecompressionBuffer
- ldr r2, =0x04000100
- bl CpuSet
- adds r0, r4, 0
- movs r1, 0
- bl fade_screen
- b _08099D72
- .pool
-_08099D60:
- ldr r0, =gPaletteDecompressionBuffer
- ldr r1, =gPlttBufferUnfaded
- ldr r2, =0x04000100
- bl CpuSet
- adds r0, r4, 0
- movs r1, 0
- bl fade_screen
-_08099D72:
- ldr r1, =sub_8099CA8
- adds r0, r5, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8099D20
-
- thumb_func_start s28_pause_asm
-s28_pause_asm: @ 8099D94
- push {lr}
- ldr r1, =gUnknown_020375C8
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- beq _08099DAC
- movs r0, 0
- b _08099DAE
- .pool
-_08099DAC:
- movs r0, 0x1
-_08099DAE:
- pop {r1}
- bx r1
- thumb_func_end s28_pause_asm
-
- thumb_func_start s28_pause
-@ int s28_pause(script_env *env)
-s28_pause: @ 8099DB4
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- ldr r1, =gUnknown_020375C8
- strh r0, [r1]
- ldr r1, =s28_pause_asm
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s28_pause
-
- thumb_func_start s2C_unknown
-@ int s2C_unknown(script_env *env)
-s2C_unknown: @ 8099DD8
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl RtcInitLocalTimeOffset
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s2C_unknown
-
- thumb_func_start s2D_unknown
-@ int s2D_unknown(script_env *env)
-s2D_unknown: @ 8099E10
- push {lr}
- bl sub_809E7B0
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s2D_unknown
-
- thumb_func_start s2E_unknown
-@ int s2E_unknown(script_env *env)
-s2E_unknown: @ 8099E1C
- push {lr}
- bl RtcCalcLocalTime
- ldr r2, =gSpecialVar_0x8000
- ldr r1, =gLocalTime
- movs r0, 0x2
- ldrsb r0, [r1, r0]
- strh r0, [r2]
- ldr r2, =gSpecialVar_0x8001
- movs r0, 0x3
- ldrsb r0, [r1, r0]
- strh r0, [r2]
- ldr r2, =gSpecialVar_0x8002
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- strh r0, [r2]
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s2E_unknown
-
- thumb_func_start sA4_set_weather_data
-@ int sA4_set_weather_data(script_env *env)
-sA4_set_weather_data: @ 8099E54
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl sub_80AED7C
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sA4_set_weather_data
-
- thumb_func_start sA3_set_standard_weather_data
-@ int sA3_set_standard_weather_data(script_env *env)
-sA3_set_standard_weather_data: @ 8099E70
- push {lr}
- bl sub_80AEDBC
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sA3_set_standard_weather_data
-
- thumb_func_start sub_8099E7C
-@ int sub_8099E7C(script_env *env)
-sub_8099E7C: @ 8099E7C
- push {lr}
- bl sub_80AEE20
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8099E7C
-
- thumb_func_start sA6_activate_per_step_callback_eg_ash
-@ int sA6_activate_per_step_callback_eg_ash(script_env *env)
-sA6_activate_per_step_callback_eg_ash: @ 8099E88
- push {lr}
- ldr r1, [r0, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- adds r0, r2, 0
- bl activate_per_step_callback
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sA6_activate_per_step_callback_eg_ash
-
- thumb_func_start sA7_set_new_map_footer
-@ int sA7_set_new_map_footer(script_env *env)
-sA7_set_new_map_footer: @ 8099EA0
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl sub_8085524
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sA7_set_new_map_footer
-
- thumb_func_start s39_warp_sfx
-@ int s39_warp_sfx(script_env *env)
-s39_warp_sfx: @ 8099EBC
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl warp1_set
- bl sub_80AF734
- bl player_avatar_init_params_reset
- movs r0, 0x1
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end s39_warp_sfx
-
- thumb_func_start s3A_warp_new_music
-@ int s3A_warp_new_music(script_env *env)
-s3A_warp_new_music: @ 8099F44
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl warp1_set
- bl sp13E_warp_to_last_warp
- bl player_avatar_init_params_reset
- movs r0, 0x1
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end s3A_warp_new_music
-
- thumb_func_start s3B_warp_keep_music
-@ int s3B_warp_keep_music(script_env *env)
-s3B_warp_keep_music: @ 8099FCC
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl warp1_set
- bl sub_80AF7D0
- bl player_avatar_init_params_reset
- movs r0, 0x1
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end s3B_warp_keep_music
-
- thumb_func_start sub_809A054
-sub_809A054: @ 809A054
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r1, [r0, 0x8]
- ldrb r6, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- ldrb r5, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- mov r4, sp
- adds r4, 0x6
- add r0, sp, 0x4
- adds r1, r4, 0
- bl PlayerGetDestCoords
- cmp r6, 0xFF
- bne _0809A092
- cmp r5, 0xFF
- bne _0809A092
- add r0, sp, 0x4
- ldrh r0, [r0]
- subs r0, 0x7
- lsls r0, 16
- asrs r0, 16
- ldrh r1, [r4]
- subs r1, 0x7
- lsls r1, 16
- asrs r1, 16
- bl sub_8084EBC
- b _0809A0B6
-_0809A092:
- lsls r0, r6, 24
- asrs r0, 24
- lsls r1, r5, 24
- asrs r1, 24
- movs r2, 0x1
- negs r2, r2
- add r3, sp, 0x4
- ldrb r3, [r3]
- subs r3, 0x7
- lsls r3, 24
- asrs r3, 24
- ldrb r4, [r4]
- subs r4, 0x7
- lsls r4, 24
- asrs r4, 24
- str r4, [sp]
- bl warp1_set
-_0809A0B6:
- bl sp13F_fall_to_last_warp
- bl player_avatar_init_params_reset
- movs r0, 0x1
- add sp, 0x8
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_809A054
-
- thumb_func_start s3D_warp_v4
-s3D_warp_v4: @ 809A0C8
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl warp1_set
- bl sub_80AF848
- bl player_avatar_init_params_reset
- movs r0, 0x1
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end s3D_warp_v4
-
- thumb_func_start sub_809A150
-sub_809A150: @ 809A150
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl warp1_set
- bl sub_80AF87C
- bl player_avatar_init_params_reset
- movs r0, 0x1
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_809A150
-
- thumb_func_start s3E_set_new_map
-s3E_set_new_map: @ 809A1D8
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl warp1_set
- movs r0, 0
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end s3E_set_new_map
-
- thumb_func_start s3F_set_new_map_DMA
-s3F_set_new_map_DMA: @ 809A258
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x8
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- str r4, [sp]
- lsls r0, 24
- asrs r0, 24
- str r0, [sp, 0x4]
- movs r0, 0
- mov r1, r9
- mov r2, r8
- adds r3, r6, 0
- bl saved_warp2_set_2
- movs r0, 0
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end s3F_set_new_map_DMA
-
- thumb_func_start sub_809A2DC
-sub_809A2DC: @ 809A2DC
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl sub_8084E2C
- movs r0, 0
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_809A2DC
-
- thumb_func_start sub_809A35C
-sub_809A35C: @ 809A35C
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl sub_8084E80
- movs r0, 0
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_809A35C
-
- thumb_func_start sC4_unknown
-sC4_unknown: @ 809A3DC
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl sub_8084DD4
- movs r0, 0
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sC4_unknown
-
- thumb_func_start s42_get_map_camera_pos
-@ int s42_get_map_camera_pos(script_env *env)
-s42_get_map_camera_pos: @ 809A45C
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r5, r0, 0
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- ldr r2, =gSaveBlock1Ptr
- ldr r1, [r2]
- ldrh r1, [r1]
- strh r1, [r5]
- ldr r1, [r2]
- ldrh r1, [r1, 0x2]
- strh r1, [r0]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s42_get_map_camera_pos
-
- thumb_func_start s43_get_player_party_count
-s43_get_player_party_count: @ 809A498
- push {r4,lr}
- ldr r4, =gScriptResult
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s43_get_player_party_count
-
- thumb_func_start s2F_music_play
-s2F_music_play: @ 809A4B4
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl PlaySE
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s2F_music_play
-
- thumb_func_start s30_music_check_asm
-s30_music_check_asm: @ 809A4C8
- push {lr}
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- beq _0809A4D8
- movs r0, 0
- b _0809A4DA
-_0809A4D8:
- movs r0, 0x1
-_0809A4DA:
- pop {r1}
- bx r1
- thumb_func_end s30_music_check_asm
-
- thumb_func_start s30_music_check
-s30_music_check: @ 809A4E0
- push {lr}
- ldr r1, =s30_music_check_asm
- bl SetupNativeScript
- movs r0, 0x1
- pop {r1}
- bx r1
- .pool
- thumb_func_end s30_music_check
-
- thumb_func_start s31_PlayFanfare
-s31_PlayFanfare: @ 809A4F4
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl PlayFanfare
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s31_PlayFanfare
-
- thumb_func_start s32_fanfare_wait_asm
-s32_fanfare_wait_asm: @ 809A508
- push {lr}
- bl IsFanfareTaskInactive
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end s32_fanfare_wait_asm
-
- thumb_func_start s32_fanfare_wait
-s32_fanfare_wait: @ 809A518
- push {lr}
- ldr r1, =s32_fanfare_wait_asm
- bl SetupNativeScript
- movs r0, 0x1
- pop {r1}
- bx r1
- .pool
- thumb_func_end s32_fanfare_wait
-
- thumb_func_start s33_play_music
-@ int s33_play_music(script_env *env)
-s33_play_music: @ 809A52C
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r2, r0, 16
- adds r5, r2, 0
- ldr r0, [r4, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- cmp r1, 0x1
- bne _0809A54C
- adds r0, r2, 0
- bl sav1_set_battle_music_maybe
-_0809A54C:
- adds r0, r5, 0
- bl PlayNewMapMusic
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s33_play_music
-
- thumb_func_start s34_unknown
-s34_unknown: @ 809A55C
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl sav1_set_battle_music_maybe
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s34_unknown
-
- thumb_func_start s35_fade_to_default
-s35_fade_to_default: @ 809A570
- push {lr}
- bl sub_8085898
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s35_fade_to_default
-
- thumb_func_start s36_fade_to_music
-s36_fade_to_music: @ 809A57C
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl sub_80858C4
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s36_fade_to_music
-
- thumb_func_start s37_fadeout
-s37_fadeout: @ 809A590
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, [r4, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- cmp r1, 0
- beq _0809A5AA
- lsls r0, r1, 26
- lsrs r0, 24
- bl FadeOutBGMTemporarily
- b _0809A5B0
-_0809A5AA:
- movs r0, 0x4
- bl FadeOutBGMTemporarily
-_0809A5B0:
- ldr r1, =IsBGMPausedOrStopped
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s37_fadeout
-
- thumb_func_start s38_fadein
-s38_fadein: @ 809A5C4
- push {lr}
- ldr r1, [r0, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- cmp r2, 0
- beq _0809A5DC
- lsls r0, r2, 26
- lsrs r0, 24
- bl FadeInBGM
- b _0809A5E2
-_0809A5DC:
- movs r0, 0x4
- bl FadeInBGM
-_0809A5E2:
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s38_fadein
-
- thumb_func_start s4F_execute_movement
-s4F_execute_movement: @ 809A5E8
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadWord
- adds r3, r0, 0
- lsls r0, r4, 24
- lsrs r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl exec_movement
- ldr r0, =gUnknown_020375CA
- strh r4, [r0]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s4F_execute_movement
-
- thumb_func_start s50_execute_movement_remote
-s50_execute_movement_remote: @ 809A62C
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadWord
- adds r3, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r2, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- lsls r0, r4, 24
- lsrs r0, 24
- bl exec_movement
- ldr r0, =gUnknown_020375CA
- strh r4, [r0]
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s50_execute_movement_remote
-
- thumb_func_start s51a_0806B288
-s51a_0806B288: @ 809A670
- push {lr}
- ldr r0, =gUnknown_020375CA
- ldrb r0, [r0]
- ldr r1, =gUnknown_020375CE
- ldrb r1, [r1]
- ldr r2, =gUnknown_020375CC
- ldrb r2, [r2]
- bl sub_80D3340
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end s51a_0806B288
-
- thumb_func_start s51_waitmove
-s51_waitmove: @ 809A698
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _0809A6B4
- ldr r0, =gUnknown_020375CA
- strh r1, [r0]
-_0809A6B4:
- ldr r1, =gUnknown_020375CC
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- movs r0, 0x4
- ldrsb r0, [r2, r0]
- strh r0, [r1]
- ldr r1, =gUnknown_020375CE
- movs r0, 0x5
- ldrsb r0, [r2, r0]
- strh r0, [r1]
- ldr r1, =s51a_0806B288
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s51_waitmove
-
- thumb_func_start s52_waitmove_remote
-s52_waitmove_remote: @ 809A6EC
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _0809A708
- ldr r0, =gUnknown_020375CA
- strh r1, [r0]
-_0809A708:
- ldr r0, [r4, 0x8]
- ldrb r2, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- ldr r0, =gUnknown_020375CC
- strh r2, [r0]
- ldr r0, =gUnknown_020375CE
- strh r1, [r0]
- ldr r1, =s51a_0806B288
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s52_waitmove_remote
-
- thumb_func_start s53_hide_sprite
-s53_hide_sprite: @ 809A740
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl RemoveFieldObjectByLocalIdAndMap
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s53_hide_sprite
-
- thumb_func_start s54_hide_sprite_set_coords
-s54_hide_sprite_set_coords: @ 809A768
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r3, [r4, 0x8]
- ldrb r2, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- ldrb r1, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- bl RemoveFieldObjectByLocalIdAndMap
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s54_hide_sprite_set_coords
-
- thumb_func_start s55_show_sprite
-s55_show_sprite: @ 809A798
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl show_sprite
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s55_show_sprite
-
- thumb_func_start s56_show_sprite_set_coords
-s56_show_sprite_set_coords: @ 809A7C0
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r3, [r4, 0x8]
- ldrb r2, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- ldrb r1, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- bl show_sprite
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s56_show_sprite_set_coords
-
- thumb_func_start s57_move_sprites
-s57_move_sprites: @ 809A7F0
- push {r4-r6,lr}
- sub sp, 0x4
- adds r6, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r6, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r6, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r5, 24
- lsrs r5, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- lsls r4, 16
- asrs r4, 16
- lsls r0, 16
- asrs r0, 16
- str r0, [sp]
- adds r0, r5, 0
- adds r3, r4, 0
- bl sub_808EBA8
- movs r0, 0
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s57_move_sprites
-
- thumb_func_start s63_new_sprite_location_permanent
-s63_new_sprite_location_permanent: @ 809A858
- push {r4-r6,lr}
- adds r6, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r6, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r6, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r2, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, 16
- asrs r4, 16
- lsls r2, 16
- asrs r2, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl update_saveblock1_field_object_coords
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end s63_new_sprite_location_permanent
-
- thumb_func_start s64_set_sprite_top_left_corner
-s64_set_sprite_top_left_corner: @ 809A8B0
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl sub_808F254
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s64_set_sprite_top_left_corner
-
- thumb_func_start s58_npc_f1_clear_x20
-s58_npc_f1_clear_x20: @ 809A8D8
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r3, [r4, 0x8]
- ldrb r2, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- ldrb r1, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- movs r3, 0
- bl npc_by_local_id_and_map_set_field_1_bit_x20
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s58_npc_f1_clear_x20
-
- thumb_func_start s59_npc_f1_set_x20
-s59_npc_f1_set_x20: @ 809A908
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r3, [r4, 0x8]
- ldrb r2, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- ldrb r1, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- movs r3, 0x1
- bl npc_by_local_id_and_map_set_field_1_bit_x20
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s59_npc_f1_set_x20
-
- thumb_func_start sA8_unknown
-sA8_unknown: @ 809A938
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r3, [r5, 0x8]
- ldrb r2, [r3]
- adds r3, 0x1
- str r3, [r5, 0x8]
- ldrb r1, [r3]
- adds r4, r3, 0x1
- str r4, [r5, 0x8]
- ldrb r3, [r3, 0x1]
- adds r4, 0x1
- str r4, [r5, 0x8]
- lsls r0, 24
- lsrs r0, 24
- adds r3, 0x53
- lsls r3, 24
- lsrs r3, 24
- bl sub_808E78C
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sA8_unknown
-
- thumb_func_start sA9_unknown
-sA9_unknown: @ 809A974
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r3, [r4, 0x8]
- ldrb r2, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- ldrb r1, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- bl sub_808E7E4
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sA9_unknown
-
- thumb_func_start s5A_face_player
-s5A_face_player: @ 809A9A4
- push {r4,lr}
- ldr r2, =gMapObjects
- ldr r0, =gSelectedMapObject
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r4, r0, r2
- ldrb r0, [r4]
- lsls r0, 31
- cmp r0, 0
- beq _0809A9CC
- bl player_get_direction_lower_nybble
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl FieldObjectFaceOppositeDirection
-_0809A9CC:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s5A_face_player
-
- thumb_func_start s5B_npc_set_direction
-s5B_npc_set_direction: @ 809A9DC
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r1, [r4, 0x8]
- ldrb r3, [r1]
- adds r1, 0x1
- str r1, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl FieldObjectTurnByLocalIdAndMap
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s5B_npc_set_direction
-
- thumb_func_start s65_set_sprite_behaviour
-s65_set_sprite_behaviour: @ 809AA10
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r2, [r4, 0x8]
- ldrb r1, [r2]
- adds r2, 0x1
- str r2, [r4, 0x8]
- lsls r0, 24
- lsrs r0, 24
- bl update_saveblock1_field_object_movement_behavior
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s65_set_sprite_behaviour
-
- thumb_func_start sAA_create_new_sprite
-sAA_create_new_sprite: @ 809AA38
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r6, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r3, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r2, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- lsls r4, 16
- asrs r4, 16
- lsls r3, 16
- asrs r3, 16
- str r2, [sp]
- str r1, [sp, 0x4]
- mov r0, r8
- adds r1, r6, 0
- adds r2, r4, 0
- bl sprite_new
- movs r0, 0
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sAA_create_new_sprite
-
- thumb_func_start sAB_unknown
-sAB_unknown: @ 809AAA8
- push {lr}
- ldr r2, [r0, 0x8]
- ldrb r3, [r2]
- adds r2, 0x1
- str r2, [r0, 0x8]
- ldrb r1, [r2]
- adds r2, 0x1
- str r2, [r0, 0x8]
- adds r0, r3, 0
- bl sub_8097B78
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sAB_unknown
-
- thumb_func_start sub_809AAC4
-sub_809AAC4: @ 809AAC4
- push {r4,lr}
- adds r4, r0, 0
- bl is_c1_link_related_active
- cmp r0, 0
- bne _0809AAE4
- bl sub_80983E8
- ldr r1, =sub_80983C4
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- b _0809AAE6
- .pool
-_0809AAE4:
- movs r0, 0
-_0809AAE6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_809AAC4
-
- thumb_func_start sub_809AAEC
-sub_809AAEC: @ 809AAEC
- push {r4,lr}
- adds r4, r0, 0
- bl is_c1_link_related_active
- cmp r0, 0
- beq _0809AAFC
- movs r0, 0
- b _0809AB3A
-_0809AAFC:
- ldr r2, =gMapObjects
- ldr r0, =gSelectedMapObject
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _0809AB2C
- bl sub_80984A0
- ldr r1, =sub_809847C
- adds r0, r4, 0
- bl SetupNativeScript
- b _0809AB38
- .pool
-_0809AB2C:
- bl sub_80983E8
- ldr r1, =sub_80983C4
- adds r0, r4, 0
- bl SetupNativeScript
-_0809AB38:
- movs r0, 0x1
-_0809AB3A:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809AAEC
-
- thumb_func_start s6B_release
-s6B_release: @ 809AB44
- push {lr}
- bl textbox_close
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- bl FieldObjectClearAnimIfSpecialAnimFinished
- bl sub_80D338C
- bl sub_809757C
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s6B_release
-
- thumb_func_start s6C_release_2
-s6C_release_2: @ 809AB7C
- push {r4,lr}
- bl textbox_close
- ldr r4, =gMapObjects
- ldr r0, =gSelectedMapObject
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r4
- ldrb r0, [r1]
- lsls r0, 31
- cmp r0, 0
- beq _0809AB9E
- adds r0, r1, 0
- bl FieldObjectClearAnimIfSpecialAnimFinished
-_0809AB9E:
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl FieldObjectClearAnimIfSpecialAnimFinished
- bl sub_80D338C
- bl sub_809757C
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s6C_release_2
-
- thumb_func_start s67_execute_box
-s67_execute_box: @ 809ABD4
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- cmp r0, 0
- bne _0809ABE2
- ldr r0, [r4, 0x64]
-_0809ABE2:
- bl box_related_two__2
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s67_execute_box
-
- thumb_func_start sub_809ABF0
-sub_809ABF0: @ 809ABF0
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- cmp r0, 0
- bne _0809ABFE
- ldr r0, [r4, 0x64]
-_0809ABFE:
- bl sub_8098238
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_809ABF0
-
- thumb_func_start s9B_unknown
-s9B_unknown: @ 809AC0C
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r3, r0, 0
- cmp r3, 0
- bne _0809AC1C
- ldr r3, [r4, 0x64]
-_0809AC1C:
- ldr r2, =gTextFlags
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- movs r1, 0x8
- orrs r0, r1
- strb r0, [r2]
- adds r0, r3, 0
- bl box_related_two__3
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s9B_unknown
-
- thumb_func_start sub_809AC3C
-sub_809AC3C: @ 809AC3C
- push {r4,r5,lr}
- sub sp, 0xC
- adds r5, r0, 0
- bl ScriptReadWord
- adds r4, r0, 0
- cmp r4, 0
- bne _0809AC4E
- ldr r4, [r5, 0x64]
-_0809AC4E:
- bl sub_81973A4
- movs r0, 0
- movs r1, 0x1
- bl sub_81973C4
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- movs r1, 0x1
- adds r2, r4, 0
- movs r3, 0
- bl PrintTextOnWindow
- movs r0, 0
- add sp, 0xC
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_809AC3C
-
- thumb_func_start sub_809AC78
-sub_809AC78: @ 809AC78
- push {lr}
- ldr r1, =sub_809833C
- bl SetupNativeScript
- movs r0, 0x1
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809AC78
-
- thumb_func_start s68_close_box
-s68_close_box: @ 809AC8C
- push {lr}
- bl textbox_close
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s68_close_box
-
- thumb_func_start sub_809AC98
-sub_809AC98: @ 809AC98
- push {lr}
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0809ACB8
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0809ACB8
- movs r0, 0
- b _0809ACBA
- .pool
-_0809ACB8:
- movs r0, 0x1
-_0809ACBA:
- pop {r1}
- bx r1
- thumb_func_end sub_809AC98
-
- thumb_func_start sub_809ACC0
-sub_809ACC0: @ 809ACC0
- push {lr}
- ldr r1, =sub_809AC98
- bl SetupNativeScript
- movs r0, 0x1
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809ACC0
-
- thumb_func_start s6E_yes_no
-s6E_yes_no: @ 809ACD4
- push {lr}
- ldr r2, [r0, 0x8]
- ldrb r3, [r2]
- adds r2, 0x1
- str r2, [r0, 0x8]
- ldrb r1, [r2]
- adds r2, 0x1
- str r2, [r0, 0x8]
- adds r0, r3, 0
- bl yes_no_box
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0809ACF6
- movs r0, 0
- b _0809ACFC
-_0809ACF6:
- bl ScriptContext1_Stop
- movs r0, 0x1
-_0809ACFC:
- pop {r1}
- bx r1
- thumb_func_end s6E_yes_no
-
- thumb_func_start s6F_multichoice
-s6F_multichoice: @ 809AD00
- push {r4,r5,lr}
- ldr r2, [r0, 0x8]
- ldrb r5, [r2]
- adds r2, 0x1
- str r2, [r0, 0x8]
- ldrb r1, [r2]
- adds r3, r2, 0x1
- str r3, [r0, 0x8]
- ldrb r2, [r2, 0x1]
- adds r4, r3, 0x1
- str r4, [r0, 0x8]
- ldrb r3, [r3, 0x1]
- adds r4, 0x1
- str r4, [r0, 0x8]
- adds r0, r5, 0
- bl Multichoice
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0809AD2E
- movs r0, 0
- b _0809AD34
-_0809AD2E:
- bl ScriptContext1_Stop
- movs r0, 0x1
-_0809AD34:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s6F_multichoice
-
- thumb_func_start sub_809AD3C
-sub_809AD3C: @ 809AD3C
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- ldr r2, [r0, 0x8]
- ldrb r1, [r2]
- mov r8, r1
- adds r2, 0x1
- str r2, [r0, 0x8]
- ldrb r1, [r2]
- adds r3, r2, 0x1
- str r3, [r0, 0x8]
- ldrb r2, [r2, 0x1]
- adds r5, r3, 0x1
- str r5, [r0, 0x8]
- ldrb r6, [r3, 0x1]
- adds r4, r5, 0x1
- str r4, [r0, 0x8]
- ldrb r3, [r5, 0x1]
- adds r4, 0x1
- str r4, [r0, 0x8]
- str r6, [sp]
- mov r0, r8
- bl sub_80E1E58
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0809AD7A
- movs r0, 0
- b _0809AD80
-_0809AD7A:
- bl ScriptContext1_Stop
- movs r0, 0x1
-_0809AD80:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_809AD3C
-
- thumb_func_start sub_809AD8C
-sub_809AD8C: @ 809AD8C
- movs r0, 0
- bx lr
- thumb_func_end sub_809AD8C
-
- thumb_func_start sub_809AD90
-sub_809AD90: @ 809AD90
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- ldr r2, [r0, 0x8]
- ldrb r1, [r2]
- mov r8, r1
- adds r2, 0x1
- str r2, [r0, 0x8]
- ldrb r1, [r2]
- adds r3, r2, 0x1
- str r3, [r0, 0x8]
- ldrb r2, [r2, 0x1]
- adds r5, r3, 0x1
- str r5, [r0, 0x8]
- ldrb r6, [r3, 0x1]
- adds r4, r5, 0x1
- str r4, [r0, 0x8]
- ldrb r3, [r5, 0x1]
- adds r4, 0x1
- str r4, [r0, 0x8]
- str r6, [sp]
- mov r0, r8
- bl sub_80E21D0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0809ADCE
- movs r0, 0
- b _0809ADD4
-_0809ADCE:
- bl ScriptContext1_Stop
- movs r0, 0x1
-_0809ADD4:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_809AD90
-
- thumb_func_start s73_nop_skip_word
-s73_nop_skip_word: @ 809ADE0
- ldr r1, [r0, 0x8]
- adds r1, 0x4
- str r1, [r0, 0x8]
- movs r0, 0
- bx lr
- thumb_func_end s73_nop_skip_word
-
- thumb_func_start sub_809ADEC
-sub_809ADEC: @ 809ADEC
- ldr r1, [r0, 0x8]
- adds r1, 0x4
- str r1, [r0, 0x8]
- movs r0, 0
- bx lr
- thumb_func_end sub_809ADEC
-
- thumb_func_start sub_809ADF8
-sub_809ADF8: @ 809ADF8
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r3, [r4, 0x8]
- ldrb r1, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- ldrb r2, [r3]
- adds r3, 0x1
- str r3, [r4, 0x8]
- bl sub_80E2900
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_809ADF8
-
- thumb_func_start s76_close_picture_box
-s76_close_picture_box: @ 809AE28
- push {r4,lr}
- adds r4, r0, 0
- bl picbox_close
- adds r1, r0, 0
- cmp r1, 0
- beq _0809AE40
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- b _0809AE42
-_0809AE40:
- movs r0, 0
-_0809AE42:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s76_close_picture_box
-
- thumb_func_start sub_809AE48
-sub_809AE48: @ 809AE48
- push {lr}
- ldr r1, [r0, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- cmp r2, 0
- beq _0809AE5C
- adds r0, r2, 0
- bl sub_812FDA8
-_0809AE5C:
- bl sub_80F8ADC
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_809AE48
-
- thumb_func_start sub_809AE6C
-sub_809AE6C: @ 809AE6C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x20
- bl ScriptReadWord
- adds r1, r0, 0
- ldr r4, =gStringVar4
- adds r1, 0x6
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r2, 0x1
- negs r2, r2
- movs r0, 0x6
- adds r1, r4, 0
- bl GetStringWidth
- lsrs r0, 3
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x1C
- bls _0809AE9C
- movs r7, 0x1C
-_0809AE9C:
- movs r5, 0x4
- ldrb r0, [r4]
- adds r2, r7, 0x2
- add r1, sp, 0x18
- mov r8, r1
- cmp r0, 0xFF
- beq _0809AEC0
- adds r1, r4, 0
-_0809AEAC:
- ldrb r0, [r1]
- adds r1, 0x1
- cmp r0, 0xFE
- bne _0809AEBA
- adds r0, r5, 0x3
- lsls r0, 24
- lsrs r5, r0, 24
-_0809AEBA:
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _0809AEAC
-_0809AEC0:
- cmp r5, 0x12
- bls _0809AEC6
- movs r5, 0x12
-_0809AEC6:
- lsls r0, r2, 24
- lsrs r0, 24
- movs r2, 0x1E
- subs r2, r0
- lsrs r0, r2, 31
- adds r2, r0
- asrs r2, 1
- lsls r2, 24
- adds r0, r5, 0x2
- lsls r0, 24
- lsrs r0, 24
- movs r4, 0x14
- subs r4, r0
- lsrs r0, r4, 31
- adds r4, r0
- asrs r4, 1
- lsls r4, 24
- lsrs r6, r2, 24
- movs r0, 0x80
- lsls r0, 17
- adds r2, r0
- lsrs r2, 24
- lsrs r3, r4, 24
- movs r1, 0x80
- lsls r1, 18
- adds r4, r1
- lsrs r4, 24
- subs r6, r2, r6
- subs r6, 0x1
- lsls r6, 3
- adds r6, 0x3
- lsls r6, 24
- lsrs r6, 24
- subs r4, r3
- subs r4, 0x1
- lsls r4, 27
- lsrs r4, 24
- adds r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- str r7, [sp]
- str r5, [sp, 0x4]
- movs r0, 0xF
- str r0, [sp, 0x8]
- movs r0, 0x1
- str r0, [sp, 0xC]
- add r0, sp, 0x10
- movs r1, 0
- bl sub_8198A50
- ldr r0, [sp, 0x10]
- ldr r1, [sp, 0x14]
- str r0, [sp, 0x18]
- str r1, [sp, 0x1C]
- ldr r5, =gUnknown_03000F30
- mov r0, r8
- bl AddWindow
- strb r0, [r5]
- ldrb r0, [r5]
- movs r1, 0x85
- lsls r1, 2
- movs r2, 0xE0
- bl sub_809882C
- ldrb r0, [r5]
- movs r1, 0
- bl sub_81973FC
- ldrb r0, [r5]
- bl PutWindowTilemap
- ldrb r0, [r5]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldrb r0, [r5]
- ldr r2, =gStringVar4
- str r4, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x6
- adds r3, r6, 0
- bl PrintTextOnWindow
- ldrb r0, [r5]
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0
- add sp, 0x20
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809AE6C
-
- thumb_func_start sub_809AF94
-sub_809AF94: @ 809AF94
- push {lr}
- bl sub_809BDB4
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_809AF94
-
- thumb_func_start sBD_virtual_message
-sBD_virtual_message: @ 809AFA0
- push {lr}
- bl ScriptReadWord
- ldr r1, =gUnknown_020375C4
- ldr r1, [r1]
- subs r0, r1
- bl box_related_two__2
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sBD_virtual_message
-
- thumb_func_start s7D_load_pokename
-s7D_load_pokename: @ 809AFBC
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r1
- ldr r2, [r4]
- movs r1, 0xB
- muls r1, r0
- ldr r0, =gSpeciesNames
- adds r1, r0
- adds r0, r2, 0
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s7D_load_pokename
-
- thumb_func_start s7E_load_first_pokenames
-s7E_load_first_pokenames: @ 809AFFC
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- ldr r0, =gUnknown_085102D4
- lsls r2, 2
- adds r2, r0
- ldr r4, [r2]
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- movs r1, 0xB
- muls r1, r0
- ldr r0, =gSpeciesNames
- adds r1, r0
- adds r0, r4, 0
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s7E_load_first_pokenames
-
- thumb_func_start s7F_load_pokename_team
-s7F_load_pokename_team: @ 809B048
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- ldr r1, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r1
- ldr r4, [r4]
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- adds r0, r4, 0
- bl StringGetEnd10
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s7F_load_pokename_team
-
- thumb_func_start s80_load_item_name
-s80_load_item_name: @ 809B090
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r1
- ldr r1, [r4]
- bl CopyItemName
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s80_load_item_name
-
- thumb_func_start sub_809B0C4
-sub_809B0C4: @ 809B0C4
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r6, [r0]
- adds r0, 0x1
- str r0, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r2, r0, 0
- lsls r2, 16
- lsrs r2, 16
- ldr r0, =gUnknown_085102D4
- lsls r6, 2
- adds r6, r0
- ldr r1, [r6]
- adds r0, r4, 0
- bl CopyItemNameHandlePlural
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809B0C4
-
- thumb_func_start sub_809B114
-sub_809B114: @ 809B114
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- lsls r1, 16
- ldr r0, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r0
- ldr r0, [r4]
- lsrs r1, 11
- ldr r2, =gDecorations + 1
- adds r1, r2
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809B114
-
- thumb_func_start s82_load_item_name
-s82_load_item_name: @ 809B150
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r1
- ldr r2, [r4]
- movs r1, 0xD
- muls r1, r0
- ldr r0, =gMoveNames
- adds r1, r0
- adds r0, r2, 0
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s82_load_item_name
-
- thumb_func_start s83_load_textvar_var
-s83_load_textvar_var: @ 809B190
- push {r4,r5,lr}
- ldr r1, [r0, 0x8]
- ldrb r5, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- bl sub_80EF370
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- ldr r0, =gUnknown_085102D4
- lsls r5, 2
- adds r5, r0
- ldr r0, [r5]
- adds r1, r4, 0
- movs r2, 0
- bl ConvertIntToDecimalStringN
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s83_load_textvar_var
-
- thumb_func_start s84_load_textvar_std_expression
-s84_load_textvar_std_expression: @ 809B1D4
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- ldr r1, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r1
- ldr r2, [r4]
- ldr r1, =gUnknown_0858BAF0
- lsrs r0, 14
- adds r0, r1
- ldr r1, [r0]
- adds r0, r2, 0
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s84_load_textvar_std_expression
-
- thumb_func_start sub_809B214
-sub_809B214: @ 809B214
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- ldr r0, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r0
- ldr r0, [r4]
- lsls r1, 24
- lsrs r1, 24
- bl sub_818E868
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809B214
-
- thumb_func_start s85_load_textvar_pointer
-s85_load_textvar_pointer: @ 809B248
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadWord
- adds r1, r0, 0
- ldr r0, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r0
- ldr r0, [r4]
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s85_load_textvar_pointer
-
- thumb_func_start sBE_virtual_load_text
-sBE_virtual_load_text: @ 809B270
- push {lr}
- bl ScriptReadWord
- adds r1, r0, 0
- ldr r0, =gUnknown_020375C4
- ldr r0, [r0]
- subs r1, r0
- ldr r0, =gStringVar4
- bl StringExpandPlaceholders
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sBE_virtual_load_text
-
- thumb_func_start sBF_virtual_load_textbuffer
-sBF_virtual_load_textbuffer: @ 809B294
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadWord
- adds r1, r0, 0
- ldr r0, =gUnknown_020375C4
- ldr r0, [r0]
- subs r1, r0
- ldr r0, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r0
- ldr r0, [r4]
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sBF_virtual_load_textbuffer
-
- thumb_func_start sC6_load_textvar_box_label
-sC6_load_textvar_box_label: @ 809B2C8
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r1, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r1
- ldr r4, [r4]
- lsls r0, 24
- lsrs r0, 24
- bl sav3_get_box_name
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sC6_load_textvar_box_label
-
- thumb_func_start s79_give_pokemon
-s79_give_pokemon: @ 809B304
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x8
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r6, r0, 0
- lsls r6, 16
- lsrs r6, 16
- ldr r0, [r4, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r4, 0x8]
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r4, 0
- bl ScriptReadWord
- mov r8, r0
- adds r0, r4, 0
- bl ScriptReadWord
- ldr r1, [r4, 0x8]
- ldrb r2, [r1]
- adds r1, 0x1
- str r1, [r4, 0x8]
- ldr r4, =gScriptResult
- str r0, [sp]
- str r2, [sp, 0x4]
- adds r0, r6, 0
- mov r1, r9
- adds r2, r5, 0
- mov r3, r8
- bl sub_80F9244
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- movs r0, 0
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s79_give_pokemon
-
- thumb_func_start s7A_create_egg
-s7A_create_egg: @ 809B384
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r4, =gScriptResult
- bl sub_80F92C8
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s7A_create_egg
-
- thumb_func_start s7B_change_pokedata_AP
-s7B_change_pokedata_AP: @ 809B3B0
- push {r4,r5,lr}
- ldr r1, [r0, 0x8]
- ldrb r5, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r5, 0
- adds r2, r4, 0
- bl sub_80F9400
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end s7B_change_pokedata_AP
-
- thumb_func_start sub_809B3DC
-sub_809B3DC: @ 809B3DC
- push {r4-r7,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r7, r0, 16
- ldr r1, =gScriptResult
- movs r0, 0x6
- strh r0, [r1]
- movs r6, 0
- b _0809B42A
- .pool
-_0809B3F4:
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0809B424
- adds r0, r4, 0
- adds r1, r7, 0
- bl pokemon_has_move
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0809B424
- ldr r0, =gScriptResult
- strh r6, [r0]
- ldr r0, =gSpecialVar_0x8004
- strh r5, [r0]
- b _0809B44A
- .pool
-_0809B424:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_0809B42A:
- cmp r6, 0x5
- bhi _0809B44A
- movs r0, 0x64
- adds r1, r6, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _0809B3F4
-_0809B44A:
- movs r0, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809B3DC
-
- thumb_func_start s90_AddMoney
-@ int s90_AddMoney(script_env *env)
-s90_AddMoney: @ 809B458
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r2, r0, 0
- ldr r0, [r4, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- cmp r1, 0
- bne _0809B47E
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- adds r1, r2, 0
- bl AddMoney
-_0809B47E:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s90_AddMoney
-
- thumb_func_start s91_SubtractMoney
-@ int s91_SubtractMoney(script_env *env)
-s91_SubtractMoney: @ 809B48C
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r2, r0, 0
- ldr r0, [r4, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- cmp r1, 0
- bne _0809B4B2
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- adds r1, r2, 0
- bl SubtractMoney
-_0809B4B2:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s91_SubtractMoney
-
- thumb_func_start s92_check_money
-@ int s92_check_money(script_env *env)
-s92_check_money: @ 809B4C0
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadWord
- adds r2, r0, 0
- ldr r0, [r4, 0x8]
- ldrb r1, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- cmp r1, 0
- bne _0809B4EE
- ldr r4, =gScriptResult
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- adds r1, r2, 0
- bl IsEnoughMoney
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
-_0809B4EE:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s92_check_money
-
- thumb_func_start s93_display_money
-@ int s93_display_money(script_env *env)
-s93_display_money: @ 809B500
- push {r4,r5,lr}
- ldr r1, [r0, 0x8]
- ldrb r5, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r2, r1, 0x1
- str r2, [r0, 0x8]
- ldrb r1, [r1, 0x1]
- adds r2, 0x1
- str r2, [r0, 0x8]
- cmp r1, 0
- bne _0809B530
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- bl GetMoney
- adds r1, r5, 0
- adds r2, r4, 0
- bl sub_80E52EC
-_0809B530:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s93_display_money
-
- thumb_func_start s94_hide_money
-s94_hide_money: @ 809B53C
- push {lr}
- bl sub_80E5384
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s94_hide_money
-
- thumb_func_start s95_update_money
-@ int s95_update_money(script_env *env)
-s95_update_money: @ 809B548
- push {lr}
- ldr r1, [r0, 0x8]
- adds r1, 0x1
- adds r2, r1, 0x1
- str r2, [r0, 0x8]
- ldrb r1, [r1, 0x1]
- adds r2, 0x1
- str r2, [r0, 0x8]
- cmp r1, 0
- bne _0809B56E
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- bl GetMoney
- bl sub_80E52D4
-_0809B56E:
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s95_update_money
-
- thumb_func_start sub_809B578
-sub_809B578: @ 809B578
- push {r4,r5,lr}
- ldr r1, [r0, 0x8]
- ldrb r5, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl GetCoins
- lsls r0, 16
- lsrs r0, 16
- adds r1, r5, 0
- adds r2, r4, 0
- bl ShowCoinsWindow
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_809B578
-
- thumb_func_start sC1_hide_coins
-sC1_hide_coins: @ 809B5A0
- push {lr}
- ldr r1, [r0, 0x8]
- adds r1, 0x2
- str r1, [r0, 0x8]
- bl HideCoinsWindow
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sC1_hide_coins
-
- thumb_func_start sC2_update_coins
-sC2_update_coins: @ 809B5B4
- push {lr}
- ldr r1, [r0, 0x8]
- adds r1, 0x2
- str r1, [r0, 0x8]
- bl GetCoins
- lsls r0, 16
- lsrs r0, 16
- bl PrintCoinsString
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sC2_update_coins
-
- thumb_func_start s5C_trainer_battle_configure_and_start
-s5C_trainer_battle_configure_and_start: @ 809B5D0
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, [r4, 0x8]
- bl TrainerBattleConfigure
- str r0, [r4, 0x8]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s5C_trainer_battle_configure_and_start
-
- thumb_func_start sub_809B5E4
-sub_809B5E4: @ 809B5E4
- push {lr}
- bl sub_80B17E0
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_809B5E4
-
- thumb_func_start sub_809B5F0
-sub_809B5F0: @ 809B5F0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80B1AF8
- str r0, [r4, 0x8]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_809B5F0
-
- thumb_func_start sub_809B604
-@ bool8 sub_809B604(struct script_env *env)
-sub_809B604: @ 809B604
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80B1B10
- str r0, [r4, 0x8]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_809B604
-
- thumb_func_start s60_check_trainer_flag
-s60_check_trainer_flag: @ 809B618
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl trainer_flag_check
- strb r0, [r4, 0x2]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end s60_check_trainer_flag
-
- thumb_func_start s61_set_trainer_flag
-s61_set_trainer_flag: @ 809B63C
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl trainer_flag_set
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s61_set_trainer_flag
-
- thumb_func_start s62_unset_trainer_flag
-s62_unset_trainer_flag: @ 809B658
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl trainer_flag_clear
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s62_unset_trainer_flag
-
- thumb_func_start sB6_load_battle
-sB6_load_battle: @ 809B674
- push {r4-r6,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- ldr r0, [r4, 0x8]
- ldrb r6, [r0]
- adds r0, 0x1
- str r0, [r4, 0x8]
- adds r0, r4, 0
- bl ScriptReadHalfword
- adds r2, r0, 0
- lsls r2, 16
- lsrs r2, 16
- adds r0, r5, 0
- adds r1, r6, 0
- bl sub_80F93A0
- movs r0, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sB6_load_battle
-
- thumb_func_start sub_809B6A8
-sub_809B6A8: @ 809B6A8
- push {lr}
- bl sub_80B08A8
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_809B6A8
-
- thumb_func_start s86_pokemart
-s86_pokemart: @ 809B6B8
- push {lr}
- bl ScriptReadWord
- bl CreatePokemartMenu
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end s86_pokemart
-
- thumb_func_start s87_pokemartdecor
-s87_pokemartdecor: @ 809B6CC
- push {lr}
- bl ScriptReadWord
- bl CreateDecorationShop1Menu
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end s87_pokemartdecor
-
- thumb_func_start s88_pokemartbp
-s88_pokemartbp: @ 809B6E0
- push {lr}
- bl ScriptReadWord
- bl CreateDecorationShop2Menu
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end s88_pokemartbp
-
- thumb_func_start s89_open_casino_game1
-s89_open_casino_game1: @ 809B6F4
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =c2_exit_to_overworld_1_continue_scripts_restart_music
- bl sub_812A540
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- .pool
- thumb_func_end s89_open_casino_game1
-
- thumb_func_start berry_script_cmd
-@ bool8 berry_script_cmd(struct script_env *env)
-berry_script_cmd: @ 809B71C
- push {r4,r5,lr}
- ldr r1, [r0, 0x8]
- ldrb r5, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- ldrb r3, [r1]
- adds r2, r1, 0x1
- str r2, [r0, 0x8]
- ldrb r4, [r1, 0x1]
- adds r2, 0x1
- str r2, [r0, 0x8]
- cmp r3, 0
- bne _0809B744
- adds r0, r5, 0
- movs r1, 0
- adds r2, r4, 0
- movs r3, 0
- bl PlantBerryTree
- b _0809B750
-_0809B744:
- adds r0, r5, 0
- adds r1, r3, 0
- adds r2, r4, 0
- movs r3, 0
- bl PlantBerryTree
-_0809B750:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end berry_script_cmd
-
- thumb_func_start sub_809B758
-sub_809B758: @ 809B758
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r4, =gScriptResult
- lsls r0, 24
- lsrs r0, 24
- bl GetPriceReduction
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809B758
-
- thumb_func_start sub_809B784
-sub_809B784: @ 809B784
- push {lr}
- bl sub_81B9404
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_809B784
-
- thumb_func_start sub_809B794
-sub_809B794: @ 809B794
- push {lr}
- bl sub_80F840C
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_809B794
-
- thumb_func_start sub_809B7A4
-sub_809B7A4: @ 809B7A4
- push {lr}
- bl sub_80F8484
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end sub_809B7A4
-
- thumb_func_start sub_809B7B4
-sub_809B7B4: @ 809B7B4
- push {lr}
- ldr r0, =gUnknown_02039F2C
- ldrb r0, [r0]
- bl sub_80F84C4
- bl ScriptContext1_Stop
- movs r0, 0x1
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809B7B4
-
- thumb_func_start s9C_execute_HM
-s9C_execute_HM: @ 809B7CC
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gUnknown_020375D0
- strh r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- bl FieldEffectStart
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end s9C_execute_HM
-
- thumb_func_start s9D_set_HM_animation_data
-s9D_set_HM_animation_data: @ 809B7F4
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r1, =gFieldEffectSpawnParams
- lsls r4, 2
- adds r4, r1
- lsls r0, 16
- asrs r0, 16
- str r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s9D_set_HM_animation_data
-
- thumb_func_start sub_809B824
-sub_809B824: @ 809B824
- push {lr}
- ldr r0, =gUnknown_020375D0
- ldrb r0, [r0]
- bl FieldEffectActiveListContains
- lsls r0, 24
- cmp r0, 0
- beq _0809B83C
- movs r0, 0
- b _0809B83E
- .pool
-_0809B83C:
- movs r0, 0x1
-_0809B83E:
- pop {r1}
- bx r1
- thumb_func_end sub_809B824
-
- thumb_func_start s9E_checkarray_HM_animation
-s9E_checkarray_HM_animation: @ 809B844
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- ldr r1, =gUnknown_020375D0
- strh r0, [r1]
- ldr r1, =sub_809B824
- adds r0, r4, 0
- bl SetupNativeScript
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end s9E_checkarray_HM_animation
-
- thumb_func_start s9F_changeposition_fly
-s9F_changeposition_fly: @ 809B870
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- bl sub_8084D1C
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end s9F_changeposition_fly
-
- thumb_func_start sA0_check_gender
-sA0_check_gender: @ 809B88C
- ldr r1, =gScriptResult
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- strh r0, [r1]
- movs r0, 0
- bx lr
- .pool
- thumb_func_end sA0_check_gender
-
- thumb_func_start sA1_play_cry
-sA1_play_cry: @ 809B8A4
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl PlayCry5
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sA1_play_cry
-
- thumb_func_start sub_809B8DC
-sub_809B8DC: @ 809B8DC
- push {lr}
- ldr r1, =IsCryFinished
- bl SetupNativeScript
- movs r0, 0x1
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809B8DC
-
- thumb_func_start sA2_setmaptile
-sA2_setmaptile: @ 809B8F0
- push {r4-r7,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r7, r0, 16
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- adds r1, r6, 0x7
- lsls r1, 16
- lsrs r6, r1, 16
- adds r1, r5, 0x7
- lsls r1, 16
- lsrs r5, r1, 16
- cmp r0, 0
- bne _0809B954
- adds r0, r6, 0
- adds r1, r5, 0
- adds r2, r7, 0
- bl MapGridSetMetatileIdAt
- b _0809B966
-_0809B954:
- movs r1, 0xC0
- lsls r1, 4
- adds r0, r1, 0
- adds r2, r7, 0
- orrs r2, r0
- adds r0, r6, 0
- adds r1, r5, 0
- bl MapGridSetMetatileIdAt
-_0809B966:
- movs r0, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sA2_setmaptile
-
- thumb_func_start sAC_open_door
-sAC_open_door: @ 809B970
- push {r4,r5,lr}
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- adds r5, 0x7
- lsls r5, 16
- lsrs r5, 16
- movs r0, 0xE0
- lsls r0, 11
- adds r4, r0
- lsrs r4, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl cur_mapdata_get_door_sound_at
- lsls r0, 16
- lsrs r0, 16
- bl PlaySE
- adds r0, r5, 0
- adds r1, r4, 0
- bl task_overworld_door_add_if_role_69_for_opening_door_at
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sAC_open_door
-
- thumb_func_start sub_809B9C8
-sub_809B9C8: @ 809B9C8
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- lsls r1, 16
- adds r4, 0x7
- lsls r4, 16
- lsrs r4, 16
- movs r0, 0xE0
- lsls r0, 11
- adds r1, r0
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_808A8AC
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_809B9C8
-
- thumb_func_start sub_809BA0C
-sub_809BA0C: @ 809BA0C
- push {lr}
- bl sub_808A91C
- lsls r0, 24
- cmp r0, 0
- beq _0809BA1C
- movs r0, 0
- b _0809BA1E
-_0809BA1C:
- movs r0, 0x1
-_0809BA1E:
- pop {r1}
- bx r1
- thumb_func_end sub_809BA0C
-
- thumb_func_start sub_809BA24
-sub_809BA24: @ 809BA24
- push {lr}
- ldr r1, =sub_809BA0C
- bl SetupNativeScript
- movs r0, 0x1
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BA24
-
- thumb_func_start sub_809BA38
-sub_809BA38: @ 809BA38
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- lsls r1, 16
- adds r4, 0x7
- lsls r4, 16
- lsrs r4, 16
- movs r0, 0xE0
- lsls r0, 11
- adds r1, r0
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_808A854
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_809BA38
-
- thumb_func_start sub_809BA7C
-sub_809BA7C: @ 809BA7C
- push {r4,r5,lr}
- adds r5, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r1, r0, 0
- lsls r1, 16
- adds r4, 0x7
- lsls r4, 16
- lsrs r4, 16
- movs r0, 0xE0
- lsls r0, 11
- adds r1, r0
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_808A880
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_809BA7C
-
- thumb_func_start sub_809BAC0
-sub_809BAC0: @ 809BAC0
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, [r4, 0x8]
- adds r0, 0x1
- str r0, [r4, 0x8]
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r0, r4, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_809BAC0
-
- thumb_func_start sub_809BAFC
-sub_809BAFC: @ 809BAFC
- movs r0, 0
- bx lr
- thumb_func_end sub_809BAFC
-
- thumb_func_start sB3_get_coin_amount
-sB3_get_coin_amount: @ 809BB00
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl GetVarPointer
- adds r4, r0, 0
- bl GetCoins
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sB3_get_coin_amount
-
- thumb_func_start sub_809BB20
-sub_809BB20: @ 809BB20
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl AddCoins
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0809BB48
- ldr r1, =gScriptResult
- movs r0, 0
- b _0809BB4C
- .pool
-_0809BB48:
- ldr r1, =gScriptResult
- movs r0, 0x1
-_0809BB4C:
- strh r0, [r1]
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BB20
-
- thumb_func_start sub_809BB58
-sub_809BB58: @ 809BB58
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl SubtractCoins
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0809BB80
- ldr r1, =gScriptResult
- movs r0, 0
- b _0809BB84
- .pool
-_0809BB80:
- ldr r1, =gScriptResult
- movs r0, 0x1
-_0809BB84:
- strh r0, [r1]
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BB58
-
- thumb_func_start sub_809BB90
-sub_809BB90: @ 809BB90
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- bl sub_81A89A0
- ldr r1, =gUnknown_020375CA
- strh r0, [r1]
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BB90
-
- thumb_func_start sub_809BBB4
-sub_809BBB4: @ 809BBB4
- push {lr}
- bl sub_81A8AF8
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_809BBB4
-
- thumb_func_start ScrCmd_MossdeepGymSwitch
-ScrCmd_MossdeepGymSwitch: @ 809BBC0
- push {lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- bl sub_81A8934
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end ScrCmd_MossdeepGymSwitch
-
- thumb_func_start sub_809BBDC
-sub_809BBDC: @ 809BBDC
- push {lr}
- bl sub_81A895C
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_809BBDC
-
- thumb_func_start sub_809BBE8
-sub_809BBE8: @ 809BBE8
- push {lr}
- bl sub_80B47BC
- ldr r1, =gSelectedMapObject
- strb r0, [r1]
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BBE8
-
- thumb_func_start sub_809BBFC
-sub_809BBFC: @ 809BBFC
- push {r4,lr}
- adds r4, r0, 0
- bl is_c1_link_related_active
- cmp r0, 0
- beq _0809BC0C
- movs r0, 0
- b _0809BC30
-_0809BC0C:
- ldr r2, =gMapObjects
- ldr r0, =gSelectedMapObject
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _0809BC2E
- bl sub_8098630
- ldr r1, =sub_8098734
- adds r0, r4, 0
- bl SetupNativeScript
-_0809BC2E:
- movs r0, 0x1
-_0809BC30:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BBFC
-
- thumb_func_start sCD_set_obedient_bit
-sCD_set_obedient_bit: @ 809BC44
- push {lr}
- sub sp, 0x4
- movs r2, 0x1
- mov r1, sp
- strb r2, [r1]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x50
- mov r2, sp
- bl SetMonData
- movs r0, 0
- add sp, 0x4
- pop {r1}
- bx r1
- .pool
- thumb_func_end sCD_set_obedient_bit
-
- thumb_func_start sCE_check_obedient_bit
-sCE_check_obedient_bit: @ 809BC7C
- push {r4,lr}
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r4, =gScriptResult
- movs r1, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x50
- movs r2, 0
- bl GetMonData
- strh r0, [r4]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sCE_check_obedient_bit
-
- thumb_func_start sCF_execute_RAM_script_DMA
-sCF_execute_RAM_script_DMA: @ 809BCB4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_8099244
- adds r2, r0, 0
- cmp r2, 0
- beq _0809BCD0
- ldr r1, =gUnknown_020375C0
- ldr r0, [r4, 0x8]
- str r0, [r1]
- adds r0, r4, 0
- adds r1, r2, 0
- bl ScriptJump
-_0809BCD0:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sCF_execute_RAM_script_DMA
-
- thumb_func_start sD1_warp_v5
-sD1_warp_v5: @ 809BCDC
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl warp1_set
- bl player_get_direction_lower_nybble
- lsls r0, 24
- lsrs r0, 24
- bl sub_808D074
- bl sub_80B0244
- bl player_avatar_init_params_reset
- movs r0, 0x1
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sD1_warp_v5
-
- thumb_func_start sub_809BD70
-sub_809BD70: @ 809BD70
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r0, [r4, 0x8]
- ldrb r2, [r0]
- mov r1, sp
- strb r2, [r1]
- adds r0, 0x1
- str r0, [r4, 0x8]
- cmp r3, 0x5
- bhi _0809BDA6
- movs r0, 0x64
- muls r0, r3
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x23
- mov r2, sp
- bl SetMonData
-_0809BDA6:
- movs r0, 0
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BD70
-
- thumb_func_start sub_809BDB4
-sub_809BDB4: @ 809BDB4
- push {r4,lr}
- ldr r4, =gUnknown_03000F30
- ldrb r0, [r4]
- movs r1, 0x1
- bl sub_819746C
- ldrb r0, [r4]
- bl RemoveWindow
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_809BDB4
-
- thumb_func_start sub_809BDD0
-sub_809BDD0: @ 809BDD0
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r1
- ldr r4, [r4]
- bl GetTrainerClassNameFromId
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BDD0
-
- thumb_func_start sub_809BE0C
-sub_809BE0C: @ 809BE0C
- push {r4,lr}
- ldr r1, [r0, 0x8]
- ldrb r4, [r1]
- adds r1, 0x1
- str r1, [r0, 0x8]
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gUnknown_085102D4
- lsls r4, 2
- adds r4, r1
- ldr r4, [r4]
- bl GetTrainerNameFromId
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_809BE0C
-
- thumb_func_start sub_809BE48
-sub_809BE48: @ 809BE48
- ldr r1, =gUnknown_020375CA
- strh r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_809BE48
-
- thumb_func_start sub_809BE54
-sub_809BE54: @ 809BE54
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r9, r1
- adds r0, 0x1
- str r0, [r5, 0x8]
- ldrb r1, [r0]
- mov r8, r1
- adds r1, r0, 0x1
- str r1, [r5, 0x8]
- ldrb r6, [r0, 0x1]
- adds r1, 0x1
- str r1, [r5, 0x8]
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl ScriptReadHalfword
- lsls r0, 16
- lsrs r0, 16
- bl VarGet
- mov r1, r9
- lsls r1, 24
- asrs r1, 24
- mov r9, r1
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- lsls r6, 24
- asrs r6, 24
- lsls r4, 24
- asrs r4, 24
- lsls r0, 24
- asrs r0, 24
- str r0, [sp]
- mov r0, r9
- adds r2, r6, 0
- adds r3, r4, 0
- bl warp1_set
- bl sub_80AF79C
- bl player_avatar_init_params_reset
- movs r0, 0x1
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_809BE54
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/script_menu.s b/asm/script_menu.s
index 8aecbf696..55ce5736a 100644
--- a/asm/script_menu.s
+++ b/asm/script_menu.s
@@ -5,9 +5,9 @@
.text
- thumb_func_start Multichoice
-@ bool8 Multichoice(u8 x, u8 y, u8 menuId, bool8 noCancelling)
-Multichoice: @ 80E1E08
+ thumb_func_start ScriptMenu_Multichoice
+@ bool8 ScriptMenu_Multichoice(u8 x, u8 y, u8 menuId, bool8 noCancelling)
+ScriptMenu_Multichoice: @ 80E1E08
push {r4-r7,lr}
sub sp, 0x4
lsls r0, 24
@@ -44,10 +44,10 @@ _080E1E4E:
pop {r4-r7}
pop {r1}
bx r1
- thumb_func_end Multichoice
+ thumb_func_end ScriptMenu_Multichoice
- thumb_func_start sub_80E1E58
-sub_80E1E58: @ 80E1E58
+ thumb_func_start ScriptMenu_MultichoiceWithDefault
+ScriptMenu_MultichoiceWithDefault: @ 80E1E58
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -91,7 +91,7 @@ _080E1EAA:
pop {r4-r7}
pop {r1}
bx r1
- thumb_func_end sub_80E1E58
+ thumb_func_end ScriptMenu_MultichoiceWithDefault
thumb_func_start sub_80E1EB8
sub_80E1EB8: @ 80E1EB8
@@ -379,8 +379,8 @@ _080E20FC:
.pool
thumb_func_end sub_80E2058
- thumb_func_start yes_no_box
-yes_no_box: @ 80E2108
+ thumb_func_start ScriptMenu_YesNo
+ScriptMenu_YesNo: @ 80E2108
push {r4,lr}
ldr r4, =task_yes_no_maybe
adds r0, r4, 0
@@ -405,7 +405,7 @@ _080E213A:
pop {r4}
pop {r1}
bx r1
- thumb_func_end yes_no_box
+ thumb_func_end ScriptMenu_YesNo
thumb_func_start sub_80E2140
sub_80E2140: @ 80E2140
@@ -485,8 +485,8 @@ _080E21C4:
.pool
thumb_func_end task_yes_no_maybe
- thumb_func_start sub_80E21D0
-sub_80E21D0: @ 80E21D0
+ thumb_func_start ScriptMenu_MultichoiceGrid
+ScriptMenu_MultichoiceGrid: @ 80E21D0
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -627,7 +627,7 @@ _080E22E8:
pop {r1}
bx r1
.pool
- thumb_func_end sub_80E21D0
+ thumb_func_end ScriptMenu_MultichoiceGrid
thumb_func_start sub_80E2308
sub_80E2308: @ 80E2308
@@ -1334,8 +1334,8 @@ _080E28F8:
bx r0
thumb_func_end task_picbox
- thumb_func_start sub_80E2900
-sub_80E2900: @ 80E2900
+ thumb_func_start ScriptMenu_ShowPokemonPic
+ScriptMenu_ShowPokemonPic: @ 80E2900
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -1422,10 +1422,10 @@ _080E29BA:
pop {r4-r7}
pop {r1}
bx r1
- thumb_func_end sub_80E2900
+ thumb_func_end ScriptMenu_ShowPokemonPic
- thumb_func_start picbox_close
-picbox_close: @ 80E29C4
+ thumb_func_start ScriptMenu_GetPicboxWaitFunc
+ScriptMenu_GetPicboxWaitFunc: @ 80E29C4
push {lr}
ldr r0, =task_picbox
bl FindTaskIdByFunc
@@ -1449,7 +1449,7 @@ _080E29F4:
_080E29F6:
pop {r1}
bx r1
- thumb_func_end picbox_close
+ thumb_func_end ScriptMenu_GetPicboxWaitFunc
thumb_func_start sub_80E29FC
sub_80E29FC: @ 80E29FC
diff --git a/asm/script_movement.s b/asm/script_movement.s
index f28fc9d44..5f06fd179 100755
--- a/asm/script_movement.s
+++ b/asm/script_movement.s
@@ -5,8 +5,8 @@
.text
- thumb_func_start exec_movement
-exec_movement: @ 80D32E8
+ thumb_func_start ScriptMovement_StartObjectMovementScript
+ScriptMovement_StartObjectMovementScript: @ 80D32E8
push {r4,lr}
sub sp, 0x4
adds r4, r3, 0
@@ -47,10 +47,10 @@ _080D3332:
pop {r1}
bx r1
.pool
- thumb_func_end exec_movement
+ thumb_func_end ScriptMovement_StartObjectMovementScript
- thumb_func_start sub_80D3340
-sub_80D3340: @ 80D3340
+ thumb_func_start ScriptMovement_IsObjectMovementFinished
+ScriptMovement_IsObjectMovementFinished: @ 80D3340
push {r4,lr}
sub sp, 0x4
lsls r0, 24
@@ -87,7 +87,7 @@ _080D3384:
pop {r4}
pop {r1}
bx r1
- thumb_func_end sub_80D3340
+ thumb_func_end ScriptMovement_IsObjectMovementFinished
thumb_func_start sub_80D338C
sub_80D338C: @ 80D338C
diff --git a/asm/script_pokemon_util_80F87D8.s b/asm/script_pokemon_util_80F87D8.s
index e26194298..18d7b7fe3 100644
--- a/asm/script_pokemon_util_80F87D8.s
+++ b/asm/script_pokemon_util_80F87D8.s
@@ -83,7 +83,7 @@ sub_80F8850: @ 80F8850
thumb_func_start sub_80F8864
sub_80F8864: @ 80F8864
push {lr}
- ldr r0, =gUnknown_02039F2C
+ ldr r0, =gScriptContestCategory
ldrh r0, [r0]
cmp r0, 0x4
bhi _080F88A4
@@ -222,7 +222,7 @@ sub_80F8970: @ 80F8970
mov r12, r0
ldr r1, =gSpecialVar_0x8006
mov r9, r1
- ldr r2, =gUnknown_02039E02
+ ldr r2, =gUnknown_02039E00 + 2
mov r10, r2
mov r2, r12
mov r1, sp
@@ -397,8 +397,8 @@ sub_80F8ACC: @ 80F8ACC
.pool
thumb_func_end sub_80F8ACC
- thumb_func_start sub_80F8ADC
-sub_80F8ADC: @ 80F8ADC
+ thumb_func_start ShowContestWinner
+ShowContestWinner: @ 80F8ADC
push {lr}
ldr r0, =sub_812FDEC
bl SetMainCallback2
@@ -408,7 +408,7 @@ sub_80F8ADC: @ 80F8ADC
pop {r0}
bx r0
.pool
- thumb_func_end sub_80F8ADC
+ thumb_func_end ShowContestWinner
thumb_func_start sub_80F8AFC
sub_80F8AFC: @ 80F8AFC
@@ -625,7 +625,7 @@ sub_80F8C7C: @ 80F8C7C
ldrb r0, [r6]
muls r0, r5
adds r0, r4
- bl sub_80EE5A4
+ bl GetRibbonCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
@@ -670,7 +670,7 @@ sub_80F8D28: @ 80F8D28
beq _080F8D44
b _080F8E9C
_080F8D44:
- bl init_uns_table_pokemon_copy
+ bl AllocateMonSpritesGfx
movs r0, 0xA
mov r9, r0
movs r1, 0x3
@@ -710,7 +710,7 @@ _080F8D44:
lsls r0, r6, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x8]
adds r2, r6, 0
@@ -722,7 +722,7 @@ _080F8DC4:
lsls r0, r6, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x8]
adds r2, r6, 0
@@ -842,7 +842,7 @@ sub_80F8EB8: @ 80F8EB8
ldrh r0, [r1, 0x8]
adds r0, 0x1
strh r0, [r1, 0x8]
- bl sub_805F094
+ bl FreeMonSpritesGfx
_080F8EDC:
pop {r0}
bx r0
@@ -1093,7 +1093,7 @@ sub_80F90DC: @ 80F90DC
ands r0, r1
cmp r0, 0
beq _080F90FE
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080F90FE
@@ -1116,7 +1116,7 @@ sub_80F910C: @ 80F910C
ands r0, r1
cmp r0, 0
beq _080F9126
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080F9126
@@ -1269,9 +1269,9 @@ _080F922C:
.pool
thumb_func_end sp000_heal_pokemon
- thumb_func_start sub_80F9244
-@ void sub_80F9244(s16 species_num, u8 level, int held_item)
-sub_80F9244: @ 80F9244
+ thumb_func_start ScriptGiveMon
+@ void ScriptGiveMon(s16 species_num, u8 level, int held_item)
+ScriptGiveMon: @ 80F9244
push {r4-r6,lr}
mov r6, r8
push {r6}
@@ -1332,10 +1332,10 @@ _080F92B8:
pop {r4-r6}
pop {r1}
bx r1
- thumb_func_end sub_80F9244
+ thumb_func_end ScriptGiveMon
- thumb_func_start sub_80F92C8
-sub_80F92C8: @ 80F92C8
+ thumb_func_start ScriptGiveEgg
+ScriptGiveEgg: @ 80F92C8
push {lr}
sub sp, 0x68
adds r1, r0, 0
@@ -1357,7 +1357,7 @@ sub_80F92C8: @ 80F92C8
add sp, 0x68
pop {r1}
bx r1
- thumb_func_end sub_80F92C8
+ thumb_func_end ScriptGiveEgg
thumb_func_start sub_80F92F8
sub_80F92F8: @ 80F92F8
@@ -1450,8 +1450,8 @@ _080F9392:
.pool
thumb_func_end sub_80F9370
- thumb_func_start sub_80F93A0
-sub_80F93A0: @ 80F93A0
+ thumb_func_start CreateScriptedWildMon
+CreateScriptedWildMon: @ 80F93A0
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -1496,10 +1496,10 @@ _080F93EE:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80F93A0
+ thumb_func_end CreateScriptedWildMon
- thumb_func_start sub_80F9400
-sub_80F9400: @ 80F9400
+ thumb_func_start ScriptSetMonMoveSlot
+ScriptSetMonMoveSlot: @ 80F9400
push {r4,lr}
lsls r0, 24
lsrs r3, r0, 24
@@ -1525,7 +1525,7 @@ _080F941C:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80F9400
+ thumb_func_end ScriptSetMonMoveSlot
thumb_func_start sub_80F9438
sub_80F9438: @ 80F9438
diff --git a/asm/secret_base.s b/asm/secret_base.s
index e514e88f1..69cfff512 100644
--- a/asm/secret_base.s
+++ b/asm/secret_base.s
@@ -861,7 +861,7 @@ sub_80E916C: @ 80E916C
asrs r0, 24
str r0, [sp]
adds r0, r5, 0
- bl warp1_set
+ bl Overworld_SetWarpDestination
bl warp_in
ldr r1, =gFieldCallback
ldr r0, =sub_80E9108
@@ -1163,13 +1163,13 @@ _080E941E:
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8089350
+ bl MetatileBehavior_IsMB_B5
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080E9462
adds r0, r4, 0
- bl sub_8089364
+ bl MetatileBehavior_IsMB_C3
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1192,7 +1192,7 @@ _080E9462:
mov r3, r10
ldrb r1, [r3]
lsls r1, 5
- ldr r2, =gUnknown_085A5C24
+ ldr r2, =gDecorations + 0x1c
adds r1, r2
ldr r1, [r1]
ldrh r1, [r1]
@@ -1208,7 +1208,7 @@ _080E9462:
adds r0, 0xAE
lsls r0, 16
lsrs r0, 16
- bl FlagReset
+ bl FlagClear
ldrb r0, [r6]
ldr r5, =gSaveBlock1Ptr
ldr r2, [r5]
@@ -3288,7 +3288,7 @@ _080EA62C:
.pool
_080EA668:
adds r0, r5, 0
- bl sub_80893C8
+ bl MetatileBehavior_IsSecretBaseGlitterMat
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3308,7 +3308,7 @@ _080EA680:
.pool
_080EA698:
adds r0, r5, 0
- bl sub_808938C
+ bl MetatileBehavior_IsSecretBaseBalloon
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3377,7 +3377,7 @@ _080EA714:
.pool
_080EA72C:
adds r0, r5, 0
- bl sub_80893A0
+ bl MetatileBehavior_IsMB_BE
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3409,7 +3409,7 @@ _080EA75E:
.pool
_080EA778:
adds r0, r5, 0
- bl sub_80893B4
+ bl MetatileBehavior_IsSecretBaseSoundMat
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3429,7 +3429,7 @@ _080EA778:
.pool
_080EA7A8:
adds r0, r5, 0
- bl MetatileBehavior_0xBB
+ bl MetatileBehavior_IsSecretBaseJumpMat
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3449,7 +3449,7 @@ _080EA7A8:
.pool
_080EA7D8:
adds r0, r5, 0
- bl MetatileBehavior_0xBC
+ bl MetatileBehavior_IsSecretBaseSpinMat
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -4494,7 +4494,7 @@ sub_80EAF80: @ 80EAF80
bne _080EAF9A
b _080EB16A
_080EAF9A:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
diff --git a/asm/shop.s b/asm/shop.s
index f4dacaa76..94756624c 100644
--- a/asm/shop.s
+++ b/asm/shop.s
@@ -1125,7 +1125,7 @@ BuyMenuInitBgs: @ 80E036C
BuyMenuDecompressBgGraphics: @ 80E0424
push {lr}
sub sp, 0x4
- ldr r1, =gUnknown_08D9AFBC
+ ldr r1, =gBuyMenuFrame_Gfx
movs r2, 0xE8
lsls r2, 2
ldr r3, =0x000003e3
@@ -1133,11 +1133,11 @@ BuyMenuDecompressBgGraphics: @ 80E0424
str r0, [sp]
movs r0, 0x1
bl decompress_and_copy_tile_data_to_vram
- ldr r0, =gUnknown_08D9B0F0
+ ldr r0, =gBuyMenuFrame_Tilemap
ldr r1, =gUnknown_02039F70
ldr r1, [r1]
bl LZDecompressWram
- ldr r0, =gUnknown_08D9B0C8
+ ldr r0, =gMenuMoneyPal
movs r1, 0xC0
movs r2, 0x20
bl LoadCompressedPalette
@@ -1259,7 +1259,7 @@ BuyMenuDrawGraphics: @ 80E0524
movs r0, 0
movs r1, 0x1
movs r2, 0xD
- bl set_window_border_style_and_print_money_box
+ bl PrintMoneyAmountInMoneyBoxWithBorder
movs r0, 0
bl schedule_bg_copy_tilemap_to_vram
movs r0, 0x1
@@ -2465,7 +2465,7 @@ BuyMenuSubtractMoney: @ 80E0F88
lsls r2, 6
adds r1, r2
ldr r1, [r1]
- bl SubtractMoney
+ bl RemoveMoney
movs r0, 0x5F
bl PlaySE
ldr r0, [r5]
diff --git a/asm/slot_machine.s b/asm/slot_machine.s
index 6bd62ed9f..6390ae992 100644
--- a/asm/slot_machine.s
+++ b/asm/slot_machine.s
@@ -55,8 +55,8 @@ _0812A530:
.pool
thumb_func_end sub_812A4DC
- thumb_func_start sub_812A540
-sub_812A540: @ 812A540
+ thumb_func_start PlaySlotMachine
+PlaySlotMachine: @ 812A540
push {r4-r6,lr}
adds r4, r0, 0
adds r6, r1, 0
@@ -85,7 +85,7 @@ sub_812A540: @ 812A540
pop {r0}
bx r0
.pool
- thumb_func_end sub_812A540
+ thumb_func_end PlaySlotMachine
thumb_func_start sub_812A588
sub_812A588: @ 812A588
diff --git a/asm/starter_choose.s b/asm/starter_choose.s
index 7e998c45f..da42959ea 100644
--- a/asm/starter_choose.s
+++ b/asm/starter_choose.s
@@ -122,12 +122,12 @@ set_256color_bg_bg0: @ 8133F0C
ldr r0, =0x81000200
str r0, [r2, 0x8]
ldr r0, [r2, 0x8]
- ldr r0, =gUnknown_085B0E04
+ ldr r0, =gBirchHelpGfx
bl LZ77UnCompVram
- ldr r0, =gUnknown_085B0A80
+ ldr r0, =gBirchBagTilemap
ldr r1, =0x06003000
bl LZ77UnCompVram
- ldr r0, =gUnknown_085B0C0C
+ ldr r0, =gBirchGrassTilemap
ldr r1, =0x06003800
bl LZ77UnCompVram
movs r0, 0
@@ -155,7 +155,7 @@ set_256color_bg_bg0: @ 8133F0C
movs r1, 0xE0
movs r2, 0x20
bl LoadPalette
- ldr r0, =gUnknown_085B0A00
+ ldr r0, =gBirchBagGrassPal
movs r1, 0
movs r2, 0x40
bl LoadPalette
diff --git a/asm/tileset.s b/asm/tileset.s
deleted file mode 100644
index 0605c7621..000000000
--- a/asm/tileset.s
+++ /dev/null
@@ -1,1793 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80A0954
-@ void sub_80A0954()
-sub_80A0954: @ 80A0954
- push {lr}
- sub sp, 0x4
- ldr r1, =gUnknown_03000F34
- movs r0, 0
- strb r0, [r1]
- movs r0, 0
- str r0, [sp]
- ldr r1, =gUnknown_02037624
- ldr r2, =0x0500003c
- mov r0, sp
- bl CpuSet
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A0954
-
- thumb_func_start sub_80A0980
-sub_80A0980: @ 80A0980
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r2, 16
- lsrs r6, r2, 16
- ldr r3, =gUnknown_03000F34
- ldrb r0, [r3]
- cmp r0, 0x13
- bhi _080A09C0
- ldr r2, =gUnknown_02037624
- adds r1, r0, 0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- str r4, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r2, 0x4
- adds r0, r1
- str r5, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- strh r6, [r0, 0x8]
- ldrb r0, [r3]
- adds r0, 0x1
- strb r0, [r3]
-_080A09C0:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A0980
-
- thumb_func_start sub_80A09D0
-sub_80A09D0: @ 80A09D0
- push {r4-r6,lr}
- movs r3, 0
- ldr r4, =gUnknown_03000F34
- adds r6, r4, 0
- ldrb r0, [r4]
- cmp r3, r0
- bge _080A0A02
- ldr r2, =0x040000d4
- ldr r1, =gUnknown_02037624
- movs r5, 0x80
- lsls r5, 24
-_080A09E6:
- ldr r0, [r1]
- str r0, [r2]
- ldr r0, [r1, 0x4]
- str r0, [r2, 0x4]
- ldrh r0, [r1, 0x8]
- lsrs r0, 1
- orrs r0, r5
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- adds r1, 0xC
- adds r3, 0x1
- ldrb r0, [r4]
- cmp r3, r0
- blt _080A09E6
-_080A0A02:
- movs r0, 0
- strb r0, [r6]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A09D0
-
- thumb_func_start cur_mapheader_run_tileset_funcs_after_some_cpuset
-cur_mapheader_run_tileset_funcs_after_some_cpuset: @ 80A0A18
- push {lr}
- bl sub_80A0954
- bl cur_mapheader_run_tileset1_func
- bl cur_mapheader_run_tileset2_func
- pop {r0}
- bx r0
- thumb_func_end cur_mapheader_run_tileset_funcs_after_some_cpuset
-
- thumb_func_start sub_80A0A2C
-sub_80A0A2C: @ 80A0A2C
- push {lr}
- bl cur_mapheader_run_tileset2_func
- pop {r0}
- bx r0
- thumb_func_end sub_80A0A2C
-
- thumb_func_start sub_80A0A38
-sub_80A0A38: @ 80A0A38
- push {r4,lr}
- bl sub_80A0954
- ldr r2, =gUnknown_03000F36
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- ldr r1, =gUnknown_03000F38
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r1]
- cmp r0, r1
- bcc _080A0A56
- movs r0, 0
- strh r0, [r2]
-_080A0A56:
- ldr r4, =gUnknown_03000F3A
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- ldr r1, =gUnknown_03000F3C
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r1]
- cmp r0, r1
- bcc _080A0A6E
- movs r0, 0
- strh r0, [r4]
-_080A0A6E:
- ldr r0, =gUnknown_03000F40
- ldr r1, [r0]
- cmp r1, 0
- beq _080A0A7C
- ldrh r0, [r2]
- bl _call_via_r1
-_080A0A7C:
- ldr r0, =gUnknown_03000F44
- ldr r1, [r0]
- cmp r1, 0
- beq _080A0A8A
- ldrh r0, [r4]
- bl _call_via_r1
-_080A0A8A:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A0A38
-
- thumb_func_start cur_mapheader_run_tileset1_func
-cur_mapheader_run_tileset1_func: @ 80A0AA8
- push {lr}
- ldr r0, =gUnknown_03000F36
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_03000F38
- strh r1, [r0]
- ldr r1, =gUnknown_03000F40
- movs r0, 0
- str r0, [r1]
- ldr r0, =gMapHeader
- ldr r0, [r0]
- ldr r0, [r0, 0x10]
- cmp r0, 0
- beq _080A0ACE
- ldr r0, [r0, 0x14]
- cmp r0, 0
- beq _080A0ACE
- bl _call_via_r0
-_080A0ACE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end cur_mapheader_run_tileset1_func
-
- thumb_func_start cur_mapheader_run_tileset2_func
-cur_mapheader_run_tileset2_func: @ 80A0AE4
- push {lr}
- ldr r0, =gUnknown_03000F3A
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_03000F3C
- strh r1, [r0]
- ldr r1, =gUnknown_03000F44
- movs r0, 0
- str r0, [r1]
- ldr r0, =gMapHeader
- ldr r0, [r0]
- ldr r0, [r0, 0x14]
- cmp r0, 0
- beq _080A0B0A
- ldr r0, [r0, 0x14]
- cmp r0, 0
- beq _080A0B0A
- bl _call_via_r0
-_080A0B0A:
- pop {r0}
- bx r0
- .pool
- thumb_func_end cur_mapheader_run_tileset2_func
-
- thumb_func_start TilesetCb_General
-TilesetCb_General: @ 80A0B20
- ldr r1, =gUnknown_03000F36
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F38
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F40
- ldr r0, =sub_80A0B70
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_General
-
- thumb_func_start TilesetCb_InsideBuilding
-TilesetCb_InsideBuilding: @ 80A0B48
- ldr r1, =gUnknown_03000F36
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F38
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F40
- ldr r0, =sub_80A0BB4
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_InsideBuilding
-
- thumb_func_start sub_80A0B70
-sub_80A0B70: @ 80A0B70
- push {r4,r5,lr}
- lsls r5, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r5
- lsrs r4, r0, 16
- cmp r4, 0
- bne _080A0B86
- lsrs r0, r5, 20
- bl sub_80A0BCC
-_080A0B86:
- cmp r4, 0x1
- bne _080A0B90
- lsrs r0, r5, 20
- bl sub_80A0BF4
-_080A0B90:
- cmp r4, 0x2
- bne _080A0B9A
- lsrs r0, r5, 20
- bl sub_80A0C1C
-_080A0B9A:
- cmp r4, 0x3
- bne _080A0BA4
- lsrs r0, r5, 20
- bl sub_80A0C44
-_080A0BA4:
- cmp r4, 0x4
- bne _080A0BAE
- lsrs r0, r5, 20
- bl sub_80A12AC
-_080A0BAE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A0B70
-
- thumb_func_start sub_80A0BB4
-sub_80A0BB4: @ 80A0BB4
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne _080A0BC8
- lsrs r0, r1, 19
- bl sub_80A1688
-_080A0BC8:
- pop {r0}
- bx r0
- thumb_func_end sub_80A0BB4
-
- thumb_func_start sub_80A0BCC
-sub_80A0BCC: @ 80A0BCC
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08510764
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06003f80
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A0BCC
-
- thumb_func_start sub_80A0BF4
-sub_80A0BF4: @ 80A0BF4
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x7
- ands r0, r1
- ldr r1, =gUnknown_08512574
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06003600
- movs r2, 0xF0
- lsls r2, 2
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A0BF4
-
- thumb_func_start sub_80A0C1C
-sub_80A0C1C: @ 80A0C1C
- push {lr}
- lsls r0, 16
- movs r1, 0xE0
- lsls r1, 11
- ands r1, r0
- ldr r0, =gUnknown_08512E54
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06003a00
- movs r2, 0xA0
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A0C1C
-
- thumb_func_start sub_80A0C44
-sub_80A0C44: @ 80A0C44
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08513174
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06003e00
- movs r2, 0xC0
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A0C44
-
- thumb_func_start TilesetCb_Petalburg
-TilesetCb_Petalburg: @ 80A0C6C
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- movs r0, 0
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Petalburg
-
- thumb_func_start TilesetCb_Rustboro
-TilesetCb_Rustboro: @ 80A0C94
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A103C
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Rustboro
-
- thumb_func_start TilesetCb_Dewford
-TilesetCb_Dewford: @ 80A0CC0
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A10B8
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Dewford
-
- thumb_func_start TilesetCb_Slateport
-TilesetCb_Slateport: @ 80A0CEC
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A10D0
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Slateport
-
- thumb_func_start TilesetCb_Mauville
-TilesetCb_Mauville: @ 80A0D18
- ldr r1, =gUnknown_03000F3A
- ldr r0, =gUnknown_03000F36
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A10E8
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Mauville
-
- thumb_func_start TilesetCb_Lavaridge
-TilesetCb_Lavaridge: @ 80A0D48
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A115C
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Lavaridge
-
- thumb_func_start TilesetCb_Fallarbor
-TilesetCb_Fallarbor: @ 80A0D74
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- movs r0, 0
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Fallarbor
-
- thumb_func_start TilesetCb_Fortree
-TilesetCb_Fortree: @ 80A0D9C
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- movs r0, 0
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Fortree
-
- thumb_func_start TilesetCb_Lilycove
-TilesetCb_Lilycove: @ 80A0DC4
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- movs r0, 0
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Lilycove
-
- thumb_func_start TilesetCb_Mossdeep
-TilesetCb_Mossdeep: @ 80A0DEC
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- movs r0, 0
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Mossdeep
-
- thumb_func_start TilesetCb_EverGrande
-TilesetCb_EverGrande: @ 80A0E14
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A1188
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_EverGrande
-
- thumb_func_start TilesetCb_Pacifidlog
-TilesetCb_Pacifidlog: @ 80A0E40
- ldr r1, =gUnknown_03000F3A
- ldr r0, =gUnknown_03000F36
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A11FC
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Pacifidlog
-
- thumb_func_start TilesetCb_Sootopolis
-TilesetCb_Sootopolis: @ 80A0E70
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A122C
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Sootopolis
-
- thumb_func_start TilesetCb_BattleFrontierOutsideWest
-TilesetCb_BattleFrontierOutsideWest: @ 80A0E9C
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A127C
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_BattleFrontierOutsideWest
-
- thumb_func_start TilesetCb_BattleFrontierOutsideEast
-TilesetCb_BattleFrontierOutsideEast: @ 80A0EC8
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A1294
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_BattleFrontierOutsideEast
-
- thumb_func_start TilesetCb_Underwater
-TilesetCb_Underwater: @ 80A0EF4
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- movs r0, 0x80
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A1244
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Underwater
-
- thumb_func_start TilesetCb_SootopolisGym
-TilesetCb_SootopolisGym: @ 80A0F18
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- movs r0, 0xF0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A15D8
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_SootopolisGym
-
- thumb_func_start TilesetCb_Cave
-TilesetCb_Cave: @ 80A0F3C
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A1260
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_Cave
-
- thumb_func_start TilesetCb_EliteFour
-TilesetCb_EliteFour: @ 80A0F68
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- movs r0, 0x80
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A15F0
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_EliteFour
-
- thumb_func_start TilesetCb_MauvilleGym
-TilesetCb_MauvilleGym: @ 80A0F8C
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A15C0
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_MauvilleGym
-
- thumb_func_start TilesetCb_BikeShop
-TilesetCb_BikeShop: @ 80A0FB8
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A161C
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_BikeShop
-
- thumb_func_start TilesetCb_BattlePyramid
-TilesetCb_BattlePyramid: @ 80A0FE4
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A1634
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_BattlePyramid
-
- thumb_func_start TilesetCb_BattleDome
-TilesetCb_BattleDome: @ 80A1010
- ldr r1, =gUnknown_03000F3A
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_03000F3C
- ldr r0, =gUnknown_03000F38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =gUnknown_03000F44
- ldr r0, =sub_80A1658
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end TilesetCb_BattleDome
-
- thumb_func_start sub_80A103C
-sub_80A103C: @ 80A103C
- push {r4-r6,lr}
- lsls r5, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r5
- lsrs r6, r0, 16
- cmp r6, 0
- bne _080A105C
- lsrs r4, r5, 19
- adds r0, r4, 0
- movs r1, 0
- bl sub_80A1434
- adds r0, r4, 0
- bl sub_80A1470
-_080A105C:
- cmp r6, 0x1
- bne _080A1068
- lsrs r0, r5, 19
- movs r1, 0x1
- bl sub_80A1434
-_080A1068:
- cmp r6, 0x2
- bne _080A1074
- lsrs r0, r5, 19
- movs r1, 0x2
- bl sub_80A1434
-_080A1074:
- cmp r6, 0x3
- bne _080A1080
- lsrs r0, r5, 19
- movs r1, 0x3
- bl sub_80A1434
-_080A1080:
- cmp r6, 0x4
- bne _080A108C
- lsrs r0, r5, 19
- movs r1, 0x4
- bl sub_80A1434
-_080A108C:
- cmp r6, 0x5
- bne _080A1098
- lsrs r0, r5, 19
- movs r1, 0x5
- bl sub_80A1434
-_080A1098:
- cmp r6, 0x6
- bne _080A10A4
- lsrs r0, r5, 19
- movs r1, 0x6
- bl sub_80A1434
-_080A10A4:
- cmp r6, 0x7
- bne _080A10B0
- lsrs r0, r5, 19
- movs r1, 0x7
- bl sub_80A1434
-_080A10B0:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80A103C
-
- thumb_func_start sub_80A10B8
-sub_80A10B8: @ 80A10B8
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne _080A10CC
- lsrs r0, r1, 19
- bl sub_80A1520
-_080A10CC:
- pop {r0}
- bx r0
- thumb_func_end sub_80A10B8
-
- thumb_func_start sub_80A10D0
-sub_80A10D0: @ 80A10D0
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r1
- cmp r0, 0
- bne _080A10E4
- lsrs r0, r1, 20
- bl sub_80A1598
-_080A10E4:
- pop {r0}
- bx r0
- thumb_func_end sub_80A10D0
-
- thumb_func_start sub_80A10E8
-sub_80A10E8: @ 80A10E8
- push {r4,r5,lr}
- lsls r4, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r4
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080A1100
- lsrs r0, r4, 19
- movs r1, 0
- bl sub_80A1394
-_080A1100:
- cmp r5, 0x1
- bne _080A110C
- lsrs r0, r4, 19
- movs r1, 0x1
- bl sub_80A1394
-_080A110C:
- cmp r5, 0x2
- bne _080A1118
- lsrs r0, r4, 19
- movs r1, 0x2
- bl sub_80A1394
-_080A1118:
- cmp r5, 0x3
- bne _080A1124
- lsrs r0, r4, 19
- movs r1, 0x3
- bl sub_80A1394
-_080A1124:
- cmp r5, 0x4
- bne _080A1130
- lsrs r0, r4, 19
- movs r1, 0x4
- bl sub_80A1394
-_080A1130:
- cmp r5, 0x5
- bne _080A113C
- lsrs r0, r4, 19
- movs r1, 0x5
- bl sub_80A1394
-_080A113C:
- cmp r5, 0x6
- bne _080A1148
- lsrs r0, r4, 19
- movs r1, 0x6
- bl sub_80A1394
-_080A1148:
- cmp r5, 0x7
- bne _080A1154
- lsrs r0, r4, 19
- movs r1, 0x7
- bl sub_80A1394
-_080A1154:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A10E8
-
- thumb_func_start sub_80A115C
-sub_80A115C: @ 80A115C
- push {r4,r5,lr}
- lsls r4, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r4
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080A1176
- lsrs r0, r4, 20
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A12D4
-_080A1176:
- cmp r5, 0x1
- bne _080A1180
- lsrs r0, r4, 20
- bl sub_80A1498
-_080A1180:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A115C
-
- thumb_func_start sub_80A1188
-sub_80A1188: @ 80A1188
- push {r4,r5,lr}
- lsls r4, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r4
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080A11A0
- lsrs r0, r4, 19
- movs r1, 0
- bl sub_80A14C0
-_080A11A0:
- cmp r5, 0x1
- bne _080A11AC
- lsrs r0, r4, 19
- movs r1, 0x1
- bl sub_80A14C0
-_080A11AC:
- cmp r5, 0x2
- bne _080A11B8
- lsrs r0, r4, 19
- movs r1, 0x2
- bl sub_80A14C0
-_080A11B8:
- cmp r5, 0x3
- bne _080A11C4
- lsrs r0, r4, 19
- movs r1, 0x3
- bl sub_80A14C0
-_080A11C4:
- cmp r5, 0x4
- bne _080A11D0
- lsrs r0, r4, 19
- movs r1, 0x4
- bl sub_80A14C0
-_080A11D0:
- cmp r5, 0x5
- bne _080A11DC
- lsrs r0, r4, 19
- movs r1, 0x5
- bl sub_80A14C0
-_080A11DC:
- cmp r5, 0x6
- bne _080A11E8
- lsrs r0, r4, 19
- movs r1, 0x6
- bl sub_80A14C0
-_080A11E8:
- cmp r5, 0x7
- bne _080A11F4
- lsrs r0, r4, 19
- movs r1, 0x7
- bl sub_80A14C0
-_080A11F4:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A1188
-
- thumb_func_start sub_80A11FC
-sub_80A11FC: @ 80A11FC
- push {r4,r5,lr}
- lsls r4, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r4
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080A1216
- lsrs r0, r4, 20
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A131C
-_080A1216:
- cmp r5, 0x1
- bne _080A1224
- lsrs r0, r4, 20
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A136C
-_080A1224:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A11FC
-
- thumb_func_start sub_80A122C
-sub_80A122C: @ 80A122C
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r1
- cmp r0, 0
- bne _080A1240
- lsrs r0, r1, 20
- bl sub_80A1798
-_080A1240:
- pop {r0}
- bx r0
- thumb_func_end sub_80A122C
-
- thumb_func_start sub_80A1244
-sub_80A1244: @ 80A1244
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r1
- cmp r0, 0
- bne _080A125C
- lsrs r0, r1, 20
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A1344
-_080A125C:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1244
-
- thumb_func_start sub_80A1260
-sub_80A1260: @ 80A1260
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r1
- lsrs r0, 16
- cmp r0, 0x1
- bne _080A1276
- lsrs r0, r1, 20
- bl sub_80A14F8
-_080A1276:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1260
-
- thumb_func_start sub_80A127C
-sub_80A127C: @ 80A127C
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne _080A1290
- lsrs r0, r1, 19
- bl sub_80A1548
-_080A1290:
- pop {r0}
- bx r0
- thumb_func_end sub_80A127C
-
- thumb_func_start sub_80A1294
-sub_80A1294: @ 80A1294
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne _080A12A8
- lsrs r0, r1, 19
- bl sub_80A1570
-_080A12A8:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1294
-
- thumb_func_start sub_80A12AC
-sub_80A12AC: @ 80A12AC
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08513684
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06003c00
- movs r2, 0xA0
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A12AC
-
- thumb_func_start sub_80A12D4
-sub_80A12D4: @ 80A12D4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x3
- ands r0, r4
- ldr r5, =gUnknown_08513894
- lsls r0, 2
- adds r0, r5
- ldr r0, [r0]
- ldr r1, =0x06006400
- movs r2, 0x80
- bl sub_80A0980
- adds r1, r4, 0x2
- adds r0, r1, 0
- asrs r0, 2
- lsls r0, 2
- subs r0, r1, r0
- lsls r0, 24
- lsrs r0, 22
- adds r0, r5
- ldr r0, [r0]
- ldr r1, =0x06006480
- movs r2, 0x80
- bl sub_80A0980
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A12D4
-
- thumb_func_start sub_80A131C
-sub_80A131C: @ 80A131C
- push {lr}
- lsls r0, 24
- movs r1, 0xC0
- lsls r1, 18
- ands r1, r0
- ldr r0, =gUnknown_085143E4
- lsrs r1, 22
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007a00
- movs r2, 0xF0
- lsls r2, 2
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A131C
-
- thumb_func_start sub_80A1344
-sub_80A1344: @ 80A1344
- push {lr}
- lsls r0, 24
- movs r1, 0xC0
- lsls r1, 18
- ands r1, r0
- ldr r0, =gUnknown_085145F4
- lsrs r1, 22
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007e00
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1344
-
- thumb_func_start sub_80A136C
-sub_80A136C: @ 80A136C
- push {lr}
- lsls r0, 24
- movs r1, 0xE0
- lsls r1, 19
- ands r1, r0
- ldr r0, =gUnknown_08514E04
- lsrs r1, 22
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007e00
- movs r2, 0x80
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A136C
-
- thumb_func_start sub_80A1394
-sub_80A1394: @ 80A1394
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 24
- lsrs r6, r1, 24
- subs r0, r5, r6
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0xB
- bhi _080A13F0
- adds r0, r5, 0
- movs r1, 0xC
- bl __umodsi3
- adds r4, r0, 0
- lsls r4, 16
- ldr r0, =gUnknown_08515384
- lsrs r4, 14
- adds r0, r4, r0
- ldr r0, [r0]
- ldr r1, =gUnknown_08515344
- lsls r5, r6, 2
- adds r1, r5, r1
- ldr r1, [r1]
- movs r2, 0x80
- bl sub_80A0980
- ldr r0, =gUnknown_085153B4
- adds r4, r0
- ldr r0, [r4]
- ldr r1, =gUnknown_08515364
- adds r5, r1
- ldr r1, [r5]
- movs r2, 0x80
- bl sub_80A0980
- b _080A141C
- .pool
-_080A13F0:
- movs r0, 0x3
- ands r5, r0
- ldr r0, =gUnknown_085153E4
- lsls r5, 2
- adds r0, r5, r0
- ldr r0, [r0]
- ldr r1, =gUnknown_08515344
- lsls r4, r6, 2
- adds r1, r4, r1
- ldr r1, [r1]
- movs r2, 0x80
- bl sub_80A0980
- ldr r0, =gUnknown_085153F4
- adds r5, r0
- ldr r0, [r5]
- ldr r1, =gUnknown_08515364
- adds r4, r1
- ldr r1, [r4]
- movs r2, 0x80
- bl sub_80A0980
-_080A141C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1394
-
- thumb_func_start sub_80A1434
-sub_80A1434: @ 80A1434
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r3, r1, 24
- subs r0, r3
- lsls r0, 16
- movs r1, 0xE0
- lsls r1, 11
- ands r1, r0
- ldr r0, =gUnknown_08515824
- lsrs r1, 14
- adds r1, r0
- ldr r2, [r1]
- cmp r2, 0
- beq _080A1464
- ldr r0, =gUnknown_08515804
- lsls r1, r3, 2
- adds r1, r0
- ldr r1, [r1]
- adds r0, r2, 0
- movs r2, 0x80
- bl sub_80A0980
-_080A1464:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1434
-
- thumb_func_start sub_80A1470
-sub_80A1470: @ 80A1470
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_08515964
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06007800
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1470
-
- thumb_func_start sub_80A1498
-sub_80A1498: @ 80A1498
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08515D8C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005400
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1498
-
- thumb_func_start sub_80A14C0
-sub_80A14C0: @ 80A14C0
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r1, 24
- subs r0, r1
- lsls r0, 16
- movs r2, 0xE0
- lsls r2, 11
- ands r2, r0
- ldr r0, =gUnknown_085161DC
- lsrs r2, 14
- adds r2, r0
- ldr r0, [r2]
- ldr r2, =gUnknown_085161BC
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A14C0
-
- thumb_func_start sub_80A14F8
-sub_80A14F8: @ 80A14F8
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08515D8C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007400
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A14F8
-
- thumb_func_start sub_80A1520
-sub_80A1520: @ 80A1520
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_085164FC
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005540
- movs r2, 0xC0
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1520
-
- thumb_func_start sub_80A1548
-sub_80A1548: @ 80A1548
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_0851680C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005b40
- movs r2, 0xC0
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1548
-
- thumb_func_start sub_80A1570
-sub_80A1570: @ 80A1570
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08516B1C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005b40
- movs r2, 0xC0
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1570
-
- thumb_func_start sub_80A1598
-sub_80A1598: @ 80A1598
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08516D2C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005c00
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1598
-
- thumb_func_start sub_80A15C0
-sub_80A15C0: @ 80A15C0
- push {lr}
- lsls r2, r0, 16
- lsrs r0, r2, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080A15D4
- lsrs r0, r2, 17
- bl sub_80A1748
-_080A15D4:
- pop {r0}
- bx r0
- thumb_func_end sub_80A15C0
-
- thumb_func_start sub_80A15D8
-sub_80A15D8: @ 80A15D8
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne _080A15EC
- lsrs r0, r1, 19
- bl sub_80A16B0
-_080A15EC:
- pop {r0}
- bx r0
- thumb_func_end sub_80A15D8
-
- thumb_func_start sub_80A15F0
-sub_80A15F0: @ 80A15F0
- push {r4,r5,lr}
- lsls r4, r0, 16
- lsrs r0, r4, 16
- adds r5, r0, 0
- movs r0, 0x3F
- ands r0, r5
- cmp r0, 0x1
- bne _080A1606
- lsrs r0, r4, 22
- bl sub_80A1720
-_080A1606:
- movs r0, 0x7
- ands r0, r5
- cmp r0, 0x1
- bne _080A1614
- lsrs r0, r4, 19
- bl sub_80A16F8
-_080A1614:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A15F0
-
- thumb_func_start sub_80A161C
-sub_80A161C: @ 80A161C
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xC0
- lsls r0, 10
- ands r0, r1
- cmp r0, 0
- bne _080A1630
- lsrs r0, r1, 18
- bl sub_80A1770
-_080A1630:
- pop {r0}
- bx r0
- thumb_func_end sub_80A161C
-
- thumb_func_start sub_80A1634
-sub_80A1634: @ 80A1634
- push {r4,lr}
- lsls r4, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r4
- cmp r0, 0
- bne _080A1650
- lsrs r4, 19
- adds r0, r4, 0
- bl sub_80A17C0
- adds r0, r4, 0
- bl sub_80A17EC
-_080A1650:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A1634
-
- thumb_func_start sub_80A1658
-sub_80A1658: @ 80A1658
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xC0
- lsls r0, 10
- ands r0, r1
- cmp r0, 0
- bne _080A166C
- lsrs r0, r1, 18
- bl sub_80A1818
-_080A166C:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1658
-
- thumb_func_start sub_80A1670
-sub_80A1670: @ 80A1670
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xC0
- lsls r0, 10
- ands r0, r1
- cmp r0, 0
- bne _080A1684
- lsrs r0, r1, 18
- bl sub_80A1884
-_080A1684:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1670
-
- thumb_func_start sub_80A1688
-sub_80A1688: @ 80A1688
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_08516E3C
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06003e00
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1688
-
- thumb_func_start sub_80A16B0
-sub_80A16B0: @ 80A16B0
- push {r4,lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- adds r4, r0, 0
- lsls r4, 16
- ldr r0, =gUnknown_08517A44
- lsrs r4, 14
- adds r0, r4, r0
- ldr r0, [r0]
- ldr r1, =0x06007e00
- movs r2, 0xC0
- lsls r2, 1
- bl sub_80A0980
- ldr r0, =gUnknown_08517A50
- adds r4, r0
- ldr r0, [r4]
- ldr r1, =0x06007a00
- movs r2, 0xA0
- lsls r2, 2
- bl sub_80A0980
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A16B0
-
- thumb_func_start sub_80A16F8
-sub_80A16F8: @ 80A16F8
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08517BFC
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007f00
- movs r2, 0x20
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A16F8
-
- thumb_func_start sub_80A1720
-sub_80A1720: @ 80A1720
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_08517C0C
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06007c00
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1720
-
- thumb_func_start sub_80A1748
-sub_80A1748: @ 80A1748
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_08518034
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06005200
- movs r2, 0x80
- lsls r2, 2
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1748
-
- thumb_func_start sub_80A1770
-sub_80A1770: @ 80A1770
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_0851829C
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06007e00
- movs r2, 0x90
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1770
-
- thumb_func_start sub_80A1798
-sub_80A1798: @ 80A1798
- push {lr}
- lsls r0, 16
- movs r1, 0xE0
- lsls r1, 11
- ands r1, r0
- ldr r0, =gUnknown_085202C4
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005e00
- movs r2, 0xC0
- lsls r2, 4
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A1798
-
- thumb_func_start sub_80A17C0
-sub_80A17C0: @ 80A17C0
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- ldr r1, =gUnknown_08524864
- lsrs r0, 14
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x060052e0
- movs r2, 0x80
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A17C0
-
- thumb_func_start sub_80A17EC
-sub_80A17EC: @ 80A17EC
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- ldr r1, =gUnknown_08524870
- lsrs r0, 14
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x060050e0
- movs r2, 0x80
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80A17EC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/title_screen.s b/asm/title_screen.s
index 15037e80d..bc9401fb6 100644
--- a/asm/title_screen.s
+++ b/asm/title_screen.s
@@ -468,7 +468,7 @@ title_screen_vblank_callback: @ 80AA780
bl LoadOam
bl ProcessSpriteCopyRequests
bl TransferPlttBuffer
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
ldrh r1, [r0]
movs r0, 0x16
bl SetGpuReg
@@ -590,7 +590,7 @@ _080AA7E0:
b _080AAB1E
.pool
_080AA8C4:
- ldr r0, =gTitleScreenPokemonLogoTiles
+ ldr r0, =gTitleScreenPokemonLogoGfx
movs r1, 0xC0
lsls r1, 19
bl LZ77UnCompVram
@@ -602,13 +602,13 @@ _080AA8C4:
lsls r2, 1
movs r1, 0
bl LoadPalette
- ldr r0, =gTitleScreenRayquazaTiles
+ ldr r0, =gTitleScreenRayquazaGfx
ldr r1, =0x06008000
bl LZ77UnCompVram
- ldr r0, =gUnknown_0853F83C
+ ldr r0, =gTitleScreenRayquazaTilemap
ldr r1, =0x0600d000
bl LZ77UnCompVram
- ldr r0, =gTitleScreenCloudsTiles
+ ldr r0, =gTitleScreenCloudsGfx
ldr r1, =0x0600c000
bl LZ77UnCompVram
ldr r0, =gUnknown_08DDE458
@@ -627,7 +627,7 @@ _080AA8C4:
bl LoadCompressedObjectPic
ldr r0, =gUnknown_0854013C
bl LoadCompressedObjectPic
- ldr r0, =gUnknown_08DDE438
+ ldr r0, =gTitleScreenEmeraldVersionPal
movs r1, 0x80
lsls r1, 1
movs r2, 0x20
@@ -1156,14 +1156,14 @@ _080AAE30:
ldrh r0, [r3, 0x10]
adds r0, 0x1
strh r0, [r3, 0x10]
- ldr r2, =gUnknown_02022E1A
+ ldr r2, =gBattle_BG1_Y
movs r1, 0x10
ldrsh r0, [r3, r1]
lsrs r1, r0, 31
adds r0, r1
asrs r0, 1
strh r0, [r2]
- ldr r1, =gUnknown_02022E18
+ ldr r1, =gBattle_BG1_X
movs r0, 0
strh r0, [r1]
_080AAE72:
@@ -1228,7 +1228,7 @@ c2_clear_save_data_screen_1: @ 80AAEF0
lsls r0, 24
cmp r0, 0
bne _080AAF02
- ldr r0, =c2_clear_save_data_screen_2
+ ldr r0, =CB2_InitClearSaveDataScreen
bl SetMainCallback2
_080AAF02:
pop {r0}
diff --git a/asm/trade.s b/asm/trade.s
index 8712567c7..51b517a0b 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -18,7 +18,7 @@ sub_8077170: @ 8077170
lsrs r2, 16
movs r0, 0
adds r1, r4, 0
- bl link_0800A448
+ bl SendBlock
lsls r0, 24
lsrs r0, 24
b _080771A2
@@ -83,7 +83,7 @@ _080771F8:
thumb_func_start sub_8077200
sub_8077200: @ 8077200
push {lr}
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
pop {r1}
@@ -103,7 +103,7 @@ sub_8077210: @ 8077210
b _08077230
.pool
_0807722C:
- bl sub_800A5B4
+ bl ResetBlockReceivedFlags
_08077230:
pop {r0}
bx r0
@@ -125,7 +125,7 @@ sub_8077234: @ 8077234
_08077250:
lsls r0, r4, 24
lsrs r0, 24
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
_08077258:
pop {r4}
pop {r0}
@@ -397,7 +397,7 @@ _080774B2:
bl sub_807A19C
movs r0, 0
bl ShowBg
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r2, [r0]
cmp r2, 0
bne _0807754C
@@ -504,7 +504,7 @@ _080775D8:
b _08077B22
.pool
_080775E8:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
beq _080775F2
@@ -1832,7 +1832,7 @@ sub_80781C8: @ 80781C8
b _08078244
.pool
_08078220:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r4, [r0]
cmp r4, 0
bne _08078244
@@ -2198,7 +2198,7 @@ _08078552:
adds r1, r5, 0
eors r1, r2
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0xC8
bl sub_8078438
@@ -2237,7 +2237,7 @@ _080785B6:
adds r1, r5, 0
eors r1, r2
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0xC8
bl sub_8078438
@@ -2276,7 +2276,7 @@ _0807861A:
adds r1, r5, 0
eors r1, r2
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0xC8
bl sub_8078438
@@ -2318,7 +2318,7 @@ _0807868A:
adds r1, r5, 0
eors r1, r2
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0xD8
bl sub_8078438
@@ -2360,7 +2360,7 @@ _080786F0:
adds r1, r5, 0
eors r1, r2
lsls r1, 8
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
adds r1, r2
movs r2, 0xB
bl sub_8078438
@@ -2467,7 +2467,7 @@ sub_80787E0: @ 80787E0
ands r0, r2
cmp r0, 0
beq _08078864
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
ldrh r1, [r0]
ldr r0, =0x0000bbbb
cmp r1, r0
@@ -2521,7 +2521,7 @@ _08078864:
ands r0, r2
cmp r0, 0
beq _080788F6
- ldr r3, =gUnknown_020223C4
+ ldr r3, =gBlockRecvBuffer
movs r1, 0x80
lsls r1, 1
adds r0, r3, r1
@@ -2597,7 +2597,7 @@ sub_8078900: @ 8078900
ands r0, r5
cmp r0, 0
beq _080789E2
- ldr r2, =gUnknown_020223C4
+ ldr r2, =gBlockRecvBuffer
ldrh r1, [r2]
ldr r0, =0x0000ddee
cmp r1, r0
@@ -4052,7 +4052,7 @@ sub_80794CC: @ 80794CC
b _0807953A
.pool
_08079518:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0807953A
@@ -5954,7 +5954,7 @@ _0807A488:
asrs r0, 16
lsls r1, 16
asrs r1, 16
- bl sub_8075060
+ bl GetHPBarLevel
ldr r1, [r7]
adds r1, 0x5D
adds r1, r6
@@ -5997,7 +5997,7 @@ _0807A4E8:
asrs r0, 16
lsls r1, 16
asrs r1, 16
- bl sub_8075060
+ bl GetHPBarLevel
ldr r1, [r7]
adds r1, 0x63
adds r1, r6
@@ -6279,7 +6279,7 @@ _0807A718:
thumb_func_start sub_807A728
sub_807A728: @ 807A728
push {r4-r7,lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0807A7B4
@@ -6603,7 +6603,7 @@ _0807A97C:
adds r4, 0x1C
adds r5, 0x1
_0807A980:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -6632,7 +6632,7 @@ _0807A9B0:
adds r4, 0x1C
adds r5, 0x1
_0807A9B4:
- bl sub_8009FCC
+ bl GetLinkPlayerCount
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -7054,7 +7054,7 @@ _0807ACC4:
thumb_func_start sub_807ACDC
sub_807ACDC: @ 807ACDC
push {lr}
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0807ACF0
@@ -7128,7 +7128,7 @@ _0807AD58:
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x8]
adds r2, r5, 0
@@ -7141,7 +7141,7 @@ _0807AD94:
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r2, [r1]
lsls r4, r6, 1
adds r1, r4, 0x1
@@ -7254,7 +7254,7 @@ _0807AE78:
.4byte _0807B0D4
.4byte _0807B0F0
_0807AEAC:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _0807AEC0
@@ -7270,7 +7270,7 @@ _0807AEC0:
adds r0, r5, 0
bl AllocZeroed
str r0, [r4]
- bl init_uns_table_pokemon_copy
+ bl AllocateMonSpritesGfx
bl ResetTasks
bl ResetSpriteData
bl FreeAllSpritePalettes
@@ -7321,7 +7321,7 @@ _0807AEC0:
b _0807B116
.pool
_0807AF58:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r5, [r0]
cmp r5, 0
bne _0807AF90
@@ -7401,7 +7401,7 @@ _0807B000:
b _0807B116
_0807B006:
bl sub_807AC64
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
beq _0807B014
@@ -7729,7 +7729,7 @@ _0807B2D0:
adds r0, r5, 0
bl AllocZeroed
str r0, [r4]
- bl init_uns_table_pokemon_copy
+ bl AllocateMonSpritesGfx
bl ResetTasks
bl ResetSpriteData
bl FreeAllSpritePalettes
@@ -7989,7 +7989,7 @@ _0807B566:
_0807B57C:
mov r0, r9
bl sub_807B464
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _0807B58E
@@ -8029,7 +8029,7 @@ _0807B5D0:
ldr r1, [r4]
adds r1, 0x74
movs r2, 0x14
- bl link_0800A448
+ bl SendBlock
ldr r1, [r4]
adds r1, 0x93
ldrb r0, [r1]
@@ -8939,7 +8939,7 @@ _0807C04C:
adds r1, r0
lsls r1, 2
adds r1, r3
- ldr r2, =gUnknown_08300D38
+ ldr r2, =gMonFrontPicCoords
adds r0, r4, 0
adds r0, 0xF0
ldrh r0, [r0]
@@ -10369,7 +10369,7 @@ _0807CCEE:
lsls r0, r2, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x10]
ldr r3, [r3, 0x6C]
@@ -10395,7 +10395,7 @@ _0807CD1C:
adds r1, r0
lsls r1, 2
adds r1, r4
- ldr r3, =gUnknown_08300D38
+ ldr r3, =gMonFrontPicCoords
adds r2, 0xF2
ldrh r0, [r2]
lsls r0, 2
@@ -10663,7 +10663,7 @@ _0807CF5C:
movs r0, 0
bl GetBgTilemapBuffer
bl Free
- bl sub_805F094
+ bl FreeMonSpritesGfx
ldr r0, [r7]
bl Free
str r4, [r7]
@@ -11001,7 +11001,7 @@ _0807D428:
adds r1, r0
lsls r1, 2
adds r1, r3
- ldr r2, =gUnknown_08300D38
+ ldr r2, =gMonFrontPicCoords
adds r0, r4, 0
adds r0, 0xF0
ldrh r0, [r0]
@@ -12474,7 +12474,7 @@ _0807E13A:
lsls r0, r2, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gBattleSpritesGfx
+ ldr r1, =gMonSpritesGfxPtr
ldr r1, [r1]
ldr r1, [r1, 0x10]
ldr r3, [r3, 0x6C]
@@ -12500,7 +12500,7 @@ _0807E168:
adds r1, r0
lsls r1, 2
adds r1, r4
- ldr r3, =gUnknown_08300D38
+ ldr r3, =gMonFrontPicCoords
adds r2, 0xF2
ldrh r0, [r2]
lsls r0, 2
@@ -12768,7 +12768,7 @@ _0807E3A8:
movs r0, 0
bl GetBgTilemapBuffer
bl Free
- bl sub_805F094
+ bl FreeMonSpritesGfx
ldr r0, [r7]
bl Free
str r4, [r7]
@@ -12877,7 +12877,7 @@ _0807E4C2:
sub_807E4DC: @ 807E4DC
push {r4-r6,lr}
bl sub_807ACDC
- bl sub_800A550
+ bl GetBlockReceivedStatus
lsls r0, 24
lsrs r5, r0, 24
movs r6, 0x1
@@ -12885,7 +12885,7 @@ sub_807E4DC: @ 807E4DC
ands r0, r6
cmp r0, 0
beq _0807E51A
- ldr r4, =gUnknown_020223C4
+ ldr r4, =gBlockRecvBuffer
ldrh r1, [r4]
ldr r0, =0x0000dcba
cmp r1, r0
@@ -12903,13 +12903,13 @@ _0807E504:
strb r6, [r0]
_0807E514:
movs r0, 0
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
_0807E51A:
movs r0, 0x2
ands r0, r5
cmp r0, 0
beq _0807E542
- ldr r0, =gUnknown_020223C4
+ ldr r0, =gBlockRecvBuffer
movs r1, 0x80
lsls r1, 1
adds r0, r1
@@ -12924,7 +12924,7 @@ _0807E51A:
strb r1, [r0]
_0807E53C:
movs r0, 0x1
- bl sub_800A5EC
+ bl ResetBlockReceivedFlag
_0807E542:
pop {r4-r6}
pop {r0}
@@ -13600,7 +13600,7 @@ _0807EAEC:
ldr r1, [r4]
adds r1, 0x74
movs r2, 0x14
- bl link_0800A448
+ bl SendBlock
ldr r0, [r4]
adds r0, 0x72
movs r1, 0x2
@@ -14090,7 +14090,7 @@ _0807EFF0:
b _0807F03A
.pool
_0807F028:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r1, [r0]
cmp r1, 0
bne _0807F03A
@@ -14136,7 +14136,7 @@ c2_080543C4: @ 807F068
movs r0, 0
bl GetBgTilemapBuffer
bl Free
- bl sub_805F094
+ bl FreeMonSpritesGfx
ldr r4, =gUnknown_020322A0
ldr r0, [r4]
bl Free
diff --git a/asm/trader.s b/asm/trader.s
index 8c21648fc..8e0b17905 100644
--- a/asm/trader.s
+++ b/asm/trader.s
@@ -351,7 +351,7 @@ sub_8133CF4: @ 8133CF4
ldr r5, =gScriptResult
_08133CFA:
adds r0, r4, 0
- bl sub_8161AD0
+ bl CountDecorationCategoryN
lsls r0, 24
cmp r0, 0
beq _08133D10
@@ -395,7 +395,7 @@ sub_8133D2C: @ 8133D2C
cmp r1, r0
beq _08133D72
adds r0, r1, 0
- bl sub_81618D0
+ bl GetFirstEmptyDecorSlot
lsls r0, 24
asrs r0, 24
movs r1, 0x1
@@ -433,15 +433,15 @@ sub_8133DA0: @ 8133DA0
push {r4-r6,lr}
lsls r0, 24
lsrs r6, r0, 24
- bl sub_81279C4
+ bl IsSelectedDecorInThePC
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _08133DFC
ldr r5, =gSpecialVar_0x8006
- ldr r0, =gUnknown_0203A172
+ ldr r0, =gCurDecorationIndex
ldrb r1, [r0]
- ldr r0, =gUnknown_0203A14C
+ ldr r0, =gCurDecorInventoryItems
ldr r0, [r0]
adds r0, r1
ldrb r0, [r0]
diff --git a/asm/trainer_card.s b/asm/trainer_card.s
index 7552d7ace..bee1f4f7f 100644
--- a/asm/trainer_card.s
+++ b/asm/trainer_card.s
@@ -191,7 +191,7 @@ _080C2836:
ldrb r0, [r0]
cmp r0, 0x1
bne _080C2852
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _080C2852
@@ -261,7 +261,7 @@ _080C28D8:
b _080C2ACA
.pool
_080C28E4:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r5, [r0]
cmp r5, 0
bne _080C290A
@@ -301,7 +301,7 @@ _080C293C:
bne _080C2946
b _080C2ACA
_080C2946:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080C2960
@@ -346,7 +346,7 @@ _080C299C:
ands r0, r1
cmp r0, 0
beq _080C29F4
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080C29DC
@@ -358,7 +358,7 @@ _080C299C:
cmp r0, 0x1
beq _080C2A14
_080C29C0:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080C29DC
@@ -382,7 +382,7 @@ _080C29F4:
ands r0, r1
cmp r0, 0
beq _080C2ACA
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080C2A20
@@ -430,7 +430,7 @@ _080C2A2C:
b _080C2ACA
.pool
_080C2A68:
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080C2ACA
@@ -1403,7 +1403,7 @@ sub_80C3278: @ 80C3278
movs r0, 0x40
movs r1, 0xF0
bl SetGpuReg
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080C32E0
@@ -4267,7 +4267,7 @@ _080C4BF6:
ldrb r0, [r1, 0x4]
adds r0, 0x1
strb r0, [r1, 0x4]
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _080C4B20
@@ -4745,7 +4745,7 @@ sub_80C4FF0: @ 80C4FF0
bl InUnionRoom
cmp r0, 0x1
bne _080C5060
- ldr r0, =gUnknown_03003124
+ ldr r0, =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0x1
bne _080C5060
diff --git a/asm/trainer_rematch.s b/asm/trainer_rematch.s
index 0c30cfea9..b814934a3 100755
--- a/asm/trainer_rematch.s
+++ b/asm/trainer_rematch.s
@@ -185,7 +185,7 @@ _081DA6D4:
adds r0, r1
adds r0, r6
ldrh r0, [r0]
- bl trainer_flag_check
+ bl HasTrainerAlreadyBeenFought
lsls r0, 24
cmp r0, 0
bne _081DA6F0
diff --git a/asm/trainer_see.s b/asm/trainer_see.s
index d57ad1815..59dd9f74b 100644
--- a/asm/trainer_see.s
+++ b/asm/trainer_see.s
@@ -267,7 +267,7 @@ CheckIfTrainerCanApproachPlayer: @ 80B3DF0
mov r8, r4
cmp r0, 0x1
bne _080B3E50
- ldr r1, =gUnknown_0855072C
+ ldr r1, =gIsTrainerInRange
ldrb r0, [r7, 0x18]
lsls r0, 28
lsrs r0, 26
@@ -300,7 +300,7 @@ _080B3E4C:
_080B3E50:
movs r5, 0
_080B3E52:
- ldr r0, =gUnknown_0855072C
+ ldr r0, =gIsTrainerInRange
lsls r4, r5, 2
adds r4, r0
ldrb r1, [r7, 0x1D]
@@ -702,7 +702,7 @@ c3_8081EDC: @ 80B4118
b _080B416C
.pool
_080B4150:
- ldr r7, =gUnknown_0855073C
+ ldr r7, =gTrainerSeeFuncList
_080B4152:
movs r1, 0x8
ldrsh r0, [r4, r1]
@@ -734,7 +734,7 @@ sub_80B417C: @ 80B417C
push {r4,r5,lr}
adds r5, r1, 0
adds r4, r2, 0
- ldr r1, =gFieldEffectSpawnParams
+ ldr r1, =gFieldEffectArguments
adds r2, r1, 0x4
adds r3, r1, 0
adds r3, 0x8
@@ -1050,7 +1050,7 @@ sub_80B43E0: @ 80B43E0
lsls r0, 24
cmp r0, 0
beq _080B4426
- ldr r2, =gFieldEffectSpawnParams
+ ldr r2, =gFieldEffectArguments
movs r1, 0x10
ldrsh r0, [r4, r1]
str r0, [r2]
@@ -1186,7 +1186,7 @@ sub_80B44C8: @ 80B44C8
adds r0, 0x1
strh r0, [r4, 0x16]
_080B44FA:
- ldr r1, =gUnknown_0855076C
+ ldr r1, =gTrainerSeeFuncList2
movs r2, 0x8
ldrsh r0, [r4, r2]
lsls r0, 2
@@ -1303,7 +1303,7 @@ sub_80B45D0: @ 80B45D0
ldr r1, =gScriptResult
movs r0, 0x1
strh r0, [r1]
- bl sub_809757C
+ bl UnfreezeMapObjects
ldr r0, =gUnknown_03006090
ldrb r0, [r0, 0xC]
bl sub_80974D0
@@ -1322,4 +1322,324 @@ _080B4616:
.pool
thumb_func_end sub_80B45D0
+ thumb_func_start oei_exclamation_mark
+oei_exclamation_mark: @ 80B4620
+ push {lr}
+ ldr r0, =gSpriteTemplate_85507B4
+ movs r1, 0
+ movs r2, 0
+ movs r3, 0x53
+ bl CreateSpriteAtEnd
+ lsls r0, 24
+ lsrs r1, r0, 24
+ cmp r1, 0x40
+ beq _080B4648
+ lsls r0, r1, 4
+ adds r0, r1
+ lsls r0, 2
+ ldr r1, =gSprites
+ adds r0, r1
+ movs r1, 0
+ movs r2, 0
+ bl sub_80B46D8
+_080B4648:
+ movs r0, 0
+ pop {r1}
+ bx r1
+ .pool
+ thumb_func_end oei_exclamation_mark
+
+ thumb_func_start sub_80B4658
+sub_80B4658: @ 80B4658
+ push {lr}
+ ldr r0, =gSpriteTemplate_85507B4
+ movs r1, 0
+ movs r2, 0
+ movs r3, 0x52
+ bl CreateSpriteAtEnd
+ lsls r0, 24
+ lsrs r1, r0, 24
+ cmp r1, 0x40
+ beq _080B4680
+ lsls r0, r1, 4
+ adds r0, r1
+ lsls r0, 2
+ ldr r1, =gSprites
+ adds r0, r1
+ movs r1, 0x21
+ movs r2, 0x1
+ bl sub_80B46D8
+_080B4680:
+ movs r0, 0
+ pop {r1}
+ bx r1
+ .pool
+ thumb_func_end sub_80B4658
+
+ thumb_func_start sub_80B4690
+sub_80B4690: @ 80B4690
+ push {r4,lr}
+ ldr r0, =gSpriteTemplate_85507CC
+ movs r1, 0
+ movs r2, 0
+ movs r3, 0x52
+ bl CreateSpriteAtEnd
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r0, 0x40
+ beq _080B46C6
+ lsls r4, r0, 4
+ adds r4, r0
+ lsls r4, 2
+ ldr r0, =gSprites
+ adds r4, r0
+ adds r0, r4, 0
+ movs r1, 0x2E
+ movs r2, 0
+ bl sub_80B46D8
+ ldrb r1, [r4, 0x5]
+ movs r0, 0xF
+ ands r0, r1
+ movs r1, 0x20
+ orrs r0, r1
+ strb r0, [r4, 0x5]
+_080B46C6:
+ movs r0, 0
+ pop {r4}
+ pop {r1}
+ bx r1
+ .pool
+ thumb_func_end sub_80B4690
+
+ thumb_func_start sub_80B46D8
+@ void sub_80B46D8(struct obj *object, s16 a2, u8 a3)
+sub_80B46D8: @ 80B46D8
+ push {r4,lr}
+ lsls r2, 24
+ lsrs r2, 24
+ ldrb r4, [r0, 0x5]
+ movs r3, 0xD
+ negs r3, r3
+ ands r3, r4
+ movs r4, 0x4
+ orrs r3, r4
+ strb r3, [r0, 0x5]
+ movs r3, 0x3E
+ adds r3, r0
+ mov r12, r3
+ ldrb r3, [r3]
+ movs r4, 0x2
+ orrs r3, r4
+ mov r4, r12
+ strb r3, [r4]
+ ldr r4, =gFieldEffectArguments
+ ldr r3, [r4]
+ strh r3, [r0, 0x2E]
+ ldr r3, [r4, 0x4]
+ strh r3, [r0, 0x30]
+ ldr r3, [r4, 0x8]
+ strh r3, [r0, 0x32]
+ ldr r3, =0x0000fffb
+ strh r3, [r0, 0x34]
+ strh r1, [r0, 0x3C]
+ adds r1, r2, 0
+ bl StartSpriteAnim
+ pop {r4}
+ pop {r0}
+ bx r0
+ .pool
+ thumb_func_end sub_80B46D8
+
+ thumb_func_start objc_exclamation_mark_probably
+objc_exclamation_mark_probably: @ 80B4724
+ push {r4,lr}
+ sub sp, 0x4
+ adds r4, r0, 0
+ ldrh r0, [r4, 0x2E]
+ lsls r0, 24
+ lsrs r0, 24
+ ldrh r1, [r4, 0x30]
+ lsls r1, 24
+ lsrs r1, 24
+ ldrh r2, [r4, 0x32]
+ lsls r2, 24
+ lsrs r2, 24
+ mov r3, sp
+ bl TryGetFieldObjectIdByLocalIdAndMap
+ lsls r0, 24
+ cmp r0, 0
+ bne _080B4756
+ adds r0, r4, 0
+ adds r0, 0x3F
+ ldrb r1, [r0]
+ movs r0, 0x10
+ ands r0, r1
+ cmp r0, 0
+ beq _080B4764
+_080B4756:
+ ldrh r1, [r4, 0x3C]
+ lsls r1, 24
+ lsrs r1, 24
+ adds r0, r4, 0
+ bl FieldEffectStop
+ b _080B47B2
+_080B4764:
+ ldr r2, =gMapObjects
+ mov r0, sp
+ ldrb r1, [r0]
+ lsls r0, r1, 3
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x4]
+ lsls r1, r0, 4
+ adds r1, r0
+ lsls r1, 2
+ ldr r0, =gSprites
+ adds r1, r0
+ ldrh r3, [r4, 0x34]
+ ldrh r0, [r4, 0x36]
+ adds r2, r3, r0
+ strh r2, [r4, 0x36]
+ ldrh r0, [r1, 0x20]
+ strh r0, [r4, 0x20]
+ ldrh r0, [r1, 0x22]
+ subs r0, 0x10
+ strh r0, [r4, 0x22]
+ ldrh r0, [r1, 0x24]
+ strh r0, [r4, 0x24]
+ ldrh r0, [r1, 0x26]
+ adds r0, r2
+ strh r0, [r4, 0x26]
+ lsls r2, 16
+ asrs r2, 16
+ cmp r2, 0
+ beq _080B47B0
+ adds r0, r3, 0x1
+ strh r0, [r4, 0x34]
+ b _080B47B2
+ .pool
+_080B47B0:
+ strh r2, [r4, 0x34]
+_080B47B2:
+ add sp, 0x4
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end objc_exclamation_mark_probably
+
+ thumb_func_start sub_80B47BC
+sub_80B47BC: @ 80B47BC
+ push {lr}
+ ldr r0, =gUnknown_02038BFC
+ ldrb r0, [r0]
+ cmp r0, 0
+ beq _080B47D4
+ ldr r0, =gUnknown_03006090
+ ldrb r0, [r0, 0xC]
+ b _080B47D8
+ .pool
+_080B47D4:
+ ldr r0, =gUnknown_03006090
+ ldrb r0, [r0]
+_080B47D8:
+ pop {r1}
+ bx r1
+ .pool
+ thumb_func_end sub_80B47BC
+
+ thumb_func_start sub_80B47E0
+sub_80B47E0: @ 80B47E0
+ push {lr}
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r0, 0x1
+ bls _080B47EE
+ movs r0, 0
+ b _080B4800
+_080B47EE:
+ cmp r0, 0
+ beq _080B47FC
+ ldr r0, =gUnknown_03006090
+ ldrb r0, [r0, 0xC]
+ b _080B4800
+ .pool
+_080B47FC:
+ ldr r0, =gUnknown_03006090
+ ldrb r0, [r0]
+_080B4800:
+ pop {r1}
+ bx r1
+ .pool
+ thumb_func_end sub_80B47E0
+
+ thumb_func_start sub_80B4808
+sub_80B4808: @ 80B4808
+ push {lr}
+ ldr r0, =gUnknown_030060AC
+ ldrb r0, [r0]
+ cmp r0, 0x1
+ bne _080B4870
+ ldr r2, =gUnknown_03006090
+ ldr r0, =gUnknown_03006080
+ ldrh r1, [r0]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r1, [r0]
+ lsls r0, r1, 3
+ adds r0, r1
+ lsls r0, 2
+ ldr r1, =gMapObjects
+ adds r0, r1
+ ldrb r0, [r0, 0x18]
+ lsls r0, 28
+ lsrs r0, 28
+ bl GetOppositeDirection
+ lsls r0, 24
+ lsrs r0, 24
+ bl GetFaceDirectionAnimId
+ ldr r3, =gUnknown_03006084
+ strb r0, [r3]
+ movs r0, 0xFE
+ strb r0, [r3, 0x1]
+ ldr r0, =gSaveBlock1Ptr
+ ldr r0, [r0]
+ ldrb r1, [r0, 0x5]
+ ldrb r2, [r0, 0x4]
+ movs r0, 0xFF
+ bl ScriptMovement_StartObjectMovementScript
+ b _080B489E
+ .pool
+_080B4870:
+ ldr r0, =gPlayerAvatar
+ ldrb r1, [r0, 0x5]
+ lsls r0, r1, 3
+ adds r0, r1
+ lsls r0, 2
+ ldr r1, =gMapObjects
+ adds r0, r1
+ ldrb r0, [r0, 0x18]
+ lsls r0, 28
+ lsrs r0, 28
+ bl GetFaceDirectionAnimId
+ ldr r3, =gUnknown_03006084
+ strb r0, [r3]
+ movs r0, 0xFE
+ strb r0, [r3, 0x1]
+ ldr r0, =gSaveBlock1Ptr
+ ldr r0, [r0]
+ ldrb r1, [r0, 0x5]
+ ldrb r2, [r0, 0x4]
+ movs r0, 0xFF
+ bl ScriptMovement_StartObjectMovementScript
+_080B489E:
+ movs r0, 0xFF
+ bl sub_809BE48
+ pop {r0}
+ bx r0
+ .pool
+ thumb_func_end sub_80B4808
+
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/truck_scene.s b/asm/truck_scene.s
deleted file mode 100644
index bc3388cb6..000000000
--- a/asm/truck_scene.s
+++ /dev/null
@@ -1,589 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80FB0B0
-sub_80FB0B0: @ 80FB0B0
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x78
- bl __modsi3
- cmp r0, 0
- bne _080FB0C4
- movs r0, 0x1
- negs r0, r0
- b _080FB0D6
-_080FB0C4:
- adds r0, r4, 0
- movs r1, 0xA
- bl __modsi3
- cmp r0, 0x4
- ble _080FB0D4
- movs r0, 0
- b _080FB0D6
-_080FB0D4:
- movs r0, 0x1
-_080FB0D6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80FB0B0
-
- thumb_func_start sub_80FB0DC
-sub_80FB0DC: @ 80FB0DC
- push {lr}
- adds r0, 0x78
- movs r1, 0xB4
- bl __modsi3
- cmp r0, 0
- beq _080FB0EE
- movs r0, 0
- b _080FB0F2
-_080FB0EE:
- movs r0, 0x1
- negs r0, r0
-_080FB0F2:
- pop {r1}
- bx r1
- thumb_func_end sub_80FB0DC
-
- thumb_func_start sub_80FB0F8
-sub_80FB0F8: @ 80FB0F8
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r5, r1, r0
- movs r1, 0
- ldrsh r0, [r5, r1]
- adds r0, 0x1E
- bl sub_80FB0DC
- ldr r4, =gSaveBlock1Ptr
- ldr r2, [r4]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- lsls r0, 18
- movs r3, 0xC0
- lsls r3, 10
- orrs r0, r3
- asrs r0, 16
- str r0, [sp]
- movs r0, 0x1
- movs r3, 0x3
- bl sub_808E82C
- movs r3, 0
- ldrsh r0, [r5, r3]
- bl sub_80FB0DC
- ldr r2, [r4]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- lsls r0, 17
- ldr r3, =0xfffd0000
- adds r0, r3
- asrs r0, 16
- str r0, [sp]
- movs r0, 0x2
- movs r3, 0
- bl sub_808E82C
- movs r1, 0
- ldrsh r0, [r5, r1]
- bl sub_80FB0DC
- ldr r2, [r4]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- movs r4, 0
- movs r3, 0x3
- negs r3, r3
- lsls r0, 18
- asrs r0, 16
- str r0, [sp]
- movs r0, 0x3
- bl sub_808E82C
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
- lsls r0, 16
- ldr r1, =0x75300000
- cmp r0, r1
- bne _080FB180
- strh r4, [r5]
-_080FB180:
- movs r3, 0
- ldrsh r0, [r5, r3]
- bl sub_80FB0B0
- adds r1, r0, 0
- lsls r1, 16
- asrs r1, 16
- movs r0, 0
- bl SetCameraPanning
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FB0F8
-
- thumb_func_start sub_80FB1AC
-sub_80FB1AC: @ 80FB1AC
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r3, r0, 3
- ldr r4, =gTasks + 0x8
- adds r7, r3, r4
- ldrh r1, [r7]
- adds r1, 0x1
- strh r1, [r7]
- ldrh r0, [r7, 0x4]
- adds r0, 0x1
- strh r0, [r7, 0x4]
- lsls r1, 16
- asrs r1, 16
- cmp r1, 0x5
- ble _080FB1DC
- movs r0, 0
- strh r0, [r7]
- ldrh r0, [r7, 0x2]
- adds r0, 0x1
- strh r0, [r7, 0x2]
-_080FB1DC:
- ldrh r0, [r7, 0x2]
- cmp r0, 0x13
- bne _080FB1F0
- adds r0, r2, 0
- bl DestroyTask
- b _080FB2A8
- .pool
-_080FB1F0:
- ldr r2, =gUnknown_0858E898
- movs r1, 0x2
- ldrsh r0, [r7, r1]
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x2
- bne _080FB20C
- adds r0, r4, 0
- subs r0, 0x8
- adds r0, r3, r0
- ldr r1, =sub_80FB2C0
- str r1, [r0]
-_080FB20C:
- movs r4, 0x2
- ldrsh r0, [r7, r4]
- adds r0, r2
- movs r5, 0
- ldrsb r5, [r0, r5]
- lsls r5, 16
- lsrs r5, 16
- movs r1, 0x4
- ldrsh r0, [r7, r1]
- bl sub_80FB0B0
- adds r1, r0, 0
- lsls r5, 16
- asrs r5, 16
- lsls r1, 16
- asrs r1, 16
- adds r0, r5, 0
- bl SetCameraPanning
- movs r4, 0x4
- ldrsh r0, [r7, r4]
- adds r0, 0x1E
- bl sub_80FB0DC
- ldr r6, =gSaveBlock1Ptr
- ldr r2, [r6]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- movs r3, 0x3
- subs r3, r5
- lsls r3, 16
- asrs r3, 16
- lsls r0, 18
- movs r4, 0xC0
- lsls r4, 10
- orrs r0, r4
- asrs r0, 16
- str r0, [sp]
- movs r0, 0x1
- bl sub_808E82C
- movs r1, 0x4
- ldrsh r0, [r7, r1]
- bl sub_80FB0DC
- ldr r2, [r6]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- negs r3, r5
- lsls r3, 16
- asrs r3, 16
- lsls r0, 17
- ldr r4, =0xfffd0000
- adds r0, r4
- asrs r0, 16
- str r0, [sp]
- movs r0, 0x2
- bl sub_808E82C
- movs r1, 0x4
- ldrsh r0, [r7, r1]
- bl sub_80FB0DC
- ldr r2, [r6]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- movs r4, 0x3
- negs r4, r4
- adds r3, r4, 0
- subs r3, r5
- lsls r3, 16
- asrs r3, 16
- lsls r0, 18
- asrs r0, 16
- str r0, [sp]
- movs r0, 0x3
- bl sub_808E82C
-_080FB2A8:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FB1AC
-
- thumb_func_start sub_80FB2C0
-sub_80FB2C0: @ 80FB2C0
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- adds r3, r0, 0
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r2, r0, r1
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- ble _080FB2F0
- movs r0, 0
- strh r0, [r2]
- ldrh r0, [r2, 0x2]
- adds r0, 0x1
- strh r0, [r2, 0x2]
-_080FB2F0:
- ldrh r0, [r2, 0x2]
- cmp r0, 0x13
- bne _080FB304
- adds r0, r3, 0
- bl DestroyTask
- b _080FB358
- .pool
-_080FB304:
- ldr r1, =gUnknown_0858E898
- movs r3, 0x2
- ldrsh r0, [r2, r3]
- adds r0, r1
- movs r1, 0
- mov r8, r1
- movs r6, 0
- ldrsb r6, [r0, r6]
- adds r0, r6, 0
- bl SetCameraPanning
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r3, 0x3
- subs r3, r6
- movs r0, 0x3
- str r0, [sp]
- movs r0, 0x1
- bl sub_808E82C
- ldr r0, [r5]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- negs r3, r6
- mov r4, r8
- subs r4, 0x3
- str r4, [sp]
- movs r0, 0x2
- bl sub_808E82C
- ldr r0, [r5]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- subs r4, r6
- mov r3, r8
- str r3, [sp]
- movs r0, 0x3
- adds r3, r4, 0
- bl sub_808E82C
-_080FB358:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FB2C0
-
- thumb_func_start sub_80FB36C
-sub_80FB36C: @ 80FB36C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x5
- bls _080FB386
- b _080FB4D8
-_080FB386:
- lsls r0, 2
- ldr r1, =_080FB398
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080FB398:
- .4byte _080FB3B0
- .4byte _080FB3E8
- .4byte _080FB404
- .4byte _080FB450
- .4byte _080FB474
- .4byte _080FB492
-_080FB3B0:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5A
- beq _080FB3C0
- b _080FB4D8
-_080FB3C0:
- movs r0, 0
- bl SetCameraPanningCallback
- movs r0, 0
- strh r0, [r4, 0x2]
- ldr r0, =sub_80FB0F8
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x4]
- movs r0, 0x1
- strh r0, [r4]
- movs r0, 0x31
- bl PlaySE
- b _080FB4D8
- .pool
-_080FB3E8:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x96
- bne _080FB4D8
- bl pal_fill_black
- movs r0, 0
- strh r0, [r4, 0x2]
- movs r0, 0x2
- strh r0, [r4]
- b _080FB4D8
-_080FB404:
- ldrh r0, [r4, 0x2]
- adds r3, r0, 0x1
- strh r3, [r4, 0x2]
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _080FB4D8
- lsls r1, r3, 16
- movs r0, 0x96
- lsls r0, 17
- cmp r1, r0
- ble _080FB4D8
- strh r2, [r4, 0x2]
- ldrb r0, [r4, 0x4]
- bl DestroyTask
- ldr r0, =sub_80FB1AC
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x6]
- movs r0, 0x3
- strh r0, [r4]
- movs r0, 0x32
- bl PlaySE
- b _080FB4D8
- .pool
-_080FB450:
- ldr r2, =gTasks
- movs r0, 0x6
- ldrsh r1, [r4, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r5, [r0, 0x4]
- cmp r5, 0
- bne _080FB4D8
- bl InstallCameraPanAheadCallback
- strh r5, [r4, 0x2]
- movs r0, 0x4
- strh r0, [r4]
- b _080FB4D8
- .pool
-_080FB474:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5A
- bne _080FB4D8
- movs r0, 0x33
- bl PlaySE
- movs r0, 0
- strh r0, [r4, 0x2]
- movs r0, 0x5
- strh r0, [r4]
- b _080FB4D8
-_080FB492:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x78
- bne _080FB4D8
- movs r2, 0x82
- lsls r2, 2
- movs r0, 0xB
- movs r1, 0x8
- bl MapGridSetMetatileIdAt
- movs r2, 0x84
- lsls r2, 2
- movs r0, 0xB
- movs r1, 0x9
- bl MapGridSetMetatileIdAt
- movs r2, 0x86
- lsls r2, 2
- movs r0, 0xB
- movs r1, 0xA
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- movs r0, 0x34
- bl PlaySE
- adds r0, r5, 0
- bl DestroyTask
- bl ScriptContext2_Disable
-_080FB4D8:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80FB36C
-
- thumb_func_start sub_80FB4E0
-sub_80FB4E0: @ 80FB4E0
- push {lr}
- sub sp, 0x4
- ldr r2, =0x0000020d
- movs r0, 0xB
- movs r1, 0x8
- bl MapGridSetMetatileIdAt
- ldr r2, =0x00000215
- movs r0, 0xB
- movs r1, 0x9
- bl MapGridSetMetatileIdAt
- ldr r2, =0x0000021d
- movs r0, 0xB
- movs r1, 0xA
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- bl ScriptContext2_Enable
- movs r0, 0
- str r0, [sp]
- ldr r1, =gPlttBufferFaded
- ldr r2, =0x01000100
- mov r0, sp
- bl CpuFastSet
- ldr r0, =sub_80FB36C
- movs r1, 0xA
- bl CreateTask
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FB4E0
-
- thumb_func_start sub_80FB540
-sub_80FB540: @ 80FB540
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r0, =sub_80FB36C
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0
- bne _080FB58A
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r0, 0x3
- str r0, [sp]
- movs r0, 0x1
- movs r3, 0x3
- bl sub_808E82C
- ldr r0, [r4]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r5, 0x3
- negs r5, r5
- str r5, [sp]
- movs r0, 0x2
- movs r3, 0
- bl sub_808E82C
- ldr r0, [r4]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- str r6, [sp]
- movs r0, 0x3
- adds r3, r5, 0
- bl sub_808E82C
-_080FB58A:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FB540
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/tv.s b/asm/tv.s
deleted file mode 100644
index d61392fa1..000000000
--- a/asm/tv.s
+++ /dev/null
@@ -1,16938 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start ClearTVShowData
-ClearTVShowData: @ 80EBEE0
- push {r4-r7,lr}
- movs r3, 0
- ldr r6, =gSaveBlock1Ptr
- movs r5, 0
- ldr r7, =0x000027ce
-_080EBEEA:
- ldr r0, [r6]
- lsls r1, r3, 3
- adds r1, r3
- lsls r1, 2
- adds r0, r1
- ldr r2, =0x000027cc
- adds r0, r2
- strb r5, [r0]
- ldr r0, [r6]
- adds r0, r1
- adds r2, 0x1
- adds r0, r2
- strb r5, [r0]
- movs r2, 0
- adds r4, r3, 0x1
- adds r3, r1, 0
-_080EBF0A:
- ldr r0, [r6]
- adds r1, r2, r3
- adds r0, r7
- adds r0, r1
- strb r5, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x21
- bls _080EBF0A
- lsls r0, r4, 24
- lsrs r3, r0, 24
- cmp r3, 0x18
- bls _080EBEEA
- bl sub_80EEE5C
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ClearTVShowData
-
- thumb_func_start special_0x44
-special_0x44: @ 80EBF3C
- push {r4-r7,lr}
- movs r4, 0x5
- ldr r1, =gSaveBlock1Ptr
- ldr r0, [r1]
- movs r2, 0xA2
- lsls r2, 6
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080EBF70
- adds r3, r1, 0
- subs r2, 0xB4
-_080EBF54:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x17
- bhi _080EBF70
- ldr r0, [r3]
- lsls r1, r4, 3
- adds r1, r4
- lsls r1, 2
- adds r0, r1
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080EBF54
-_080EBF70:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r4, 0
- bl __modsi3
- lsls r0, 24
- lsrs r5, r0, 24
- adds r7, r5, 0
- ldr r6, =gSaveBlock1Ptr
-_080EBF86:
- ldr r1, [r6]
- lsls r0, r5, 3
- adds r0, r5
- lsls r4, r0, 2
- adds r1, r4
- ldr r0, =0x000027cc
- adds r1, r0
- ldrb r0, [r1]
- bl sub_80EFFE0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- beq _080EBFBC
- ldr r0, [r6]
- adds r0, r4
- ldr r1, =0x000027cd
- adds r0, r1
- ldrb r0, [r0]
- b _080EBFCC
- .pool
-_080EBFBC:
- ldr r2, =0x000027cc
- adds r0, r4, r2
- ldr r1, [r6]
- adds r1, r0
- ldrh r0, [r1, 0x16]
- cmp r0, 0
- bne _080EBFD8
- ldrb r0, [r1, 0x1]
-_080EBFCC:
- cmp r0, 0x1
- bne _080EBFD8
- adds r0, r5, 0
- b _080EBFEC
- .pool
-_080EBFD8:
- cmp r5, 0
- bne _080EBFE0
- movs r5, 0x17
- b _080EBFE6
-_080EBFE0:
- subs r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_080EBFE6:
- cmp r5, r7
- bne _080EBF86
- movs r0, 0xFF
-_080EBFEC:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end special_0x44
-
- thumb_func_start sub_80EBFF4
-sub_80EBFF4: @ 80EBFF4
- push {lr}
- bl special_0x44
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xFF
- bne _080EC006
- movs r0, 0xFF
- b _080EC03E
-_080EC006:
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- ldr r3, =0x00002b90
- adds r0, r2, r3
- ldrh r0, [r0]
- cmp r0, 0
- beq _080EC03C
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2, r0
- ldr r2, =0x000027cc
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x29
- bne _080EC03C
- bl sub_80EC18C
- lsls r0, 24
- lsrs r0, 24
- b _080EC03E
- .pool
-_080EC03C:
- adds r0, r1, 0
-_080EC03E:
- pop {r1}
- bx r1
- thumb_func_end sub_80EBFF4
-
- thumb_func_start UpdateTVScreensOnMap
-@ void UpdateTVScreensOnMap(s32 mapWidth, s32 mapHeight)
-UpdateTVScreensOnMap: @ 80EC044
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r0, =0x00000891
- bl FlagSet
- bl CheckForBigMovieOrEmergencyNewsOnTV
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EC06A
- cmp r0, 0x2
- beq _080EC0BE
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r0, [r0, 0x4]
- cmp r0, 0xD
- bne _080EC080
-_080EC06A:
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x3
- bl SetTVMetatilesOnMap
- b _080EC0BE
- .pool
-_080EC080:
- ldr r0, =0x00000892
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080EC0BE
- bl sub_80EBFF4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _080EC0AE
- bl sub_80EEF20
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _080EC0AE
- bl IsTVShowInSearchOfTrainersAiring
- lsls r0, 24
- cmp r0, 0
- beq _080EC0BE
-_080EC0AE:
- ldr r0, =0x00000891
- bl FlagReset
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x3
- bl SetTVMetatilesOnMap
-_080EC0BE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end UpdateTVScreensOnMap
-
- thumb_func_start SetTVMetatilesOnMap
-@ void SetTVMetatilesOnMap(s32 mapWidth, s32 mapHeight, u16 metatileId)
-SetTVMetatilesOnMap: @ 80EC0CC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r9, r0
- mov r10, r1
- lsls r2, 16
- lsrs r2, 16
- movs r5, 0
- cmp r5, r10
- bge _080EC120
- movs r1, 0xC0
- lsls r1, 4
- adds r0, r1, 0
- mov r8, r2
- mov r1, r8
- orrs r1, r0
- mov r8, r1
-_080EC0F2:
- movs r4, 0
- adds r7, r5, 0x1
- cmp r4, r9
- bge _080EC11A
- mov r0, r8
- lsls r6, r0, 16
-_080EC0FE:
- adds r0, r4, 0
- adds r1, r5, 0
- bl MapGridGetMetatileBehaviorAt
- cmp r0, 0x86
- bne _080EC114
- adds r0, r4, 0
- adds r1, r5, 0
- lsrs r2, r6, 16
- bl MapGridSetMetatileIdAt
-_080EC114:
- adds r4, 0x1
- cmp r4, r9
- blt _080EC0FE
-_080EC11A:
- adds r5, r7, 0
- cmp r5, r10
- blt _080EC0F2
-_080EC120:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end SetTVMetatilesOnMap
-
- thumb_func_start TurnOffTVScreen
-TurnOffTVScreen: @ 80EC130
- push {lr}
- ldr r1, =gUnknown_03005DC0
- ldr r0, [r1]
- ldr r1, [r1, 0x4]
- movs r2, 0x2
- bl SetTVMetatilesOnMap
- bl DrawWholeMapView
- pop {r0}
- bx r0
- .pool
- thumb_func_end TurnOffTVScreen
-
- thumb_func_start TurnOnTVScreen
-TurnOnTVScreen: @ 80EC14C
- push {lr}
- ldr r1, =gUnknown_03005DC0
- ldr r0, [r1]
- ldr r1, [r1, 0x4]
- movs r2, 0x3
- bl SetTVMetatilesOnMap
- bl DrawWholeMapView
- pop {r0}
- bx r0
- .pool
- thumb_func_end TurnOnTVScreen
-
- thumb_func_start special_0x45
-special_0x45: @ 80EC168
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, =gSpecialVar_0x8004
- ldrh r2, [r0]
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r1, r0
- ldr r0, =0x000027cc
- adds r1, r0
- ldrb r0, [r1]
- bx lr
- .pool
- thumb_func_end special_0x45
-
- thumb_func_start sub_80EC18C
-sub_80EC18C: @ 80EC18C
- push {r4,lr}
- movs r2, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
-_080EC194:
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r1, r3, r0
- ldr r4, =0x000027cc
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0
- beq _080EC1C0
- cmp r0, 0x29
- beq _080EC1C0
- adds r4, 0x1
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080EC1C0
- adds r0, r2, 0
- b _080EC1CC
- .pool
-_080EC1C0:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x17
- bls _080EC194
- movs r0, 0xFF
-_080EC1CC:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80EC18C
-
- thumb_func_start special_0x4a
-special_0x4a: @ 80EC1D4
- push {lr}
- ldr r3, =gSaveBlock1Ptr
- ldr r2, =gSpecialVar_0x8004
- ldrh r1, [r2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r3, [r3]
- adds r0, r3, r0
- ldrb r0, [r0]
- cmp r0, 0x29
- bne _080EC214
- ldr r1, =0x00002b90
- adds r0, r3, r1
- ldrh r0, [r0]
- cmp r0, 0
- beq _080EC214
- bl sub_80EC18C
- lsls r0, 24
- lsrs r0, 24
- b _080EC216
- .pool
-_080EC214:
- ldrb r0, [r2]
-_080EC216:
- pop {r1}
- bx r1
- thumb_func_end special_0x4a
-
- thumb_func_start ResetGabbyAndTy
-ResetGabbyAndTy: @ 80EC21C
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- ldr r3, =gSaveBlock1Ptr
- ldr r2, [r3]
- ldr r1, =0x00002ba4
- adds r0, r2, r1
- movs r4, 0
- mov r10, r4
- movs r1, 0
- strh r1, [r0]
- ldr r4, =0x00002ba6
- adds r0, r2, r4
- strh r1, [r0]
- adds r4, 0x2
- adds r0, r2, r4
- strh r1, [r0]
- ldr r0, =0x00002baa
- adds r1, r2, r0
- ldr r0, =0x0000ffff
- strh r0, [r1]
- adds r4, 0x6
- adds r2, r4
- ldrb r1, [r2]
- movs r0, 0x2
- negs r0, r0
- mov r9, r0
- ands r0, r1
- strb r0, [r2]
- ldr r1, [r3]
- adds r1, r4
- ldrb r2, [r1]
- movs r0, 0x3
- negs r0, r0
- mov r8, r0
- ands r0, r2
- strb r0, [r1]
- ldr r1, [r3]
- adds r1, r4
- ldrb r2, [r1]
- movs r6, 0x5
- negs r6, r6
- adds r0, r6, 0
- ands r0, r2
- strb r0, [r1]
- ldr r1, [r3]
- adds r1, r4
- ldrb r2, [r1]
- movs r5, 0x9
- negs r5, r5
- adds r0, r5, 0
- ands r0, r2
- strb r0, [r1]
- ldr r1, [r3]
- adds r1, r4
- ldrb r2, [r1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldr r1, [r3]
- adds r1, r4
- ldrb r2, [r1]
- movs r0, 0x1F
- ands r0, r2
- strb r0, [r1]
- ldr r0, [r3]
- ldr r2, =0x00002baf
- adds r0, r2
- ldrb r1, [r0]
- mov r4, r9
- ands r4, r1
- strb r4, [r0]
- ldr r0, [r3]
- adds r0, r2
- ldrb r1, [r0]
- mov r4, r8
- ands r4, r1
- strb r4, [r0]
- ldr r0, [r3]
- adds r0, r2
- ldrb r1, [r0]
- ands r6, r1
- strb r6, [r0]
- ldr r0, [r3]
- adds r0, r2
- ldrb r1, [r0]
- ands r5, r1
- strb r5, [r0]
- ldr r1, [r3]
- adds r1, r2
- ldrb r2, [r1]
- movs r0, 0xF
- ands r0, r2
- strb r0, [r1]
- ldr r0, [r3]
- ldr r1, =0x00002bac
- adds r0, r1
- mov r4, r10
- strb r4, [r0]
- ldr r0, [r3]
- adds r1, 0x1
- adds r0, r1
- strb r4, [r0]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ResetGabbyAndTy
-
- thumb_func_start GabbyAndTyBeforeInterview
-GabbyAndTyBeforeInterview: @ 80EC31C
- push {r4,lr}
- ldr r3, =gSaveBlock1Ptr
- ldr r2, [r3]
- ldr r0, =gBattleResults
- mov r12, r0
- ldrh r1, [r0, 0x6]
- ldr r4, =0x00002ba4
- adds r0, r2, r4
- strh r1, [r0]
- mov r0, r12
- ldrh r1, [r0, 0x26]
- adds r4, 0x2
- adds r0, r2, r4
- strh r1, [r0]
- mov r0, r12
- ldrh r1, [r0, 0x22]
- adds r4, 0x2
- adds r0, r2, r4
- strh r1, [r0]
- ldr r0, =0x00002bad
- adds r2, r0
- ldrb r1, [r2]
- adds r0, r1, 0
- adds r4, r3, 0
- cmp r0, 0xFF
- beq _080EC354
- adds r0, r1, 0x1
- strb r0, [r2]
-_080EC354:
- ldr r2, [r4]
- mov r0, r12
- ldrb r1, [r0, 0x5]
- lsls r1, 31
- ldr r0, =0x00002bae
- adds r2, r0
- lsrs r1, 31
- ldrb r3, [r2]
- movs r0, 0x2
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- mov r1, r12
- ldrb r0, [r1]
- cmp r0, 0
- beq _080EC398
- ldr r0, [r4]
- ldr r1, =0x00002bae
- adds r0, r1
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- b _080EC3A6
- .pool
-_080EC398:
- ldr r0, [r4]
- ldr r1, =0x00002bae
- adds r0, r1
- ldrb r2, [r0]
- movs r1, 0x3
- negs r1, r1
- ands r1, r2
-_080EC3A6:
- strb r1, [r0]
- mov r1, r12
- ldrb r0, [r1, 0x3]
- cmp r0, 0
- beq _080EC3C4
- ldr r0, [r4]
- ldr r1, =0x00002bae
- adds r0, r1
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- b _080EC3D2
- .pool
-_080EC3C4:
- ldr r0, [r4]
- ldr r1, =0x00002bae
- adds r0, r1
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
-_080EC3D2:
- strb r1, [r0]
- mov r0, r12
- ldrb r1, [r0, 0x5]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _080EC410
- movs r1, 0
- mov r0, r12
- adds r0, 0x36
- ldrb r0, [r0]
- cmp r0, 0
- bne _080EC410
-_080EC3EC:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xA
- bhi _080EC41E
- mov r0, r12
- adds r0, 0x36
- adds r0, r1, r0
- ldrb r0, [r0]
- cmp r0, 0
- beq _080EC3EC
- ldr r0, [r4]
- ldr r4, =0x00002bae
- adds r0, r4
- b _080EC416
- .pool
-_080EC410:
- ldr r0, [r4]
- ldr r1, =0x00002bae
- adds r0, r1
-_080EC416:
- ldrb r1, [r0]
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0]
-_080EC41E:
- bl TakeTVShowInSearchOfTrainersOffTheAir
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r4, =0x00002ba8
- adds r0, r4
- ldrh r0, [r0]
- cmp r0, 0
- bne _080EC436
- movs r0, 0x1
- bl FlagSet
-_080EC436:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end GabbyAndTyBeforeInterview
-
- thumb_func_start GabbyAndTyAfterInterview
-GabbyAndTyAfterInterview: @ 80EC448
- push {r4-r6,lr}
- ldr r5, =gSaveBlock1Ptr
- ldr r2, [r5]
- ldr r6, =0x00002bae
- adds r0, r2, r6
- ldrb r1, [r0]
- lsls r1, 31
- ldr r4, =0x00002baf
- adds r2, r4
- lsrs r1, 31
- ldrb r3, [r2]
- movs r0, 0x2
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- ldr r2, [r5]
- adds r0, r2, r6
- ldrb r0, [r0]
- adds r2, r4
- movs r1, 0x2
- ands r1, r0
- ldrb r3, [r2]
- movs r0, 0x3
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- ldr r2, [r5]
- adds r0, r2, r6
- ldrb r0, [r0]
- adds r2, r4
- movs r1, 0x4
- ands r1, r0
- ldrb r3, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- ldr r2, [r5]
- adds r0, r2, r6
- ldrb r0, [r0]
- adds r2, r4
- movs r1, 0x8
- ands r1, r0
- ldrb r3, [r2]
- movs r0, 0x9
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- ldr r1, [r5]
- adds r1, r6
- ldrb r0, [r1]
- movs r2, 0x10
- orrs r0, r2
- strb r0, [r1]
- ldr r0, [r5]
- ldr r1, =gMapHeader
- ldrb r1, [r1, 0x14]
- ldr r2, =0x00002bac
- adds r0, r2
- strb r1, [r0]
- movs r0, 0x6
- bl IncrementGameStat
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end GabbyAndTyAfterInterview
-
- thumb_func_start TakeTVShowInSearchOfTrainersOffTheAir
-TakeTVShowInSearchOfTrainersOffTheAir: @ 80EC4E8
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, =0x00002bae
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end TakeTVShowInSearchOfTrainersOffTheAir
-
- thumb_func_start GabbyAndTyGetBattleNum
-GabbyAndTyGetBattleNum: @ 80EC504
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r2, =0x00002bad
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0x5
- bls _080EC522
- ldrb r0, [r1]
- movs r1, 0x3
- bl __umodsi3
- adds r0, 0x6
- lsls r0, 24
- lsrs r0, 24
-_080EC522:
- pop {r1}
- bx r1
- .pool
- thumb_func_end GabbyAndTyGetBattleNum
-
- thumb_func_start IsTVShowInSearchOfTrainersAiring
-IsTVShowInSearchOfTrainersAiring: @ 80EC530
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00002bae
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 27
- lsrs r0, 31
- bx lr
- .pool
- thumb_func_end IsTVShowInSearchOfTrainersAiring
-
- thumb_func_start GabbyAndTyGetLastQuote
-GabbyAndTyGetLastQuote: @ 80EC548
- push {r4,r5,lr}
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldr r2, =0x00002baa
- adds r1, r0, r2
- ldrh r0, [r1]
- ldr r4, =0x0000ffff
- cmp r0, r4
- beq _080EC584
- ldr r0, =gStringVar1
- ldrh r1, [r1]
- bl CopyEasyChatWord
- ldr r1, [r5]
- ldr r0, =0x00002baa
- adds r1, r0
- ldrh r2, [r1]
- adds r0, r4, 0
- orrs r0, r2
- strh r0, [r1]
- movs r0, 0x1
- b _080EC586
- .pool
-_080EC584:
- movs r0, 0
-_080EC586:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GabbyAndTyGetLastQuote
-
- thumb_func_start GabbyAndTyGetLastBattleTrivia
-GabbyAndTyGetLastBattleTrivia: @ 80EC58C
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00002baf
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080EC5AC
- movs r0, 0x1
- b _080EC5D2
- .pool
-_080EC5AC:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080EC5B8
- movs r0, 0x2
- b _080EC5D2
-_080EC5B8:
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080EC5C4
- movs r0, 0x3
- b _080EC5D2
-_080EC5C4:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _080EC5D0
- movs r0, 0
- b _080EC5D2
-_080EC5D0:
- movs r0, 0x4
-_080EC5D2:
- pop {r1}
- bx r1
- thumb_func_end GabbyAndTyGetLastBattleTrivia
-
- thumb_func_start GabbyAndTySetScriptVarsToFieldObjectLocalIds
-GabbyAndTySetScriptVarsToFieldObjectLocalIds: @ 80EC5D8
- push {lr}
- bl GabbyAndTyGetBattleNum
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- cmp r0, 0x7
- bhi _080EC6B0
- lsls r0, 2
- ldr r1, =_080EC5F8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080EC5F8:
- .4byte _080EC618
- .4byte _080EC62C
- .4byte _080EC640
- .4byte _080EC654
- .4byte _080EC668
- .4byte _080EC67C
- .4byte _080EC690
- .4byte _080EC6A4
-_080EC618:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0xE
- strh r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0xD
- b _080EC6AE
- .pool
-_080EC62C:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x5
- strh r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0x6
- b _080EC6AE
- .pool
-_080EC640:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x12
- strh r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0x11
- b _080EC6AE
- .pool
-_080EC654:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x15
- strh r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0x16
- b _080EC6AE
- .pool
-_080EC668:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x8
- strh r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0x9
- b _080EC6AE
- .pool
-_080EC67C:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x13
- strh r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0x14
- b _080EC6AE
- .pool
-_080EC690:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x17
- strh r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0x18
- b _080EC6AE
- .pool
-_080EC6A4:
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0xA
- strh r0, [r1]
- ldr r1, =gSpecialVar_0x8005
- movs r0, 0xB
-_080EC6AE:
- strh r0, [r1]
-_080EC6B0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end GabbyAndTySetScriptVarsToFieldObjectLocalIds
-
- thumb_func_start InterviewAfter
-InterviewAfter: @ 80EC6BC
- push {lr}
- ldr r0, =gSpecialVar_0x8005
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r0, 0x7
- bhi _080EC724
- lsls r0, 2
- ldr r1, =_080EC6DC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080EC6DC:
- .4byte _080EC6FC
- .4byte _080EC702
- .4byte _080EC708
- .4byte _080EC70E
- .4byte _080EC724
- .4byte _080EC714
- .4byte _080EC71A
- .4byte _080EC720
-_080EC6FC:
- bl sub_80ED548
- b _080EC724
-_080EC702:
- bl sub_80ED5B8
- b _080EC724
-_080EC708:
- bl sub_80ED610
- b _080EC724
-_080EC70E:
- bl TaskDummy5
- b _080EC724
-_080EC714:
- bl sub_80ECF5C
- b _080EC724
-_080EC71A:
- bl sub_80ED164
- b _080EC724
-_080EC720:
- bl sub_80ECA38
-_080EC724:
- pop {r0}
- bx r0
- thumb_func_end InterviewAfter
-
- thumb_func_start sub_80EC728
-sub_80EC728: @ 80EC728
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r4, 0
- bl sub_80EED88
- bl sub_80ED718
- ldr r5, =gBattleResults
- ldrh r0, [r5, 0x28]
- cmp r0, 0
- bne _080EC74C
- bl sub_80EC8FC
- b _080EC888
- .pool
-_080EC74C:
- bl sub_80EC8A4
- ldr r0, =0x0000ffff
- bl sub_80EFB38
- lsls r0, 24
- cmp r0, 0
- beq _080EC75E
- b _080EC888
-_080EC75E:
- ldrh r1, [r5, 0x28]
- movs r0, 0xB
- muls r0, r1
- ldr r1, =gSpeciesNames
- adds r0, r1
- adds r1, r5, 0
- adds r1, 0x2A
- bl StringCompare
- cmp r0, 0
- bne _080EC776
- b _080EC888
-_080EC776:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFB08
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EC888
- movs r0, 0x15
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EC888
- movs r2, 0
- adds r1, r5, 0
- adds r1, 0x36
-_080EC7A8:
- adds r0, r2, r1
- ldrb r0, [r0]
- adds r0, r4, r0
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xA
- bls _080EC7A8
- cmp r4, 0
- bne _080EC7CA
- ldrb r1, [r5, 0x5]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080EC888
-_080EC7CA:
- movs r4, 0
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r6, r1, r0
- movs r0, 0x15
- strb r0, [r6]
- strb r4, [r6, 0x1]
- ldrb r1, [r5, 0x5]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080EC81C
- movs r4, 0x1
- movs r0, 0x1
- adds r3, r6, 0
- adds r3, 0x13
- ldr r1, =gSaveBlock2Ptr
- mov r8, r1
- adds r7, r6, 0x4
- b _080EC84E
- .pool
-_080EC81C:
- movs r2, 0
- ldr r0, =gLastUsedItem
- mov r12, r0
- adds r3, r6, 0
- adds r3, 0x13
- ldr r1, =gSaveBlock2Ptr
- mov r8, r1
- adds r7, r6, 0x4
- adds r1, r5, 0
- adds r1, 0x36
-_080EC830:
- adds r0, r2, r1
- ldrb r0, [r0]
- adds r0, r4, r0
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xA
- bls _080EC830
- cmp r4, 0xFF
- bls _080EC84A
- movs r4, 0xFF
-_080EC84A:
- mov r1, r12
- ldrh r0, [r1]
-_080EC84E:
- strb r4, [r6, 0x12]
- strb r0, [r6, 0xF]
- mov r0, r8
- ldr r1, [r0]
- adds r0, r3, 0
- bl StringCopy
- ldr r4, =gUnknown_03005D3A
- adds r0, r7, 0
- adds r1, r4, 0
- bl StringCopy
- adds r0, r7, 0
- bl sub_81DB604
- adds r5, r0, 0
- adds r0, r7, 0
- bl StripExtCtrlCodes
- subs r4, 0x2A
- ldrh r0, [r4, 0x28]
- strh r0, [r6, 0x10]
- adds r0, r6, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r6, 0x2]
- strb r5, [r6, 0x3]
-_080EC888:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EC728
-
- thumb_func_start sub_80EC8A4
-sub_80EC8A4: @ 80EC8A4
- push {r4,lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, =0x00002b2c
- adds r4, r1, r0
- ldrb r0, [r4]
- cmp r0, 0x19
- beq _080EC8CA
- ldr r2, =0x000027cc
- adds r0, r1, r2
- movs r1, 0x18
- bl sub_80EF910
- movs r0, 0x5
- bl GetGameStat
- strh r0, [r4, 0x6]
- movs r0, 0x19
- strb r0, [r4]
-_080EC8CA:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- ldr r1, =gBattleResults
- ldrh r0, [r1, 0x28]
- strh r0, [r4, 0x4]
- ldrh r0, [r1, 0x6]
- strh r0, [r4, 0x8]
- ldr r0, =gMapHeader
- ldrb r0, [r0, 0x14]
- strb r0, [r4, 0xA]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EC8A4
-
- thumb_func_start sub_80EC8FC
-sub_80EC8FC: @ 80EC8FC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =0x0000ffff
- bl sub_80EFB38
- lsls r0, 24
- cmp r0, 0
- bne _080EC9B4
- movs r1, 0
- movs r5, 0
- ldr r2, =gUnknown_03005D46
-_080EC914:
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r0, r5, r0
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xA
- bls _080EC914
- cmp r5, 0xFF
- bls _080EC92E
- movs r5, 0xFF
-_080EC92E:
- cmp r5, 0x2
- bls _080EC9B4
- ldr r0, =gBattleOutcome
- mov r8, r0
- ldrb r0, [r0]
- cmp r0, 0x6
- beq _080EC940
- cmp r0, 0x1
- bne _080EC9B4
-_080EC940:
- ldr r7, =gSaveBlock1Ptr
- ldr r0, [r7]
- ldr r6, =0x000027cc
- adds r0, r6
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EC9B4
- movs r0, 0x17
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EC9B4
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldr r4, [r7]
- adds r4, r0
- movs r1, 0
- movs r0, 0x17
- strb r0, [r4]
- strb r1, [r4, 0x1]
- ldr r1, =gBattleResults
- ldrh r0, [r1, 0x6]
- strh r0, [r4, 0xC]
- ldrh r0, [r1, 0x20]
- strh r0, [r4, 0xE]
- strb r5, [r4, 0x10]
- mov r1, r8
- ldrb r0, [r1]
- strb r0, [r4, 0x11]
- ldr r0, =gMapHeader
- ldrb r0, [r0, 0x14]
- strb r0, [r4, 0x12]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x2]
-_080EC9B4:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EC8FC
-
- thumb_func_start sub_80EC9E8
-sub_80EC9E8: @ 80EC9E8
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80F0020
- strb r0, [r4, 0x1E]
- lsrs r2, r0, 8
- strb r2, [r4, 0x1F]
- adds r1, r4, 0
- adds r1, 0x20
- strb r0, [r1]
- adds r1, 0x1
- strb r2, [r1]
- adds r1, 0x1
- strb r0, [r1]
- adds r0, r4, 0
- adds r0, 0x23
- strb r2, [r0]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80EC9E8
-
- thumb_func_start sub_80ECA10
-sub_80ECA10: @ 80ECA10
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80F0020
- adds r1, r4, 0
- adds r1, 0x20
- strb r0, [r1]
- lsrs r1, r0, 8
- adds r2, r4, 0
- adds r2, 0x21
- strb r1, [r2]
- adds r2, 0x1
- strb r0, [r2]
- adds r0, r4, 0
- adds r0, 0x23
- strb r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80ECA10
-
- thumb_func_start sub_80ECA38
-sub_80ECA38: @ 80ECA38
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gSaveBlock1Ptr
- mov r8, r0
- ldr r7, [r0]
- ldr r1, =0x00002b2c
- adds r6, r7, r1
- ldrb r1, [r6]
- cmp r1, 0x8
- bne _080ECACE
- ldr r0, =gUnknown_030060BC
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r5, =0x000027cc
- adds r4, r5
- adds r4, r7, r4
- strb r1, [r4]
- movs r0, 0x1
- strb r0, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x14
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- ldr r0, =gUnknown_02039F2C
- ldrh r0, [r0]
- strb r0, [r4, 0x1C]
- ldr r0, =gUnknown_02039F24
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r4, 0x12]
- ldrh r0, [r6, 0x2]
- strh r0, [r4, 0x2]
- ldrb r0, [r6, 0xC]
- strb r0, [r4, 0xC]
- ldrb r0, [r6, 0xD]
- strb r0, [r4, 0xD]
- ldrb r0, [r6, 0xE]
- strb r0, [r4, 0xE]
- ldrh r0, [r6, 0x10]
- strh r0, [r4, 0x10]
- ldrb r0, [r6, 0xF]
- strb r0, [r4, 0xF]
- adds r0, r4, 0x4
- ldr r2, =0x00002b30
- adds r1, r7, r2
- bl StringCopy
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x1D]
- ldrb r0, [r6, 0x1E]
- strb r0, [r4, 0x1E]
- mov r1, r8
- ldr r0, [r1]
- adds r0, r5
- movs r1, 0x18
- bl sub_80EF910
-_080ECACE:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ECA38
-
- thumb_func_start sub_80ECB00
-sub_80ECB00: @ 80ECB00
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 16
- lsrs r1, 16
- mov r10, r1
- lsls r2, 16
- lsrs r2, 16
- mov r9, r2
- lsls r3, 16
- lsrs r3, 16
- mov r8, r3
- ldr r6, =gSaveBlock1Ptr
- ldr r0, [r6]
- ldr r5, =0x000027cc
- adds r0, r5
- bl sub_80EFADC
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ECBEC
- movs r0, 0xA
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _080ECBEC
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, [r6]
- adds r4, r1, r0
- movs r0, 0xA
- strb r0, [r4]
- movs r5, 0x1
- strb r5, [r4, 0x1]
- adds r0, r4, 0x4
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _080ECBA0
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _080ECBA2
- strb r5, [r4, 0x18]
- b _080ECBA4
- .pool
-_080ECBA0:
- movs r0, 0x2
-_080ECBA2:
- strb r0, [r4, 0x18]
-_080ECBA4:
- mov r0, r10
- strh r0, [r4, 0x14]
- mov r0, r9
- strh r0, [r4, 0x16]
- mov r0, r8
- strh r0, [r4, 0x2]
- lsls r0, r7, 3
- subs r0, r7
- lsls r5, r0, 2
- ldr r6, =gLinkPlayers + 8
- adds r1, r5, r6
- mov r0, sp
- bl StringCopy
- mov r0, sp
- bl StripExtCtrlCodes
- adds r0, r4, 0
- adds r0, 0xC
- mov r1, sp
- bl StringCopy
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x19]
- cmp r0, 0x1
- beq _080ECBE8
- adds r0, r6, r5
- ldrh r0, [r0, 0x12]
- cmp r0, 0x1
- bne _080ECBEA
-_080ECBE8:
- movs r0, 0x1
-_080ECBEA:
- strb r0, [r4, 0x1A]
-_080ECBEC:
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ECB00
-
- thumb_func_start sub_80ECC04
-sub_80ECC04: @ 80ECC04
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x24
- mov r10, r0
- ldr r0, [sp, 0x44]
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp, 0x20]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r0, =gSaveBlock1Ptr
- mov r8, r0
- ldr r0, [r0]
- ldr r7, =0x000027cc
- adds r0, r7
- bl sub_80EFADC
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ECC54
- movs r0, 0x9
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0x1
- bne _080ECC68
-_080ECC54:
- movs r0, 0
- b _080ECCEE
- .pool
-_080ECC68:
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- mov r2, r8
- ldr r1, [r2]
- adds r4, r1, r0
- movs r0, 0x9
- strb r0, [r4]
- movs r7, 0x1
- strb r7, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0xC
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- mov r0, sp
- mov r1, r10
- bl StringCopy
- mov r0, sp
- bl StripExtCtrlCodes
- adds r0, r4, 0x4
- mov r1, sp
- bl StringCopy
- movs r0, 0x7
- ands r5, r0
- ldrb r1, [r4, 0x3]
- subs r0, 0xF
- ands r0, r1
- orrs r0, r5
- movs r1, 0x3
- ands r6, r1
- lsls r2, r6, 3
- subs r1, 0x1C
- ands r0, r1
- orrs r0, r2
- strb r0, [r4, 0x3]
- add r0, sp, 0x20
- ldrb r0, [r0]
- strb r0, [r4, 0x2]
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x14]
- cmp r0, 0x1
- beq _080ECCDA
- mov r1, r9
- cmp r1, 0x1
- bne _080ECCE8
-_080ECCDA:
- strb r7, [r4, 0x15]
- b _080ECCEC
- .pool
-_080ECCE8:
- mov r2, r9
- strb r2, [r4, 0x15]
-_080ECCEC:
- movs r0, 0x1
-_080ECCEE:
- add sp, 0x24
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80ECC04
-
- thumb_func_start sub_80ECD00
-sub_80ECD00: @ 80ECD00
- push {r4-r6,lr}
- sub sp, 0x20
- ldr r6, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8006
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r6]
- adds r4, r1, r0
- ldr r0, =gSpecialVar_0x8005
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 1
- strb r0, [r4, 0x16]
- adds r0, r4, 0x2
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- movs r0, 0xB
- strb r0, [r4]
- movs r5, 0x1
- strb r5, [r4, 0x1]
- bl sub_80F0020
- strb r0, [r4, 0xA]
- lsrs r0, 8
- strb r0, [r4, 0xB]
- ldr r1, =gStringVar1
- mov r0, sp
- bl StringCopy
- mov r0, sp
- bl StripExtCtrlCodes
- adds r0, r4, 0
- adds r0, 0xC
- mov r1, sp
- bl StringCopy
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x17]
- cmp r0, 0x1
- beq _080ECD74
- ldr r0, [r6]
- ldr r1, =0x000031a0
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080ECD98
-_080ECD74:
- strb r5, [r4, 0x18]
- b _080ECD9A
- .pool
-_080ECD98:
- strb r0, [r4, 0x18]
-_080ECD9A:
- add sp, 0x20
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80ECD00
-
- thumb_func_start sub_80ECDA4
-sub_80ECDA4: @ 80ECDA4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldr r4, =0x000027cc
- adds r0, r4
- movs r1, 0x18
- bl sub_80EF910
- ldr r0, [r5]
- adds r0, r4
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ECDDC
- ldr r0, [r5]
- ldr r1, =0x00002b2c
- adds r0, r1
- strb r6, [r0, 0xD]
- movs r1, 0x8
- strb r1, [r0]
-_080ECDDC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ECDA4
-
- thumb_func_start sub_80ECDF4
-sub_80ECDF4: @ 80ECDF4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00002b2c
- adds r4, r0, r1
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ECE1C
- strb r5, [r4, 0xE]
-_080ECE1C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ECDF4
-
- thumb_func_start sub_80ECE34
-sub_80ECE34: @ 80ECE34
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00002b2c
- adds r4, r0, r1
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ECE5C
- strb r5, [r4, 0xF]
-_080ECE5C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ECE34
-
- thumb_func_start sub_80ECE74
-sub_80ECE74: @ 80ECE74
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00002b2c
- adds r4, r0, r1
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ECE9C
- strh r5, [r4, 0x10]
-_080ECE9C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ECE74
-
- thumb_func_start sub_80ECEB4
-sub_80ECEB4: @ 80ECEB4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- ldr r0, =gSaveBlock1Ptr
- ldr r4, [r0]
- ldr r0, =0x00002b2c
- adds r5, r4, r0
- ldr r1, =0x000027cc
- adds r0, r4, r1
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ECF4C
- ldr r2, =gUnknown_02039E00
- lsls r1, r6, 6
- adds r0, r1, r2
- ldrh r0, [r0]
- strh r0, [r5, 0x2]
- ldr r0, =0x00002b30
- adds r4, r0
- adds r2, 0xD
- adds r1, r2
- adds r0, r4, 0
- bl StringCopy
- adds r0, r4, 0
- bl StripExtCtrlCodes
- strb r7, [r5, 0xC]
- adds r1, r6, 0x1
- ldr r0, =gUnknown_02039F30
- ldrb r0, [r0]
- cmp r1, r0
- ble _080ECF30
- ldr r0, =gLinkPlayers
- ldrh r0, [r0, 0x1A]
- b _080ECF4A
- .pool
-_080ECF30:
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080ECF48
- ldr r1, =gLinkPlayers
- lsls r0, r6, 3
- subs r0, r6
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x1A]
- cmp r0, 0x1
- bne _080ECF4A
-_080ECF48:
- movs r0, 0x1
-_080ECF4A:
- strb r0, [r5, 0x1E]
-_080ECF4C:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ECEB4
-
- thumb_func_start sub_80ECF5C
-sub_80ECF5C: @ 80ECF5C
- push {r4-r7,lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r6, [r0]
- ldr r0, =0x00002b2c
- adds r5, r6, r0
- ldrb r2, [r5]
- cmp r2, 0x6
- bne _080ED02C
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- adds r4, r6, r0
- strb r2, [r4]
- movs r7, 0x1
- strb r7, [r4, 0x1]
- ldrh r0, [r5, 0x2]
- strh r0, [r4, 0x2]
- adds r0, r4, 0
- adds r0, 0x16
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r0, r4, 0
- adds r0, 0x8
- ldr r2, =0x00002b34
- adds r1, r6, r2
- bl StringCopy
- ldrb r0, [r5, 0x13]
- lsls r0, 29
- lsrs r0, 29
- ldrb r2, [r4, 0x13]
- movs r3, 0x8
- negs r3, r3
- adds r1, r3, 0
- ands r1, r2
- orrs r1, r0
- strb r1, [r4, 0x13]
- ldrb r2, [r5, 0x13]
- movs r0, 0x18
- ands r0, r2
- movs r2, 0x19
- negs r2, r2
- ands r2, r1
- orrs r2, r0
- strb r2, [r4, 0x13]
- ldrh r0, [r5, 0x14]
- strh r0, [r4, 0x14]
- ldrb r0, [r5, 0x13]
- movs r1, 0x60
- ands r1, r0
- movs r0, 0x61
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x13]
- ldrb r1, [r5, 0x13]
- lsls r1, 29
- lsrs r1, 29
- ands r0, r3
- orrs r0, r1
- strb r0, [r4, 0x13]
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x1E]
- cmp r0, 0x1
- beq _080ECFFA
- ldrb r0, [r5, 0x1F]
- cmp r0, 0x1
- bne _080ED01C
-_080ECFFA:
- strb r7, [r4, 0x1F]
- b _080ED01E
- .pool
-_080ED01C:
- strb r0, [r4, 0x1F]
-_080ED01E:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000027cc
- adds r0, r1
- movs r1, 0x18
- bl sub_80EF910
-_080ED02C:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ECF5C
-
- thumb_func_start sub_80ED03C
-sub_80ED03C: @ 80ED03C
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r1, =0x00002b2c
- adds r5, r0, r1
- bl sub_80EF7B4
- ldr r0, [r4]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ED07A
- ldr r0, [r4]
- ldr r1, =0x000027cc
- adds r0, r1
- movs r1, 0x18
- bl sub_80EF910
- strh r6, [r5, 0x14]
- movs r0, 0x6
- strb r0, [r5]
-_080ED07A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED03C
-
- thumb_func_start sub_80ED090
-sub_80ED090: @ 80ED090
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gSaveBlock1Ptr
- ldr r4, [r0]
- ldr r0, =0x00002b2c
- adds r7, r4, r0
- ldr r1, =0x000027cc
- adds r0, r4, r1
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ED134
- movs r3, 0x3
- adds r0, r5, 0
- ands r0, r3
- lsls r0, 5
- ldrb r1, [r7, 0x13]
- movs r2, 0x61
- negs r2, r2
- ands r2, r1
- orrs r2, r0
- strb r2, [r7, 0x13]
- ldr r0, =gUnknown_02039F2C
- ldrb r0, [r0]
- movs r1, 0x7
- ands r1, r0
- movs r0, 0x8
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r7, 0x13]
- ldr r1, =gUnknown_02039F2E
- ldrb r1, [r1]
- ands r3, r1
- lsls r3, 3
- movs r1, 0x19
- negs r1, r1
- ands r0, r1
- orrs r0, r3
- strb r0, [r7, 0x13]
- ldr r0, =gUnknown_02039F24
- mov r8, r0
- ldrb r0, [r0]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gPlayerParty
- adds r0, r5
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x2]
- mov r1, r8
- ldrb r0, [r1]
- muls r0, r6
- adds r0, r5
- ldr r1, =0x00002b34
- adds r4, r1
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- adds r0, r4, 0
- bl StripExtCtrlCodes
- mov r1, r8
- ldrb r0, [r1]
- muls r0, r6
- adds r0, r5
- movs r1, 0x3
- bl GetMonData
- strb r0, [r7, 0x1F]
-_080ED134:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED090
-
- thumb_func_start sub_80ED164
-sub_80ED164: @ 80ED164
- push {r4-r6,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r6, r1, r0
- movs r0, 0x7
- strb r0, [r6]
- movs r0, 0x1
- strb r0, [r6, 0x1]
- adds r0, r6, 0x2
- ldr r4, =gSaveBlock2Ptr
- ldr r1, [r4]
- bl StringCopy
- adds r0, r6, 0
- adds r0, 0xC
- ldr r1, [r4]
- ldr r2, =0x00000bd8
- adds r1, r2
- bl StringCopy
- ldr r1, [r4]
- ldr r2, =0x00000bd4
- adds r0, r1, r2
- ldrh r0, [r0]
- strh r0, [r6, 0xA]
- adds r2, 0x2
- adds r0, r1, r2
- ldrh r0, [r0]
- strh r0, [r6, 0x14]
- ldr r5, =0x00000d07
- adds r1, r5
- ldrb r0, [r1]
- movs r1, 0
- bl sub_8164FCC
- strh r0, [r6, 0x16]
- ldr r0, [r4]
- ldr r1, =0x00000d06
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r6, 0x1C]
- ldr r0, [r4]
- adds r0, r5
- ldrb r0, [r0]
- cmp r0, 0
- bne _080ED1F4
- movs r0, 0x32
- b _080ED1F6
- .pool
-_080ED1F4:
- movs r0, 0x64
-_080ED1F6:
- strb r0, [r6, 0x1A]
- ldr r0, =gSpecialVar_0x8004
- ldrh r0, [r0]
- strb r0, [r6, 0x1B]
- adds r0, r6, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r6, 0x1D]
- cmp r0, 0x1
- beq _080ED21C
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r2, =0x00000beb
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080ED21E
-_080ED21C:
- movs r0, 0x1
-_080ED21E:
- strb r0, [r6, 0x1E]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED164
-
- thumb_func_start SaveRecordedItemPurchasesForTVShow
-@ void SaveRecordedItemPurchasesForTVShow()
-SaveRecordedItemPurchasesForTVShow: @ 80ED238
- push {r4-r7,lr}
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldrh r1, [r0, 0x4]
- ldr r0, =0x00003c1a
- cmp r1, r0
- beq _080ED2F2
- ldr r0, =0x0000371a
- cmp r1, r0
- beq _080ED2F2
- ldr r0, =0x00005555
- bl sub_80EFB38
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _080ED2F2
- ldr r0, [r5]
- ldr r7, =0x000027cc
- adds r0, r7
- bl sub_80EFB08
- ldr r6, =gUnknown_030060BC
- strb r0, [r6]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ED2F2
- movs r0, 0x16
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080ED2F2
- bl sub_80EF500
- ldr r2, =gUnknown_02039F80
- ldrh r0, [r2, 0x2]
- cmp r0, 0x13
- bls _080ED2F2
- movs r1, 0
- ldrsb r1, [r6, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- ldr r1, [r5]
- adds r5, r1, r0
- movs r0, 0x16
- strb r0, [r5]
- strb r4, [r5, 0x1]
- ldr r0, =gMapHeader
- ldrb r0, [r0, 0x14]
- strb r0, [r5, 0x12]
- movs r4, 0
- adds r7, r5, 0x6
- mov r12, r2
- adds r6, r5, 0
- adds r6, 0xC
-_080ED2B6:
- lsls r2, r4, 1
- adds r3, r7, r2
- lsls r1, r4, 2
- add r1, r12
- ldrh r0, [r1]
- strh r0, [r3]
- adds r2, r6, r2
- ldrh r0, [r1, 0x2]
- strh r0, [r2]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _080ED2B6
- movs r0, 0x1
- bl GetPriceReduction
- strb r0, [r5, 0x2]
- adds r0, r5, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r0, r5, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r5, 0x3]
-_080ED2F2:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SaveRecordedItemPurchasesForTVShow
-
- thumb_func_start sub_80ED320
-sub_80ED320: @ 80ED320
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- bl sub_80EF7A8
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _080ED400
- ldr r0, =gSpecialVar_0x8004
- mov r8, r0
- ldrh r0, [r0]
- movs r7, 0x64
- muls r0, r7
- ldr r6, =gPlayerParty
- adds r0, r6
- ldr r4, =gStringVar1
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- ldr r1, =gSaveBlock2Ptr
- mov r9, r1
- ldr r0, [r1]
- bl StringLength
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _080ED400
- adds r0, r4, 0
- bl StringLength
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _080ED400
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r4, [r2]
- adds r4, r0
- movs r0, 0x5
- strb r0, [r4]
- movs r5, 0x1
- strb r5, [r4, 0x1]
- mov r2, r8
- ldrh r0, [r2]
- muls r0, r7
- adds r0, r6
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r4, 0x2]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- strb r0, [r4, 0x1A]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- ands r0, r5
- strb r0, [r4, 0x1B]
- ldrh r0, [r4, 0x2]
- bl sub_80EFA24
- strh r0, [r4, 0x1C]
- adds r0, r4, 0
- adds r0, 0xF
- mov r2, r9
- ldr r1, [r2]
- bl StringCopy
- mov r1, r8
- ldrh r0, [r1]
- muls r0, r7
- adds r0, r6
- adds r5, r4, 0x4
- movs r1, 0x2
- adds r2, r5, 0
- bl GetMonData
- adds r0, r5, 0
- bl StripExtCtrlCodes
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x1E]
- mov r2, r8
- ldrh r0, [r2]
- muls r0, r7
- adds r0, r6
- movs r1, 0x3
- bl GetMonData
- strb r0, [r4, 0x1F]
-_080ED400:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED320
-
- thumb_func_start StartMassOutbreak
-StartMassOutbreak: @ 80ED430
- push {r4,r5,lr}
- ldr r4, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r0, [r0]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r0, =0x000027cc
- adds r1, r0
- ldr r2, [r4]
- adds r1, r2, r1
- ldrh r3, [r1, 0xC]
- ldr r5, =0x00002b90
- adds r0, r2, r5
- strh r3, [r0]
- ldrb r0, [r1, 0x10]
- ldr r3, =0x00002b92
- adds r2, r3
- strb r0, [r2]
- ldr r0, [r4]
- ldrb r2, [r1, 0x11]
- adds r5, 0x3
- adds r0, r5
- strb r2, [r0]
- ldr r0, [r4]
- ldrb r2, [r1, 0x14]
- adds r3, 0x2
- adds r0, r3
- strb r2, [r0]
- ldr r0, [r4]
- ldrb r2, [r1, 0x2]
- adds r5, 0x2
- adds r0, r5
- strb r2, [r0]
- ldr r2, [r4]
- ldrh r3, [r1, 0xE]
- adds r5, 0x1
- adds r0, r2, r5
- strh r3, [r0]
- ldrh r3, [r1, 0x4]
- adds r5, 0x2
- adds r0, r2, r5
- strh r3, [r0]
- ldrh r3, [r1, 0x6]
- adds r5, 0x2
- adds r0, r2, r5
- strh r3, [r0]
- ldrh r3, [r1, 0x8]
- adds r5, 0x2
- adds r0, r2, r5
- strh r3, [r0]
- ldrh r3, [r1, 0xA]
- adds r5, 0x2
- adds r0, r2, r5
- strh r3, [r0]
- ldrb r0, [r1, 0x3]
- ldr r3, =0x00002ba0
- adds r2, r3
- strb r0, [r2]
- ldr r0, [r4]
- ldrb r1, [r1, 0x13]
- adds r5, 0x3
- adds r0, r5
- strb r1, [r0]
- ldr r0, [r4]
- ldr r1, =0x00002ba2
- adds r0, r1
- movs r1, 0x2
- strh r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end StartMassOutbreak
-
- thumb_func_start sub_80ED4DC
-sub_80ED4DC: @ 80ED4DC
- push {r4,lr}
- bl sub_80EFA88
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _080ED532
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- adds r0, r4, 0
- adds r0, 0x17
- bl sub_818E848
- movs r0, 0x2
- strb r0, [r4, 0x18]
- movs r0, 0xC
- strb r0, [r4]
- movs r0, 0x1
- strb r0, [r4, 0x1]
- adds r0, r4, 0x2
- bl sub_818E81C
- adds r0, r4, 0
- adds r0, 0xA
- adds r1, r4, 0
- adds r1, 0xB
- bl sub_818E7E0
- bl sub_818E880
- strb r0, [r4, 0x16]
- adds r0, r4, 0
- bl sub_80ECA10
-_080ED532:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED4DC
-
- thumb_func_start sub_80ED548
-sub_80ED548: @ 80ED548
- push {r4,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r4, [r2]
- adds r4, r0
- movs r0, 0x1
- strb r0, [r4]
- strb r0, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x10
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r4, 0x2]
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x18]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED548
-
- thumb_func_start sub_80ED5B8
-sub_80ED5B8: @ 80ED5B8
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r4, [r2]
- adds r4, r0
- movs r5, 0
- movs r0, 0x2
- strb r0, [r4]
- movs r0, 0x1
- strb r0, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x10
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- strh r5, [r4, 0x2]
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x18]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED5B8
-
- thumb_func_start sub_80ED610
-sub_80ED610: @ 80ED610
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- movs r0, 0x3
- strb r0, [r5]
- movs r0, 0x1
- mov r8, r0
- mov r1, r8
- strb r1, [r5, 0x1]
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- movs r7, 0x64
- muls r0, r7
- ldr r6, =gPlayerParty
- adds r0, r6
- movs r1, 0x20
- movs r2, 0
- bl GetMonData
- lsrs r0, 4
- movs r1, 0xF
- ands r0, r1
- ldrb r2, [r5, 0x4]
- movs r1, 0x10
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r5, 0x4]
- ldr r0, =gSpecialVar_0x8007
- ldrb r0, [r0]
- lsls r0, 4
- movs r2, 0xF
- ands r1, r2
- orrs r1, r0
- strb r1, [r5, 0x4]
- adds r0, r5, 0x5
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- muls r0, r7
- adds r0, r6
- adds r4, r5, 0
- adds r4, 0x10
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- adds r0, r4, 0
- bl StripExtCtrlCodes
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- muls r0, r7
- adds r0, r6
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r5, 0x2]
- adds r0, r5, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r5, 0xD]
- cmp r0, 0x1
- beq _080ED6D4
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- muls r0, r7
- adds r0, r6
- movs r1, 0x3
- bl GetMonData
- cmp r0, 0x1
- bne _080ED6F4
-_080ED6D4:
- mov r0, r8
- b _080ED706
- .pool
-_080ED6F4:
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- muls r0, r7
- adds r0, r6
- movs r1, 0x3
- bl GetMonData
-_080ED706:
- strb r0, [r5, 0xE]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80ED610
-
- thumb_func_start TaskDummy5
-TaskDummy5: @ 80ED714
- bx lr
- thumb_func_end TaskDummy5
-
- thumb_func_start sub_80ED718
-sub_80ED718: @ 80ED718
- push {r4-r6,lr}
- ldr r0, =0x00000864
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080ED7E4
- movs r1, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- ldr r3, =0x000027cc
-_080ED72E:
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2, r0
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x29
- beq _080ED7E4
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x17
- bls _080ED72E
- ldr r0, =0x00000147
- bl sub_80EFB38
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _080ED7E4
- ldr r6, =gSaveBlock1Ptr
- ldr r0, [r6]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFADC
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080ED7E4
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x5
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r2, 0
- ldrsb r2, [r4, r2]
- lsls r1, r2, 3
- adds r1, r2
- lsls r1, 2
- ldr r2, =0x000027cc
- adds r1, r2
- ldr r4, [r6]
- adds r4, r1
- movs r1, 0x29
- strb r1, [r4]
- movs r3, 0x1
- strb r3, [r4, 0x1]
- ldr r2, =gUnknown_0858D094
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0xA]
- strb r0, [r4, 0x14]
- strb r5, [r4, 0x2]
- strb r5, [r4, 0x3]
- ldrh r0, [r1]
- movs r2, 0
- strh r0, [r4, 0xC]
- strh r5, [r4, 0xE]
- ldrh r0, [r1, 0x2]
- strh r0, [r4, 0x4]
- ldrh r0, [r1, 0x4]
- strh r0, [r4, 0x6]
- ldrh r0, [r1, 0x6]
- strh r0, [r4, 0x8]
- ldrh r0, [r1, 0x8]
- strh r0, [r4, 0xA]
- ldrb r0, [r1, 0xB]
- strb r0, [r4, 0x10]
- strb r2, [r4, 0x11]
- strb r2, [r4, 0x12]
- movs r0, 0x32
- strb r0, [r4, 0x13]
- strb r2, [r4, 0x15]
- strh r3, [r4, 0x16]
- adds r0, r4, 0
- bl sub_80ECA10
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x18]
-_080ED7E4:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED718
-
- thumb_func_start EndMassOutbreak
-EndMassOutbreak: @ 80ED808
- push {r4,r5,lr}
- ldr r3, =gSaveBlock1Ptr
- ldr r0, [r3]
- ldr r2, =0x00002b90
- adds r1, r0, r2
- movs r4, 0
- movs r2, 0
- strh r2, [r1]
- ldr r5, =0x00002b92
- adds r0, r5
- strb r4, [r0]
- ldr r0, [r3]
- ldr r1, =0x00002b93
- adds r0, r1
- strb r4, [r0]
- ldr r0, [r3]
- adds r5, 0x2
- adds r0, r5
- strb r4, [r0]
- ldr r0, [r3]
- adds r1, 0x2
- adds r0, r1
- strb r4, [r0]
- ldr r0, [r3]
- adds r5, 0x2
- adds r1, r0, r5
- strh r2, [r1]
- adds r5, 0x2
- adds r1, r0, r5
- strh r2, [r1]
- adds r5, 0x2
- adds r1, r0, r5
- strh r2, [r1]
- adds r5, 0x2
- adds r1, r0, r5
- strh r2, [r1]
- adds r5, 0x2
- adds r1, r0, r5
- strh r2, [r1]
- ldr r1, =0x00002ba0
- adds r0, r1
- strb r4, [r0]
- ldr r0, [r3]
- adds r5, 0x3
- adds r0, r5
- strb r4, [r0]
- ldr r0, [r3]
- adds r1, 0x2
- adds r0, r1
- strh r2, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end EndMassOutbreak
-
- thumb_func_start sub_80ED888
-sub_80ED888: @ 80ED888
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- bl sub_80ED8B4
- adds r0, r4, 0
- bl UpdateMassOutbreakTimeLeft
- adds r0, r4, 0
- bl sub_80EF120
- adds r0, r4, 0
- bl sub_80EDA48
- adds r0, r4, 0
- bl sub_80EEB98
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80ED888
-
- thumb_func_start sub_80ED8B4
-sub_80ED8B4: @ 80ED8B4
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r1, =gSaveBlock1Ptr
- ldr r0, [r1]
- ldr r2, =0x00002b90
- adds r0, r2
- ldrh r0, [r0]
- mov r12, r1
- cmp r0, 0
- bne _080ED91C
- movs r1, 0
- ldr r6, =0x000027cc
-_080ED8CE:
- mov r7, r12
- ldr r4, [r7]
- lsls r0, r1, 3
- adds r0, r1
- lsls r3, r0, 2
- adds r2, r4, r3
- adds r0, r2, r6
- ldrb r0, [r0]
- cmp r0, 0x29
- bne _080ED912
- ldr r7, =0x000027cd
- adds r0, r2, r7
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080ED912
- adds r0, r3, r6
- adds r1, r4, r0
- ldrh r0, [r1, 0x16]
- cmp r0, r5
- bcs _080ED90C
- movs r0, 0
- strh r0, [r1, 0x16]
- b _080ED91C
- .pool
-_080ED90C:
- subs r0, r5
- strh r0, [r1, 0x16]
- b _080ED91C
-_080ED912:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x17
- bls _080ED8CE
-_080ED91C:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80ED8B4
-
- thumb_func_start UpdateMassOutbreakTimeLeft
-UpdateMassOutbreakTimeLeft: @ 80ED924
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r3, =0x00002ba2
- adds r1, r0, r3
- ldrh r0, [r1]
- cmp r0, r2
- bhi _080ED948
- bl EndMassOutbreak
- b _080ED94C
- .pool
-_080ED948:
- subs r0, r2
- strh r0, [r1]
-_080ED94C:
- pop {r0}
- bx r0
- thumb_func_end UpdateMassOutbreakTimeLeft
-
- thumb_func_start sub_80ED950
-sub_80ED950: @ 80ED950
- push {r4,lr}
- lsls r0, 24
- cmp r0, 0
- beq _080ED978
- ldr r4, =gUnknown_0203A026
- ldrh r0, [r4]
- lsrs r0, 8
- cmp r0, 0x4
- bls _080ED966
- bl sub_80ED9A8
-_080ED966:
- ldrb r0, [r4]
- strh r0, [r4]
- cmp r0, 0xFF
- beq _080ED99C
- adds r0, 0x1
- b _080ED99A
- .pool
-_080ED978:
- ldr r4, =gUnknown_0203A026
- ldrb r0, [r4]
- cmp r0, 0x4
- bls _080ED984
- bl sub_80ED9A8
-_080ED984:
- ldrh r0, [r4]
- movs r1, 0xFF
- lsls r1, 8
- ands r1, r0
- strh r1, [r4]
- lsrs r0, r1, 8
- cmp r0, 0xFF
- beq _080ED99C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r1, r2
-_080ED99A:
- strh r0, [r4]
-_080ED99C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED950
-
- thumb_func_start sub_80ED9A8
-sub_80ED9A8: @ 80ED9A8
- push {r4-r6,lr}
- ldr r6, =gSaveBlock1Ptr
- ldr r0, [r6]
- ldr r5, =0x000027cc
- adds r0, r5
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EDA18
- movs r0, 0x18
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EDA18
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r4, [r6]
- adds r4, r0
- movs r1, 0
- movs r0, 0x18
- strb r0, [r4]
- strb r1, [r4, 0x1]
- ldr r1, =gUnknown_0203A026
- ldrh r0, [r1]
- strb r0, [r4, 0x2]
- ldrh r0, [r1]
- lsrs r0, 8
- strb r0, [r4, 0x3]
- ldr r0, =gUnknown_0203A024
- ldrh r0, [r0]
- strh r0, [r4, 0x4]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x6]
-_080EDA18:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ED9A8
-
- thumb_func_start sub_80EDA3C
-sub_80EDA3C: @ 80EDA3C
- ldr r1, =gUnknown_0203A024
- strh r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_80EDA3C
-
- thumb_func_start sub_80EDA48
-sub_80EDA48: @ 80EDA48
- push {r4,lr}
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r2, =0x00002b2c
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0x19
- bne _080EDA6E
- ldrh r0, [r1, 0x2]
- cmp r0, 0x13
- bls _080EDA62
- bl sub_80EDA80
-_080EDA62:
- ldr r0, [r4]
- ldr r1, =0x000027cc
- adds r0, r1
- movs r1, 0x18
- bl sub_80EF910
-_080EDA6E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EDA48
-
- thumb_func_start sub_80EDA80
-sub_80EDA80: @ 80EDA80
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r7, =gSaveBlock1Ptr
- ldr r0, [r7]
- ldr r1, =0x00002b2c
- adds r5, r0, r1
- ldr r0, =0x0000ffff
- bl sub_80EFB38
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0
- bne _080EDB1C
- ldr r0, [r7]
- ldr r1, =0x000027cc
- mov r8, r1
- add r0, r8
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EDB1C
- movs r0, 0x19
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EDB1C
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- add r0, r8
- ldr r4, [r7]
- adds r4, r0
- movs r0, 0x19
- strb r0, [r4]
- strb r6, [r4, 0x1]
- ldrh r0, [r5, 0x2]
- strh r0, [r4, 0x2]
- movs r0, 0x5
- bl GetGameStat
- ldrh r1, [r5, 0x6]
- subs r0, r1
- strh r0, [r4, 0x6]
- ldrh r0, [r5, 0x4]
- strh r0, [r4, 0x4]
- ldrh r0, [r5, 0x8]
- strh r0, [r4, 0x8]
- ldrb r0, [r5, 0xA]
- strb r0, [r4, 0xA]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0xB]
- ldr r0, [r7]
- add r0, r8
- movs r1, 0x18
- bl sub_80EF910
-_080EDB1C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EDA80
-
- thumb_func_start sub_80EDB44
-sub_80EDB44: @ 80EDB44
- push {r4-r7,lr}
- movs r0, 0x1A
- movs r1, 0x1
- bl sub_80EF46C
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFB08
- ldr r2, =gUnknown_030060BC
- strb r0, [r2]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EDC40
- movs r1, 0
- ldrsb r1, [r2, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r2, =0x000027cc
- adds r0, r2
- ldr r1, [r4]
- adds r4, r1, r0
- movs r1, 0
- movs r0, 0x1A
- strb r0, [r4]
- strb r1, [r4, 0x1]
- ldr r6, =0x00000867
- movs r5, 0
-_080EDB88:
- lsls r0, r6, 16
- lsrs r0, 16
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080EDB9C
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_080EDB9C:
- adds r6, 0x1
- ldr r0, =0x0000086e
- cmp r6, r0
- bls _080EDB88
- strb r5, [r4, 0x4]
- bl IsNationalPokedexEnabled
- cmp r0, 0
- beq _080EDBCC
- movs r0, 0x1
- bl pokedex_count
- b _080EDBD2
- .pool
-_080EDBCC:
- movs r0, 0x1
- bl sub_80C0844
-_080EDBD2:
- strh r0, [r4, 0x2]
- ldr r1, =gMapHeader
- ldrb r0, [r1, 0x14]
- strb r0, [r4, 0x7]
- ldrh r0, [r1, 0x12]
- movs r1, 0
- strh r0, [r4, 0xA]
- strb r1, [r4, 0x5]
- strb r1, [r4, 0x6]
- movs r6, 0
- adds r7, r4, 0
- adds r7, 0x13
-_080EDBEA:
- ldr r0, =gUnknown_0858D0DE
- lsls r5, r6, 1
- adds r0, r5, r0
- ldrh r0, [r0]
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080EDC04
- ldrb r0, [r4, 0x5]
- adds r0, 0x1
- strb r0, [r4, 0x5]
-_080EDC04:
- ldr r0, =gUnknown_0858D0D0
- adds r0, r5, r0
- ldrh r0, [r0]
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080EDC1C
- ldrb r0, [r4, 0x6]
- adds r0, 0x1
- strb r0, [r4, 0x6]
-_080EDC1C:
- adds r6, 0x1
- cmp r6, 0x6
- bls _080EDBEA
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- ldr r2, =0x00000eb8
- adds r0, r1, r2
- ldrh r0, [r0]
- strh r0, [r4, 0x8]
- adds r0, r7, 0
- bl StringCopy
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0xC]
-_080EDC40:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EDB44
-
- thumb_func_start sub_80EDC60
-sub_80EDC60: @ 80EDC60
- push {r4-r7,lr}
- adds r5, r0, 0
- ldr r7, =gSaveBlock1Ptr
- ldr r0, [r7]
- ldr r6, =0x000027cc
- adds r0, r6
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EDCCE
- movs r0, 0x1B
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EDCCE
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldr r4, [r7]
- adds r4, r0
- movs r1, 0
- movs r0, 0x1B
- strb r0, [r4]
- strb r1, [r4, 0x1]
- ldr r1, =gSaveBlock2Ptr
- ldr r0, [r1]
- ldrb r0, [r0, 0x8]
- strb r0, [r4, 0x8]
- ldrh r0, [r5]
- strh r0, [r4, 0x4]
- ldrh r0, [r5, 0x2]
- strh r0, [r4, 0x6]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, [r1]
- bl StringCopy
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x9]
-_080EDCCE:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EDC60
-
- thumb_func_start sub_80EDCE8
-sub_80EDCE8: @ 80EDCE8
- push {r4-r6,lr}
- ldr r6, =gSaveBlock1Ptr
- ldr r0, [r6]
- ldr r5, =0x000027cc
- adds r0, r5
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EDD56
- movs r0, 0x1C
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EDD56
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r4, [r6]
- adds r4, r0
- movs r1, 0
- movs r0, 0x1C
- strb r0, [r4]
- strb r1, [r4, 0x1]
- ldr r0, =gSpecialVar_0x8005
- ldrh r0, [r0]
- strh r0, [r4, 0x2]
- ldr r1, =gMapHeader
- ldrb r0, [r1, 0x14]
- strb r0, [r4, 0x4]
- ldrh r0, [r1, 0x12]
- strh r0, [r4, 0x6]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x5]
-_080EDD56:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EDCE8
-
- thumb_func_start sub_80EDD78
-sub_80EDD78: @ 80EDD78
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFB08
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EDE54
- movs r0, 0x1D
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EDE54
- movs r5, 0
- ldr r0, =gUnknown_0203A02A
- ldrb r1, [r0]
- adds r6, r0, 0
- cmp r1, 0
- beq _080EDDCC
- cmp r1, 0x1
- beq _080EDDEE
- b _080EDE54
- .pool
-_080EDDCC:
- ldr r0, =gUnknown_0203A028
- ldrh r1, [r0]
- adds r0, r1, 0
- adds r0, 0xC8
- cmp r4, r0
- blt _080EDDE4
- movs r5, 0x1
- subs r0, r4, r1
- b _080EDE12
- .pool
-_080EDDE4:
- cmp r1, 0x63
- bls _080EDE54
- adds r0, r1, 0
- subs r0, 0x64
- b _080EDE0C
-_080EDDEE:
- ldr r0, =gUnknown_0203A028
- ldrh r1, [r0]
- adds r0, r1, 0
- adds r0, 0x32
- cmp r4, r0
- blt _080EDE04
- movs r5, 0x1
- subs r0, r4, r1
- b _080EDE12
- .pool
-_080EDE04:
- cmp r1, 0x31
- bls _080EDE54
- adds r0, r1, 0
- subs r0, 0x32
-_080EDE0C:
- cmp r4, r0
- bgt _080EDE54
- subs r0, r1, r4
-_080EDE12:
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r4, [r2]
- adds r4, r0
- movs r1, 0
- movs r0, 0x1D
- strb r0, [r4]
- strb r1, [r4, 0x1]
- strh r3, [r4, 0x4]
- ldrb r0, [r6]
- strb r0, [r4, 0x3]
- strb r5, [r4, 0x2]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x8]
-_080EDE54:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EDD78
-
- thumb_func_start sub_80EDE70
-sub_80EDE70: @ 80EDE70
- ldr r2, =gUnknown_0203A02A
- movs r1, 0
- strb r1, [r2]
- ldr r1, =gUnknown_0203A028
- strh r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_80EDE70
-
- thumb_func_start sub_80EDE84
-sub_80EDE84: @ 80EDE84
- ldr r2, =gUnknown_0203A02A
- movs r1, 0x1
- strb r1, [r2]
- ldr r1, =gUnknown_0203A028
- strh r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_80EDE84
-
- thumb_func_start sub_80EDE98
-sub_80EDE98: @ 80EDE98
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r8, r0
- movs r3, 0
- ldr r6, =gUnknown_030060D0
- ldr r7, =gSaveBlock1Ptr
- adds r2, r6, 0
- movs r1, 0
-_080EDEAC:
- adds r0, r3, r2
- strb r1, [r0]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xF
- bls _080EDEAC
- movs r3, 0
- movs r5, 0
-_080EDEBE:
- ldr r0, [r7]
- ldr r1, =0x00001aae
- adds r0, r1
- adds r0, r3
- ldrb r4, [r0]
- adds r3, 0x1
- cmp r4, 0
- beq _080EDF0A
- movs r1, 0
- ldrb r0, [r6]
- cmp r0, 0
- bne _080EDEE8
- strb r4, [r6]
- b _080EDF04
- .pool
-_080EDEE8:
- adds r0, r1, r6
- ldrb r0, [r0]
- cmp r0, r4
- beq _080EDF0A
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xF
- bhi _080EDF0A
- adds r2, r1, r6
- ldrb r0, [r2]
- cmp r0, 0
- bne _080EDEE8
- strb r4, [r2]
-_080EDF04:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_080EDF0A:
- lsls r0, r3, 24
- lsrs r3, r0, 24
- cmp r3, 0xF
- bls _080EDEBE
- cmp r5, 0x4
- bls _080EDF1E
- movs r0, 0x4
- mov r1, r8
- strb r0, [r1, 0x3]
- b _080EDF22
-_080EDF1E:
- mov r0, r8
- strb r5, [r0, 0x3]
-_080EDF22:
- mov r1, r8
- ldrb r0, [r1, 0x3]
- cmp r0, 0
- beq _080EDFA4
- cmp r0, 0x1
- bne _080EDF34
- ldrb r0, [r6]
- strb r0, [r1, 0x4]
- b _080EDFA4
-_080EDF34:
- movs r6, 0
- adds r7, r5, 0
- muls r7, r5
- cmp r6, r7
- bge _080EDF7E
- ldr r0, =gUnknown_030060D0
- mov r9, r0
-_080EDF42:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r5, 0
- bl __modsi3
- lsls r0, 24
- lsrs r4, r0, 24
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r5, 0
- bl __modsi3
- lsls r0, 24
- lsrs r1, r0, 24
- mov r0, r9
- adds r2, r4, r0
- ldrb r3, [r2]
- add r1, r9
- ldrb r0, [r1]
- strb r0, [r2]
- strb r3, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, r7
- blt _080EDF42
-_080EDF7E:
- movs r3, 0
- mov r1, r8
- ldrb r1, [r1, 0x3]
- cmp r3, r1
- bcs _080EDFA4
- mov r2, r8
- adds r2, 0x4
- ldr r4, =gUnknown_030060D0
-_080EDF8E:
- adds r1, r2, r3
- adds r0, r3, r4
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- mov r0, r8
- ldrb r0, [r0, 0x3]
- cmp r3, r0
- bcc _080EDF8E
-_080EDFA4:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EDE98
-
- thumb_func_start sub_80EDFB4
-sub_80EDFB4: @ 80EDFB4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r10, r0
- movs r7, 0
- movs r0, 0
- mov r9, r0
- ldr r1, =gUnknown_030060C0
- mov r8, r1
-_080EDFCA:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _080EE094
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _080EE094
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- ldr r2, =gUnknown_030060E0
- mov r3, r9
- lsls r1, r3, 3
- adds r6, r1, r2
- strb r0, [r6]
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- strh r0, [r6, 0x2]
- movs r5, 0
- adds r0, r4, 0
- movs r1, 0xD
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _080EE020
- mov r0, r8
- strh r1, [r0]
- movs r5, 0x1
-_080EE020:
- adds r0, r4, 0
- movs r1, 0xE
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _080EE03C
- lsls r0, r5, 1
- add r0, r8
- strh r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_080EE03C:
- adds r0, r4, 0
- movs r1, 0xF
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _080EE058
- lsls r0, r5, 1
- add r0, r8
- strh r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_080EE058:
- adds r0, r4, 0
- movs r1, 0x10
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _080EE074
- lsls r0, r5, 1
- add r0, r8
- strh r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_080EE074:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r5, 0
- bl __modsi3
- lsls r0, 1
- add r0, r8
- ldrh r0, [r0]
- strh r0, [r6, 0x4]
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
-_080EE094:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x5
- bls _080EDFCA
- movs r7, 0
- movs r1, 0
- cmp r1, r9
- bcs _080EE0BE
- ldr r2, =gUnknown_030060E0
-_080EE0A8:
- lsls r0, r7, 3
- adds r0, r2
- ldrb r0, [r0]
- adds r0, r1, r0
- lsls r0, 16
- lsrs r1, r0, 16
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, r9
- bcc _080EE0A8
-_080EE0BE:
- adds r0, r1, 0
- mov r1, r9
- bl __divsi3
- mov r1, r10
- strb r0, [r1, 0x2]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- mov r1, r9
- bl __modsi3
- lsls r0, 16
- ldr r1, =gUnknown_030060E0
- lsrs r0, 13
- adds r0, r1
- ldrh r1, [r0, 0x2]
- mov r2, r10
- strh r1, [r2, 0x8]
- ldrh r0, [r0, 0x4]
- strh r0, [r2, 0xA]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EDFB4
-
- thumb_func_start sub_80EE104
-sub_80EE104: @ 80EE104
- push {r4,lr}
- movs r0, 0x1F
- movs r1, 0x1
- bl sub_80EF46C
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFB08
- ldr r2, =gUnknown_030060BC
- strb r0, [r2]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EE168
- movs r1, 0
- ldrsb r1, [r2, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r4, [r4]
- adds r4, r0
- movs r1, 0
- movs r0, 0x1F
- strb r0, [r4]
- strb r1, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r0, r4, 0
- bl sub_80EDE98
- adds r0, r4, 0
- bl sub_80EDFB4
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0xC]
-_080EE168:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EE104
-
- thumb_func_start sub_80EE184
-sub_80EE184: @ 80EE184
- push {r4-r7,lr}
- ldr r6, =gSaveBlock1Ptr
- ldr r0, [r6]
- ldr r5, =0x000027cc
- adds r0, r5
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _080EE1A4
- b _080EE2C2
-_080EE1A4:
- movs r0, 0x1E
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080EE1B6
- b _080EE2C2
-_080EE1B6:
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, [r6]
- adds r4, r1, r0
- movs r1, 0
- movs r0, 0x1E
- strb r0, [r4]
- strb r1, [r4, 0x1]
- movs r5, 0
- ldr r6, =gBattleResults
- ldr r3, =gMapHeader
- ldr r7, =gSaveBlock2Ptr
- adds r2, r6, 0
- adds r2, 0x36
-_080EE1DA:
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r0, r5, r0
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xA
- bls _080EE1DA
- ldrb r1, [r6, 0x5]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080EE1FE
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_080EE1FE:
- ldrb r0, [r3, 0x14]
- strb r0, [r4, 0x4]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, [r7]
- bl StringCopy
- ldrh r0, [r6, 0x6]
- strh r0, [r4, 0xA]
- ldr r0, =gBattleOutcome
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r0, 0x9
- bhi _080EE282
- lsls r0, 2
- ldr r1, =_080EE244
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080EE244:
- .4byte _080EE276
- .4byte _080EE26C
- .4byte _080EE26C
- .4byte _080EE27A
- .4byte _080EE27A
- .4byte _080EE27E
- .4byte _080EE272
- .4byte _080EE27A
- .4byte _080EE282
- .4byte _080EE27E
-_080EE26C:
- movs r0, 0
- strb r0, [r4]
- b _080EE2C2
-_080EE272:
- movs r0, 0
- b _080EE280
-_080EE276:
- movs r0, 0x1
- b _080EE280
-_080EE27A:
- movs r0, 0x2
- b _080EE280
-_080EE27E:
- movs r0, 0x3
-_080EE280:
- strb r0, [r4, 0x5]
-_080EE282:
- ldr r1, =gBattleResults
- ldrh r0, [r1, 0x20]
- strh r0, [r4, 0x2]
- ldrb r0, [r4, 0x5]
- cmp r0, 0x1
- beq _080EE2B2
- cmp r0, 0x1
- bgt _080EE2B6
- cmp r0, 0
- bne _080EE2B6
- ldrb r1, [r1, 0x5]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080EE2A8
- movs r0, 0x1
- b _080EE2AC
- .pool
-_080EE2A8:
- lsls r0, r1, 26
- lsrs r0, 28
-_080EE2AC:
- strh r0, [r4, 0x6]
- strh r5, [r4, 0x8]
- b _080EE2B6
-_080EE2B2:
- ldrh r0, [r1, 0x22]
- strh r0, [r4, 0xC]
-_080EE2B6:
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0xE]
-_080EE2C2:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EE184
-
- thumb_func_start sub_80EE2CC
-sub_80EE2CC: @ 80EE2CC
- push {r4-r6,lr}
- ldr r6, =gSaveBlock1Ptr
- ldr r0, [r6]
- ldr r5, =0x000027cc
- adds r0, r5
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EE33A
- movs r0, 0x20
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EE33A
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r4, [r6]
- adds r4, r0
- movs r1, 0
- movs r0, 0x20
- strb r0, [r4]
- strb r1, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- ldr r0, =gSpecialVar_0x8004
- ldrb r1, [r0]
- movs r0, 0x4
- subs r0, r1
- strb r0, [r4, 0x4]
- ldr r0, =gSpecialVar_0x8005
- ldrh r0, [r0]
- strh r0, [r4, 0x2]
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x5]
-_080EE33A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EE2CC
-
- thumb_func_start sub_80EE35C
-sub_80EE35C: @ 80EE35C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- adds r7, r3, 0
- ldr r3, [sp, 0x24]
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- lsls r1, 16
- lsrs r1, 16
- mov r9, r1
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r3, 16
- lsrs r3, 16
- str r3, [sp]
- ldr r0, =gSaveBlock1Ptr
- mov r8, r0
- ldr r0, [r0]
- ldr r5, =0x000027cc
- adds r0, r5
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EE426
- movs r0, 0x21
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EE426
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- mov r2, r8
- ldr r1, [r2]
- adds r4, r1, r0
- movs r1, 0
- movs r0, 0x21
- strb r0, [r4]
- strb r1, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- mov r0, r10
- strh r0, [r4, 0x4]
- mov r1, r9
- strh r1, [r4, 0x6]
- lsls r0, r6, 1
- adds r0, r7
- ldrh r0, [r0]
- strh r0, [r4, 0x2]
- movs r2, 0
- movs r3, 0
- adds r5, r4, 0
- adds r5, 0x8
-_080EE3EE:
- cmp r2, r6
- beq _080EE408
- lsls r0, r2, 1
- adds r0, r7
- ldrh r1, [r0]
- cmp r1, 0
- beq _080EE408
- lsls r0, r3, 1
- adds r0, r5, r0
- strh r1, [r0]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
-_080EE408:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3
- bls _080EE3EE
- strb r3, [r4, 0x10]
- mov r2, sp
- ldrh r2, [r2]
- strh r2, [r4, 0xE]
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x11]
-_080EE426:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EE35C
-
- thumb_func_start sub_80EE44C
-sub_80EE44C: @ 80EE44C
- 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
- ldr r6, =gSaveBlock1Ptr
- ldr r0, [r6]
- ldr r5, =0x000027cc
- adds r0, r5
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EE4BE
- movs r0, 0x27
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EE4BE
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r4, [r6]
- adds r4, r0
- movs r1, 0
- movs r0, 0x27
- strb r0, [r4]
- strb r1, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- mov r0, r8
- strb r0, [r4, 0x2]
- strb r7, [r4, 0x3]
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x4]
-_080EE4BE:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EE44C
-
- thumb_func_start sub_80EE4DC
-sub_80EE4DC: @ 80EE4DC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- ldr r7, =gSaveBlock1Ptr
- ldr r0, [r7]
- ldr r5, =0x000027cc
- adds r0, r5
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EE59A
- movs r0, 0x23
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EE59A
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, [r7]
- adds r5, r1, r0
- movs r1, 0
- movs r0, 0x23
- strb r0, [r5]
- strb r1, [r5, 0x1]
- adds r0, r5, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- adds r4, r5, 0x4
- adds r0, r6, 0
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- adds r0, r4, 0
- bl StripExtCtrlCodes
- adds r0, r6, 0
- bl sub_80EE5A4
- strb r0, [r5, 0x2]
- mov r0, r8
- bl sub_80EE69C
- strb r0, [r5, 0x3]
- adds r0, r5, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r5, 0xF]
- cmp r0, 0x1
- beq _080EE578
- adds r0, r6, 0
- movs r1, 0x3
- bl GetMonData
- cmp r0, 0x1
- bne _080EE590
-_080EE578:
- movs r0, 0x1
- b _080EE598
- .pool
-_080EE590:
- adds r0, r6, 0
- movs r1, 0x3
- bl GetMonData
-_080EE598:
- strb r0, [r5, 0x10]
-_080EE59A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80EE4DC
-
- thumb_func_start sub_80EE5A4
-sub_80EE5A4: @ 80EE5A4
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x32
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x33
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x34
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x35
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x36
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x43
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x44
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x45
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x46
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x47
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x48
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x49
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x4A
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x4B
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x4C
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x4D
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0x4E
- bl GetMonData
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80EE5A4
-
- thumb_func_start sub_80EE69C
-sub_80EE69C: @ 80EE69C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x43
- beq _080EE722
- cmp r0, 0x32
- bne _080EE6AE
- movs r0, 0x1
- b _080EE728
-_080EE6AE:
- cmp r0, 0x33
- bne _080EE6B6
- movs r0, 0x5
- b _080EE728
-_080EE6B6:
- cmp r0, 0x34
- bne _080EE6BE
- movs r0, 0x9
- b _080EE728
-_080EE6BE:
- cmp r0, 0x35
- bne _080EE6C6
- movs r0, 0xD
- b _080EE728
-_080EE6C6:
- cmp r0, 0x36
- bne _080EE6CE
- movs r0, 0x11
- b _080EE728
-_080EE6CE:
- cmp r0, 0x44
- bne _080EE6D6
- movs r0, 0x15
- b _080EE728
-_080EE6D6:
- cmp r0, 0x45
- bne _080EE6DE
- movs r0, 0x16
- b _080EE728
-_080EE6DE:
- cmp r0, 0x46
- bne _080EE6E6
- movs r0, 0x17
- b _080EE728
-_080EE6E6:
- cmp r0, 0x47
- bne _080EE6EE
- movs r0, 0x18
- b _080EE728
-_080EE6EE:
- cmp r0, 0x48
- bne _080EE6F6
- movs r0, 0x19
- b _080EE728
-_080EE6F6:
- cmp r0, 0x49
- bne _080EE6FE
- movs r0, 0x1A
- b _080EE728
-_080EE6FE:
- cmp r0, 0x4A
- bne _080EE706
- movs r0, 0x1B
- b _080EE728
-_080EE706:
- cmp r0, 0x4B
- bne _080EE70E
- movs r0, 0x1C
- b _080EE728
-_080EE70E:
- cmp r0, 0x4C
- bne _080EE716
- movs r0, 0x1D
- b _080EE728
-_080EE716:
- cmp r0, 0x4D
- bne _080EE71E
- movs r0, 0x1E
- b _080EE728
-_080EE71E:
- cmp r0, 0x4E
- beq _080EE726
-_080EE722:
- movs r0, 0
- b _080EE728
-_080EE726:
- movs r0, 0x1F
-_080EE728:
- pop {r1}
- bx r1
- thumb_func_end sub_80EE69C
-
- thumb_func_start sub_80EE72C
-sub_80EE72C: @ 80EE72C
- push {r4-r6,lr}
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldr r6, =0x000027cc
- adds r0, r6
- bl sub_80EFB08
- ldr r4, =gUnknown_030060BC
- strb r0, [r4]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EE79C
- movs r0, 0x22
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EE79C
- movs r1, 0
- ldrsb r1, [r4, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldr r4, [r5]
- adds r4, r0
- movs r1, 0
- movs r0, 0x22
- strb r0, [r4]
- strb r1, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- ldr r0, [r5]
- ldr r2, =0x00002bb0
- adds r1, r0, r2
- ldrh r1, [r1]
- strh r1, [r4, 0x4]
- ldr r1, =0x00002bb2
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r4, 0x6]
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x8]
-_080EE79C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EE72C
-
- thumb_func_start sub_80EE7C0
-sub_80EE7C0: @ 80EE7C0
- push {r4,lr}
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EE810
- movs r0, 0xB
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _080EE810
- ldr r0, [r4]
- ldr r1, =0x00003150
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _080EE810
- movs r0, 0
- b _080EE812
- .pool
-_080EE810:
- movs r0, 0x1
-_080EE812:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80EE7C0
-
- thumb_func_start sub_80EE818
-sub_80EE818: @ 80EE818
- push {r4-r7,lr}
- movs r0, 0x24
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080EE870
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000027cc
- adds r7, r0, r1
- bl sub_80F0020
- adds r4, r0, 0
- movs r6, 0x5
- lsrs r5, r4, 8
-_080EE83C:
- lsls r0, r6, 3
- adds r0, r6
- lsls r0, 2
- adds r1, r0, r7
- ldrb r0, [r1]
- cmp r0, 0x24
- bne _080EE866
- movs r3, 0xFF
- adds r0, r4, 0
- ands r0, r3
- adds r2, r1, 0
- adds r2, 0x22
- ldrb r2, [r2]
- cmp r0, r2
- bne _080EE866
- adds r0, r5, 0
- ands r0, r3
- adds r1, 0x23
- ldrb r1, [r1]
- cmp r0, r1
- beq _080EE89C
-_080EE866:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x17
- bls _080EE83C
-_080EE870:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFB08
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EE8C0
- movs r0, 0x1
- b _080EE8C2
- .pool
-_080EE89C:
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldr r4, =0x000027cc
- adds r0, r4
- adds r1, r6, 0
- bl sub_80EF910
- ldr r0, [r5]
- adds r0, r4
- bl sub_80EF93C
- movs r0, 0x1
- b _080EE8C2
- .pool
-_080EE8C0:
- movs r0, 0
-_080EE8C2:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80EE818
-
- thumb_func_start sub_80EE8C8
-sub_80EE8C8: @ 80EE8C8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 24
- lsrs r4, r1, 24
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFB08
- ldr r2, =gUnknown_030060BC
- strb r0, [r2]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _080EE8F4
- b _080EEA52
-_080EE8F4:
- movs r1, 0
- ldrsb r1, [r2, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r2, =0x000027cc
- adds r0, r2
- ldr r1, [r5]
- adds r7, r1, r0
- movs r1, 0
- movs r0, 0x24
- strb r0, [r7]
- strb r1, [r7, 0x1]
- adds r0, r7, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- strh r6, [r7, 0x2]
- strb r4, [r7, 0xD]
- subs r0, r4, 0x1
- cmp r0, 0xC
- bls _080EE926
- b _080EEA46
-_080EE926:
- lsls r0, 2
- ldr r1, =_080EE944
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080EE944:
- .4byte _080EE978
- .4byte _080EE9A8
- .4byte _080EE9E8
- .4byte _080EEA00
- .4byte _080EE978
- .4byte _080EE978
- .4byte _080EE978
- .4byte _080EE978
- .4byte _080EE978
- .4byte _080EE978
- .4byte _080EE978
- .4byte _080EE978
- .4byte _080EE978
-_080EE978:
- ldr r4, =gPlayerParty
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x4]
- adds r0, r4, 0
- adds r0, 0x64
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x6]
- adds r4, 0xC8
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x8]
- b _080EEA46
- .pool
-_080EE9A8:
- ldr r4, =gPlayerParty
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x4]
- adds r0, r4, 0
- adds r0, 0x64
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x6]
- adds r0, r4, 0
- adds r0, 0xC8
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x8]
- movs r1, 0x96
- lsls r1, 1
- adds r0, r4, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0xA]
- b _080EEA46
- .pool
-_080EE9E8:
- ldr r4, =gPlayerParty
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x4]
- adds r4, 0x64
- adds r0, r4, 0
- b _080EEA3C
- .pool
-_080EEA00:
- ldr r2, =gSaveBlock1Ptr
- mov r8, r2
- ldr r6, =gSaveBlock2Ptr
- ldr r0, [r6]
- ldr r1, =0x00000caa
- adds r0, r1
- ldrh r0, [r0]
- movs r5, 0x64
- adds r1, r0, 0
- muls r1, r5
- movs r4, 0xEA
- lsls r4, 1
- adds r1, r4
- ldr r0, [r2]
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x4]
- ldr r0, [r6]
- ldr r2, =0x00000cac
- adds r0, r2
- ldrh r0, [r0]
- adds r1, r0, 0
- muls r1, r5
- adds r1, r4
- mov r2, r8
- ldr r0, [r2]
- adds r0, r1
-_080EEA3C:
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- strh r0, [r7, 0x6]
-_080EEA46:
- adds r0, r7, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r7, 0xC]
-_080EEA52:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EE8C8
-
- thumb_func_start sub_80EEA70
-sub_80EEA70: @ 80EEA70
- push {r4-r7,lr}
- sub sp, 0x20
- movs r0, 0x26
- movs r1, 0
- bl sub_80EF46C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080EEA86
- b _080EEB8C
-_080EEA86:
- ldr r7, =gSaveBlock1Ptr
- ldr r0, [r7]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFB08
- ldr r2, =gUnknown_030060BC
- strb r0, [r2]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EEB8C
- movs r1, 0
- ldrsb r1, [r2, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r7]
- adds r5, r1, r0
- movs r1, 0
- movs r0, 0x26
- strb r0, [r5]
- strb r1, [r5, 0x1]
- adds r0, r5, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- ldr r0, =0x000040ec
- bl VarGet
- strh r0, [r5, 0x2]
- bl sub_80E980C
- ldr r1, =gStringVar1
- mov r0, sp
- bl StringCopy
- mov r0, sp
- bl StripExtCtrlCodes
- adds r0, r5, 0x4
- mov r1, sp
- bl StringCopy
- ldr r0, =0x000040ed
- bl VarGet
- strh r0, [r5, 0x10]
- ldr r0, =0x000040ee
- bl VarGet
- adds r4, r0, 0
- ldr r0, =0x000040ef
- bl VarGet
- lsls r4, 16
- lsrs r4, 16
- lsls r0, 16
- adds r4, r0
- str r4, [r5, 0xC]
- adds r0, r5, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r5, 0x1B]
- cmp r0, 0x1
- beq _080EEB3A
- ldr r4, [r7]
- ldr r6, =0x00004054
- adds r0, r6, 0
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 5
- adds r4, r1
- ldr r0, =0x00001aa9
- adds r4, r0
- ldrb r0, [r4]
- cmp r0, 0x1
- bne _080EEB70
-_080EEB3A:
- movs r0, 0x1
- b _080EEB8A
- .pool
-_080EEB70:
- adds r0, r6, 0
- bl VarGet
- ldr r2, [r7]
- lsls r0, 16
- lsrs r0, 16
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 5
- adds r2, r1
- ldr r1, =0x00001aa9
- adds r2, r1
- ldrb r0, [r2]
-_080EEB8A:
- strb r0, [r5, 0x1C]
-_080EEB8C:
- add sp, 0x20
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EEA70
-
- thumb_func_start sub_80EEB98
-sub_80EEB98: @ 80EEB98
- push {r4-r7,lr}
- movs r5, 0
- ldr r6, =gUnknown_0858D0EC
- adds r7, r6, 0x2
- b _080EEBAE
- .pool
-_080EEBA8:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_080EEBAE:
- cmp r5, 0x6
- bhi _080EEBCE
- lsls r4, r5, 2
- adds r0, r4, r6
- ldrh r0, [r0]
- bl VarGet
- adds r4, r7
- lsls r0, 16
- lsrs r0, 16
- ldrh r4, [r4]
- cmp r0, r4
- bcc _080EEBA8
- adds r0, r5, 0
- bl sub_80EEBF4
-_080EEBCE:
- movs r5, 0
- ldr r4, =gUnknown_0858D0EC
-_080EEBD2:
- lsls r0, r5, 2
- adds r0, r4
- ldrh r0, [r0]
- movs r1, 0
- bl VarSet
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x6
- bls _080EEBD2
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EEB98
-
- thumb_func_start sub_80EEBF4
-sub_80EEBF4: @ 80EEBF4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r0, 0x25
- movs r1, 0x1
- bl sub_80EF46C
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFB08
- ldr r2, =gUnknown_030060BC
- strb r0, [r2]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EEC60
- movs r1, 0
- ldrsb r1, [r2, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r4, [r4]
- adds r4, r0
- movs r1, 0
- movs r0, 0x25
- strb r0, [r4]
- strb r1, [r4, 0x1]
- adds r0, r4, 0
- adds r0, 0x13
- ldr r1, =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- strb r5, [r4, 0x4]
- ldr r1, =gUnknown_0858D0EC
- lsls r0, r5, 2
- adds r0, r1
- ldrh r0, [r0]
- bl VarGet
- strh r0, [r4, 0x2]
- adds r0, r4, 0
- bl sub_80EC9E8
- ldr r0, =gGameLanguage
- ldrb r0, [r0]
- strb r0, [r4, 0x5]
-_080EEC60:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EEBF4
-
- thumb_func_start sub_80EEC80
-sub_80EEC80: @ 80EEC80
- push {r4,lr}
- ldr r4, =0x000040e6
- adds r0, r4, 0
- bl VarGet
- adds r1, r0, 0
- adds r1, 0x1
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EEC80
-
- thumb_func_start sub_80EECA4
-sub_80EECA4: @ 80EECA4
- push {r4,lr}
- ldr r4, =0x000040eb
- adds r0, r4, 0
- bl VarGet
- adds r1, r0, 0
- adds r1, 0x1
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EECA4
-
- thumb_func_start sub_80EECC8
-sub_80EECC8: @ 80EECC8
- push {r4,lr}
- ldr r4, =0x000040e7
- adds r0, r4, 0
- bl VarGet
- adds r1, r0, 0
- adds r1, 0x1
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EECC8
-
- thumb_func_start sub_80EECEC
-sub_80EECEC: @ 80EECEC
- push {r4,lr}
- ldr r4, =0x000040e8
- adds r0, r4, 0
- bl VarGet
- adds r1, r0, 0
- adds r1, 0x1
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EECEC
-
- thumb_func_start sub_80EED10
-sub_80EED10: @ 80EED10
- push {r4,lr}
- ldr r4, =0x000040e9
- adds r0, r4, 0
- bl VarGet
- adds r1, r0, 0
- adds r1, 0x1
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EED10
-
- thumb_func_start sub_80EED34
-sub_80EED34: @ 80EED34
- push {r4,lr}
- ldr r4, =0x000040ea
- adds r0, r4, 0
- bl VarGet
- adds r1, r0, 0
- ldr r0, =gSpecialVar_0x8006
- ldrh r0, [r0]
- adds r1, r0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EED34
-
- thumb_func_start sub_80EED60
-sub_80EED60: @ 80EED60
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r5, =0x000040f1
- adds r0, r5, 0
- bl VarGet
- adds r4, r0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl VarSet
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EED60
-
- thumb_func_start sub_80EED88
-sub_80EED88: @ 80EED88
- push {r4-r7,lr}
- ldr r0, =0x00000864
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080EEE0C
- ldr r6, =gSaveBlock1Ptr
- ldr r0, [r6]
- ldr r7, =0x00002b50
- adds r0, r7
- bl sub_80EEE30
- ldr r5, =gUnknown_030060BC
- strb r0, [r5]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080EEE0C
- ldr r0, =0x0000028f
- bl sub_80EFB38
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EEE0C
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- ands r0, r1
- adds r4, r0, 0x1
- adds r0, r4, 0
- bl sub_80EF0E4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EEE0C
- ldr r1, [r6]
- movs r0, 0
- ldrsb r0, [r5, r0]
- lsls r0, 2
- adds r1, r0
- adds r1, r7
- strb r4, [r1]
- ldr r2, [r6]
- movs r0, 0
- ldrsb r0, [r5, r0]
- lsls r0, 2
- adds r0, r2, r0
- ldr r1, =0x00002b52
- adds r0, r1
- movs r1, 0x4
- strh r1, [r0]
- movs r0, 0
- ldrsb r0, [r5, r0]
- lsls r0, 2
- adds r2, r0
- ldr r0, =0x00002b51
- adds r2, r0
- movs r0, 0x1
- strb r0, [r2]
-_080EEE0C:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EED88
-
- thumb_func_start sub_80EEE30
-sub_80EEE30: @ 80EEE30
- push {lr}
- adds r2, r0, 0
- movs r1, 0
-_080EEE36:
- lsls r0, r1, 24
- asrs r1, r0, 24
- lsls r0, r1, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080EEE48
- adds r0, r1, 0
- b _080EEE58
-_080EEE48:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- asrs r0, 24
- cmp r0, 0xF
- ble _080EEE36
- movs r0, 0x1
- negs r0, r0
-_080EEE58:
- pop {r1}
- bx r1
- thumb_func_end sub_80EEE30
-
- thumb_func_start sub_80EEE5C
-sub_80EEE5C: @ 80EEE5C
- push {r4,lr}
- movs r4, 0
-_080EEE60:
- adds r0, r4, 0
- bl sub_80EEE78
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bls _080EEE60
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80EEE5C
-
- thumb_func_start sub_80EEE78
-sub_80EEE78: @ 80EEE78
- push {r4,lr}
- lsls r0, 24
- ldr r3, =gSaveBlock1Ptr
- ldr r1, [r3]
- lsrs r0, 22
- adds r1, r0
- ldr r2, =0x00002b50
- adds r1, r2
- movs r2, 0
- strb r2, [r1]
- ldr r1, [r3]
- adds r1, r0
- ldr r4, =0x00002b51
- adds r1, r4
- strb r2, [r1]
- ldr r1, [r3]
- adds r1, r0
- ldr r0, =0x00002b52
- adds r1, r0
- strh r2, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EEE78
-
- thumb_func_start sub_80EEEB8
-sub_80EEEB8: @ 80EEEB8
- push {r4-r7,lr}
- movs r2, 0
- ldr r6, =gSaveBlock1Ptr
-_080EEEBE:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- lsls r1, r2, 2
- adds r0, r1
- ldr r3, =0x00002b50
- adds r0, r3
- ldrb r0, [r0]
- adds r5, r2, 0x1
- cmp r0, 0
- bne _080EEF12
- lsls r0, r5, 24
- b _080EEF0C
- .pool
-_080EEEE0:
- ldr r3, [r6]
- lsls r4, r2, 2
- adds r0, r3, r4
- ldr r7, =0x00002b50
- adds r0, r7
- ldrb r0, [r0]
- cmp r0, 0
- beq _080EEF08
- adds r0, r3, r7
- adds r1, r0, r1
- adds r0, r4
- ldr r0, [r0]
- str r0, [r1]
- adds r0, r2, 0
- bl sub_80EEE78
- b _080EEF12
- .pool
-_080EEF08:
- adds r0, r2, 0x1
- lsls r0, 24
-_080EEF0C:
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _080EEEE0
-_080EEF12:
- lsls r0, r5, 24
- lsrs r2, r0, 24
- cmp r2, 0xE
- bls _080EEEBE
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80EEEB8
-
- thumb_func_start sub_80EEF20
-sub_80EEF20: @ 80EEF20
- push {r4,lr}
- movs r2, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
-_080EEF28:
- lsls r0, r2, 2
- adds r1, r3, r0
- ldr r4, =0x00002b50
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0
- beq _080EEF58
- adds r4, 0x1
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080EEF58
- adds r4, 0x1
- adds r0, r1, r4
- ldrh r0, [r0]
- cmp r0, 0x2
- bhi _080EEF58
- adds r0, r2, 0
- b _080EEF64
- .pool
-_080EEF58:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _080EEF28
- movs r0, 0xFF
-_080EEF64:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80EEF20
-
- thumb_func_start sub_80EEF6C
-sub_80EEF6C: @ 80EEF6C
- push {r4,r5,lr}
- bl sub_80EEF20
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- bne _080EEF84
- ldr r1, =gScriptResult
- movs r0, 0
- b _080EF01A
- .pool
-_080EEF84:
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- lsls r4, r2, 2
- adds r1, r0, r4
- ldr r0, =0x00002b52
- adds r2, r1, r0
- ldrh r0, [r2]
- cmp r0, 0
- bne _080EEFE8
- ldr r2, =0x00002b51
- adds r1, r2
- movs r0, 0x2
- strb r0, [r1]
- ldr r0, =gLocalTime
- ldrb r0, [r0, 0x2]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x13
- bgt _080EEFC8
- ldr r1, =gUnknown_0858D11C
- ldr r0, [r5]
- adds r0, r4
- subs r2, 0x1
- b _080EEFD0
- .pool
-_080EEFC8:
- ldr r1, =gUnknown_0858D130
- ldr r0, [r5]
- adds r0, r4
- ldr r2, =0x00002b50
-_080EEFD0:
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl box_related_two__2
- b _080EF016
- .pool
-_080EEFE8:
- ldrh r1, [r2]
- ldr r0, =gStringVar1
- movs r2, 0
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- ldr r0, [r5]
- adds r0, r4
- ldr r1, =0x00002b51
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r1, =gUnknown_0858D108
- ldr r0, [r5]
- adds r0, r4
- ldr r2, =0x00002b50
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl box_related_two__2
-_080EF016:
- ldr r1, =gScriptResult
- movs r0, 0x1
-_080EF01A:
- strh r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EEF6C
-
- thumb_func_start GetPriceReduction
-GetPriceReduction: @ 80EF038
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0
- bne _080EF048
- b _080EF08A
-_080EF044:
- movs r0, 0x1
- b _080EF08C
-_080EF048:
- movs r2, 0
- ldr r4, =gSaveBlock1Ptr
-_080EF04C:
- ldr r1, [r4]
- lsls r0, r2, 2
- adds r1, r0
- ldr r5, =0x00002b50
- adds r0, r1, r5
- ldrb r0, [r0]
- cmp r0, r3
- bne _080EF080
- ldr r2, =0x00002b51
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _080EF08A
- adds r0, r3, 0
- bl IsPriceDiscounted
- lsls r0, 24
- cmp r0, 0
- bne _080EF044
- b _080EF08A
- .pool
-_080EF080:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _080EF04C
-_080EF08A:
- movs r0, 0
-_080EF08C:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GetPriceReduction
-
- thumb_func_start IsPriceDiscounted
-IsPriceDiscounted: @ 80EF094
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080EF0A6
- cmp r0, 0x3
- beq _080EF0C8
-_080EF0A2:
- movs r0, 0x1
- b _080EF0D6
-_080EF0A6:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- movs r0, 0x80
- lsls r0, 1
- cmp r1, r0
- bne _080EF0D4
- ldr r0, =gScriptLastTalked
- ldrh r0, [r0]
- cmp r0, 0x19
- beq _080EF0A2
- b _080EF0D4
- .pool
-_080EF0C8:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldr r0, =0x0000150d
- cmp r1, r0
- beq _080EF0A2
-_080EF0D4:
- movs r0, 0
-_080EF0D6:
- pop {r1}
- bx r1
- .pool
- thumb_func_end IsPriceDiscounted
-
- thumb_func_start sub_80EF0E4
-sub_80EF0E4: @ 80EF0E4
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _080EF0F2
-_080EF0EE:
- movs r0, 0x1
- b _080EF112
-_080EF0F2:
- movs r1, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
- ldr r4, =0x00002b50
-_080EF0FA:
- lsls r0, r1, 2
- adds r0, r3, r0
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, r2
- beq _080EF0EE
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xF
- bls _080EF0FA
- movs r0, 0
-_080EF112:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80EF0E4
-
- thumb_func_start sub_80EF120
-sub_80EF120: @ 80EF120
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 16
- lsrs r7, r0, 16
- movs r6, 0
- ldr r0, =gSaveBlock1Ptr
- mov r8, r0
-_080EF130:
- mov r1, r8
- ldr r0, [r1]
- lsls r1, r6, 2
- adds r2, r0, r1
- ldr r3, =0x00002b50
- adds r0, r2, r3
- ldrb r0, [r0]
- adds r4, r1, 0
- cmp r0, 0
- beq _080EF196
- ldr r1, =0x00002b52
- adds r0, r2, r1
- ldrh r0, [r0]
- cmp r0, r7
- bcs _080EF164
- adds r0, r6, 0
- bl sub_80EEE78
- b _080EF196
- .pool
-_080EF164:
- ldr r5, =0x00002b51
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r0, 0
- bne _080EF186
- ldr r0, =0x00000864
- bl FlagGet
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x1
- bne _080EF186
- mov r2, r8
- ldr r0, [r2]
- adds r0, r4
- adds r0, r5
- strb r1, [r0]
-_080EF186:
- mov r3, r8
- ldr r1, [r3]
- adds r1, r4
- ldr r0, =0x00002b52
- adds r1, r0
- ldrh r0, [r1]
- subs r0, r7
- strh r0, [r1]
-_080EF196:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0xF
- bls _080EF130
- bl sub_80EEEB8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF120
-
- thumb_func_start sub_80EF1BC
-sub_80EF1BC: @ 80EF1BC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- adds r2, r1, 0
- cmp r1, 0x1
- beq _080EF1FC
- cmp r1, 0x1
- bgt _080EF1D6
- cmp r1, 0
- beq _080EF1E0
- b _080EF244
-_080EF1D6:
- cmp r2, 0x2
- beq _080EF218
- cmp r2, 0x3
- beq _080EF234
- b _080EF244
-_080EF1E0:
- ldr r1, =gUnknown_0858D144
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1, 0x14]
- bl StringCopy
- b _080EF244
- .pool
-_080EF1FC:
- ldr r1, =gUnknown_0858D144
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1, 0x18]
- bl StringCopy
- b _080EF244
- .pool
-_080EF218:
- ldr r1, =gUnknown_0858D144
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1, 0x1C]
- bl StringCopy
- b _080EF244
- .pool
-_080EF234:
- ldr r1, =gUnknown_0858D144
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1, 0x20]
- bl StringCopy
-_080EF244:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF1BC
-
- thumb_func_start CopyContestCategoryToStringVar
-@ void CopyContestCategoryToStringVar(u8 stringVarIndex, u8 contestCategoryId)
-CopyContestCategoryToStringVar: @ 80EF250
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r1, 24
- lsrs r0, r1, 24
- cmp r0, 0x4
- bhi _080EF300
- lsls r0, 2
- ldr r1, =_080EF26C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080EF26C:
- .4byte _080EF280
- .4byte _080EF29C
- .4byte _080EF2B8
- .4byte _080EF2D4
- .4byte _080EF2F0
-_080EF280:
- ldr r1, =gUnknown_0858D144
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1]
- bl StringCopy
- b _080EF300
- .pool
-_080EF29C:
- ldr r1, =gUnknown_0858D144
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1, 0x4]
- bl StringCopy
- b _080EF300
- .pool
-_080EF2B8:
- ldr r1, =gUnknown_0858D144
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1, 0x8]
- bl StringCopy
- b _080EF300
- .pool
-_080EF2D4:
- ldr r1, =gUnknown_0858D144
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1, 0xC]
- bl StringCopy
- b _080EF300
- .pool
-_080EF2F0:
- ldr r1, =gUnknown_0858D144
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =gUnknown_0858BAF0
- ldr r1, [r1, 0x10]
- bl StringCopy
-_080EF300:
- pop {r0}
- bx r0
- .pool
- thumb_func_end CopyContestCategoryToStringVar
-
- thumb_func_start SetContestCategoryStringVarForInterview
-@ void SetContestCategoryStringVarForInterview()
-SetContestCategoryStringVarForInterview: @ 80EF30C
- push {lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r1, r0
- ldrb r1, [r1, 0x13]
- lsls r1, 29
- lsrs r1, 29
- movs r0, 0x1
- bl CopyContestCategoryToStringVar
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetContestCategoryStringVarForInterview
-
- thumb_func_start sub_80EF340
-sub_80EF340: @ 80EF340
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- bl sub_80EF370
- adds r3, r0, 0
- ldr r0, =gUnknown_0858D144
- lsls r4, 2
- adds r4, r0
- ldr r0, [r4]
- lsls r3, 24
- lsrs r3, 24
- adds r1, r5, 0
- movs r2, 0
- bl ConvertIntToDecimalStringN
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF340
-
- thumb_func_start sub_80EF370
-sub_80EF370: @ 80EF370
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0xA
- bl __divsi3
- cmp r0, 0
- beq _080EF3FC
- adds r0, r4, 0
- movs r1, 0x64
- bl __divsi3
- cmp r0, 0
- bne _080EF38E
- movs r0, 0x2
- b _080EF406
-_080EF38E:
- movs r1, 0xFA
- lsls r1, 2
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080EF3A0
- movs r0, 0x3
- b _080EF406
-_080EF3A0:
- ldr r1, =0x00002710
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080EF3B4
- movs r0, 0x4
- b _080EF406
- .pool
-_080EF3B4:
- ldr r1, =0x000186a0
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080EF3C8
- movs r0, 0x5
- b _080EF406
- .pool
-_080EF3C8:
- ldr r1, =0x000f4240
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080EF3DC
- movs r0, 0x6
- b _080EF406
- .pool
-_080EF3DC:
- ldr r1, =0x00989680
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- bne _080EF3F0
- movs r0, 0x7
- b _080EF406
- .pool
-_080EF3F0:
- ldr r1, =0x05f5e100
- adds r0, r4, 0
- bl __divsi3
- cmp r0, 0
- beq _080EF404
-_080EF3FC:
- movs r0, 0x1
- b _080EF406
- .pool
-_080EF404:
- movs r0, 0x8
-_080EF406:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80EF370
-
- thumb_func_start sub_80EF40C
-sub_80EF40C: @ 80EF40C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r1, 0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r7, 0
- movs r5, 0
-_080EF41E:
- lsls r4, r5, 1
- adds r0, r6, 0x6
- adds r1, r0, r4
- ldrh r0, [r1]
- cmp r0, 0
- beq _080EF43E
- bl itemid_get_market_price
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- adds r1, 0xC
- adds r1, r4
- ldrh r1, [r1]
- muls r0, r1
- adds r7, r0
-_080EF43E:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _080EF41E
- ldrb r0, [r6, 0x2]
- cmp r0, 0x1
- bne _080EF458
- asrs r1, r7, 1
- mov r0, r8
- bl sub_80EF340
- b _080EF460
-_080EF458:
- mov r0, r8
- adds r1, r7, 0
- bl sub_80EF340
-_080EF460:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80EF40C
-
- thumb_func_start sub_80EF46C
-sub_80EF46C: @ 80EF46C
- 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, 24
- lsrs r1, 24
- mov r9, r1
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldr r4, =0x000027cc
- adds r0, r4
- mov r8, r0
- bl sub_80F0020
- adds r7, r0, 0
- movs r6, 0x5
-_080EF494:
- lsls r0, r6, 3
- adds r0, r6
- lsls r0, 2
- mov r2, r8
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, r10
- bne _080EF4E4
- movs r3, 0xFF
- adds r0, r7, 0
- ands r0, r3
- adds r2, r1, 0
- adds r2, 0x22
- ldrb r2, [r2]
- cmp r0, r2
- bne _080EF4E4
- lsrs r0, r7, 8
- ands r0, r3
- adds r1, 0x23
- ldrb r1, [r1]
- cmp r0, r1
- bne _080EF4E4
- mov r0, r9
- cmp r0, 0x1
- bne _080EF4D8
- ldr r0, [r5]
- adds r0, r4
- adds r1, r6, 0
- bl sub_80EF910
- ldr r0, [r5]
- adds r0, r4
- bl sub_80EF93C
-_080EF4D8:
- movs r0, 0x1
- b _080EF4F0
- .pool
-_080EF4E4:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x17
- bls _080EF494
- movs r0, 0
-_080EF4F0:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80EF46C
-
- thumb_func_start sub_80EF500
-sub_80EF500: @ 80EF500
- push {r4-r7,lr}
- movs r2, 0
-_080EF504:
- adds r1, r2, 0x1
- lsls r0, r1, 24
- lsrs r5, r0, 24
- adds r7, r1, 0
- cmp r5, 0x2
- bhi _080EF53C
- ldr r6, =gUnknown_02039F80
- lsls r0, r2, 2
- adds r4, r0, r6
-_080EF516:
- lsls r0, r5, 2
- adds r3, r0, r6
- ldrh r0, [r4, 0x2]
- ldrh r1, [r3, 0x2]
- cmp r0, r1
- bcs _080EF532
- ldrh r1, [r4]
- adds r2, r0, 0
- ldrh r0, [r3]
- strh r0, [r4]
- ldrh r0, [r3, 0x2]
- strh r0, [r4, 0x2]
- strh r1, [r3]
- strh r2, [r3, 0x2]
-_080EF532:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _080EF516
-_080EF53C:
- lsls r0, r7, 24
- lsrs r2, r0, 24
- cmp r2, 0x1
- bls _080EF504
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF500
-
- thumb_func_start sub_80EF550
-sub_80EF550: @ 80EF550
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r1, 0
- ldr r5, =gSaveBlock1Ptr
- ldr r4, =0x000027cc
-_080EF55C:
- ldr r3, [r5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r2, r3, r0
- adds r0, r2, r4
- ldrb r0, [r0]
- cmp r0, r6
- bne _080EF5A4
- ldr r6, =0x000027cd
- adds r0, r2, r6
- ldrb r2, [r0]
- cmp r2, 0x1
- bne _080EF590
- ldr r0, =gScriptResult
- strh r2, [r0]
- b _080EF5B2
- .pool
-_080EF590:
- adds r0, r3, r4
- bl sub_80EF910
- ldr r0, [r5]
- adds r0, r4
- bl sub_80EF93C
- bl sub_80EFA88
- b _080EF5B2
-_080EF5A4:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x4
- bls _080EF55C
- bl sub_80EFA88
-_080EF5B2:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80EF550
-
- thumb_func_start InterviewBefore
-InterviewBefore: @ 80EF5B8
- push {lr}
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gSpecialVar_0x8005
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r0, 0xA
- bhi _080EF646
- lsls r0, 2
- ldr r1, =_080EF5E0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080EF5E0:
- .4byte _080EF60C
- .4byte _080EF612
- .4byte _080EF618
- .4byte _080EF61E
- .4byte _080EF624
- .4byte _080EF62A
- .4byte _080EF630
- .4byte _080EF636
- .4byte _080EF63C
- .4byte _080EF646
- .4byte _080EF642
-_080EF60C:
- bl sub_80EF64C
- b _080EF646
-_080EF612:
- bl sub_80EF6C4
- b _080EF646
-_080EF618:
- bl sub_80EF704
- b _080EF646
-_080EF61E:
- bl sub_80EF79C
- b _080EF646
-_080EF624:
- bl sub_80EF7A8
- b _080EF646
-_080EF62A:
- bl sub_80EF7B4
- b _080EF646
-_080EF630:
- bl sub_80EF80C
- b _080EF646
-_080EF636:
- bl sub_80EF7F4
- b _080EF646
-_080EF63C:
- bl sub_80EF800
- b _080EF646
-_080EF642:
- bl sub_80EF84C
-_080EF646:
- pop {r0}
- bx r0
- thumb_func_end InterviewBefore
-
- thumb_func_start sub_80EF64C
-sub_80EF64C: @ 80EF64C
- push {r4,lr}
- movs r0, 0x1
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0
- bne _080EF6A0
- ldr r4, =gStringVar1
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- movs r1, 0xB
- muls r1, r0
- ldr r0, =gSpeciesNames
- adds r1, r0
- adds r0, r4, 0
- bl StringCopy
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, [r2]
- adds r0, r1
- ldr r1, =0x000027d0
- adds r0, r1
- movs r1, 0x6
- bl sub_811F88C
-_080EF6A0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF64C
-
- thumb_func_start sub_80EF6C4
-sub_80EF6C4: @ 80EF6C4
- push {lr}
- movs r0, 0x2
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0
- bne _080EF6F0
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, [r2]
- adds r0, r1
- ldr r1, =0x000027d0
- adds r0, r1
- movs r1, 0x6
- bl sub_811F88C
-_080EF6F0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF6C4
-
- thumb_func_start sub_80EF704
-sub_80EF704: @ 80EF704
- push {r4-r6,lr}
- movs r0, 0x3
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0
- bne _080EF774
- ldr r6, =gStringVar1
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- movs r5, 0x64
- muls r0, r5
- ldr r4, =gPlayerParty
- adds r0, r4
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- movs r1, 0xB
- muls r1, r0
- ldr r0, =gSpeciesNames
- adds r1, r0
- adds r0, r6, 0
- bl StringCopy
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- muls r0, r5
- adds r0, r4
- ldr r4, =gStringVar2
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- adds r0, r4, 0
- bl StringGetEnd10
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, [r2]
- adds r0, r1
- ldr r1, =0x000027e8
- adds r0, r1
- movs r1, 0x2
- bl sub_811F88C
-_080EF774:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF704
-
- thumb_func_start sub_80EF79C
-sub_80EF79C: @ 80EF79C
- ldr r1, =gScriptResult
- movs r0, 0x1
- strh r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_80EF79C
-
- thumb_func_start sub_80EF7A8
-sub_80EF7A8: @ 80EF7A8
- push {lr}
- movs r0, 0x5
- bl sub_80EF550
- pop {r0}
- bx r0
- thumb_func_end sub_80EF7A8
-
- thumb_func_start sub_80EF7B4
-sub_80EF7B4: @ 80EF7B4
- push {lr}
- movs r0, 0x6
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0
- bne _080EF7E0
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, [r2]
- adds r0, r1
- ldr r1, =0x000027d0
- adds r0, r1
- movs r1, 0x2
- bl sub_811F88C
-_080EF7E0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF7B4
-
- thumb_func_start sub_80EF7F4
-sub_80EF7F4: @ 80EF7F4
- push {lr}
- movs r0, 0x8
- bl sub_80EF550
- pop {r0}
- bx r0
- thumb_func_end sub_80EF7F4
-
- thumb_func_start sub_80EF800
-sub_80EF800: @ 80EF800
- push {lr}
- movs r0, 0x9
- bl sub_80EF550
- pop {r0}
- bx r0
- thumb_func_end sub_80EF800
-
- thumb_func_start sub_80EF80C
-sub_80EF80C: @ 80EF80C
- push {lr}
- movs r0, 0x7
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0
- bne _080EF838
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, [r2]
- adds r0, r1
- ldr r1, =0x000027e4
- adds r0, r1
- movs r1, 0x1
- bl sub_811F88C
-_080EF838:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF80C
-
- thumb_func_start sub_80EF84C
-sub_80EF84C: @ 80EF84C
- push {lr}
- movs r0, 0xB
- bl sub_80EF550
- ldr r0, =gScriptResult
- ldrh r0, [r0]
- cmp r0, 0
- bne _080EF878
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, [r2]
- adds r0, r1
- ldr r1, =0x000027e0
- adds r0, r1
- movs r1, 0x1
- bl sub_811F88C
-_080EF878:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EF84C
-
- thumb_func_start sub_80EF88C
-sub_80EF88C: @ 80EF88C
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r5, r1, r0
- ldr r6, =gStringVar1
- adds r0, r5, 0
- movs r1, 0x2
- adds r2, r6, 0
- bl GetMonData
- mov r4, sp
- adds r0, r5, 0
- movs r1, 0x3
- mov r2, sp
- bl GetMonData
- strb r0, [r4]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _080EF8EC
- adds r0, r5, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- movs r1, 0xB
- muls r0, r1
- ldr r1, =gSpeciesNames
- adds r0, r1
- adds r1, r6, 0
- bl StringCompare
- cmp r0, 0
- bne _080EF8EC
- movs r0, 0
- b _080EF8EE
- .pool
-_080EF8EC:
- movs r0, 0x1
-_080EF8EE:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80EF88C
-
- thumb_func_start sub_80EF8F8
-sub_80EF8F8: @ 80EF8F8
- push {lr}
- bl sub_8139688
- lsls r0, 24
- lsrs r0, 24
- bl sub_80EF88C
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_80EF8F8
-
- thumb_func_start sub_80EF910
-sub_80EF910: @ 80EF910
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- lsls r2, r1, 3
- adds r2, r1
- lsls r2, 2
- adds r2, r0
- movs r0, 0
- strb r0, [r2]
- strb r0, [r2, 0x1]
- movs r1, 0
- adds r2, 0x2
- movs r3, 0
-_080EF92A:
- adds r0, r2, r1
- strb r3, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x21
- bls _080EF92A
- pop {r0}
- bx r0
- thumb_func_end sub_80EF910
-
- thumb_func_start sub_80EF93C
-sub_80EF93C: @ 80EF93C
- push {r4-r7,lr}
- adds r4, r0, 0
- movs r5, 0
-_080EF942:
- lsls r0, r5, 3
- adds r0, r5
- lsls r1, r0, 2
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _080EF986
- adds r0, r5, 0x1
- b _080EF97E
-_080EF954:
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r3, r0, r4
- ldrb r0, [r3]
- cmp r0, 0
- beq _080EF97C
- adds r1, r4
- adds r0, r3, 0
- ldm r0!, {r3,r6,r7}
- stm r1!, {r3,r6,r7}
- ldm r0!, {r3,r6,r7}
- stm r1!, {r3,r6,r7}
- ldm r0!, {r3,r6,r7}
- stm r1!, {r3,r6,r7}
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_80EF910
- b _080EF986
-_080EF97C:
- adds r0, r2, 0x1
-_080EF97E:
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x4
- bls _080EF954
-_080EF986:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _080EF942
- movs r5, 0x5
-_080EF992:
- lsls r0, r5, 3
- adds r0, r5
- lsls r1, r0, 2
- adds r0, r1, r4
- ldrb r0, [r0]
- adds r5, 0x1
- cmp r0, 0
- bne _080EF9D8
- lsls r0, r5, 24
- b _080EF9D2
-_080EF9A6:
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r3, r0, r4
- ldrb r0, [r3]
- cmp r0, 0
- beq _080EF9CE
- adds r1, r4
- adds r0, r3, 0
- ldm r0!, {r3,r6,r7}
- stm r1!, {r3,r6,r7}
- ldm r0!, {r3,r6,r7}
- stm r1!, {r3,r6,r7}
- ldm r0!, {r3,r6,r7}
- stm r1!, {r3,r6,r7}
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_80EF910
- b _080EF9D8
-_080EF9CE:
- adds r0, r2, 0x1
- lsls r0, 24
-_080EF9D2:
- lsrs r2, r0, 24
- cmp r2, 0x17
- bls _080EF9A6
-_080EF9D8:
- lsls r0, r5, 24
- lsrs r5, r0, 24
- cmp r5, 0x17
- bls _080EF992
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80EF93C
-
- thumb_func_start sub_80EF9E8
-sub_80EF9E8: @ 80EF9E8
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r0, r1, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r0, 16
- lsrs r0, 16
- bl sub_80EFA24
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- ldr r0, =gUnknown_0858D144
- lsls r4, 2
- adds r4, r0
- ldr r0, [r4]
- movs r1, 0xB
- muls r1, r5
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80EF9E8
-
- thumb_func_start sub_80EFA24
-sub_80EFA24: @ 80EFA24
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- bl Random
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =0x0000019b
- bl __umodsi3
- adds r0, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- adds r6, r4, 0
- b _080EFA62
- .pool
-_080EFA48:
- cmp r4, 0x1
- bne _080EFA54
- ldr r4, =0x0000019b
- b _080EFA5A
- .pool
-_080EFA54:
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
-_080EFA5A:
- cmp r4, r6
- bne _080EFA62
- adds r4, r5, 0
- b _080EFA7E
-_080EFA62:
- adds r0, r4, 0
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0
- bl GetSetPokedexFlag
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x1
- bne _080EFA48
- cmp r4, r5
- beq _080EFA48
-_080EFA7E:
- adds r0, r4, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80EFA24
-
- thumb_func_start sub_80EFA88
-sub_80EFA88: @ 80EFA88
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000027cc
- adds r0, r1
- bl sub_80EFADC
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- ldr r2, =gSpecialVar_0x8006
- ldrb r1, [r1]
- lsls r1, 24
- asrs r1, 24
- strh r1, [r2]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _080EFACC
- ldr r1, =gScriptResult
- movs r0, 0x1
- b _080EFAD0
- .pool
-_080EFACC:
- ldr r1, =gScriptResult
- movs r0, 0
-_080EFAD0:
- strh r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EFA88
-
- thumb_func_start sub_80EFADC
-sub_80EFADC: @ 80EFADC
- push {lr}
- adds r2, r0, 0
- movs r1, 0
-_080EFAE2:
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080EFAF6
- lsls r0, r1, 24
- asrs r0, 24
- b _080EFB04
-_080EFAF6:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x4
- bls _080EFAE2
- movs r0, 0x1
- negs r0, r0
-_080EFB04:
- pop {r1}
- bx r1
- thumb_func_end sub_80EFADC
-
- thumb_func_start sub_80EFB08
-sub_80EFB08: @ 80EFB08
- push {lr}
- adds r2, r0, 0
- movs r1, 0x5
-_080EFB0E:
- lsls r0, r1, 24
- asrs r1, r0, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080EFB24
- adds r0, r1, 0
- b _080EFB34
-_080EFB24:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- asrs r0, 24
- cmp r0, 0x17
- ble _080EFB0E
- movs r0, 0x1
- negs r0, r0
-_080EFB34:
- pop {r1}
- bx r1
- thumb_func_end sub_80EFB08
-
- thumb_func_start sub_80EFB38
-sub_80EFB38: @ 80EFB38
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- bl Random
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r4
- bls _080EFB50
- movs r0, 0x1
- b _080EFB52
-_080EFB50:
- movs r0, 0
-_080EFB52:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80EFB38
-
- thumb_func_start sub_80EFB58
-sub_80EFB58: @ 80EFB58
- push {r4-r6,lr}
- adds r4, r0, 0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 24
- lsrs r2, r0, 24
- adds r5, r4, 0x4
- ldr r6, =0x0000ffff
- b _080EFB7E
- .pool
-_080EFB78:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
-_080EFB7E:
- cmp r2, 0x6
- bne _080EFB84
- movs r2, 0
-_080EFB84:
- lsls r1, r2, 1
- adds r0, r5, r1
- ldrh r0, [r0]
- adds r3, r4, 0x4
- cmp r0, r6
- beq _080EFB78
- ldr r0, =gStringVar3
- adds r1, r3, r1
- ldrh r1, [r1]
- bl CopyEasyChatWord
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EFB58
-
- thumb_func_start sub_80EFBA4
-sub_80EFBA4: @ 80EFBA4
- push {lr}
- adds r2, r0, 0
- movs r3, 0
- movs r1, 0
- ldrb r0, [r2, 0x4]
- cmp r0, 0xFF
- beq _080EFBD0
- adds r2, 0x4
-_080EFBB4:
- adds r0, r2, r1
- ldrb r0, [r0]
- adds r0, r3, r0
- lsls r0, 16
- lsrs r3, r0, 16
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xA
- bhi _080EFBD0
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _080EFBB4
-_080EFBD0:
- movs r0, 0x7
- ands r3, r0
- adds r0, r3, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80EFBA4
-
- thumb_func_start sub_80EFBDC
-sub_80EFBDC: @ 80EFBDC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x10
- ldr r4, [sp, 0x2C]
- ldr r5, [sp, 0x30]
- mov r8, r5
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r3, 16
- lsrs r3, 16
- lsls r4, 16
- lsrs r4, 16
- movs r2, 0
- movs r7, 0xFF
-_080EFC06:
- mov r1, sp
- adds r0, r1, r2
- ldrb r1, [r0]
- orrs r1, r7
- strb r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x2
- bls _080EFC06
- cmp r3, 0
- bne _080EFC72
- mov r4, r8
- adds r4, 0xF
- adds r0, r4, 0
- bl StringLength
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r6, 0
- bne _080EFC36
- mov r0, sp
- adds r1, r4, r5
- b _080EFC40
-_080EFC36:
- cmp r6, 0x1
- bne _080EFC46
- mov r0, sp
- subs r1, r2, r5
- adds r1, r4, r1
-_080EFC40:
- ldrb r1, [r1]
- strb r1, [r0]
- b _080EFC6C
-_080EFC46:
- cmp r6, 0x2
- bne _080EFC56
- mov r1, sp
- adds r0, r4, r5
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r5, 0x1
- b _080EFC66
-_080EFC56:
- mov r1, sp
- subs r0, r2, 0x2
- subs r0, r5
- adds r0, r4, r0
- ldrb r0, [r0]
- strb r0, [r1]
- subs r0, r2, 0x1
- subs r0, r5
-_080EFC66:
- adds r0, r4, r0
- ldrb r0, [r0]
- strb r0, [r1, 0x1]
-_080EFC6C:
- mov r2, r8
- ldrb r1, [r2, 0x1E]
- b _080EFCC8
-_080EFC72:
- cmp r3, 0x1
- bne _080EFCD0
- mov r4, r8
- adds r4, 0x4
- adds r0, r4, 0
- bl StringLength
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r6, 0
- bne _080EFC8E
- mov r0, sp
- adds r1, r4, r5
- b _080EFC98
-_080EFC8E:
- cmp r6, 0x1
- bne _080EFC9E
- mov r0, sp
- subs r1, r2, r5
- adds r1, r4, r1
-_080EFC98:
- ldrb r1, [r1]
- strb r1, [r0]
- b _080EFCC4
-_080EFC9E:
- cmp r6, 0x2
- bne _080EFCAE
- mov r1, sp
- adds r0, r4, r5
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r5, 0x1
- b _080EFCBE
-_080EFCAE:
- mov r1, sp
- subs r0, r2, 0x2
- subs r0, r5
- adds r0, r4, r0
- ldrb r0, [r0]
- strb r0, [r1]
- subs r0, r2, 0x1
- subs r0, r5
-_080EFCBE:
- adds r0, r4, r0
- ldrb r0, [r0]
- strb r0, [r1, 0x1]
-_080EFCC4:
- mov r5, r8
- ldrb r1, [r5, 0x1F]
-_080EFCC8:
- mov r0, sp
- bl ConvertInternationalString
- b _080EFD30
-_080EFCD0:
- movs r0, 0xB
- muls r4, r0
- ldr r7, =gSpeciesNames
- adds r0, r4, r7
- bl StringLength
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r6, 0
- bne _080EFCF0
- mov r0, sp
- adds r1, r5, r4
- b _080EFCFA
- .pool
-_080EFCF0:
- cmp r6, 0x1
- bne _080EFD02
- mov r0, sp
- subs r1, r2, r5
- adds r1, r4
-_080EFCFA:
- adds r1, r7
- ldrb r1, [r1]
- strb r1, [r0]
- b _080EFD30
-_080EFD02:
- cmp r6, 0x2
- bne _080EFD16
- mov r1, sp
- adds r0, r5, r4
- adds r0, r7
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r4, 0x1
- adds r0, r5, r0
- b _080EFD2A
-_080EFD16:
- mov r1, sp
- subs r0, r2, 0x2
- subs r0, r5
- adds r0, r4
- adds r0, r7
- ldrb r0, [r0]
- strb r0, [r1]
- subs r0, r2, 0x1
- subs r0, r5
- adds r0, r4
-_080EFD2A:
- adds r0, r7
- ldrb r0, [r0]
- strb r0, [r1, 0x1]
-_080EFD30:
- ldr r0, =gUnknown_0858D144
- mov r2, r9
- lsls r1, r2, 2
- adds r1, r0
- ldr r0, [r1]
- mov r1, sp
- bl StringCopy
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EFBDC
-
- thumb_func_start sub_80EFD54
-sub_80EFD54: @ 80EFD54
- push {r4,lr}
- movs r1, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
- ldr r0, =gSpecialVar_0x8004
- ldrh r2, [r0]
- ldr r4, =0x000027cc
-_080EFD62:
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r3, r0
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, r2
- bne _080EFD84
- movs r0, 0x1
- b _080EFD90
- .pool
-_080EFD84:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x4
- bls _080EFD62
- movs r0, 0
-_080EFD90:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80EFD54
-
- thumb_func_start sub_80EFD98
-sub_80EFD98: @ 80EFD98
- push {r4,lr}
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- ldr r4, =gStringVar1
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- ldr r0, =gStringVar3
- adds r1, r4, 0
- bl StringCompare
- cmp r0, 0
- beq _080EFDD4
- bl sub_80ED320
- movs r0, 0x1
- b _080EFDD6
- .pool
-_080EFDD4:
- movs r0, 0
-_080EFDD6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80EFD98
-
- thumb_func_start sub_80EFDDC
-sub_80EFDDC: @ 80EFDDC
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x8
- ldr r0, =gSpecialVar_0x8004
- mov r9, r0
- ldrh r0, [r0]
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r6, =gPlayerParty
- adds r0, r6
- ldr r2, =gStringVar3
- movs r1, 0x2
- bl GetMonData
- mov r1, r9
- ldrh r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- ldr r1, =gStringVar2
- mov r10, r1
- movs r1, 0x2
- mov r2, r10
- bl GetMonData
- mov r1, r9
- ldrh r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- mov r1, r9
- ldrh r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- bl GetMonGender
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- mov r1, r9
- ldrh r0, [r1]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- movs r1, 0
- movs r2, 0
- bl GetMonData
- str r0, [sp]
- ldr r0, =c2_080CC144
- str r0, [sp, 0x4]
- movs r0, 0x3
- mov r1, r10
- adds r2, r5, 0
- adds r3, r4, 0
- bl DoNamingScreen
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EFDDC
-
- thumb_func_start c2_080CC144
-c2_080CC144: @ 80EFE98
- push {lr}
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- ldr r2, =gStringVar2
- movs r1, 0x2
- bl SetMonData
- bl c2_exit_to_overworld_1_continue_scripts_restart_music
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_080CC144
-
- thumb_func_start sub_80EFEC4
-sub_80EFEC4: @ 80EFEC4
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- ldr r0, =gSpecialVar_0x8012
- ldrb r0, [r0]
- ldr r1, =gSpecialVar_0x8013
- ldrb r1, [r1]
- bl GetBoxedMonPtr
- adds r6, r0, 0
- ldr r2, =gStringVar3
- movs r1, 0x2
- bl GetBoxMonData
- ldr r0, =gStringVar2
- mov r8, r0
- adds r0, r6, 0
- movs r1, 0x2
- mov r2, r8
- bl GetBoxMonData
- adds r0, r6, 0
- movs r1, 0xB
- movs r2, 0
- bl GetBoxMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r6, 0
- bl GetBoxMonGender
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0
- bl GetBoxMonData
- str r0, [sp]
- ldr r0, =sub_80EFF48
- str r0, [sp, 0x4]
- movs r0, 0x3
- mov r1, r8
- adds r2, r5, 0
- adds r3, r4, 0
- bl DoNamingScreen
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EFEC4
-
- thumb_func_start sub_80EFF48
-sub_80EFF48: @ 80EFF48
- push {lr}
- ldr r0, =gSpecialVar_0x8012
- ldrb r0, [r0]
- ldr r1, =gSpecialVar_0x8013
- ldrb r1, [r1]
- ldr r2, =gStringVar2
- bl SetBoxMonNickFromAnyBox
- bl c2_exit_to_overworld_1_continue_scripts_restart_music
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EFF48
-
- thumb_func_start sub_80EFF6C
-sub_80EFF6C: @ 80EFF6C
- push {r4,lr}
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- ldr r4, =gStringVar1
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- adds r0, r4, 0
- bl StringGetEnd10
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EFF6C
-
- thumb_func_start sub_80EFF9C
-sub_80EFF9C: @ 80EFF9C
- push {r4,lr}
- bl sub_80F0020
- adds r4, r0, 0
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x1
- movs r2, 0
- bl GetMonData
- cmp r4, r0
- bne _080EFFD0
- ldr r1, =gScriptResult
- movs r0, 0
- b _080EFFD4
- .pool
-_080EFFD0:
- ldr r1, =gScriptResult
- movs r0, 0x1
-_080EFFD4:
- strh r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80EFF9C
-
- thumb_func_start sub_80EFFE0
-sub_80EFFE0: @ 80EFFE0
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- adds r2, r1, 0
- cmp r1, 0
- beq _080F0016
- subs r0, r1, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bhi _080EFFFA
- movs r0, 0x2
- b _080F001C
-_080EFFFA:
- adds r0, r1, 0
- subs r0, 0x15
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bhi _080F000A
- movs r0, 0x3
- b _080F001C
-_080F000A:
- adds r0, r2, 0
- subs r0, 0x29
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bls _080F001A
-_080F0016:
- movs r0, 0
- b _080F001C
-_080F001A:
- movs r0, 0x4
-_080F001C:
- pop {r1}
- bx r1
- thumb_func_end sub_80EFFE0
-
- thumb_func_start sub_80F0020
-sub_80F0020: @ 80F0020
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldrb r0, [r2, 0xD]
- lsls r0, 24
- ldrb r1, [r2, 0xC]
- lsls r1, 16
- orrs r0, r1
- ldrb r1, [r2, 0xB]
- lsls r1, 8
- orrs r0, r1
- ldrb r1, [r2, 0xA]
- orrs r0, r1
- bx lr
- .pool
- thumb_func_end sub_80F0020
-
- thumb_func_start CheckForBigMovieOrEmergencyNewsOnTV
-CheckForBigMovieOrEmergencyNewsOnTV: @ 80F0040
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- cmp r0, 0x1
- bne _080F0060
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _080F006C
- movs r0, 0x5
- ldrsb r0, [r1, r0]
- cmp r0, 0
- beq _080F0074
-_080F0060:
- movs r0, 0
- b _080F009E
- .pool
-_080F006C:
- movs r0, 0x5
- ldrsb r0, [r1, r0]
- cmp r0, 0x2
- bne _080F0060
-_080F0074:
- ldr r0, =0x000008bd
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080F0092
- movs r0, 0x89
- lsls r0, 4
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080F009C
-_080F0092:
- movs r0, 0x1
- b _080F009E
- .pool
-_080F009C:
- movs r0, 0x2
-_080F009E:
- pop {r1}
- bx r1
- thumb_func_end CheckForBigMovieOrEmergencyNewsOnTV
-
- thumb_func_start GetMomOrDadStringForTVMessage
-GetMomOrDadStringForTVMessage: @ 80F00A4
- push {r4,lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- cmp r0, 0x1
- bne _080F0104
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _080F00EC
- movs r0, 0x5
- ldrsb r0, [r1, r0]
- cmp r0, 0
- bne _080F0104
- ldr r0, =gStringVar1
- ldr r1, =gText_Mom
- bl StringCopy
- ldr r0, =0x00004003
- movs r1, 0x1
- bl VarSet
- b _080F0104
- .pool
-_080F00EC:
- movs r0, 0x5
- ldrsb r0, [r1, r0]
- cmp r0, 0x2
- bne _080F0104
- ldr r0, =gStringVar1
- ldr r1, =gText_Mom
- bl StringCopy
- ldr r0, =0x00004003
- movs r1, 0x1
- bl VarSet
-_080F0104:
- ldr r4, =0x00004003
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _080F0142
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x2
- beq _080F0158
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x2
- bls _080F016C
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080F0158
-_080F0142:
- ldr r0, =gStringVar1
- ldr r1, =gText_Mom
- bl StringCopy
- b _080F01A8
- .pool
-_080F0158:
- ldr r0, =gStringVar1
- ldr r1, =gText_Dad
- bl StringCopy
- b _080F01A8
- .pool
-_080F016C:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080F0198
- ldr r0, =gStringVar1
- ldr r1, =gText_Mom
- bl StringCopy
- adds r0, r4, 0
- movs r1, 0x1
- bl VarSet
- b _080F01A8
- .pool
-_080F0198:
- ldr r0, =gStringVar1
- ldr r1, =gText_Dad
- bl StringCopy
- adds r0, r4, 0
- movs r1, 0x2
- bl VarSet
-_080F01A8:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end GetMomOrDadStringForTVMessage
-
- thumb_func_start sub_80F01B8
-sub_80F01B8: @ 80F01B8
- push {lr}
- ldr r0, =0x000040bc
- movs r1, 0
- bl VarSet
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r0, 0x5
- bl RemoveFieldObjectByLocalIdAndMap
- ldr r0, =0x00000396
- bl FlagSet
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F01B8
-
- thumb_func_start sub_80F01E8
-sub_80F01E8: @ 80F01E8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- adds r5, r1, 0
- lsls r2, 24
- lsrs r6, r2, 24
- movs r0, 0xE1
- lsls r0, 4
- bl Alloc
- mov r8, r0
- cmp r0, 0
- bne _080F0206
- b _080F0344
-_080F0206:
- movs r4, 0
-_080F0208:
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 5
- adds r0, r4
- lsls r0, 2
- add r0, r8
- adds r1, r4, 0
- muls r1, r5
- adds r1, r7, r1
- movs r2, 0xE1
- lsls r2, 2
- bl memcpy
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3
- bls _080F0208
- mov r5, r8
- movs r4, 0
- ldr r7, =gLinkPlayers
- b _080F0276
- .pool
-_080F0238:
- lsls r0, r4, 3
- subs r2, r0, r4
- lsls r0, r2, 2
- adds r3, r0, r7
- ldrb r1, [r3]
- subs r0, r1, 0x1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _080F025A
- lsls r0, r2, 5
- adds r0, r4
- lsls r0, 2
- adds r0, r5, r0
- bl sub_80F1254
- b _080F0270
-_080F025A:
- cmp r1, 0x3
- bne _080F0270
- ldrh r0, [r3, 0x1A]
- cmp r0, 0x1
- bne _080F0270
- lsls r0, r2, 5
- adds r0, r4
- lsls r0, 2
- adds r0, r5, r0
- bl sub_80F12A4
-_080F0270:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080F0276:
- bl sub_8009FCC
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- bcc _080F0238
- cmp r6, 0x1
- beq _080F02C4
- cmp r6, 0x1
- bgt _080F0290
- cmp r6, 0
- beq _080F029A
- b _080F031E
-_080F0290:
- cmp r6, 0x2
- beq _080F02DC
- cmp r6, 0x3
- beq _080F0304
- b _080F031E
-_080F029A:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000027cc
- adds r0, r1
- movs r2, 0xE1
- lsls r2, 2
- adds r1, r5, r2
- movs r3, 0xE1
- lsls r3, 3
- adds r2, r5, r3
- ldr r4, =0x00000a8c
- adds r3, r5, r4
- bl sub_80F0358
- b _080F031E
- .pool
-_080F02C4:
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, =0x000027cc
- adds r1, r0
- movs r3, 0xE1
- lsls r3, 3
- adds r2, r5, r3
- b _080F02EA
- .pool
-_080F02DC:
- movs r0, 0xE1
- lsls r0, 2
- adds r1, r5, r0
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- ldr r3, =0x000027cc
- adds r2, r3
-_080F02EA:
- ldr r4, =0x00000a8c
- adds r3, r5, r4
- adds r0, r5, 0
- bl sub_80F0358
- b _080F031E
- .pool
-_080F0304:
- movs r0, 0xE1
- lsls r0, 2
- adds r1, r5, r0
- movs r3, 0xE1
- lsls r3, 3
- adds r2, r5, r3
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
- ldr r4, =0x000027cc
- adds r3, r4
- adds r0, r5, 0
- bl sub_80F0358
-_080F031E:
- ldr r5, =gSaveBlock1Ptr
- ldr r0, [r5]
- ldr r4, =0x000027cc
- adds r0, r4
- bl sub_80EF93C
- bl sub_80F0C04
- ldr r0, [r5]
- adds r0, r4
- bl sub_80EF93C
- bl sub_80F0708
- bl sub_80F0B64
- mov r0, r8
- bl Free
-_080F0344:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F01E8
-
- thumb_func_start sub_80F0358
-sub_80F0358: @ 80F0358
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- str r0, [sp, 0x10]
- str r1, [sp, 0x14]
- str r2, [sp, 0x18]
- str r3, [sp, 0x1C]
- add r0, sp, 0x10
- str r0, [sp]
- add r0, sp, 0x14
- str r0, [sp, 0x4]
- add r0, sp, 0x18
- str r0, [sp, 0x8]
- add r0, sp, 0x1C
- str r0, [sp, 0xC]
- bl sub_8009FCC
- ldr r1, =gUnknown_03001174
- strb r0, [r1]
-_080F0384:
- movs r6, 0
- ldr r0, =gUnknown_03001174
- ldrb r1, [r0]
- cmp r6, r1
- bcs _080F0384
- mov r10, r0
-_080F0390:
- cmp r6, 0
- bne _080F0398
- ldr r2, =gUnknown_0203A02C
- strb r6, [r2]
-_080F0398:
- lsls r4, r6, 2
- mov r3, sp
- adds r0, r3, r4
- ldr r0, [r0]
- ldr r0, [r0]
- bl sub_80F06D0
- ldr r1, =gUnknown_03001176
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- adds r7, r4, 0
- cmp r0, r1
- bne _080F03E0
- ldr r1, =gUnknown_0203A02C
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- mov r2, r10
- ldrb r2, [r2]
- cmp r0, r2
- beq _080F048C
- adds r6, 0x1
- mov r9, r6
- b _080F0470
- .pool
-_080F03E0:
- movs r5, 0
- mov r3, r10
- ldrb r0, [r3]
- subs r0, 0x1
- adds r2, r6, 0x1
- mov r9, r2
- cmp r5, r0
- bge _080F0456
- ldr r3, =gUnknown_03001174
- mov r8, r3
-_080F03F4:
- adds r0, r6, r5
- adds r4, r0, 0x1
- mov r0, r8
- ldrb r1, [r0]
- adds r0, r4, 0
- bl __modsi3
- lsls r0, 2
- add r0, sp
- ldr r0, [r0]
- ldr r0, [r0]
- bl sub_80EFB08
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080F0446
- mov r2, r8
- ldrb r1, [r2]
- adds r0, r4, 0
- bl __modsi3
- adds r2, r0, 0
- lsls r0, r2, 2
- add r0, sp
- ldr r0, [r0]
- mov r3, sp
- adds r1, r3, r7
- ldr r1, [r1]
- lsls r2, 24
- lsrs r2, 24
- bl sub_80F049C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080F0456
-_080F0446:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- mov r1, r8
- ldrb r0, [r1]
- subs r0, 0x1
- cmp r5, r0
- blt _080F03F4
-_080F0456:
- mov r2, r10
- ldrb r0, [r2]
- subs r0, 0x1
- cmp r5, r0
- bne _080F0470
- mov r3, sp
- adds r0, r3, r7
- ldr r0, [r0]
- ldr r0, [r0]
- ldr r1, =gUnknown_03001176
- ldrb r1, [r1]
- bl sub_80EF910
-_080F0470:
- mov r1, r9
- lsls r0, r1, 24
- lsrs r6, r0, 24
- mov r2, r10
- ldrb r2, [r2]
- cmp r6, r2
- bcc _080F0390
- b _080F0384
- .pool
-_080F048C:
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80F0358
-
- thumb_func_start sub_80F049C
-sub_80F049C: @ 80F049C
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r2, 24
- lsrs r7, r2, 24
- ldr r4, [r0]
- ldr r6, [r1]
- movs r5, 0
- ldr r2, =gUnknown_03001176
- movs r1, 0
- ldrsb r1, [r2, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0]
- str r2, [sp]
- bl sub_80EFFE0
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- ldr r2, [sp]
- cmp r0, 0x3
- beq _080F050C
- cmp r0, 0x3
- bgt _080F04DC
- cmp r0, 0x2
- beq _080F04E2
- b _080F055A
- .pool
-_080F04DC:
- cmp r1, 0x4
- beq _080F0534
- b _080F055A
-_080F04E2:
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4, r0
- ldrb r2, [r2]
- lsls r2, 24
- asrs r2, 24
- lsls r1, r2, 3
- adds r1, r2
- lsls r1, 2
- adds r1, r6, r1
- adds r2, r7, 0
- bl sub_80F0580
- b _080F0556
- .pool
-_080F050C:
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4, r0
- ldrb r2, [r2]
- lsls r2, 24
- asrs r2, 24
- lsls r1, r2, 3
- adds r1, r2
- lsls r1, 2
- adds r1, r6, r1
- adds r2, r7, 0
- bl sub_80F05E8
- b _080F0556
- .pool
-_080F0534:
- ldr r0, =gUnknown_030060BC
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4, r0
- ldrb r2, [r2]
- lsls r2, 24
- asrs r2, 24
- lsls r1, r2, 3
- adds r1, r2
- lsls r1, 2
- adds r1, r6, r1
- adds r2, r7, 0
- bl sub_80F0668
-_080F0556:
- lsls r0, 24
- lsrs r5, r0, 24
-_080F055A:
- cmp r5, 0x1
- beq _080F0568
- movs r0, 0
- b _080F0574
- .pool
-_080F0568:
- ldr r0, =gUnknown_03001176
- ldrb r1, [r0]
- adds r0, r6, 0
- bl sub_80EF910
- movs r0, 0x1
-_080F0574:
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80F049C
-
- thumb_func_start sub_80F0580
-sub_80F0580: @ 80F0580
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- lsls r0, r2, 24
- lsrs r0, 24
- bl sub_800A2A4
- adds r5, r0, 0
- movs r2, 0xFF
- ands r0, r2
- adds r1, r4, 0
- adds r1, 0x22
- ldrb r1, [r1]
- cmp r0, r1
- bne _080F05B0
- lsrs r0, r5, 8
- ands r0, r2
- adds r1, r4, 0
- adds r1, 0x23
- ldrb r1, [r1]
- cmp r0, r1
- bne _080F05B0
- movs r0, 0
- b _080F05E0
-_080F05B0:
- adds r1, r4, 0
- adds r1, 0x20
- ldrb r0, [r1]
- adds r2, r4, 0
- adds r2, 0x22
- strb r0, [r2]
- adds r3, r4, 0
- adds r3, 0x21
- ldrb r0, [r3]
- adds r2, 0x1
- strb r0, [r2]
- strb r5, [r1]
- lsrs r0, r5, 8
- strb r0, [r3]
- adds r1, r6, 0
- adds r0, r4, 0
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- movs r0, 0x1
- strb r0, [r6, 0x1]
-_080F05E0:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80F0580
-
- thumb_func_start sub_80F05E8
-sub_80F05E8: @ 80F05E8
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- lsls r0, r2, 24
- lsrs r0, 24
- bl sub_800A2A4
- adds r2, r0, 0
- movs r3, 0xFF
- ands r0, r3
- adds r1, r4, 0
- adds r1, 0x20
- ldrb r1, [r1]
- cmp r0, r1
- bne _080F0614
- lsrs r0, r2, 8
- ands r0, r3
- adds r1, r4, 0
- adds r1, 0x21
- ldrb r1, [r1]
- cmp r0, r1
- beq _080F0634
-_080F0614:
- movs r3, 0xFF
- adds r0, r2, 0
- ands r0, r3
- adds r1, r4, 0
- adds r1, 0x22
- lsrs r5, r2, 8
- ldrb r1, [r1]
- cmp r0, r1
- bne _080F0638
- adds r0, r5, 0
- ands r0, r3
- adds r1, r4, 0
- adds r1, 0x23
- ldrb r1, [r1]
- cmp r0, r1
- bne _080F0638
-_080F0634:
- movs r0, 0
- b _080F0660
-_080F0638:
- ldrb r1, [r4, 0x1E]
- adds r0, r4, 0
- adds r0, 0x20
- strb r1, [r0]
- ldrb r0, [r4, 0x1F]
- adds r1, r4, 0
- adds r1, 0x21
- strb r0, [r1]
- strb r2, [r4, 0x1E]
- strb r5, [r4, 0x1F]
- adds r1, r6, 0
- adds r0, r4, 0
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- movs r0, 0x1
- strb r0, [r6, 0x1]
-_080F0660:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80F05E8
-
- thumb_func_start sub_80F0668
-sub_80F0668: @ 80F0668
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- lsls r0, r2, 24
- lsrs r0, 24
- bl sub_800A2A4
- adds r5, r0, 0
- movs r2, 0xFF
- ands r0, r2
- adds r1, r4, 0
- adds r1, 0x22
- ldrb r1, [r1]
- cmp r0, r1
- bne _080F0698
- lsrs r0, r5, 8
- ands r0, r2
- adds r1, r4, 0
- adds r1, 0x23
- ldrb r1, [r1]
- cmp r0, r1
- bne _080F0698
- movs r0, 0
- b _080F06CA
-_080F0698:
- adds r1, r4, 0
- adds r1, 0x20
- ldrb r0, [r1]
- adds r2, r4, 0
- adds r2, 0x22
- strb r0, [r2]
- adds r3, r4, 0
- adds r3, 0x21
- ldrb r0, [r3]
- adds r2, 0x1
- strb r0, [r2]
- strb r5, [r1]
- lsrs r0, r5, 8
- strb r0, [r3]
- adds r1, r6, 0
- adds r0, r4, 0
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- movs r0, 0x1
- strb r0, [r6, 0x1]
- strh r0, [r6, 0x16]
-_080F06CA:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80F0668
-
- thumb_func_start sub_80F06D0
-sub_80F06D0: @ 80F06D0
- push {lr}
- adds r3, r0, 0
- movs r2, 0
-_080F06D6:
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r3
- ldrb r0, [r1, 0x1]
- cmp r0, 0
- bne _080F06F6
- ldrb r0, [r1]
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3B
- bhi _080F06F6
- lsls r0, r2, 24
- asrs r0, 24
- b _080F0704
-_080F06F6:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x17
- bls _080F06D6
- movs r0, 0x1
- negs r0, r0
-_080F0704:
- pop {r1}
- bx r1
- thumb_func_end sub_80F06D0
-
- thumb_func_start sub_80F0708
-sub_80F0708: @ 80F0708
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- movs r0, 0
- mov r9, r0
-_080F0716:
- ldr r3, =gSaveBlock1Ptr
- ldr r1, [r3]
- mov r4, r9
- lsls r2, r4, 3
- adds r0, r2, r4
- lsls r0, 2
- adds r1, r0
- ldr r0, =0x000027cc
- adds r1, r0
- ldrb r0, [r1]
- adds r7, r2, 0
- cmp r0, 0x29
- bls _080F0732
- b _080F0AD8
-_080F0732:
- lsls r0, 2
- ldr r1, =_080F0748
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F0748:
- .4byte _080F0AE2
- .4byte _080F0848
- .4byte _080F0AE2
- .4byte _080F0860
- .4byte _080F0878
- .4byte _080F0890
- .4byte _080F08BC
- .4byte _080F08D4
- .4byte _080F07F0
- .4byte _080F0AE2
- .4byte _080F081C
- .4byte _080F0AE2
- .4byte _080F0AE2
- .4byte _080F0AD8
- .4byte _080F0AD8
- .4byte _080F0AD8
- .4byte _080F0AD8
- .4byte _080F0AD8
- .4byte _080F0AD8
- .4byte _080F0AD8
- .4byte _080F0AD8
- .4byte _080F0900
- .4byte _080F0AE2
- .4byte _080F0918
- .4byte _080F0944
- .4byte _080F095C
- .4byte _080F0AE2
- .4byte _080F0AE2
- .4byte _080F0AE2
- .4byte _080F0AE2
- .4byte _080F0974
- .4byte _080F09A0
- .4byte _080F0AE2
- .4byte _080F09C0
- .4byte _080F0AE2
- .4byte _080F0AE2
- .4byte _080F09F4
- .4byte _080F0AE2
- .4byte _080F0AE2
- .4byte _080F0AE2
- .4byte _080F0AD8
- .4byte _080F0AE2
-_080F07F0:
- ldr r0, [r3]
- mov r1, r9
- adds r4, r7, r1
- lsls r4, 2
- adds r0, r4, r0
- ldr r6, =0x000027cc
- adds r0, r6
- ldrh r0, [r0, 0x12]
- lsls r5, r1, 24
- lsrs r5, 24
- adds r1, r5, 0
- str r3, [sp, 0x4]
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r4, r0
- adds r4, r6
- ldrh r0, [r4, 0x2]
- b _080F09E6
- .pool
-_080F081C:
- ldr r0, [r3]
- mov r2, r9
- adds r4, r7, r2
- lsls r4, 2
- adds r0, r4, r0
- ldr r6, =0x000027cc
- adds r0, r6
- ldrh r0, [r0, 0x16]
- lsls r5, r2, 24
- lsrs r5, 24
- adds r1, r5, 0
- str r3, [sp, 0x4]
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r4, r0
- adds r4, r6
- ldrh r0, [r4, 0x2]
- b _080F09E6
- .pool
-_080F0848:
- ldr r0, [r3]
- mov r4, r9
- adds r1, r7, r4
- lsls r1, 2
- adds r1, r0
- ldr r0, =0x000027cc
- adds r1, r0
- ldrh r0, [r1, 0x2]
- b _080F09B0
- .pool
-_080F0860:
- ldr r0, [r3]
- mov r2, r9
- adds r1, r7, r2
- lsls r1, 2
- adds r1, r0
- ldr r4, =0x000027cc
- adds r1, r4
- ldrh r0, [r1, 0x2]
- lsls r1, r2, 24
- b _080F09B2
- .pool
-_080F0878:
- ldr r0, [r3]
- mov r2, r9
- adds r1, r7, r2
- lsls r1, 2
- adds r1, r0
- ldr r4, =0x000027cc
- adds r1, r4
- ldrh r0, [r1, 0x6]
- lsls r1, r2, 24
- b _080F09B2
- .pool
-_080F0890:
- ldr r0, [r3]
- mov r1, r9
- adds r4, r7, r1
- lsls r4, 2
- adds r0, r4, r0
- ldr r6, =0x000027cc
- adds r0, r6
- ldrh r0, [r0, 0x2]
- lsls r5, r1, 24
- lsrs r5, 24
- adds r1, r5, 0
- str r3, [sp, 0x4]
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r4, r0
- adds r4, r6
- ldrh r0, [r4, 0x1C]
- b _080F09E6
- .pool
-_080F08BC:
- ldr r0, [r3]
- mov r2, r9
- adds r1, r7, r2
- lsls r1, 2
- adds r1, r0
- ldr r4, =0x000027cc
- adds r1, r4
- ldrh r0, [r1, 0x2]
- lsls r1, r2, 24
- b _080F09B2
- .pool
-_080F08D4:
- ldr r0, [r3]
- mov r1, r9
- adds r4, r7, r1
- lsls r4, 2
- adds r0, r4, r0
- ldr r6, =0x000027cc
- adds r0, r6
- ldrh r0, [r0, 0xA]
- lsls r5, r1, 24
- lsrs r5, 24
- adds r1, r5, 0
- str r3, [sp, 0x4]
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r4, r0
- adds r4, r6
- ldrh r0, [r4, 0x14]
- b _080F09E6
- .pool
-_080F0900:
- ldr r0, [r3]
- mov r2, r9
- adds r1, r7, r2
- lsls r1, 2
- adds r1, r0
- ldr r4, =0x000027cc
- adds r1, r4
- ldrh r0, [r1, 0x10]
- lsls r1, r2, 24
- b _080F09B2
- .pool
-_080F0918:
- ldr r0, [r3]
- mov r1, r9
- adds r4, r7, r1
- lsls r4, 2
- adds r0, r4, r0
- ldr r6, =0x000027cc
- adds r0, r6
- ldrh r0, [r0, 0xC]
- lsls r5, r1, 24
- lsrs r5, 24
- adds r1, r5, 0
- str r3, [sp, 0x4]
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r4, r0
- adds r4, r6
- ldrh r0, [r4, 0xE]
- b _080F09E6
- .pool
-_080F0944:
- ldr r0, [r3]
- mov r2, r9
- adds r1, r7, r2
- lsls r1, 2
- adds r1, r0
- ldr r4, =0x000027cc
- adds r1, r4
- ldrh r0, [r1, 0x4]
- lsls r1, r2, 24
- b _080F09B2
- .pool
-_080F095C:
- ldr r0, [r3]
- mov r1, r9
- adds r4, r7, r1
- lsls r4, 2
- adds r0, r4, r0
- ldr r6, =0x000027cc
- adds r0, r6
- ldrh r0, [r0, 0x8]
- b _080F09D0
- .pool
-_080F0974:
- ldr r0, [r3]
- mov r2, r9
- adds r4, r7, r2
- lsls r4, 2
- adds r0, r4, r0
- ldr r6, =0x000027cc
- adds r0, r6
- ldrh r0, [r0, 0x2]
- lsls r5, r2, 24
- lsrs r5, 24
- adds r1, r5, 0
- str r3, [sp, 0x4]
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r4, r0
- adds r4, r6
- ldrh r0, [r4, 0xA]
- b _080F09E6
- .pool
-_080F09A0:
- ldr r0, [r3]
- mov r4, r9
- adds r1, r7, r4
- lsls r1, 2
- adds r1, r0
- ldr r0, =0x000027cc
- adds r1, r0
- ldrh r0, [r1, 0x8]
-_080F09B0:
- lsls r1, r4, 24
-_080F09B2:
- lsrs r1, 24
- bl sub_80F0B24
- b _080F0AE2
- .pool
-_080F09C0:
- ldr r0, [r3]
- mov r1, r9
- adds r4, r7, r1
- lsls r4, 2
- adds r0, r4, r0
- ldr r6, =0x000027cc
- adds r0, r6
- ldrh r0, [r0, 0x6]
-_080F09D0:
- lsls r5, r1, 24
- lsrs r5, 24
- adds r1, r5, 0
- str r3, [sp, 0x4]
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r4, r0
- adds r4, r6
- ldrh r0, [r4, 0x4]
-_080F09E6:
- adds r1, r5, 0
- bl sub_80F0B24
- b _080F0AE2
- .pool
-_080F09F4:
- ldr r0, [r3]
- mov r2, r9
- adds r4, r7, r2
- lsls r4, 2
- adds r0, r4, r0
- ldr r5, =0x000027cc
- adds r0, r5
- ldrh r0, [r0, 0x4]
- lsls r2, 24
- mov r8, r2
- lsrs r6, r2, 24
- adds r1, r6, 0
- str r3, [sp, 0x4]
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r0, r4, r0
- adds r0, r5
- ldrh r0, [r0, 0x6]
- adds r1, r6, 0
- bl sub_80F0B24
- ldr r3, [sp, 0x4]
- ldr r0, [r3]
- adds r4, r0
- adds r4, r5
- ldrb r0, [r4, 0xD]
- subs r0, 0x1
- mov r6, r8
- cmp r0, 0xC
- bhi _080F0AE2
- lsls r0, 2
- ldr r1, =_080F0A48
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F0A48:
- .4byte _080F0A7C
- .4byte _080F0AA0
- .4byte _080F0AE2
- .4byte _080F0AE2
- .4byte _080F0A7C
- .4byte _080F0A7C
- .4byte _080F0A7C
- .4byte _080F0A7C
- .4byte _080F0A7C
- .4byte _080F0A7C
- .4byte _080F0A7C
- .4byte _080F0A7C
- .4byte _080F0A7C
-_080F0A7C:
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- mov r4, r9
- adds r0, r7, r4
- lsls r0, 2
- adds r0, r1
- ldr r1, =0x000027cc
- adds r0, r1
- ldrh r0, [r0, 0x8]
- lsrs r1, r6, 24
- bl sub_80F0B24
- b _080F0AE2
- .pool
-_080F0AA0:
- ldr r2, =gSaveBlock1Ptr
- ldr r0, [r2]
- mov r1, r9
- adds r4, r7, r1
- lsls r4, 2
- adds r0, r4, r0
- ldr r5, =0x000027cc
- adds r0, r5
- ldrh r0, [r0, 0x8]
- lsrs r6, 24
- adds r1, r6, 0
- str r2, [sp]
- bl sub_80F0B24
- ldr r2, [sp]
- ldr r0, [r2]
- adds r4, r0
- adds r4, r5
- ldrh r0, [r4, 0xA]
- adds r1, r6, 0
- bl sub_80F0B24
- b _080F0AE2
- .pool
-_080F0AD8:
- mov r2, r9
- lsls r0, r2, 24
- lsrs r0, 24
- bl sub_80F0B00
-_080F0AE2:
- mov r0, r9
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- cmp r0, 0x17
- bhi _080F0AF2
- b _080F0716
-_080F0AF2:
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80F0708
-
- thumb_func_start sub_80F0B00
-sub_80F0B00: @ 80F0B00
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r2, r1
- ldr r0, =0x000027cd
- adds r2, r0
- movs r0, 0
- strb r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_80F0B00
-
- thumb_func_start sub_80F0B24
-sub_80F0B24: @ 80F0B24
- push {r4,lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r4, r1, 24
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0
- bl GetSetPokedexFlag
- lsls r0, 24
- asrs r2, r0, 24
- cmp r2, 0
- bne _080F0B56
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- lsls r0, r4, 3
- adds r0, r4
- lsls r0, 2
- adds r1, r0
- ldr r0, =0x000027cd
- adds r1, r0
- strb r2, [r1]
-_080F0B56:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0B24
-
- thumb_func_start sub_80F0B64
-sub_80F0B64: @ 80F0B64
- push {r4-r6,lr}
- ldr r0, =0x00000864
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080F0BA2
- movs r2, 0
- ldr r4, =0x000027cd
- movs r3, 0
- ldr r5, =gSaveBlock1Ptr
-_080F0B7C:
- ldr r0, [r5]
- lsls r1, r2, 3
- adds r1, r2
- lsls r1, 2
- adds r1, r0, r1
- ldr r6, =0x000027cc
- adds r0, r1, r6
- ldrb r0, [r0]
- cmp r0, 0x7
- beq _080F0B94
- cmp r0, 0x29
- bne _080F0B98
-_080F0B94:
- adds r0, r1, r4
- strb r3, [r0]
-_080F0B98:
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x17
- bls _080F0B7C
-_080F0BA2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0B64
-
- thumb_func_start sub_80F0BB8
-sub_80F0BB8: @ 80F0BB8
- push {r4-r6,lr}
- movs r5, 0
- ldr r6, =gSaveBlock1Ptr
-_080F0BBE:
- ldr r1, [r6]
- lsls r0, r5, 3
- adds r0, r5
- lsls r4, r0, 2
- adds r1, r4
- ldr r0, =0x000027cc
- adds r1, r0
- ldrb r0, [r1]
- bl sub_80EFFE0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _080F0BE6
- ldr r0, [r6]
- adds r0, r4
- ldr r1, =0x000027cd
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
-_080F0BE6:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x4
- bls _080F0BBE
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0BB8
-
- thumb_func_start sub_80F0C04
-sub_80F0C04: @ 80F0C04
- push {r4,r5,lr}
- movs r3, 0
- movs r2, 0x5
- ldr r0, =gSaveBlock1Ptr
- ldr r4, [r0]
- ldr r5, =0x000027cc
-_080F0C10:
- lsls r0, r2, 24
- asrs r1, r0, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4, r0
- adds r0, r5
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F0C2E
- lsls r0, r3, 24
- movs r2, 0x80
- lsls r2, 17
- adds r0, r2
- lsrs r3, r0, 24
-_080F0C2E:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- asrs r0, 24
- cmp r0, 0x17
- ble _080F0C10
- movs r2, 0
- lsls r0, r3, 24
- asrs r0, 24
- movs r1, 0x5
- subs r0, r1, r0
- cmp r2, r0
- bge _080F0C6E
- adds r5, r0, 0
-_080F0C4A:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000027cc
- adds r0, r1
- lsls r1, r2, 24
- asrs r4, r1, 24
- movs r2, 0xA0
- lsls r2, 19
- adds r1, r2
- lsrs r1, 24
- bl sub_80EF910
- adds r4, 0x1
- lsls r4, 24
- lsrs r2, r4, 24
- asrs r4, 24
- cmp r4, r5
- blt _080F0C4A
-_080F0C6E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0C04
-
- thumb_func_start sub_80F0C7C
-sub_80F0C7C: @ 80F0C7C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r0
- adds r7, r1, 0
- lsls r2, 24
- lsrs r6, r2, 24
- movs r0, 0x80
- lsls r0, 1
- bl Alloc
- adds r5, r0, 0
- cmp r5, 0
- beq _080F0D4C
- movs r4, 0
-_080F0C9A:
- lsls r0, r4, 6
- adds r0, r5
- adds r1, r4, 0
- muls r1, r7
- add r1, r8
- movs r2, 0x40
- bl memcpy
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3
- bls _080F0C9A
- cmp r6, 0x1
- beq _080F0CF0
- cmp r6, 0x1
- bgt _080F0CC2
- cmp r6, 0
- beq _080F0CCC
- b _080F0D3E
-_080F0CC2:
- cmp r6, 0x2
- beq _080F0D08
- cmp r6, 0x3
- beq _080F0D28
- b _080F0D3E
-_080F0CCC:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00002b50
- adds r0, r1
- adds r1, r5, 0
- adds r1, 0x40
- adds r2, r5, 0
- adds r2, 0x80
- adds r3, r5, 0
- adds r3, 0xC0
- bl sub_80F0D60
- b _080F0D3E
- .pool
-_080F0CF0:
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, =0x00002b50
- adds r1, r0
- adds r2, r5, 0
- adds r2, 0x80
- b _080F0D14
- .pool
-_080F0D08:
- adds r1, r5, 0
- adds r1, 0x40
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- ldr r0, =0x00002b50
- adds r2, r0
-_080F0D14:
- adds r3, r5, 0
- adds r3, 0xC0
- adds r0, r5, 0
- bl sub_80F0D60
- b _080F0D3E
- .pool
-_080F0D28:
- adds r1, r5, 0
- adds r1, 0x40
- adds r2, r5, 0
- adds r2, 0x80
- ldr r0, =gSaveBlock1Ptr
- ldr r3, [r0]
- ldr r0, =0x00002b50
- adds r3, r0
- adds r0, r5, 0
- bl sub_80F0D60
-_080F0D3E:
- bl sub_80F0EEC
- bl sub_80F0F24
- adds r0, r5, 0
- bl Free
-_080F0D4C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0C7C
-
- thumb_func_start sub_80F0D60
-sub_80F0D60: @ 80F0D60
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x24
- str r0, [sp, 0x10]
- str r1, [sp, 0x14]
- str r2, [sp, 0x18]
- str r3, [sp, 0x1C]
- add r0, sp, 0x10
- str r0, [sp]
- add r0, sp, 0x14
- str r0, [sp, 0x4]
- add r0, sp, 0x18
- str r0, [sp, 0x8]
- add r0, sp, 0x1C
- str r0, [sp, 0xC]
- bl sub_8009FCC
- ldr r1, =gUnknown_03001175
- strb r0, [r1]
- movs r0, 0
- mov r10, r0
-_080F0D90:
- movs r7, 0
- mov r1, r10
- adds r1, 0x1
- str r1, [sp, 0x20]
- b _080F0E28
- .pool
-_080F0DA0:
- lsls r4, r7, 2
- mov r1, sp
- adds r0, r1, r4
- ldr r0, [r0]
- ldr r0, [r0]
- mov r1, r10
- bl sub_80F0ECC
- ldr r1, =gUnknown_03001176
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- mov r8, r4
- adds r1, r7, 0x1
- mov r9, r1
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080F0E22
- movs r5, 0
- ldr r1, =gUnknown_03001175
- ldrb r0, [r1]
- subs r0, 0x1
- cmp r5, r0
- bge _080F0E22
- adds r6, r1, 0
-_080F0DD4:
- adds r0, r7, r5
- adds r4, r0, 0x1
- ldrb r1, [r6]
- adds r0, r4, 0
- bl __modsi3
- lsls r0, 2
- add r0, sp
- ldr r0, [r0]
- ldr r0, [r0]
- bl sub_80EEE30
- ldr r1, =gUnknown_030060BC
- strb r0, [r1]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080F0E14
- ldrb r1, [r6]
- adds r0, r4, 0
- bl __modsi3
- lsls r0, 2
- add r0, sp
- ldr r0, [r0]
- mov r1, sp
- add r1, r8
- ldr r1, [r1]
- bl sub_80F0E58
-_080F0E14:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldrb r0, [r6]
- subs r0, 0x1
- cmp r5, r0
- blt _080F0DD4
-_080F0E22:
- mov r1, r9
- lsls r0, r1, 24
- lsrs r7, r0, 24
-_080F0E28:
- ldr r0, =gUnknown_03001175
- ldrb r0, [r0]
- cmp r7, r0
- bcc _080F0DA0
- ldr r1, [sp, 0x20]
- lsls r0, r1, 24
- lsrs r0, 24
- mov r10, r0
- cmp r0, 0xF
- bls _080F0D90
- add sp, 0x24
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0D60
-
- thumb_func_start sub_80F0E58
-sub_80F0E58: @ 80F0E58
- push {lr}
- ldr r0, [r0]
- ldr r1, [r1]
- ldr r2, =gUnknown_03001176
- ldrb r2, [r2]
- lsls r2, 24
- asrs r2, 24
- lsls r2, 2
- adds r1, r2
- ldr r2, =gUnknown_030060BC
- ldrb r2, [r2]
- lsls r2, 24
- asrs r2, 24
- bl sub_80F0E84
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0E58
-
- thumb_func_start sub_80F0E84
-sub_80F0E84: @ 80F0E84
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r2, 24
- lsrs r6, r2, 24
- ldrb r3, [r5]
- adds r0, r3, 0
- cmp r0, 0
- bne _080F0E9A
-_080F0E96:
- movs r0, 0
- b _080F0EC6
-_080F0E9A:
- movs r1, 0
- adds r2, r3, 0
- adds r3, r0, 0
-_080F0EA0:
- lsls r0, r1, 2
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, r3
- beq _080F0E96
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xF
- bls _080F0EA0
- lsls r0, r6, 24
- asrs r0, 22
- adds r0, r4
- strb r2, [r0]
- movs r1, 0x1
- strb r1, [r0, 0x1]
- ldrh r1, [r5, 0x2]
- strh r1, [r0, 0x2]
- movs r0, 0x1
-_080F0EC6:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80F0E84
-
- thumb_func_start sub_80F0ECC
-sub_80F0ECC: @ 80F0ECC
- push {lr}
- lsls r1, 24
- lsrs r2, r1, 24
- lsls r1, r2, 2
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- beq _080F0EE2
- lsls r0, r2, 24
- asrs r0, 24
- b _080F0EE6
-_080F0EE2:
- movs r0, 0x1
- negs r0, r0
-_080F0EE6:
- pop {r1}
- bx r1
- thumb_func_end sub_80F0ECC
-
- thumb_func_start sub_80F0EEC
-sub_80F0EEC: @ 80F0EEC
- push {r4,lr}
- movs r4, 0
-_080F0EF0:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- lsls r1, r4, 2
- adds r0, r1
- ldr r1, =0x00002b50
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x4
- bls _080F0F08
- adds r0, r4, 0
- bl sub_80EEE78
-_080F0F08:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bls _080F0EF0
- bl sub_80EEEB8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0EEC
-
- thumb_func_start sub_80F0F24
-sub_80F0F24: @ 80F0F24
- push {r4,r5,lr}
- ldr r0, =0x00000864
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080F0F50
- movs r2, 0
- ldr r5, =gSaveBlock1Ptr
- ldr r4, =0x00002b51
- movs r3, 0
-_080F0F3C:
- ldr r0, [r5]
- lsls r1, r2, 2
- adds r0, r1
- adds r0, r4
- strb r3, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _080F0F3C
-_080F0F50:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F0F24
-
- thumb_func_start sub_80F0F64
-sub_80F0F64: @ 80F0F64
- push {r4-r7,lr}
- adds r6, r0, 0
- adds r5, r1, 0
- movs r0, 0x2C
- bl AllocZeroed
- adds r4, r0, 0
- movs r7, 0
-_080F0F74:
- lsls r0, r7, 3
- adds r1, r0, r7
- lsls r1, 2
- adds r1, r6
- ldrb r1, [r1]
- subs r1, 0x1
- adds r2, r0, 0
- cmp r1, 0x28
- bls _080F0F88
- b _080F11F4
-_080F0F88:
- lsls r0, r1, 2
- ldr r1, =_080F0F98
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F0F98:
- .4byte _080F103C
- .4byte _080F103C
- .4byte _080F105A
- .4byte _080F11F4
- .4byte _080F1152
- .4byte _080F111E
- .4byte _080F10E6
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F1092
- .4byte _080F10C6
- .4byte _080F118A
- .4byte _080F11AA
- .4byte _080F11CA
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11F4
- .4byte _080F11EA
-_080F103C:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4]
- adds r0, 0x10
- bl sub_8009228
- cmp r0, 0
- beq _080F1056
- ldr r1, [r4]
- movs r0, 0x1
- strb r0, [r1, 0x18]
- b _080F11F4
-_080F1056:
- ldr r0, [r4]
- b _080F11F2
-_080F105A:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x4]
- adds r0, 0x5
- bl sub_8009228
- cmp r0, 0
- beq _080F1074
- ldr r1, [r4, 0x4]
- movs r0, 0x1
- strb r0, [r1, 0xD]
- b _080F1078
-_080F1074:
- ldr r0, [r4, 0x4]
- strb r5, [r0, 0xD]
-_080F1078:
- ldr r0, [r4, 0x4]
- adds r0, 0x10
- bl sub_8009228
- cmp r0, 0
- beq _080F108C
- ldr r1, [r4, 0x4]
- movs r0, 0x1
- strb r0, [r1, 0xE]
- b _080F11F4
-_080F108C:
- ldr r0, [r4, 0x4]
- strb r5, [r0, 0xE]
- b _080F11F4
-_080F1092:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x18]
- adds r0, 0x13
- bl sub_8009228
- cmp r0, 0
- beq _080F10AC
- ldr r1, [r4, 0x18]
- movs r0, 0x1
- strb r0, [r1, 0x2]
- b _080F10B0
-_080F10AC:
- ldr r0, [r4, 0x18]
- strb r5, [r0, 0x2]
-_080F10B0:
- ldr r0, [r4, 0x18]
- adds r0, 0x4
- bl sub_8009228
- cmp r0, 0
- beq _080F10C0
- ldr r1, [r4, 0x18]
- b _080F10DA
-_080F10C0:
- ldr r0, [r4, 0x18]
- strb r5, [r0, 0x3]
- b _080F11F4
-_080F10C6:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x1C]
- adds r0, 0x13
- bl sub_8009228
- cmp r0, 0
- beq _080F10E0
- ldr r1, [r4, 0x1C]
-_080F10DA:
- movs r0, 0x1
- strb r0, [r1, 0x3]
- b _080F11F4
-_080F10E0:
- ldr r0, [r4, 0x1C]
- strb r5, [r0, 0x3]
- b _080F11F4
-_080F10E6:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x14]
- adds r0, 0x2
- bl sub_8009228
- cmp r0, 0
- beq _080F1100
- ldr r1, [r4, 0x14]
- movs r0, 0x1
- strb r0, [r1, 0x1D]
- b _080F1104
-_080F1100:
- ldr r0, [r4, 0x14]
- strb r5, [r0, 0x1D]
-_080F1104:
- ldr r0, [r4, 0x14]
- adds r0, 0xC
- bl sub_8009228
- cmp r0, 0
- beq _080F1118
- ldr r1, [r4, 0x14]
- movs r0, 0x1
- strb r0, [r1, 0x1E]
- b _080F11F4
-_080F1118:
- ldr r0, [r4, 0x14]
- strb r5, [r0, 0x1E]
- b _080F11F4
-_080F111E:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x10]
- adds r0, 0x16
- bl sub_8009228
- cmp r0, 0
- beq _080F1138
- ldr r1, [r4, 0x10]
- movs r0, 0x1
- strb r0, [r1, 0x1E]
- b _080F113C
-_080F1138:
- ldr r0, [r4, 0x10]
- strb r5, [r0, 0x1E]
-_080F113C:
- ldr r0, [r4, 0x10]
- adds r0, 0x8
- bl sub_8009228
- cmp r0, 0
- beq _080F114C
- ldr r1, [r4, 0x10]
- b _080F117E
-_080F114C:
- ldr r0, [r4, 0x10]
- strb r5, [r0, 0x1F]
- b _080F11F4
-_080F1152:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0xC]
- adds r0, 0xF
- bl sub_8009228
- cmp r0, 0
- beq _080F116C
- ldr r1, [r4, 0xC]
- movs r0, 0x1
- strb r0, [r1, 0x1E]
- b _080F1170
-_080F116C:
- ldr r0, [r4, 0xC]
- strb r5, [r0, 0x1E]
-_080F1170:
- ldr r0, [r4, 0xC]
- adds r0, 0x4
- bl sub_8009228
- cmp r0, 0
- beq _080F1184
- ldr r1, [r4, 0xC]
-_080F117E:
- movs r0, 0x1
- strb r0, [r1, 0x1F]
- b _080F11F4
-_080F1184:
- ldr r0, [r4, 0xC]
- strb r5, [r0, 0x1F]
- b _080F11F4
-_080F118A:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x8]
- adds r0, 0x13
- bl sub_8009228
- cmp r0, 0
- beq _080F11A4
- ldr r1, [r4, 0x8]
- movs r0, 0x1
- strb r0, [r1, 0x2]
- b _080F11F4
-_080F11A4:
- ldr r0, [r4, 0x8]
- strb r5, [r0, 0x2]
- b _080F11F4
-_080F11AA:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x20]
- adds r0, 0x13
- bl sub_8009228
- cmp r0, 0
- beq _080F11C4
- ldr r1, [r4, 0x20]
- movs r0, 0x1
- strb r0, [r1, 0x6]
- b _080F11F4
-_080F11C4:
- ldr r0, [r4, 0x20]
- strb r5, [r0, 0x6]
- b _080F11F4
-_080F11CA:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x24]
- adds r0, 0x13
- bl sub_8009228
- cmp r0, 0
- beq _080F11E4
- ldr r1, [r4, 0x24]
- movs r0, 0x1
- strb r0, [r1, 0xB]
- b _080F11F4
-_080F11E4:
- ldr r0, [r4, 0x24]
- strb r5, [r0, 0xB]
- b _080F11F4
-_080F11EA:
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r6, r0
- str r0, [r4, 0x28]
-_080F11F2:
- strb r5, [r0, 0x18]
-_080F11F4:
- adds r7, 0x1
- cmp r7, 0x17
- bgt _080F11FC
- b _080F0F74
-_080F11FC:
- adds r0, r4, 0
- bl Free
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80F0F64
-
- thumb_func_start sub_80F1208
-sub_80F1208: @ 80F1208
- push {r4,r5,lr}
- adds r5, r0, 0
- bl sub_80F14F8
- adds r4, r5, 0
- movs r1, 0xD8
- lsls r1, 2
- adds r0, r4, r1
- cmp r4, r0
- bcs _080F124C
-_080F121C:
- ldrb r0, [r4]
- cmp r0, 0x7
- bne _080F1240
- ldrb r0, [r4, 0x1D]
- cmp r0, 0x1
- bne _080F1230
- ldrb r0, [r4, 0x1E]
- cmp r0, 0x1
- bne _080F1236
- b _080F1240
-_080F1230:
- ldrb r0, [r4, 0x1E]
- cmp r0, 0x1
- bne _080F1240
-_080F1236:
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x24
- bl memset
-_080F1240:
- adds r4, 0x24
- movs r1, 0xD8
- lsls r1, 2
- adds r0, r5, r1
- cmp r4, r0
- bcc _080F121C
-_080F124C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80F1208
-
- thumb_func_start sub_80F1254
-sub_80F1254: @ 80F1254
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r4, 0
- movs r1, 0xD8
- lsls r1, 2
- adds r0, r4, r1
- cmp r4, r0
- bcs _080F128A
-_080F1264:
- ldrb r0, [r4]
- cmp r0, 0x7
- bne _080F127E
- adds r0, r4, 0
- adds r0, 0xC
- bl sub_8009228
- cmp r0, 0
- beq _080F127A
- movs r0, 0x1
- b _080F127C
-_080F127A:
- movs r0, 0x2
-_080F127C:
- strb r0, [r4, 0x1E]
-_080F127E:
- adds r4, 0x24
- movs r1, 0xD8
- lsls r1, 2
- adds r0, r5, r1
- cmp r4, r0
- bcc _080F1264
-_080F128A:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80F1254
-
- thumb_func_start sub_80F1290
-sub_80F1290: @ 80F1290
- push {lr}
- bl sub_8009228
- movs r1, 0x2
- cmp r0, 0
- beq _080F129E
- movs r1, 0x1
-_080F129E:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80F1290
-
- thumb_func_start sub_80F12A4
-sub_80F12A4: @ 80F12A4
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r4, 0
- movs r1, 0xD8
- lsls r1, 2
- adds r0, r4, r1
- cmp r4, r0
- bcc _080F12B6
- b _080F14F0
-_080F12B6:
- ldrb r0, [r4]
- subs r0, 0x1
- cmp r0, 0x28
- bls _080F12C0
- b _080F14E2
-_080F12C0:
- lsls r0, 2
- ldr r1, =_080F12D0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F12D0:
- .4byte _080F1374
- .4byte _080F137A
- .4byte _080F1380
- .4byte _080F138E
- .4byte _080F139A
- .4byte _080F13A8
- .4byte _080F13BE
- .4byte _080F13CC
- .4byte _080F13E0
- .4byte _080F13F4
- .4byte _080F1408
- .4byte _080F1416
- .4byte _080F14E2
- .4byte _080F14E2
- .4byte _080F14E2
- .4byte _080F14E2
- .4byte _080F14E2
- .4byte _080F14E2
- .4byte _080F14E2
- .4byte _080F14E2
- .4byte _080F142A
- .4byte _080F1438
- .4byte _080F1444
- .4byte _080F1450
- .4byte _080F145C
- .4byte _080F14AC
- .4byte _080F1468
- .4byte _080F14B8
- .4byte _080F148C
- .4byte _080F1474
- .4byte _080F14AC
- .4byte _080F14B8
- .4byte _080F1480
- .4byte _080F148C
- .4byte _080F1498
- .4byte _080F14AC
- .4byte _080F14B8
- .4byte _080F14C4
- .4byte _080F14D8
- .4byte _080F14E2
- .4byte _080F14E2
-_080F1374:
- adds r0, r4, 0
- adds r0, 0x10
- b _080F1422
-_080F137A:
- adds r0, r4, 0
- adds r0, 0x10
- b _080F1422
-_080F1380:
- adds r0, r4, 0x5
- bl sub_80F1290
- strb r0, [r4, 0xD]
- adds r0, r4, 0
- adds r0, 0x10
- b _080F1478
-_080F138E:
- adds r0, r4, 0
- adds r0, 0xB
- bl sub_80F1290
- strb r0, [r4, 0x17]
- b _080F14E2
-_080F139A:
- adds r0, r4, 0
- adds r0, 0xF
- bl sub_80F1290
- strb r0, [r4, 0x1E]
- adds r0, r4, 0x4
- b _080F13B6
-_080F13A8:
- adds r0, r4, 0
- adds r0, 0x16
- bl sub_80F1290
- strb r0, [r4, 0x1E]
- adds r0, r4, 0
- adds r0, 0x8
-_080F13B6:
- bl sub_80F1290
- strb r0, [r4, 0x1F]
- b _080F14E2
-_080F13BE:
- adds r0, r4, 0x2
- bl sub_80F1290
- strb r0, [r4, 0x1D]
- adds r0, r4, 0
- adds r0, 0xC
- b _080F13D8
-_080F13CC:
- adds r0, r4, 0
- adds r0, 0x14
- bl sub_80F1290
- strb r0, [r4, 0x1D]
- adds r0, r4, 0x4
-_080F13D8:
- bl sub_80F1290
- strb r0, [r4, 0x1E]
- b _080F14E2
-_080F13E0:
- adds r0, r4, 0
- adds r0, 0xC
- bl sub_80F1290
- strb r0, [r4, 0x14]
- adds r0, r4, 0x4
- bl sub_80F1290
- strb r0, [r4, 0x15]
- b _080F14E2
-_080F13F4:
- adds r0, r4, 0x4
- bl sub_80F1290
- strb r0, [r4, 0x19]
- adds r0, r4, 0
- adds r0, 0xC
- bl sub_80F1290
- strb r0, [r4, 0x1A]
- b _080F14E2
-_080F1408:
- adds r0, r4, 0x2
- bl sub_80F1290
- strb r0, [r4, 0x17]
- adds r0, r4, 0
- adds r0, 0xC
- b _080F1422
-_080F1416:
- adds r0, r4, 0x2
- bl sub_80F1290
- strb r0, [r4, 0x17]
- adds r0, r4, 0
- adds r0, 0xB
-_080F1422:
- bl sub_80F1290
- strb r0, [r4, 0x18]
- b _080F14E2
-_080F142A:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x2]
- adds r0, r4, 0x4
- b _080F143C
-_080F1438:
- adds r0, r4, 0
- adds r0, 0x13
-_080F143C:
- bl sub_80F1290
- strb r0, [r4, 0x3]
- b _080F14E2
-_080F1444:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x2]
- b _080F14E2
-_080F1450:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x6]
- b _080F14E2
-_080F145C:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0xB]
- b _080F14E2
-_080F1468:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x9]
- b _080F14E2
-_080F1474:
- adds r0, r4, 0
- adds r0, 0x13
-_080F1478:
- bl sub_80F1290
- strb r0, [r4, 0xE]
- b _080F14E2
-_080F1480:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x11]
- b _080F14E2
-_080F148C:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x8]
- b _080F14E2
-_080F1498:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0xF]
- adds r0, r4, 0x4
- bl sub_80F1290
- strb r0, [r4, 0x10]
- b _080F14E2
-_080F14AC:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0xC]
- b _080F14E2
-_080F14B8:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x5]
- b _080F14E2
-_080F14C4:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x1B]
- adds r0, r4, 0x4
- bl sub_80F1290
- strb r0, [r4, 0x1C]
- b _080F14E2
-_080F14D8:
- adds r0, r4, 0
- adds r0, 0x13
- bl sub_80F1290
- strb r0, [r4, 0x4]
-_080F14E2:
- adds r4, 0x24
- movs r1, 0xD8
- lsls r1, 2
- adds r0, r5, r1
- cmp r4, r0
- bcs _080F14F0
- b _080F12B6
-_080F14F0:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80F12A4
-
- thumb_func_start sub_80F14F8
-sub_80F14F8: @ 80F14F8
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r4, r5, 0
- movs r6, 0x17
-_080F1500:
- ldrb r0, [r4]
- cmp r0, 0x17
- beq _080F151C
- cmp r0, 0x19
- bne _080F152C
- ldrb r0, [r4, 0xA]
- cmp r0, 0x58
- bls _080F152C
- adds r0, r5, 0
- movs r1, 0
- movs r2, 0x24
- bl memset
- b _080F152C
-_080F151C:
- ldrb r0, [r4, 0x12]
- cmp r0, 0x58
- bls _080F152C
- adds r0, r5, 0
- movs r1, 0
- movs r2, 0x24
- bl memset
-_080F152C:
- adds r4, 0x24
- adds r5, 0x24
- subs r6, 0x1
- cmp r6, 0
- bge _080F1500
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80F14F8
-
- thumb_func_start sub_80F153C
-sub_80F153C: @ 80F153C
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r2, r0
- ldr r1, =0x000027cd
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F155A
- b _080F16E6
-_080F155A:
- subs r1, 0x1
- adds r0, r2, r1
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r0, 0x28
- bls _080F1568
- b _080F16E6
-_080F1568:
- lsls r0, 2
- ldr r1, =_080F1584
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F1584:
- .4byte _080F1628
- .4byte _080F162E
- .4byte _080F1634
- .4byte _080F163A
- .4byte _080F165E
- .4byte _080F1646
- .4byte _080F164C
- .4byte _080F1664
- .4byte _080F1670
- .4byte _080F166A
- .4byte _080F16B8
- .4byte _080F16E2
- .4byte _080F16E6
- .4byte _080F16E6
- .4byte _080F16E6
- .4byte _080F16E6
- .4byte _080F16E6
- .4byte _080F16E6
- .4byte _080F16E6
- .4byte _080F16E6
- .4byte _080F1652
- .4byte _080F1658
- .4byte _080F1676
- .4byte _080F167C
- .4byte _080F1682
- .4byte _080F1688
- .4byte _080F168E
- .4byte _080F1694
- .4byte _080F169A
- .4byte _080F16A0
- .4byte _080F16A6
- .4byte _080F16AC
- .4byte _080F16B2
- .4byte _080F16BE
- .4byte _080F16C4
- .4byte _080F16CA
- .4byte _080F16D0
- .4byte _080F16D6
- .4byte _080F16DC
- .4byte _080F16E6
- .4byte _080F1640
-_080F1628:
- bl DoTVShowPokemonFanClubLetter
- b _080F16E6
-_080F162E:
- bl DoTVShowRecentHappenings
- b _080F16E6
-_080F1634:
- bl DoTVShowPokemonFanClubOpinions
- b _080F16E6
-_080F163A:
- bl DoTVShowDummiedOut
- b _080F16E6
-_080F1640:
- bl DoTVShowPokemonNewsMassOutbreak
- b _080F16E6
-_080F1646:
- bl DoTVShowBravoTrainerPokemonProfile
- b _080F16E6
-_080F164C:
- bl DoTVShowBravoTrainerBattleTower
- b _080F16E6
-_080F1652:
- bl DoTVShowPokemonTodaySuccessfulCapture
- b _080F16E6
-_080F1658:
- bl DoTVShowTodaysSmartShopper
- b _080F16E6
-_080F165E:
- bl DoTVShowTheNameRaterShow
- b _080F16E6
-_080F1664:
- bl DoTVShowPokemonContestLiveUpdates
- b _080F16E6
-_080F166A:
- bl DoTVShowPokemonBattleUpdate
- b _080F16E6
-_080F1670:
- bl DoTVShow3CheersForPokeblocks
- b _080F16E6
-_080F1676:
- bl DoTVShowPokemonTodayFailedCapture
- b _080F16E6
-_080F167C:
- bl DoTVShowPokemonAngler
- b _080F16E6
-_080F1682:
- bl DoTVShowTheWorldOfMasters
- b _080F16E6
-_080F1688:
- bl DoTVShowTodaysRivalTrainer
- b _080F16E6
-_080F168E:
- bl DoTVShowDewfordTrendWatcherNetwork
- b _080F16E6
-_080F1694:
- bl DoTVShowHoennTreasureInvestigators
- b _080F16E6
-_080F169A:
- bl DoTVShowFindThatGamer
- b _080F16E6
-_080F16A0:
- bl DoTVShowBreakingNewsTV
- b _080F16E6
-_080F16A6:
- bl DoTVShowSecretBaseVisit
- b _080F16E6
-_080F16AC:
- bl DoTVShowPokemonLotterWinnerFlashReport
- b _080F16E6
-_080F16B2:
- bl DoTVShowThePokemonBattleSeminar
- b _080F16E6
-_080F16B8:
- bl DoTVShowTrainerFanClubSpecial
- b _080F16E6
-_080F16BE:
- bl DoTVShowTrainerFanClub
- b _080F16E6
-_080F16C4:
- bl DoTVShowSpotTheCuties
- b _080F16E6
-_080F16CA:
- bl DoTVShowPokemonNewsBattleFrontier
- b _080F16E6
-_080F16D0:
- bl DoTVShowWhatsNo1InHoennToday
- b _080F16E6
-_080F16D6:
- bl DoTVShowSecretBaseSecrets
- b _080F16E6
-_080F16DC:
- bl DoTVShowSafariFanClub
- b _080F16E6
-_080F16E2:
- bl DoTVShowPokemonContestLiveUpdates2
-_080F16E6:
- pop {r0}
- bx r0
- thumb_func_end sub_80F153C
-
- thumb_func_start DoTVShowBravoTrainerPokemonProfile
-DoTVShowBravoTrainerPokemonProfile: @ 80F16EC
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- cmp r5, 0x8
- bls _080F1712
- b _080F1952
-_080F1712:
- lsls r0, r5, 2
- ldr r1, =_080F1734
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F1734:
- .4byte _080F1758
- .4byte _080F17B0
- .4byte _080F17E8
- .4byte _080F1818
- .4byte _080F184C
- .4byte _080F1880
- .4byte _080F18C4
- .4byte _080F190C
- .4byte _080F193C
-_080F1758:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x16
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x13]
- lsls r1, 29
- lsrs r1, 29
- movs r0, 0x1
- bl CopyContestCategoryToStringVar
- ldrb r1, [r4, 0x13]
- lsls r1, 27
- lsrs r1, 30
- movs r0, 0x2
- bl sub_80EF1BC
- ldrh r1, [r4, 0x2]
- movs r0, 0xB
- muls r0, r1
- ldr r1, =gSpeciesNames
- adds r0, r1
- adds r1, r4, 0
- adds r1, 0x8
- bl StringCompare
- cmp r0, 0
- bne _080F17A4
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- b _080F1950
- .pool
-_080F17A4:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- b _080F1950
- .pool
-_080F17B0:
- ldr r0, =gStringVar1
- ldrh r2, [r4, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar2
- adds r1, r4, 0
- adds r1, 0x8
- ldrb r2, [r4, 0x1F]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x13]
- lsls r1, 29
- lsrs r1, 29
- movs r0, 0x2
- bl CopyContestCategoryToStringVar
- b _080F194C
- .pool
-_080F17E8:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x16
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x13]
- movs r0, 0x60
- ands r0, r1
- cmp r0, 0
- bne _080F180C
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- b _080F1950
- .pool
-_080F180C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- b _080F1950
- .pool
-_080F1818:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x16
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r1, [r4, 0x4]
- bl CopyEasyChatWord
- ldrb r1, [r4, 0x13]
- lsls r1, 25
- lsrs r1, 30
- adds r1, 0x1
- movs r0, 0x2
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- b _080F1950
- .pool
-_080F184C:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x16
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r1, [r4, 0x4]
- bl CopyEasyChatWord
- ldrb r1, [r4, 0x13]
- lsls r1, 25
- lsrs r1, 30
- adds r1, 0x1
- movs r0, 0x2
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- b _080F1950
- .pool
-_080F1880:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x16
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x13]
- lsls r1, 29
- lsrs r1, 29
- movs r0, 0x1
- bl CopyContestCategoryToStringVar
- ldr r0, =gStringVar3
- ldrh r1, [r4, 0x6]
- bl CopyEasyChatWord
- ldrh r0, [r4, 0x14]
- cmp r0, 0
- beq _080F18B8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- b _080F1950
- .pool
-_080F18B8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- b _080F1950
- .pool
-_080F18C4:
- ldr r0, =gStringVar1
- ldrh r2, [r4, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x14]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r4, 0x6]
- bl CopyEasyChatWord
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- b _080F1950
- .pool
-_080F190C:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x16
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- bl TVShowDone
- b _080F1952
- .pool
-_080F193C:
- ldr r0, =gStringVar1
- ldrh r2, [r4, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
-_080F194C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
-_080F1950:
- strb r0, [r1]
-_080F1952:
- ldr r0, =gUnknown_0858D204
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowBravoTrainerPokemonProfile
-
- thumb_func_start DoTVShowBravoTrainerBattleTower
-DoTVShowBravoTrainerBattleTower: @ 80F1974
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- adds r2, r0, 0
- cmp r5, 0xE
- bls _080F199C
- b _080F1BEA
-_080F199C:
- lsls r0, r5, 2
- ldr r1, =_080F19C0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F19C0:
- .4byte _080F19FC
- .4byte _080F1A40
- .4byte _080F1A90
- .4byte _080F1AB4
- .4byte _080F1AE0
- .4byte _080F1B28
- .4byte _080F1B38
- .4byte _080F1B48
- .4byte _080F1B4E
- .4byte _080F1B4E
- .4byte _080F1B4E
- .4byte _080F1B68
- .4byte _080F1B94
- .4byte _080F1B94
- .4byte _080F1BCC
-_080F19FC:
- ldr r0, =gStringVar1
- adds r1, r4, 0x2
- ldrb r2, [r4, 0x1D]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0xA]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrh r0, [r4, 0x16]
- cmp r0, 0x6
- bls _080F1A34
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1A34:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1A40:
- ldrb r0, [r4, 0x1A]
- cmp r0, 0x32
- bne _080F1A58
- ldr r0, =gStringVar1
- ldr r1, =gText_Lv50
- bl StringCopy
- b _080F1A60
- .pool
-_080F1A58:
- ldr r0, =gStringVar1
- ldr r1, =gText_OpenLevel
- bl StringCopy
-_080F1A60:
- ldrh r1, [r4, 0x16]
- movs r0, 0x1
- bl sub_80EF340
- ldrb r0, [r4, 0x1C]
- cmp r0, 0x1
- bne _080F1A84
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1A84:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1A90:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldrh r1, [r4, 0x16]
- adds r1, 0x1
- movs r0, 0x1
- bl sub_80EF340
-_080F1AA6:
- ldrb r0, [r4, 0x1B]
- cmp r0, 0
- beq _080F1B02
- b _080F1B1C
- .pool
-_080F1AB4:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x14]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- b _080F1AA6
- .pool
-_080F1AE0:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x14]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r0, [r4, 0x1B]
- cmp r0, 0
- bne _080F1B1C
-_080F1B02:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1B1C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1B28:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1E]
- b _080F1B54
- .pool
-_080F1B38:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1E]
- b _080F1B54
- .pool
-_080F1B48:
- movs r0, 0xB
- strb r0, [r2]
- b _080F1BEA
-_080F1B4E:
- ldr r0, =gStringVar1
- adds r1, r4, 0x2
- ldrb r2, [r4, 0x1D]
-_080F1B54:
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0xB
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1B68:
- ldr r0, =gStringVar1
- ldrh r1, [r4, 0x18]
- bl CopyEasyChatWord
- ldrb r0, [r4, 0x1B]
- cmp r0, 0
- bne _080F1B88
- ldr r1, =gUnknown_0203A030
- movs r0, 0xC
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1B88:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xD
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1B94:
- ldr r0, =gStringVar1
- ldrh r1, [r4, 0x18]
- bl CopyEasyChatWord
- ldr r0, =gStringVar2
- adds r1, r4, 0x2
- ldrb r2, [r4, 0x1D]
- bl sub_81DB5E8
- ldr r0, =gStringVar3
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1E]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0xE
- strb r0, [r1]
- b _080F1BEA
- .pool
-_080F1BCC:
- ldr r0, =gStringVar1
- adds r1, r4, 0x2
- ldrb r2, [r4, 0x1D]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0xA]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- bl TVShowDone
-_080F1BEA:
- ldr r0, =gUnknown_0858D240
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowBravoTrainerBattleTower
-
- thumb_func_start DoTVShowTodaysSmartShopper
-DoTVShowTodaysSmartShopper: @ 80F1C0C
- push {r4-r6,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r6, [r0]
- adds r2, r0, 0
- cmp r6, 0xC
- bls _080F1C34
- b _080F1E2C
-_080F1C34:
- lsls r0, r6, 2
- ldr r1, =_080F1C58
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F1C58:
- .4byte _080F1C8C
- .4byte _080F1CC8
- .4byte _080F1D10
- .4byte _080F1D22
- .4byte _080F1D10
- .4byte _080F1D10
- .4byte _080F1D4C
- .4byte _080F1D7C
- .4byte _080F1DAC
- .4byte _080F1DB8
- .4byte _080F1DC6
- .4byte _080F1DD8
- .4byte _080F1E1C
-_080F1C8C:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrb r1, [r5, 0x12]
- movs r2, 0
- bl GetMapName
- ldrh r0, [r5, 0xC]
- cmp r0, 0xFE
- bls _080F1CBC
- ldr r1, =gUnknown_0203A030
- movs r0, 0xB
- strb r0, [r1]
- b _080F1E2C
- .pool
-_080F1CBC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F1E2C
- .pool
-_080F1CC8:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
- ldr r4, =gStringVar2
- ldrh r0, [r5, 0x6]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldrh r1, [r5, 0xC]
- movs r0, 0x2
- bl sub_80EF340
- ldr r4, =gUnknown_0203A030
- bl Random
- ldrb r2, [r4]
- adds r2, 0x1
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- ands r0, r1
- adds r0, r2
- strb r0, [r4]
- b _080F1E2C
- .pool
-_080F1D10:
- ldrh r0, [r5, 0x8]
- cmp r0, 0
- beq _080F1D1C
- movs r0, 0x6
- strb r0, [r2]
- b _080F1E2C
-_080F1D1C:
- movs r0, 0xA
- strb r0, [r2]
- b _080F1E2C
-_080F1D22:
- ldrh r1, [r5, 0xC]
- adds r1, 0x1
- movs r0, 0x2
- bl sub_80EF340
- ldrh r0, [r5, 0x8]
- cmp r0, 0
- beq _080F1D40
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F1E2C
- .pool
-_080F1D40:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xA
- strb r0, [r1]
- b _080F1E2C
- .pool
-_080F1D4C:
- ldr r4, =gStringVar2
- ldrh r0, [r5, 0x8]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldrh r1, [r5, 0xE]
- movs r0, 0x2
- bl sub_80EF340
- ldrh r0, [r5, 0xA]
- cmp r0, 0
- beq _080F1D94
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F1E2C
- .pool
-_080F1D7C:
- ldr r4, =gStringVar2
- ldrh r0, [r5, 0xA]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldrh r1, [r5, 0x10]
- movs r0, 0x2
- bl sub_80EF340
-_080F1D94:
- ldrb r0, [r5, 0x2]
- cmp r0, 0x1
- beq _080F1DFA
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F1E2C
- .pool
-_080F1DAC:
- ldrh r0, [r5, 0xC]
- cmp r0, 0xFE
- bls _080F1DD2
- movs r0, 0xC
- strb r0, [r2]
- b _080F1E2C
-_080F1DB8:
- movs r0, 0x1
- adds r1, r5, 0
- bl sub_80EF40C
- bl TVShowDone
- b _080F1E2C
-_080F1DC6:
- ldrb r0, [r5, 0x2]
- cmp r0, 0x1
- bne _080F1DD2
- movs r0, 0x8
- strb r0, [r2]
- b _080F1E2C
-_080F1DD2:
- movs r0, 0x9
- strb r0, [r2]
- b _080F1E2C
-_080F1DD8:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
- ldr r4, =gStringVar2
- ldrh r0, [r5, 0x6]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldrb r0, [r5, 0x2]
- cmp r0, 0x1
- bne _080F1E10
-_080F1DFA:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F1E2C
- .pool
-_080F1E10:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xC
- strb r0, [r1]
- b _080F1E2C
- .pool
-_080F1E1C:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
- bl TVShowDone
-_080F1E2C:
- ldr r0, =gUnknown_0858D1D0
- lsls r1, r6, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowTodaysSmartShopper
-
- thumb_func_start DoTVShowTheNameRaterShow
-DoTVShowTheNameRaterShow: @ 80F1E48
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r6, [r0]
- adds r2, r0, 0
- cmp r6, 0x12
- bls _080F1E72
- b _080F20FE
-_080F1E72:
- lsls r0, r6, 2
- ldr r1, =_080F1E94
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F1E94:
- .4byte _080F1EE0
- .4byte _080F1F28
- .4byte _080F1F4A
- .4byte _080F1F28
- .4byte _080F1F28
- .4byte _080F1F28
- .4byte _080F1F28
- .4byte _080F1F28
- .4byte _080F1F28
- .4byte _080F1F90
- .4byte _080F1F90
- .4byte _080F1F90
- .4byte _080F20EC
- .4byte _080F1FCC
- .4byte _080F200C
- .4byte _080F202C
- .4byte _080F2074
- .4byte _080F20A4
- .4byte _080F20F0
-_080F1EE0:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0xF
- ldrb r2, [r5, 0x1E]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x1F]
- bl sub_81DB5E8
- ldr r4, =gUnknown_0203A030
- adds r0, r5, 0
- bl sub_80EFBA4
- adds r0, 0x1
- strb r0, [r4]
- b _080F20FE
- .pool
-_080F1F28:
- ldrb r0, [r5, 0x1A]
- cmp r0, 0
- bne _080F1F34
- movs r0, 0x9
- strb r0, [r2]
- b _080F20FE
-_080F1F34:
- cmp r0, 0x1
- bne _080F1F3E
- movs r0, 0xA
- strb r0, [r2]
- b _080F20FE
-_080F1F3E:
- cmp r0, 0x2
- beq _080F1F44
- b _080F20FE
-_080F1F44:
- movs r0, 0xB
- strb r0, [r2]
- b _080F20FE
-_080F1F4A:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0xF
- ldrb r2, [r5, 0x1E]
- bl sub_81DB5E8
- ldrb r0, [r5, 0x1A]
- cmp r0, 0
- bne _080F1F6C
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F20FE
- .pool
-_080F1F6C:
- cmp r0, 0x1
- bne _080F1F7C
- ldr r1, =gUnknown_0203A030
- movs r0, 0xA
- strb r0, [r1]
- b _080F20FE
- .pool
-_080F1F7C:
- cmp r0, 0x2
- beq _080F1F82
- b _080F20FE
-_080F1F82:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xB
- strb r0, [r1]
- b _080F20FE
- .pool
-_080F1F90:
- ldr r0, =gStringVar1
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x1F]
- bl sub_81DB5E8
- movs r4, 0
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_80EFBDC
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0
- movs r3, 0x1
- bl sub_80EFBDC
- ldr r1, =gUnknown_0203A030
- movs r0, 0xC
- strb r0, [r1]
- b _080F20FE
- .pool
-_080F1FCC:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0xF
- ldrb r2, [r5, 0x1E]
- bl sub_81DB5E8
- movs r4, 0
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0
- movs r2, 0x2
- movs r3, 0
- bl sub_80EFBDC
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0
- movs r2, 0x3
- movs r3, 0x1
- bl sub_80EFBDC
- ldr r1, =gUnknown_0203A030
- movs r0, 0xE
- strb r0, [r1]
- b _080F20FE
- .pool
-_080F200C:
- movs r4, 0
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0
- movs r2, 0x2
- movs r3, 0x1
- bl sub_80EFBDC
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0
- movs r2, 0x3
- movs r3, 0
- b _080F20D2
-_080F202C:
- movs r0, 0
- str r0, [sp]
- str r5, [sp, 0x4]
- movs r1, 0
- movs r2, 0x2
- movs r3, 0x1
- bl sub_80EFBDC
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrh r0, [r5, 0x2]
- str r0, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0
- movs r2, 0x3
- movs r3, 0x2
- bl sub_80EFBDC
- ldr r1, =gUnknown_0203A030
- movs r0, 0x10
- strb r0, [r1]
- b _080F20FE
- .pool
-_080F2074:
- ldrh r0, [r5, 0x2]
- str r0, [sp]
- str r5, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0x2
- movs r3, 0x2
- bl sub_80EFBDC
- movs r0, 0
- str r0, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0
- movs r2, 0x3
- movs r3, 0x1
- bl sub_80EFBDC
- ldr r1, =gUnknown_0203A030
- movs r0, 0x11
- strb r0, [r1]
- b _080F20FE
- .pool
-_080F20A4:
- movs r0, 0
- str r0, [sp]
- str r5, [sp, 0x4]
- movs r1, 0
- movs r2, 0x2
- movs r3, 0x1
- bl sub_80EFBDC
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x1C]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrh r0, [r5, 0x1C]
- str r0, [sp]
- str r5, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0
- movs r2, 0x3
- movs r3, 0x2
-_080F20D2:
- bl sub_80EFBDC
- ldr r1, =gUnknown_0203A030
- movs r0, 0x12
- strb r0, [r1]
- b _080F20FE
- .pool
-_080F20EC:
- movs r6, 0x12
- strb r6, [r2]
-_080F20F0:
- ldr r0, =gStringVar1
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x1F]
- bl sub_81DB5E8
- bl TVShowDone
-_080F20FE:
- ldr r0, =gUnknown_0858D338
- lsls r1, r6, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowTheNameRaterShow
-
- thumb_func_start DoTVShowPokemonTodaySuccessfulCapture
-DoTVShowPokemonTodaySuccessfulCapture: @ 80F211C
- push {r4-r6,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r6, [r0]
- adds r2, r0, 0
- cmp r6, 0xB
- bls _080F2144
- b _080F2358
-_080F2144:
- lsls r0, r6, 2
- ldr r1, =_080F2168
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F2168:
- .4byte _080F2198
- .4byte _080F21EC
- .4byte _080F21F2
- .4byte _080F222C
- .4byte _080F2264
- .4byte _080F226A
- .4byte _080F22A0
- .4byte _080F22F4
- .4byte _080F22F4
- .4byte _080F2324
- .4byte _080F2324
- .4byte _080F2354
-_080F2198:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x2]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x10]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
- ldrb r0, [r5, 0xF]
- cmp r0, 0x1
- bne _080F21E0
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F2358
- .pool
-_080F21E0:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F2358
- .pool
-_080F21EC:
- movs r0, 0x2
- strb r0, [r2]
- b _080F2358
-_080F21F2:
- ldr r4, =gStringVar2
- ldrb r0, [r5, 0xF]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldrb r1, [r5, 0x12]
- movs r0, 0x2
- bl sub_80EF340
- ldrb r0, [r5, 0x12]
- cmp r0, 0x3
- bhi _080F2220
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F2358
- .pool
-_080F2220:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F2358
- .pool
-_080F222C:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x2]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x10]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
- b _080F2286
- .pool
-_080F2264:
- movs r0, 0x6
- strb r0, [r2]
- b _080F2358
-_080F226A:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x2]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x10]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
-_080F2286:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F2358
- .pool
-_080F22A0:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x2]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x10]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
- ldr r4, =gUnknown_0203A030
- bl Random
- ldrb r2, [r4]
- adds r2, 0x1
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- ands r0, r1
- adds r0, r2
- strb r0, [r4]
- b _080F2358
- .pool
-_080F22F4:
- ldr r0, =gStringVar1
- ldrh r1, [r5, 0x10]
- movs r4, 0xB
- muls r1, r4
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar2
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
- ldrh r1, [r5, 0x10]
- movs r0, 0x2
- bl sub_80EF9E8
- b _080F233E
- .pool
-_080F2324:
- ldr r0, =gStringVar1
- ldrh r1, [r5, 0x10]
- movs r4, 0xB
- muls r1, r4
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar2
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x3]
- bl sub_81DB5E8
-_080F233E:
- ldr r0, =gUnknown_0203A030
- strb r4, [r0]
- b _080F2358
- .pool
-_080F2354:
- bl TVShowDone
-_080F2358:
- ldr r0, =gUnknown_0858D1A0
- lsls r1, r6, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonTodaySuccessfulCapture
-
- thumb_func_start DoTVShowPokemonTodayFailedCapture
-DoTVShowPokemonTodayFailedCapture: @ 80F2370
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- cmp r5, 0x6
- bls _080F2396
- b _080F24C0
-_080F2396:
- lsls r0, r5, 2
- ldr r1, =_080F23B8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F23B8:
- .4byte _080F23D4
- .4byte _080F2408
- .4byte _080F245C
- .4byte _080F245C
- .4byte _080F24A0
- .4byte _080F24A0
- .4byte _080F24BC
-_080F23D4:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x2]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0xC]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F24C0
- .pool
-_080F2408:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x2]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrb r1, [r4, 0x12]
- movs r2, 0
- bl GetMapName
- ldr r0, =gStringVar3
- ldrh r2, [r4, 0xE]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r0, [r4, 0x11]
- cmp r0, 0x1
- bne _080F2450
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F24C0
- .pool
-_080F2450:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F24C0
- .pool
-_080F245C:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x2]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x10]
- movs r0, 0x1
- bl sub_80EF340
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _080F2494
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F24C0
- .pool
-_080F2494:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F24C0
- .pool
-_080F24A0:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x2]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F24C0
- .pool
-_080F24BC:
- bl TVShowDone
-_080F24C0:
- ldr r0, =gUnknown_0858D394
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonTodayFailedCapture
-
- thumb_func_start DoTVShowPokemonFanClubLetter
-DoTVShowPokemonFanClubLetter: @ 80F24D8
- push {r4-r7,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r7, [r0]
- adds r6, r0, 0
- cmp r7, 0x33
- bls _080F2500
- b _080F26F0
-_080F2500:
- lsls r0, r7, 2
- ldr r1, =_080F2524
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F2524:
- .4byte _080F25F4
- .4byte _080F2628
- .4byte _080F2654
- .4byte _080F265A
- .4byte _080F2672
- .4byte _080F2672
- .4byte _080F2672
- .4byte _080F2684
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26F0
- .4byte _080F26A6
- .4byte _080F26CC
-_080F25F4:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x10
- ldrb r2, [r5, 0x18]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x32
- strb r0, [r1]
- b _080F26F0
- .pool
-_080F2628:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- ands r0, r1
- adds r2, r0, 0x1
- cmp r2, 0x1
- bne _080F2648
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F26F0
- .pool
-_080F2648:
- ldr r1, =gUnknown_0203A030
- adds r0, r2, 0x2
- strb r0, [r1]
- b _080F26F0
- .pool
-_080F2654:
- movs r0, 0x33
- strb r0, [r6]
- b _080F26F0
-_080F265A:
- bl Random
- ldrb r4, [r6]
- adds r4, 0x1
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- adds r0, r4
- strb r0, [r6]
- b _080F26F0
-_080F2672:
- adds r0, r5, 0
- bl sub_80EFB58
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F26F0
- .pool
-_080F2684:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1F
- bl __umodsi3
- adds r0, 0x46
- lsls r0, 16
- lsrs r2, r0, 16
- movs r0, 0x2
- adds r1, r2, 0
- bl sub_80EF340
- bl TVShowDone
- b _080F26F0
-_080F26A6:
- ldr r4, =gStringVar4
- adds r1, r5, 0x4
- adds r0, r4, 0
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertEasyChatWordsToString
- adds r0, r4, 0
- bl box_related_two__2
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F26FC
- .pool
-_080F26CC:
- ldr r4, =gStringVar4
- adds r1, r5, 0x4
- adds r0, r4, 0
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertEasyChatWordsToString
- adds r0, r4, 0
- bl box_related_two__2
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F26FC
- .pool
-_080F26F0:
- ldr r0, =gUnknown_0858D150
- lsls r1, r7, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
-_080F26FC:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonFanClubLetter
-
- thumb_func_start DoTVShowRecentHappenings
-DoTVShowRecentHappenings: @ 80F2708
- push {r4-r7,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r6, [r0]
- adds r7, r0, 0
- cmp r6, 0x32
- bls _080F2730
- b _080F288C
-_080F2730:
- lsls r0, r6, 2
- ldr r1, =_080F2754
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F2754:
- .4byte _080F2820
- .4byte _080F2844
- .4byte _080F285C
- .4byte _080F285C
- .4byte _080F285C
- .4byte _080F2862
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F288C
- .4byte _080F2868
-_080F2820:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x10
- ldrb r2, [r5, 0x18]
- bl sub_81DB5E8
- adds r0, r5, 0
- bl sub_80EFB58
- ldr r1, =gUnknown_0203A030
- movs r0, 0x32
- strb r0, [r1]
- b _080F288C
- .pool
-_080F2844:
- bl Random
- ldrb r4, [r7]
- adds r4, 0x1
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- adds r0, r4
- strb r0, [r7]
- b _080F288C
-_080F285C:
- movs r0, 0x5
- strb r0, [r7]
- b _080F288C
-_080F2862:
- bl TVShowDone
- b _080F288C
-_080F2868:
- ldr r4, =gStringVar4
- adds r1, r5, 0x4
- adds r0, r4, 0
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertEasyChatWordsToString
- adds r0, r4, 0
- bl box_related_two__2
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F2898
- .pool
-_080F288C:
- ldr r0, =gUnknown_0858D170
- lsls r1, r6, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
-_080F2898:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowRecentHappenings
-
- thumb_func_start DoTVShowPokemonFanClubOpinions
-DoTVShowPokemonFanClubOpinions: @ 80F28A4
- push {r4-r6,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r6, =gUnknown_0203A030
- ldrb r5, [r6]
- cmp r5, 0x3
- bgt _080F28E8
- cmp r5, 0x1
- bge _080F2930
- cmp r5, 0
- beq _080F28EE
- b _080F297E
- .pool
-_080F28E8:
- cmp r5, 0x4
- beq _080F2968
- b _080F297E
-_080F28EE:
- ldr r0, =gStringVar1
- adds r1, r4, 0x5
- ldrb r2, [r4, 0xD]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- adds r1, r4, 0
- adds r1, 0x10
- ldrb r2, [r4, 0xE]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x4]
- lsrs r0, 4
- adds r0, 0x1
- strb r0, [r6]
- b _080F297E
- .pool
-_080F2930:
- ldr r0, =gStringVar1
- adds r1, r4, 0x5
- ldrb r2, [r4, 0xD]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r4, 0x1C]
- bl CopyEasyChatWord
- movs r0, 0x4
- strb r0, [r6]
- b _080F297E
- .pool
-_080F2968:
- ldr r0, =gStringVar1
- adds r1, r4, 0x5
- ldrb r2, [r4, 0xD]
- bl sub_81DB5E8
- ldr r0, =gStringVar3
- ldrh r1, [r4, 0x1E]
- bl CopyEasyChatWord
- bl TVShowDone
-_080F297E:
- ldr r0, =gUnknown_0858D188
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonFanClubOpinions
-
- thumb_func_start DoTVShowDummiedOut
-DoTVShowDummiedOut: @ 80F299C
- bx lr
- thumb_func_end DoTVShowDummiedOut
-
- thumb_func_start DoTVShowPokemonNewsMassOutbreak
-DoTVShowPokemonNewsMassOutbreak: @ 80F29A0
- push {r4,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r4, [r2]
- adds r4, r0
- ldr r0, =gStringVar1
- ldrb r1, [r4, 0x10]
- movs r2, 0
- bl GetMapName
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0xC]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- bl TVShowDone
- bl StartMassOutbreak
- ldr r1, =gUnknown_0858D19C
- ldr r0, =gUnknown_0203A030
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl box_related_two__2
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonNewsMassOutbreak
-
- thumb_func_start DoTVShowPokemonContestLiveUpdates
-DoTVShowPokemonContestLiveUpdates: @ 80F2A10
- push {r4-r7,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r6, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r7, [r0]
- adds r2, r0, 0
- cmp r7, 0x20
- bls _080F2A38
- b _080F311C
-_080F2A38:
- lsls r0, r7, 2
- ldr r1, =_080F2A5C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F2A5C:
- .4byte _080F2AE0
- .4byte _080F2B54
- .4byte _080F2BA2
- .4byte _080F2BC8
- .4byte _080F2BF4
- .4byte _080F2D2C
- .4byte _080F2D40
- .4byte _080F2D54
- .4byte _080F2D68
- .4byte _080F2DE8
- .4byte _080F2DFC
- .4byte _080F2E10
- .4byte _080F2E24
- .4byte _080F2E38
- .4byte _080F2E4C
- .4byte _080F2ECC
- .4byte _080F2EE0
- .4byte _080F2EF4
- .4byte _080F2F08
- .4byte _080F2F1C
- .4byte _080F2F30
- .4byte _080F2F44
- .4byte _080F2F58
- .4byte _080F2F94
- .4byte _080F3064
- .4byte _080F3080
- .4byte _080F30E0
- .4byte _080F30E0
- .4byte _080F30A8
- .4byte _080F30AE
- .4byte _080F30E0
- .4byte _080F30E0
- .4byte _080F30FC
-_080F2AE0:
- ldr r0, =gStringVar1
- ldrb r1, [r6, 0x1C]
- bl sub_818E868
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- adds r1, r6, 0
- adds r1, 0x14
- ldrb r2, [r6, 0x1D]
- bl sub_81DB5E8
- ldrb r0, [r6, 0xD]
- ldrb r1, [r6, 0xE]
- cmp r0, r1
- bne _080F2B38
- cmp r0, 0
- bne _080F2B2C
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2B2C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2B38:
- cmp r0, r1
- bls _080F2B48
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2B48:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2B54:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r1, [r6, 0xF]
- cmp r1, 0x8
- bne _080F2B6C
- b _080F2CF0
-_080F2B6C:
- cmp r1, 0x8
- bgt _080F2B88
-_080F2B70:
- cmp r1, 0x2
- bne _080F2B76
- b _080F2CD8
-_080F2B76:
- cmp r1, 0x2
- bgt _080F2B7C
- b _080F2C96
-_080F2B7C:
- b _080F2CAC
- .pool
-_080F2B88:
- cmp r1, 0x20
- bne _080F2B8E
- b _080F2D08
-_080F2B8E:
- cmp r1, 0x20
- bgt _080F2B94
- b _080F2CBA
-_080F2B94:
- cmp r1, 0x40
- bne _080F2B9A
- b _080F2D14
-_080F2B9A:
- cmp r1, 0x80
- beq _080F2BA0
- b _080F311C
-_080F2BA0:
- b _080F2D20
-_080F2BA2:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
-_080F2BB2:
- ldrb r1, [r6, 0xF]
- cmp r1, 0x8
- bne _080F2BBA
- b _080F2CF0
-_080F2BBA:
- cmp r1, 0x8
- ble _080F2B70
- b _080F2B88
- .pool
-_080F2BC8:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- adds r1, r6, 0
- adds r1, 0x14
- ldrb r2, [r6, 0x1D]
- bl sub_81DB5E8
- b _080F2BB2
- .pool
-_080F2BF4:
- ldrb r0, [r6, 0x1C]
- cmp r0, 0x4
- bhi _080F2C74
- lsls r0, 2
- ldr r1, =_080F2C08
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F2C08:
- .4byte _080F2C1C
- .4byte _080F2C30
- .4byte _080F2C44
- .4byte _080F2C58
- .4byte _080F2C6C
-_080F2C1C:
- ldr r0, =gStringVar1
- ldr r1, =gText_Cool
- bl StringCopy
- b _080F2C74
- .pool
-_080F2C30:
- ldr r0, =gStringVar1
- ldr r1, =gText_Beauty
- bl StringCopy
- b _080F2C74
- .pool
-_080F2C44:
- ldr r0, =gStringVar1
- ldr r1, =gText_Cute
- bl StringCopy
- b _080F2C74
- .pool
-_080F2C58:
- ldr r0, =gStringVar1
- ldr r1, =gText_Smart
- bl StringCopy
- b _080F2C74
- .pool
-_080F2C6C:
- ldr r0, =gStringVar1
- ldr r1, =gText_Tough
- bl StringCopy
-_080F2C74:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r1, [r6, 0xF]
- cmp r1, 0x8
- beq _080F2CF0
- cmp r1, 0x8
- bgt _080F2CB2
- cmp r1, 0x2
- beq _080F2CD8
- cmp r1, 0x2
- bgt _080F2CAC
-_080F2C96:
- cmp r1, 0x1
- beq _080F2CCA
- b _080F311C
- .pool
-_080F2CAC:
- cmp r1, 0x4
- beq _080F2CE4
- b _080F311C
-_080F2CB2:
- cmp r1, 0x20
- beq _080F2D08
- cmp r1, 0x20
- bgt _080F2CC0
-_080F2CBA:
- cmp r1, 0x10
- beq _080F2CFC
- b _080F311C
-_080F2CC0:
- cmp r1, 0x40
- beq _080F2D14
- cmp r1, 0x80
- beq _080F2D20
- b _080F311C
-_080F2CCA:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2CD8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2CE4:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xE
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2CF0:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2CFC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2D08:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x14
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2D14:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x15
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2D20:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x16
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2D2C:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2D40:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2D54:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2D68:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r0, [r6, 0x1C]
- cmp r0, 0x4
- bls _080F2D80
- b _080F311C
-_080F2D80:
- lsls r0, 2
- ldr r1, =_080F2D98
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F2D98:
- .4byte _080F2DAC
- .4byte _080F2DB8
- .4byte _080F2DC4
- .4byte _080F2DD0
- .4byte _080F2DDC
-_080F2DAC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2DB8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xA
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2DC4:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xB
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2DD0:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xC
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2DDC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xD
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2DE8:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2DFC:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2E10:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2E24:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2E38:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2E4C:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r0, [r6, 0x1C]
- cmp r0, 0x4
- bls _080F2E64
- b _080F311C
-_080F2E64:
- lsls r0, 2
- ldr r1, =_080F2E7C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F2E7C:
- .4byte _080F2E90
- .4byte _080F2E9C
- .4byte _080F2EA8
- .4byte _080F2EB4
- .4byte _080F2EC0
-_080F2E90:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xF
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2E9C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x10
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2EA8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x11
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2EB4:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x12
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2EC0:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x13
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2ECC:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2EE0:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2EF4:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2F08:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2F1C:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2F30:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2F44:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- b _080F2F72
- .pool
-_080F2F58:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r2, [r6, 0x10]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
-_080F2F72:
- adds r1, r2
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x17
- strb r0, [r1]
- b _080F311C
- .pool
-_080F2F94:
- ldr r0, =gStringVar1
- ldrh r1, [r6, 0x12]
- movs r5, 0xB
- muls r1, r5
- ldr r4, =gSpeciesNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar2
- adds r1, r6, 0x4
- ldrb r2, [r6, 0x1E]
- bl sub_81DB5E8
- ldr r0, =gStringVar3
- ldrh r1, [r6, 0x2]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- ldrb r0, [r6, 0xC]
- cmp r0, 0x8
- beq _080F3028
- cmp r0, 0x8
- bgt _080F2FEA
- cmp r0, 0x2
- beq _080F3010
- cmp r0, 0x2
- bgt _080F2FE4
- cmp r0, 0x1
- beq _080F3002
- b _080F311C
- .pool
-_080F2FE4:
- cmp r0, 0x4
- beq _080F301C
- b _080F311C
-_080F2FEA:
- cmp r0, 0x20
- beq _080F3040
- cmp r0, 0x20
- bgt _080F2FF8
- cmp r0, 0x10
- beq _080F3034
- b _080F311C
-_080F2FF8:
- cmp r0, 0x40
- beq _080F304C
- cmp r0, 0x80
- beq _080F3058
- b _080F311C
-_080F3002:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1F
- strb r0, [r1]
- b _080F311C
- .pool
-_080F3010:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1E
- strb r0, [r1]
- b _080F311C
- .pool
-_080F301C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1D
- strb r0, [r1]
- b _080F311C
- .pool
-_080F3028:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1C
- strb r0, [r1]
- b _080F311C
- .pool
-_080F3034:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1B
- strb r0, [r1]
- b _080F311C
- .pool
-_080F3040:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1A
- strb r0, [r1]
- b _080F311C
- .pool
-_080F304C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x19
- strb r0, [r1]
- b _080F311C
- .pool
-_080F3058:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x18
- strb r0, [r1]
- b _080F311C
- .pool
-_080F3064:
- ldr r0, =gStringVar1
- ldrh r2, [r6, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- b _080F30EA
- .pool
-_080F3080:
- ldr r0, =gStringVar1
- adds r1, r6, 0x4
- ldrb r2, [r6, 0x1E]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- b _080F30EA
- .pool
-_080F30A8:
- movs r0, 0x20
- strb r0, [r2]
- b _080F311C
-_080F30AE:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x14
- ldrb r2, [r6, 0x1D]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- b _080F30E2
- .pool
-_080F30E0:
- ldr r0, =gStringVar1
-_080F30E2:
- adds r1, r6, 0x4
- ldrb r2, [r6, 0x1E]
- bl sub_81DB5E8
-_080F30EA:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x20
- strb r0, [r1]
- b _080F311C
- .pool
-_080F30FC:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x14
- ldrb r2, [r6, 0x1D]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x12]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- bl TVShowDone
-_080F311C:
- ldr r0, =gUnknown_0858D27C
- lsls r1, r7, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonContestLiveUpdates
-
- thumb_func_start DoTVShowPokemonBattleUpdate
-DoTVShowPokemonBattleUpdate: @ 80F3140
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- adds r2, r0, 0
- cmp r5, 0x7
- bls _080F3168
- b _080F3362
-_080F3168:
- lsls r0, r5, 2
- ldr r1, =_080F318C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F318C:
- .4byte _080F31AC
- .4byte _080F31CA
- .4byte _080F321C
- .4byte _080F3268
- .4byte _080F329C
- .4byte _080F32C0
- .4byte _080F32EC
- .4byte _080F3338
-_080F31AC:
- ldrb r1, [r4, 0x18]
- cmp r1, 0
- bge _080F31B4
- b _080F3362
-_080F31B4:
- cmp r1, 0x1
- ble _080F31BE
- cmp r1, 0x2
- beq _080F31C4
- b _080F3362
-_080F31BE:
- movs r0, 0x1
- strb r0, [r2]
- b _080F3362
-_080F31C4:
- movs r0, 0x5
- strb r0, [r2]
- b _080F3362
-_080F31CA:
- ldr r0, =gStringVar1
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x19]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1A]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x18]
- cmp r0, 0
- bne _080F3200
- ldr r0, =gStringVar3
- ldr r1, =gText_Single
- bl StringCopy
- b _080F3208
- .pool
-_080F3200:
- ldr r0, =gStringVar3
- ldr r1, =gText_Double
- bl StringCopy
-_080F3208:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F3362
- .pool
-_080F321C:
- ldr r0, =gStringVar1
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x19]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x16]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r2, [r4, 0x14]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F3362
- .pool
-_080F3268:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1A]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F3362
- .pool
-_080F329C:
- ldr r0, =gStringVar1
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x19]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1A]
- bl sub_81DB5E8
- bl TVShowDone
- b _080F3362
- .pool
-_080F32C0:
- ldr r0, =gStringVar1
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x19]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1A]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F3362
- .pool
-_080F32EC:
- ldr r0, =gStringVar1
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x19]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x16]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r2, [r4, 0x14]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F3362
- .pool
-_080F3338:
- ldr r0, =gStringVar1
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x19]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x1A]
- bl sub_81DB5E8
- ldr r0, =gStringVar3
- ldrh r2, [r4, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- bl TVShowDone
-_080F3362:
- ldr r0, =gUnknown_0858D300
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonBattleUpdate
-
- thumb_func_start DoTVShow3CheersForPokeblocks
-DoTVShow3CheersForPokeblocks: @ 80F3388
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- cmp r5, 0x5
- bls _080F33AE
- b _080F3624
-_080F33AE:
- lsls r0, r5, 2
- ldr r1, =_080F33D0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F33D0:
- .4byte _080F33E8
- .4byte _080F3418
- .4byte _080F3500
- .4byte _080F350C
- .4byte _080F35F4
- .4byte _080F3620
-_080F33E8:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x14]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x2]
- cmp r0, 0x14
- bls _080F340C
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F3624
- .pool
-_080F340C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F3624
- .pool
-_080F3418:
- ldrb r0, [r4, 0x3]
- lsls r0, 29
- lsrs r0, 29
- cmp r0, 0x4
- bhi _080F349C
- lsls r0, 2
- ldr r1, =_080F3430
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F3430:
- .4byte _080F3444
- .4byte _080F3458
- .4byte _080F346C
- .4byte _080F3480
- .4byte _080F3494
-_080F3444:
- ldr r0, =gStringVar1
- ldr r1, =gText_Spicy2
- bl StringCopy
- b _080F349C
- .pool
-_080F3458:
- ldr r0, =gStringVar1
- ldr r1, =gText_Dry2
- bl StringCopy
- b _080F349C
- .pool
-_080F346C:
- ldr r0, =gStringVar1
- ldr r1, =gText_Sweet2
- bl StringCopy
- b _080F349C
- .pool
-_080F3480:
- ldr r0, =gStringVar1
- ldr r1, =gText_Bitter2
- bl StringCopy
- b _080F349C
- .pool
-_080F3494:
- ldr r0, =gStringVar1
- ldr r1, =gText_Sour2
- bl StringCopy
-_080F349C:
- ldrb r0, [r4, 0x2]
- cmp r0, 0x18
- bls _080F34BC
- ldr r0, =gStringVar2
- ldr r1, =gText_Excellent
- bl StringCopy
- b _080F34DC
- .pool
-_080F34BC:
- cmp r0, 0x16
- bls _080F34D4
- ldr r0, =gStringVar2
- ldr r1, =gText_VeryGood
- bl StringCopy
- b _080F34DC
- .pool
-_080F34D4:
- ldr r0, =gStringVar2
- ldr r1, =gText_Good
- bl StringCopy
-_080F34DC:
- ldr r0, =gStringVar3
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x14]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F3624
- .pool
-_080F3500:
- ldr r0, =gStringVar1
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x15]
- b _080F3606
- .pool
-_080F350C:
- ldrb r0, [r4, 0x3]
- lsls r0, 29
- lsrs r0, 29
- cmp r0, 0x4
- bhi _080F3590
- lsls r0, 2
- ldr r1, =_080F3524
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F3524:
- .4byte _080F3538
- .4byte _080F354C
- .4byte _080F3560
- .4byte _080F3574
- .4byte _080F3588
-_080F3538:
- ldr r0, =gStringVar1
- ldr r1, =gText_Spicy2
- bl StringCopy
- b _080F3590
- .pool
-_080F354C:
- ldr r0, =gStringVar1
- ldr r1, =gText_Dry2
- bl StringCopy
- b _080F3590
- .pool
-_080F3560:
- ldr r0, =gStringVar1
- ldr r1, =gText_Sweet2
- bl StringCopy
- b _080F3590
- .pool
-_080F3574:
- ldr r0, =gStringVar1
- ldr r1, =gText_Bitter2
- bl StringCopy
- b _080F3590
- .pool
-_080F3588:
- ldr r0, =gStringVar1
- ldr r1, =gText_Sour2
- bl StringCopy
-_080F3590:
- ldrb r0, [r4, 0x2]
- cmp r0, 0x10
- bls _080F35B0
- ldr r0, =gStringVar2
- ldr r1, =gText_SoSo
- bl StringCopy
- b _080F35D0
- .pool
-_080F35B0:
- cmp r0, 0xD
- bls _080F35C8
- ldr r0, =gStringVar2
- ldr r1, =gText_Bad
- bl StringCopy
- b _080F35D0
- .pool
-_080F35C8:
- ldr r0, =gStringVar2
- ldr r1, =gText_TheWorst
- bl StringCopy
-_080F35D0:
- ldr r0, =gStringVar3
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x14]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F3624
- .pool
-_080F35F4:
- ldr r0, =gStringVar1
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x15]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x14]
-_080F3606:
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F3624
- .pool
-_080F3620:
- bl TVShowDone
-_080F3624:
- ldr r0, =gUnknown_0858D228
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShow3CheersForPokeblocks
-
- thumb_func_start DoTVShowInSearchOfTrainers
-DoTVShowInSearchOfTrainers: @ 80F363C
- push {r4-r7,lr}
- ldr r0, =gScriptResult
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_0203A030
- ldrb r7, [r0]
- adds r2, r0, 0
- cmp r7, 0x8
- bls _080F3650
- b _080F37EA
-_080F3650:
- lsls r0, r7, 2
- ldr r1, =_080F3668
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F3668:
- .4byte _080F368C
- .4byte _080F36D4
- .4byte _080F36DA
- .4byte _080F372C
- .4byte _080F379C
- .4byte _080F379C
- .4byte _080F379C
- .4byte _080F379C
- .4byte _080F37A2
-_080F368C:
- ldr r0, =gStringVar1
- ldr r4, =gSaveBlock1Ptr
- ldr r1, [r4]
- ldr r2, =0x00002bac
- adds r1, r2
- ldrb r1, [r1]
- movs r2, 0
- bl GetMapName
- ldr r0, [r4]
- ldr r1, =0x00002bad
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bls _080F36C8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F37EA
- .pool
-_080F36C8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F37EA
- .pool
-_080F36D4:
- movs r0, 0x2
- strb r0, [r2]
- b _080F37EA
-_080F36DA:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00002bae
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080F36FC
- movs r0, 0x4
- strb r0, [r2]
- b _080F37EA
- .pool
-_080F36FC:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080F370A
- movs r0, 0x5
- strb r0, [r2]
- b _080F37EA
-_080F370A:
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080F3718
- movs r0, 0x6
- strb r0, [r2]
- b _080F37EA
-_080F3718:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080F3726
- movs r0, 0x7
- strb r0, [r2]
- b _080F37EA
-_080F3726:
- movs r0, 0x3
- strb r0, [r2]
- b _080F37EA
-_080F372C:
- ldr r0, =gStringVar1
- ldr r4, =gSaveBlock1Ptr
- ldr r1, [r4]
- ldr r2, =0x00002ba4
- adds r1, r2
- ldrh r1, [r1]
- movs r6, 0xB
- muls r1, r6
- ldr r5, =gSpeciesNames
- adds r1, r5
- bl StringCopy
- ldr r0, =gStringVar2
- ldr r1, [r4]
- ldr r2, =0x00002ba8
- adds r1, r2
- ldrh r2, [r1]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldr r1, [r4]
- ldr r2, =0x00002ba6
- adds r1, r2
- ldrh r1, [r1]
- muls r1, r6
- adds r1, r5
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F37EA
- .pool
-_080F379C:
- movs r0, 0x8
- strb r0, [r2]
- b _080F37EA
-_080F37A2:
- ldr r0, =gStringVar1
- ldr r4, =gSaveBlock1Ptr
- ldr r1, [r4]
- ldr r2, =0x00002baa
- adds r1, r2
- ldrh r1, [r1]
- bl CopyEasyChatWord
- ldr r0, =gStringVar2
- ldr r1, [r4]
- ldr r2, =0x00002ba4
- adds r1, r2
- ldrh r1, [r1]
- movs r6, 0xB
- muls r1, r6
- ldr r5, =gSpeciesNames
- adds r1, r5
- bl StringCopy
- ldr r0, =gStringVar3
- ldr r1, [r4]
- ldr r2, =0x00002ba6
- adds r1, r2
- ldrh r1, [r1]
- muls r1, r6
- adds r1, r5
- bl StringCopy
- ldr r1, =gScriptResult
- movs r0, 0x1
- strh r0, [r1]
- ldr r1, =gUnknown_0203A030
- movs r0, 0
- strb r0, [r1]
- bl TakeTVShowInSearchOfTrainersOffTheAir
-_080F37EA:
- ldr r0, =gUnknown_0858D66C
- lsls r1, r7, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowInSearchOfTrainers
-
- thumb_func_start DoTVShowPokemonAngler
-DoTVShowPokemonAngler: @ 80F3828
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r0, =gScriptResult
- movs r1, 0
- strh r1, [r0]
- ldrb r0, [r4, 0x2]
- ldrb r2, [r4, 0x3]
- cmp r0, r2
- bcs _080F3868
- ldr r0, =gUnknown_0203A030
- strb r1, [r0]
- b _080F3870
- .pool
-_080F3868:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- adds r0, r1, 0
-_080F3870:
- ldrb r5, [r0]
- cmp r5, 0
- beq _080F3880
- cmp r5, 0x1
- beq _080F38B8
- b _080F38E0
- .pool
-_080F3880:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x6]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x4]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r1, [r4, 0x3]
- movs r0, 0x2
- bl sub_80EF340
- bl TVShowDone
- b _080F38E0
- .pool
-_080F38B8:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x6]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r4, 0x4]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r1, [r4, 0x2]
- movs r0, 0x2
- bl sub_80EF340
- bl TVShowDone
-_080F38E0:
- ldr r0, =gUnknown_0858D3B0
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonAngler
-
- thumb_func_start DoTVShowTheWorldOfMasters
-DoTVShowTheWorldOfMasters: @ 80F3904
- push {r4-r6,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r6, =gUnknown_0203A030
- ldrb r5, [r6]
- cmp r5, 0x1
- beq _080F3974
- cmp r5, 0x1
- bgt _080F3948
- cmp r5, 0
- beq _080F394E
- b _080F39BE
- .pool
-_080F3948:
- cmp r5, 0x2
- beq _080F3994
- b _080F39BE
-_080F394E:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xB]
- bl sub_81DB5E8
- ldrh r1, [r4, 0x6]
- movs r0, 0x1
- bl sub_80EF340
- ldrh r1, [r4, 0x2]
- movs r0, 0x2
- bl sub_80EF340
- movs r0, 0x1
- strb r0, [r6]
- b _080F39BE
- .pool
-_080F3974:
- ldr r0, =gStringVar1
- ldrh r2, [r4, 0x8]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- movs r0, 0x2
- strb r0, [r6]
- b _080F39BE
- .pool
-_080F3994:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xB]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrb r1, [r4, 0xA]
- movs r2, 0
- bl GetMapName
- ldr r0, =gStringVar3
- ldrh r2, [r4, 0x4]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- bl TVShowDone
-_080F39BE:
- ldr r0, =gUnknown_0858D3B8
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowTheWorldOfMasters
-
- thumb_func_start DoTVShowTodaysRivalTrainer
-DoTVShowTodaysRivalTrainer: @ 80F39E4
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- adds r2, r0, 0
- cmp r5, 0xA
- bls _080F3A0C
- b _080F3BE8
-_080F3A0C:
- lsls r0, r5, 2
- ldr r1, =_080F3A30
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F3A30:
- .4byte _080F3A5C
- .4byte _080F3B30
- .4byte _080F3B58
- .4byte _080F3B90
- .4byte _080F3BA2
- .4byte _080F3BC4
- .4byte _080F3BD8
- .4byte _080F3A92
- .4byte _080F3AC0
- .4byte _080F3ADC
- .4byte _080F3AF8
-_080F3A5C:
- ldrb r0, [r4, 0x7]
- cmp r0, 0x56
- beq _080F3A6C
- cmp r0, 0x57
- beq _080F3A72
- movs r0, 0x7
- strb r0, [r2]
- b _080F3BE8
-_080F3A6C:
- movs r0, 0x8
- strb r0, [r2]
- b _080F3BE8
-_080F3A72:
- ldrh r1, [r4, 0xA]
- ldr r0, =0x00000117
- cmp r1, r0
- bgt _080F3A8C
- subs r0, 0x2
- cmp r1, r0
- blt _080F3A8C
- movs r0, 0xA
- strb r0, [r2]
- b _080F3BE8
- .pool
-_080F3A8C:
- movs r0, 0x9
- strb r0, [r2]
- b _080F3BE8
-_080F3A92:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xC]
- bl sub_81DB5E8
- ldrh r1, [r4, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- ldr r0, =gStringVar3
- ldrb r1, [r4, 0x7]
- movs r2, 0
- bl GetMapName
-_080F3AB0:
- ldrb r0, [r4, 0x4]
- cmp r0, 0
- bne _080F3B12
- b _080F3B24
- .pool
-_080F3AC0:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xC]
- bl sub_81DB5E8
- ldrh r1, [r4, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- b _080F3AB0
- .pool
-_080F3ADC:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xC]
- bl sub_81DB5E8
- ldrh r1, [r4, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- b _080F3AB0
- .pool
-_080F3AF8:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xC]
- bl sub_81DB5E8
- ldrh r1, [r4, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- ldrb r0, [r4, 0x4]
- cmp r0, 0
- beq _080F3B24
-_080F3B12:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F3BE8
- .pool
-_080F3B24:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F3BE8
- .pool
-_080F3B30:
- ldrb r1, [r4, 0x4]
- movs r0, 0
- bl sub_80EF340
- ldr r0, =0x000008a8
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080F3BCC
- ldr r0, [r4, 0x4]
- ldr r1, =0x00ffff00
- ands r0, r1
- cmp r0, 0
- bne _080F3B6E
- b _080F3B84
- .pool
-_080F3B58:
- ldr r0, =0x000008a8
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080F3BCC
- ldr r0, [r4, 0x4]
- ldr r1, =0x00ffff00
- ands r0, r1
- cmp r0, 0
- beq _080F3B84
-_080F3B6E:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F3BE8
- .pool
-_080F3B84:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F3BE8
- .pool
-_080F3B90:
- ldrh r0, [r4, 0x8]
- cmp r0, 0
- bne _080F3B9C
- movs r0, 0x6
- strb r0, [r2]
- b _080F3BE8
-_080F3B9C:
- movs r0, 0x5
- strb r0, [r2]
- b _080F3BE8
-_080F3BA2:
- ldrb r1, [r4, 0x6]
- movs r0, 0
- bl sub_80EF340
- ldrb r1, [r4, 0x5]
- movs r0, 0x1
- bl sub_80EF340
- ldrh r0, [r4, 0x8]
- cmp r0, 0
- beq _080F3BCC
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F3BE8
- .pool
-_080F3BC4:
- ldrh r1, [r4, 0x8]
- movs r0, 0
- bl sub_80EF340
-_080F3BCC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F3BE8
- .pool
-_080F3BD8:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xC]
- bl sub_81DB5E8
- bl TVShowDone
-_080F3BE8:
- ldr r0, =gUnknown_0858D3C4
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowTodaysRivalTrainer
-
- thumb_func_start DoTVShowDewfordTrendWatcherNetwork
-DoTVShowDewfordTrendWatcherNetwork: @ 80F3C04
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- cmp r5, 0x6
- bls _080F3C2A
- b _080F3D54
-_080F3C2A:
- lsls r0, r5, 2
- ldr r1, =_080F3C4C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F3C4C:
- .4byte _080F3C68
- .4byte _080F3CA0
- .4byte _080F3CA0
- .4byte _080F3CD4
- .4byte _080F3D0C
- .4byte _080F3D0C
- .4byte _080F3D40
-_080F3C68:
- ldr r0, =gStringVar1
- ldrh r1, [r4, 0x4]
- bl CopyEasyChatWord
- ldr r0, =gStringVar2
- ldrh r1, [r4, 0x6]
- bl CopyEasyChatWord
- ldrb r0, [r4, 0x8]
- cmp r0, 0
- bne _080F3C94
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F3D54
- .pool
-_080F3C94:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F3D54
- .pool
-_080F3CA0:
- ldr r0, =gStringVar1
- ldrh r1, [r4, 0x4]
- bl CopyEasyChatWord
- ldr r0, =gStringVar2
- ldrh r1, [r4, 0x6]
- bl CopyEasyChatWord
- ldr r0, =gStringVar3
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x9]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F3D54
- .pool
-_080F3CD4:
- ldr r0, =gStringVar1
- ldrh r1, [r4, 0x4]
- bl CopyEasyChatWord
- ldr r0, =gStringVar2
- ldrh r1, [r4, 0x6]
- bl CopyEasyChatWord
- ldrb r0, [r4, 0x8]
- cmp r0, 0
- bne _080F3D00
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F3D54
- .pool
-_080F3D00:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F3D54
- .pool
-_080F3D0C:
- ldr r0, =gStringVar1
- ldrh r1, [r4, 0x4]
- bl CopyEasyChatWord
- ldr r0, =gStringVar2
- ldrh r1, [r4, 0x6]
- bl CopyEasyChatWord
- ldr r0, =gStringVar3
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x9]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F3D54
- .pool
-_080F3D40:
- ldr r0, =gStringVar1
- ldrh r1, [r4, 0x4]
- bl CopyEasyChatWord
- ldr r0, =gStringVar2
- ldrh r1, [r4, 0x6]
- bl CopyEasyChatWord
- bl TVShowDone
-_080F3D54:
- ldr r0, =gUnknown_0858D3F0
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowDewfordTrendWatcherNetwork
-
- thumb_func_start DoTVShowHoennTreasureInvestigators
-DoTVShowHoennTreasureInvestigators: @ 80F3D74
- push {r4-r7,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r7, =gUnknown_0203A030
- ldrb r6, [r7]
- cmp r6, 0x1
- beq _080F3E02
- cmp r6, 0x1
- bgt _080F3DB8
- cmp r6, 0
- beq _080F3DBE
- b _080F3E5C
- .pool
-_080F3DB8:
- cmp r6, 0x2
- beq _080F3E3C
- b _080F3E5C
-_080F3DBE:
- ldr r4, =gStringVar1
- ldrh r0, [r5, 0x2]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldrb r0, [r5, 0x4]
- cmp r0, 0x57
- bne _080F3DFC
- ldrh r1, [r5, 0x6]
- ldr r0, =0x00000117
- cmp r1, r0
- bgt _080F3DF0
- subs r0, 0x2
- cmp r1, r0
- blt _080F3DF0
- movs r0, 0x2
- strb r0, [r7]
- b _080F3E5C
- .pool
-_080F3DF0:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F3E5C
- .pool
-_080F3DFC:
- movs r0, 0x1
- strb r0, [r7]
- b _080F3E5C
-_080F3E02:
- ldr r4, =gStringVar1
- ldrh r0, [r5, 0x2]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r0, =gStringVar2
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x5]
- bl sub_81DB5E8
- ldr r0, =gStringVar3
- ldrb r1, [r5, 0x4]
- movs r2, 0
- bl GetMapName
- bl TVShowDone
- b _080F3E5C
- .pool
-_080F3E3C:
- ldr r4, =gStringVar1
- ldrh r0, [r5, 0x2]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r0, =gStringVar2
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x5]
- bl sub_81DB5E8
- bl TVShowDone
-_080F3E5C:
- ldr r0, =gUnknown_0858D40C
- lsls r1, r6, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowHoennTreasureInvestigators
-
- thumb_func_start DoTVShowFindThatGamer
-DoTVShowFindThatGamer: @ 80F3E7C
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- cmp r5, 0x1
- beq _080F3F28
- cmp r5, 0x1
- bgt _080F3EC0
- cmp r5, 0
- beq _080F3ECC
- b _080F4008
- .pool
-_080F3EC0:
- cmp r5, 0x2
- beq _080F3F78
- cmp r5, 0x3
- bne _080F3ECA
- b _080F3FCC
-_080F3ECA:
- b _080F4008
-_080F3ECC:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x8]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x3]
- cmp r0, 0
- beq _080F3EE8
- cmp r0, 0x1
- beq _080F3EFC
- b _080F3F04
- .pool
-_080F3EE8:
- ldr r0, =gStringVar2
- ldr r1, =gText_Slots
- bl StringCopy
- b _080F3F04
- .pool
-_080F3EFC:
- ldr r0, =gStringVar2
- ldr r1, =gText_Roulette
- bl StringCopy
-_080F3F04:
- ldrb r1, [r4, 0x2]
- cmp r1, 0x1
- bne _080F3F1C
- ldr r0, =gUnknown_0203A030
- strb r1, [r0]
- b _080F4008
- .pool
-_080F3F1C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F4008
- .pool
-_080F3F28:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x8]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x3]
- cmp r0, 0
- beq _080F3F44
- cmp r0, 0x1
- beq _080F3F58
- b _080F3F60
- .pool
-_080F3F44:
- ldr r0, =gStringVar2
- ldr r1, =gText_Slots
- bl StringCopy
- b _080F3F60
- .pool
-_080F3F58:
- ldr r0, =gStringVar2
- ldr r1, =gText_Roulette
- bl StringCopy
-_080F3F60:
- ldrh r1, [r4, 0x4]
- movs r0, 0x2
- bl sub_80EF340
- bl TVShowDone
- b _080F4008
- .pool
-_080F3F78:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x8]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x3]
- cmp r0, 0
- beq _080F3F94
- cmp r0, 0x1
- beq _080F3FA8
- b _080F3FB0
- .pool
-_080F3F94:
- ldr r0, =gStringVar2
- ldr r1, =gText_Slots
- bl StringCopy
- b _080F3FB0
- .pool
-_080F3FA8:
- ldr r0, =gStringVar2
- ldr r1, =gText_Roulette
- bl StringCopy
-_080F3FB0:
- ldrh r1, [r4, 0x4]
- movs r0, 0x2
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F4008
- .pool
-_080F3FCC:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x8]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x3]
- cmp r1, 0
- beq _080F3FE8
- cmp r1, 0x1
- beq _080F3FFC
- b _080F4004
- .pool
-_080F3FE8:
- ldr r0, =gStringVar2
- ldr r1, =gText_Roulette
- bl StringCopy
- b _080F4004
- .pool
-_080F3FFC:
- ldr r0, =gStringVar2
- ldr r1, =gText_Slots
- bl StringCopy
-_080F4004:
- bl TVShowDone
-_080F4008:
- ldr r0, =gUnknown_0858D418
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowFindThatGamer
-
- thumb_func_start DoTVShowBreakingNewsTV
-DoTVShowBreakingNewsTV: @ 80F4028
- push {r4-r7,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r6, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r7, [r0]
- adds r2, r0, 0
- cmp r7, 0xC
- bls _080F4050
- b _080F4344
-_080F4050:
- lsls r0, r7, 2
- ldr r1, =_080F4074
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F4074:
- .4byte _080F40A8
- .4byte _080F40BA
- .4byte _080F40FC
- .4byte _080F4140
- .4byte _080F4168
- .4byte _080F418C
- .4byte _080F41D0
- .4byte _080F4254
- .4byte _080F42C8
- .4byte _080F42F4
- .4byte _080F42F4
- .4byte _080F4334
- .4byte _080F4284
-_080F40A8:
- ldrb r0, [r6, 0x5]
- cmp r0, 0
- bne _080F40B4
- movs r0, 0x1
- strb r0, [r2]
- b _080F4344
-_080F40B4:
- movs r0, 0x5
- strb r0, [r2]
- b _080F4344
-_080F40BA:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrb r1, [r6, 0x4]
- movs r2, 0
- bl GetMapName
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F4344
- .pool
-_080F40FC:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x2]
- movs r5, 0xB
- muls r1, r5
- ldr r4, =gSpeciesNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r6, 0xA]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F4344
- .pool
-_080F4140:
- ldrh r1, [r6, 0x8]
- movs r0, 0
- bl sub_80EF340
- ldr r4, =gStringVar2
- ldrh r0, [r6, 0x6]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F4344
- .pool
-_080F4168:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrb r1, [r6, 0x4]
- movs r2, 0
- bl GetMapName
- bl TVShowDone
- b _080F4344
- .pool
-_080F418C:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x2]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrb r1, [r6, 0x4]
- movs r2, 0
- bl GetMapName
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F4344
- .pool
-_080F41D0:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x2]
- movs r5, 0xB
- muls r1, r5
- ldr r4, =gSpeciesNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r6, 0xA]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- ldrb r0, [r6, 0x5]
- cmp r0, 0x2
- beq _080F423C
- cmp r0, 0x2
- bgt _080F4218
- cmp r0, 0x1
- beq _080F421E
- b _080F4344
- .pool
-_080F4218:
- cmp r0, 0x3
- beq _080F4248
- b _080F4344
-_080F421E:
- ldrh r0, [r6, 0xC]
- cmp r0, 0
- bne _080F4230
- ldr r1, =gUnknown_0203A030
- movs r0, 0xC
- strb r0, [r1]
- b _080F4344
- .pool
-_080F4230:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F4344
- .pool
-_080F423C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F4344
- .pool
-_080F4248:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xA
- strb r0, [r1]
- b _080F4344
- .pool
-_080F4254:
- ldr r0, =gStringVar1
- ldrh r2, [r6, 0xC]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0xA]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- b _080F42A8
- .pool
-_080F4284:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x2]
- movs r5, 0xB
- muls r1, r5
- ldr r4, =gSpeciesNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r6, 0xA]
- muls r1, r5
- adds r1, r4
-_080F42A8:
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F4344
- .pool
-_080F42C8:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrb r1, [r6, 0x4]
- movs r2, 0
- bl GetMapName
- ldr r1, =gUnknown_0203A030
- movs r0, 0xB
- strb r0, [r1]
- b _080F4344
- .pool
-_080F42F4:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x2]
- movs r4, 0xB
- muls r1, r4
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrb r1, [r6, 0x4]
- movs r2, 0
- bl GetMapName
- ldr r0, =gUnknown_0203A030
- strb r4, [r0]
- b _080F4344
- .pool
-_080F4334:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xE]
- bl sub_81DB5E8
- bl TVShowDone
-_080F4344:
- ldr r0, =gUnknown_0858D428
- lsls r1, r7, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowBreakingNewsTV
-
- thumb_func_start DoTVShowSecretBaseVisit
-DoTVShowSecretBaseVisit: @ 80F4360
- push {r4-r6,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r6, [r0]
- adds r2, r0, 0
- cmp r6, 0xD
- bls _080F4388
- b _080F4588
-_080F4388:
- lsls r0, r6, 2
- ldr r1, =_080F43AC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F43AC:
- .4byte _080F43E4
- .4byte _080F4414
- .4byte _080F44E4
- .4byte _080F4448
- .4byte _080F44E4
- .4byte _080F449C
- .4byte _080F44C0
- .4byte _080F44E4
- .4byte _080F44EA
- .4byte _080F4538
- .4byte _080F4538
- .4byte _080F4538
- .4byte _080F4538
- .4byte _080F4584
-_080F43E4:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0xC]
- bl sub_81DB5E8
- ldrb r0, [r5, 0x3]
- cmp r0, 0
- bne _080F4408
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F4588
- .pool
-_080F4408:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F4588
- .pool
-_080F4414:
- ldr r0, =gStringVar2
- ldrb r1, [r5, 0x4]
- lsls r1, 5
- ldr r2, =gDecorations + 1
- adds r1, r2
- bl StringCopy
- ldrb r0, [r5, 0x3]
- cmp r0, 0x1
- bne _080F443C
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F4588
- .pool
-_080F443C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F4588
- .pool
-_080F4448:
- ldr r0, =gStringVar2
- ldrb r1, [r5, 0x5]
- lsls r1, 5
- ldr r2, =gDecorations + 1
- adds r1, r2
- bl StringCopy
- ldrb r1, [r5, 0x3]
- cmp r1, 0x3
- beq _080F4484
- cmp r1, 0x3
- bgt _080F4470
- cmp r1, 0x2
- beq _080F4476
- b _080F4588
- .pool
-_080F4470:
- cmp r1, 0x4
- beq _080F4490
- b _080F4588
-_080F4476:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F4588
- .pool
-_080F4484:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F4588
- .pool
-_080F4490:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F4588
- .pool
-_080F449C:
- ldr r0, =gStringVar2
- ldrb r1, [r5, 0x6]
- lsls r1, 5
- ldr r4, =gDecorations + 1
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar3
- ldrb r1, [r5, 0x7]
- lsls r1, 5
- adds r1, r4
- b _080F44CA
- .pool
-_080F44C0:
- ldr r0, =gStringVar2
- ldrb r1, [r5, 0x6]
- lsls r1, 5
- ldr r2, =gDecorations + 1
- adds r1, r2
-_080F44CA:
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F4588
- .pool
-_080F44E4:
- movs r0, 0x8
- strb r0, [r2]
- b _080F4588
-_080F44EA:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0xC]
- bl sub_81DB5E8
- ldrb r1, [r5, 0x2]
- cmp r1, 0x18
- bhi _080F450C
- ldr r1, =gUnknown_0203A030
- movs r0, 0xC
- strb r0, [r1]
- b _080F4588
- .pool
-_080F450C:
- cmp r1, 0x31
- bhi _080F451C
- ldr r1, =gUnknown_0203A030
- movs r0, 0xB
- strb r0, [r1]
- b _080F4588
- .pool
-_080F451C:
- cmp r1, 0x45
- bhi _080F452C
- ldr r1, =gUnknown_0203A030
- movs r0, 0xA
- strb r0, [r1]
- b _080F4588
- .pool
-_080F452C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F4588
- .pool
-_080F4538:
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0xC]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r5, 0x8]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r5, 0xA]
- movs r4, 0xD
- muls r1, r4
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gUnknown_0203A030
- strb r4, [r0]
- b _080F4588
- .pool
-_080F4584:
- bl TVShowDone
-_080F4588:
- ldr r0, =gUnknown_0858D45C
- lsls r1, r6, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowSecretBaseVisit
-
- thumb_func_start DoTVShowPokemonLotterWinnerFlashReport
-DoTVShowPokemonLotterWinnerFlashReport: @ 80F45A0
- push {r4-r6,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r6, [r0]
- ldr r0, =gStringVar1
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x5]
- bl sub_81DB5E8
- ldrb r0, [r5, 0x4]
- cmp r0, 0
- bne _080F45FC
- ldr r0, =gStringVar2
- ldr r1, =gText_Jackpot
- bl StringCopy
- b _080F4634
- .pool
-_080F45FC:
- cmp r0, 0x1
- bne _080F4614
- ldr r0, =gStringVar2
- ldr r1, =gText_First
- bl StringCopy
- b _080F4634
- .pool
-_080F4614:
- cmp r0, 0x2
- bne _080F462C
- ldr r0, =gStringVar2
- ldr r1, =gText_Second
- bl StringCopy
- b _080F4634
- .pool
-_080F462C:
- ldr r0, =gStringVar2
- ldr r1, =gText_Third
- bl StringCopy
-_080F4634:
- ldr r4, =gStringVar3
- ldrh r0, [r5, 0x2]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- bl TVShowDone
- ldr r1, =gUnknown_0858D494
- lsls r0, r6, 2
- adds r0, r1
- ldr r0, [r0]
- bl box_related_two__2
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonLotterWinnerFlashReport
-
- thumb_func_start DoTVShowThePokemonBattleSeminar
-DoTVShowThePokemonBattleSeminar: @ 80F466C
- push {r4-r7,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r6, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r7, [r0]
- cmp r7, 0x6
- bls _080F4692
- b _080F4858
-_080F4692:
- lsls r0, r7, 2
- ldr r1, =_080F46B4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F46B4:
- .4byte _080F46D0
- .4byte _080F4714
- .4byte _080F4760
- .4byte _080F47B4
- .4byte _080F47EC
- .4byte _080F4814
- .4byte _080F4838
-_080F46D0:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0x11]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x6]
- movs r5, 0xB
- muls r1, r5
- ldr r4, =gSpeciesNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r6, 0x4]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F4858
- .pool
-_080F4714:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0x11]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x4]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r2, [r6, 0x2]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F4858
- .pool
-_080F4760:
- ldr r0, =gStringVar1
- ldrh r2, [r6, 0x6]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
- bl StringCopy
- ldrb r1, [r6, 0x10]
- cmp r1, 0x2
- beq _080F479C
- cmp r1, 0x2
- bgt _080F4788
- cmp r1, 0x1
- beq _080F478E
- b _080F4824
- .pool
-_080F4788:
- cmp r1, 0x3
- beq _080F47A8
- b _080F4824
-_080F478E:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F4858
- .pool
-_080F479C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F4858
- .pool
-_080F47A8:
- ldr r0, =gUnknown_0203A030
- strb r1, [r0]
- b _080F4858
- .pool
-_080F47B4:
- ldr r0, =gStringVar1
- ldrh r1, [r6, 0x8]
- movs r5, 0xD
- muls r1, r5
- ldr r4, =gMoveNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0xA]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r6, 0xC]
- muls r1, r5
- adds r1, r4
- b _080F4820
- .pool
-_080F47EC:
- ldr r0, =gStringVar1
- ldrh r1, [r6, 0x8]
- movs r5, 0xD
- muls r1, r5
- ldr r4, =gMoveNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0xA]
- muls r1, r5
- adds r1, r4
- b _080F4820
- .pool
-_080F4814:
- ldr r0, =gStringVar2
- ldrh r2, [r6, 0x8]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
-_080F4820:
- bl StringCopy
-_080F4824:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F4858
- .pool
-_080F4838:
- ldr r0, =gStringVar1
- ldrh r1, [r6, 0xE]
- movs r5, 0xD
- muls r1, r5
- ldr r4, =gMoveNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x2]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- bl TVShowDone
-_080F4858:
- ldr r0, =gUnknown_0858D498
- lsls r1, r7, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowThePokemonBattleSeminar
-
- thumb_func_start DoTVShowTrainerFanClubSpecial
-DoTVShowTrainerFanClubSpecial: @ 80F487C
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- cmp r5, 0x5
- bls _080F48A2
- b _080F499A
-_080F48A2:
- lsls r0, r5, 2
- ldr r1, =_080F48C4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F48C4:
- .4byte _080F48DC
- .4byte _080F4944
- .4byte _080F4944
- .4byte _080F4944
- .4byte _080F4944
- .4byte _080F4978
-_080F48DC:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x18]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0x2
- ldrb r2, [r4, 0x17]
- bl sub_81DB5E8
- ldr r0, =gStringVar3
- ldrh r1, [r4, 0x14]
- bl CopyEasyChatWord
- ldrb r1, [r4, 0x16]
- cmp r1, 0x59
- bls _080F4918
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F499A
- .pool
-_080F4918:
- cmp r1, 0x45
- bls _080F4928
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F499A
- .pool
-_080F4928:
- cmp r1, 0x1D
- bls _080F4938
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F499A
- .pool
-_080F4938:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F499A
- .pool
-_080F4944:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x18]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0x2
- ldrb r2, [r4, 0x17]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x16]
- movs r0, 0x2
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F499A
- .pool
-_080F4978:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0xC
- ldrb r2, [r4, 0x18]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0x2
- ldrb r2, [r4, 0x17]
- bl sub_81DB5E8
- ldr r0, =gStringVar3
- ldrh r1, [r4, 0x14]
- bl CopyEasyChatWord
- bl TVShowDone
-_080F499A:
- ldr r0, =gUnknown_0858D320
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowTrainerFanClubSpecial
-
- thumb_func_start DoTVShowTrainerFanClub
-DoTVShowTrainerFanClub: @ 80F49BC
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- adds r2, r0, 0
- cmp r5, 0xB
- bls _080F49E4
- b _080F4B3A
-_080F49E4:
- lsls r0, r5, 2
- ldr r1, =_080F4A08
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F4A08:
- .4byte _080F4A38
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B14
- .4byte _080F4B1A
-_080F4A38:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x8]
- bl sub_81DB5E8
- adds r0, r4, 0
- adds r0, 0x23
- ldrb r0, [r0]
- lsls r0, 8
- adds r1, r4, 0
- adds r1, 0x22
- ldrb r1, [r1]
- adds r0, r1
- movs r1, 0xA
- bl __umodsi3
- cmp r0, 0x9
- bls _080F4A60
- b _080F4B3A
-_080F4A60:
- lsls r0, 2
- ldr r1, =_080F4A74
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F4A74:
- .4byte _080F4A9C
- .4byte _080F4AA8
- .4byte _080F4AB4
- .4byte _080F4AC0
- .4byte _080F4ACC
- .4byte _080F4AD8
- .4byte _080F4AE4
- .4byte _080F4AF0
- .4byte _080F4AFC
- .4byte _080F4B08
-_080F4A9C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4AA8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4AB4:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4AC0:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4ACC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4AD8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4AE4:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4AF0:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4AFC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4B08:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xA
- strb r0, [r1]
- b _080F4B3A
- .pool
-_080F4B14:
- movs r0, 0xB
- strb r0, [r2]
- b _080F4B3A
-_080F4B1A:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x8]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- ldrh r1, [r4, 0x4]
- bl CopyEasyChatWord
- ldr r0, =gStringVar3
- ldrh r1, [r4, 0x6]
- bl CopyEasyChatWord
- bl TVShowDone
-_080F4B3A:
- ldr r0, =gUnknown_0858D4B4
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowTrainerFanClub
-
- thumb_func_start DoTVShowSpotTheCuties
-DoTVShowSpotTheCuties: @ 80F4B5C
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- cmp r5, 0xF
- bls _080F4B82
- b _080F4D84
-_080F4B82:
- lsls r0, r5, 2
- ldr r1, =_080F4BA4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F4BA4:
- .4byte _080F4BE4
- .4byte _080F4C30
- .4byte _080F4C30
- .4byte _080F4C30
- .4byte _080F4C64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D64
- .4byte _080F4D80
-_080F4BE4:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xF]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x10]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x2]
- cmp r1, 0x9
- bhi _080F4C14
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4C14:
- cmp r1, 0x13
- bhi _080F4C24
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4C24:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4C30:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0xF]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x10]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x2]
- movs r0, 0x2
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4C64:
- ldr r0, =gStringVar2
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x10]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x3]
- cmp r0, 0x18
- bls _080F4C76
- b _080F4D84
-_080F4C76:
- lsls r0, 2
- ldr r1, =_080F4C88
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F4C88:
- .4byte _080F4CEC
- .4byte _080F4CF8
- .4byte _080F4CF8
- .4byte _080F4CF8
- .4byte _080F4CF8
- .4byte _080F4D04
- .4byte _080F4D04
- .4byte _080F4D04
- .4byte _080F4D04
- .4byte _080F4D10
- .4byte _080F4D10
- .4byte _080F4D10
- .4byte _080F4D10
- .4byte _080F4D1C
- .4byte _080F4D1C
- .4byte _080F4D1C
- .4byte _080F4D1C
- .4byte _080F4D28
- .4byte _080F4D28
- .4byte _080F4D28
- .4byte _080F4D28
- .4byte _080F4D34
- .4byte _080F4D40
- .4byte _080F4D4C
- .4byte _080F4D58
-_080F4CEC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4CF8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D04:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D10:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D1C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D28:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xA
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D34:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xB
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D40:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xC
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D4C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xD
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D58:
- ldr r1, =gUnknown_0203A030
- movs r0, 0xE
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D64:
- ldr r0, =gStringVar2
- adds r1, r4, 0x4
- ldrb r2, [r4, 0x10]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0xF
- strb r0, [r1]
- b _080F4D84
- .pool
-_080F4D80:
- bl TVShowDone
-_080F4D84:
- ldr r0, =gUnknown_0858D4E4
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowSpotTheCuties
-
- thumb_func_start DoTVShowPokemonNewsBattleFrontier
-DoTVShowPokemonNewsBattleFrontier: @ 80F4D9C
- push {r4-r7,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r6, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r7, [r0]
- adds r2, r0, 0
- cmp r7, 0x12
- bls _080F4DC4
- b _080F5014
-_080F4DC4:
- lsls r0, r7, 2
- ldr r1, =_080F4DE8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F4DE8:
- .4byte _080F4E34
- .4byte _080F4F18
- .4byte _080F4ECE
- .4byte _080F4EF4
- .4byte _080F4EF4
- .4byte _080F4F18
- .4byte _080F4F18
- .4byte _080F4F18
- .4byte _080F4F18
- .4byte _080F4F18
- .4byte _080F4F18
- .4byte _080F4F18
- .4byte _080F4F18
- .4byte _080F4F18
- .4byte _080F4F3C
- .4byte _080F4F74
- .4byte _080F4F9C
- .4byte _080F4FE0
- .4byte _080F5004
-_080F4E34:
- ldrb r0, [r6, 0xD]
- subs r0, 0x1
- cmp r0, 0xC
- bls _080F4E3E
- b _080F5014
-_080F4E3E:
- lsls r0, 2
- ldr r1, =_080F4E4C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F4E4C:
- .4byte _080F4E80
- .4byte _080F4E86
- .4byte _080F4E8C
- .4byte _080F4E92
- .4byte _080F4E98
- .4byte _080F4E9E
- .4byte _080F4EA4
- .4byte _080F4EAA
- .4byte _080F4EB0
- .4byte _080F4EB6
- .4byte _080F4EBC
- .4byte _080F4EC2
- .4byte _080F4EC8
-_080F4E80:
- movs r0, 0x1
- strb r0, [r2]
- b _080F5014
-_080F4E86:
- movs r0, 0x2
- strb r0, [r2]
- b _080F5014
-_080F4E8C:
- movs r0, 0x3
- strb r0, [r2]
- b _080F5014
-_080F4E92:
- movs r0, 0x4
- strb r0, [r2]
- b _080F5014
-_080F4E98:
- movs r0, 0x5
- strb r0, [r2]
- b _080F5014
-_080F4E9E:
- movs r0, 0x6
- strb r0, [r2]
- b _080F5014
-_080F4EA4:
- movs r0, 0x7
- strb r0, [r2]
- b _080F5014
-_080F4EAA:
- movs r0, 0x8
- strb r0, [r2]
- b _080F5014
-_080F4EB0:
- movs r0, 0x9
- strb r0, [r2]
- b _080F5014
-_080F4EB6:
- movs r0, 0xA
- strb r0, [r2]
- b _080F5014
-_080F4EBC:
- movs r0, 0xB
- strb r0, [r2]
- b _080F5014
-_080F4EC2:
- movs r0, 0xC
- strb r0, [r2]
- b _080F5014
-_080F4EC8:
- movs r0, 0xD
- strb r0, [r2]
- b _080F5014
-_080F4ECE:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xC]
- bl sub_81DB5E8
- ldrh r1, [r6, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x10
- strb r0, [r1]
- b _080F5014
- .pool
-_080F4EF4:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xC]
- bl sub_81DB5E8
- ldrh r1, [r6, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0xF
- strb r0, [r1]
- b _080F5014
- .pool
-_080F4F18:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xC]
- bl sub_81DB5E8
- ldrh r1, [r6, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0xE
- strb r0, [r1]
- b _080F5014
- .pool
-_080F4F3C:
- ldr r0, =gStringVar1
- ldrh r1, [r6, 0x4]
- movs r5, 0xB
- muls r1, r5
- ldr r4, =gSpeciesNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x6]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r6, 0x8]
- muls r1, r5
- adds r1, r4
- b _080F4FEC
- .pool
-_080F4F74:
- ldr r0, =gStringVar1
- ldrh r1, [r6, 0x4]
- movs r5, 0xB
- muls r1, r5
- ldr r4, =gSpeciesNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x6]
- muls r1, r5
- adds r1, r4
- b _080F4FEC
- .pool
-_080F4F9C:
- ldr r0, =gStringVar1
- ldrh r1, [r6, 0x4]
- movs r5, 0xB
- muls r1, r5
- ldr r4, =gSpeciesNames
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar2
- ldrh r1, [r6, 0x6]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- ldr r0, =gStringVar3
- ldrh r1, [r6, 0x8]
- muls r1, r5
- adds r1, r4
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x11
- strb r0, [r1]
- b _080F5014
- .pool
-_080F4FE0:
- ldr r0, =gStringVar1
- ldrh r2, [r6, 0xA]
- movs r1, 0xB
- muls r1, r2
- ldr r2, =gSpeciesNames
- adds r1, r2
-_080F4FEC:
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- movs r0, 0x12
- strb r0, [r1]
- b _080F5014
- .pool
-_080F5004:
- ldr r0, =gStringVar1
- adds r1, r6, 0
- adds r1, 0x13
- ldrb r2, [r6, 0xC]
- bl sub_81DB5E8
- bl TVShowDone
-_080F5014:
- ldr r0, =gUnknown_0858D524
- lsls r1, r7, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonNewsBattleFrontier
-
- thumb_func_start DoTVShowWhatsNo1InHoennToday
-DoTVShowWhatsNo1InHoennToday: @ 80F5030
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- cmp r5, 0x8
- bls _080F5056
- b _080F5164
-_080F5056:
- lsls r0, r5, 2
- ldr r1, =_080F5078
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F5078:
- .4byte _080F509C
- .4byte _080F5130
- .4byte _080F5130
- .4byte _080F5130
- .4byte _080F5130
- .4byte _080F5130
- .4byte _080F5130
- .4byte _080F5130
- .4byte _080F5154
-_080F509C:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x5]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x4]
- cmp r0, 0x6
- bhi _080F5164
- lsls r0, 2
- ldr r1, =_080F50C0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F50C0:
- .4byte _080F50DC
- .4byte _080F50E8
- .4byte _080F50F4
- .4byte _080F5100
- .4byte _080F510C
- .4byte _080F5118
- .4byte _080F5124
-_080F50DC:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x1
- strb r0, [r1]
- b _080F5164
- .pool
-_080F50E8:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F5164
- .pool
-_080F50F4:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F5164
- .pool
-_080F5100:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F5164
- .pool
-_080F510C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F5164
- .pool
-_080F5118:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F5164
- .pool
-_080F5124:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F5164
- .pool
-_080F5130:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x5]
- bl sub_81DB5E8
- ldrh r1, [r4, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F5164
- .pool
-_080F5154:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x5]
- bl sub_81DB5E8
- bl TVShowDone
-_080F5164:
- ldr r0, =gUnknown_0858D570
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowWhatsNo1InHoennToday
-
- thumb_func_start sub_80F5180
-sub_80F5180: @ 80F5180
- push {r4,lr}
- movs r1, 0
- movs r2, 0
- ldr r3, [r0, 0xC]
- movs r4, 0x1
-_080F518A:
- adds r0, r3, 0
- lsrs r0, r1
- ands r0, r4
- cmp r0, 0
- beq _080F519A
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
-_080F519A:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x1F
- bls _080F518A
- adds r0, r2, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80F5180
-
- thumb_func_start sub_80F51AC
-sub_80F51AC: @ 80F51AC
- push {r4-r6,lr}
- lsls r1, 24
- lsrs r4, r1, 24
- movs r2, 0
- movs r3, 0
- ldr r1, [r0, 0xC]
- movs r5, 0x1
- ldr r6, =gUnknown_0858D690
-_080F51BC:
- adds r0, r1, 0
- lsrs r0, r2
- ands r0, r5
- cmp r0, 0
- beq _080F51DA
- cmp r3, r4
- bne _080F51D4
- adds r0, r2, r6
- ldrb r0, [r0]
- b _080F51E6
- .pool
-_080F51D4:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
-_080F51DA:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x1F
- bls _080F51BC
- movs r0, 0
-_080F51E6:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80F51AC
-
- thumb_func_start DoTVShowSecretBaseSecrets
-DoTVShowSecretBaseSecrets: @ 80F51EC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r5, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r2, [r0]
- mov r9, r2
- adds r2, r0, 0
- mov r0, r9
- cmp r0, 0x2B
- bls _080F521E
- b _080F552A
-_080F521E:
- lsls r0, 2
- ldr r1, =_080F5240
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F5240:
- .4byte _080F52F0
- .4byte _080F5348
- .4byte _080F53C4
- .4byte _080F5444
- .4byte _080F5498
- .4byte _080F5498
- .4byte _080F5498
- .4byte _080F54C4
- .4byte _080F54E8
- .4byte _080F54EC
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F54F0
- .4byte _080F5510
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
- .4byte _080F5526
-_080F52F0:
- ldr r0, =gStringVar1
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x1C]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x1B]
- bl sub_81DB5E8
- adds r0, r5, 0
- bl sub_80F5180
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0
- bne _080F5328
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F552A
- .pool
-_080F5328:
- movs r0, 0x1
- strb r0, [r5, 0x12]
- bl Random
- ldr r4, =gUnknown_0203A031
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl __modsi3
- strb r0, [r4]
- ldrb r1, [r4]
- b _080F542A
- .pool
-_080F5348:
- ldr r0, =gStringVar2
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x1B]
- bl sub_81DB5E8
- adds r0, r5, 0
- bl sub_80F5180
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x1
- beq _080F53DE
- cmp r6, 0x2
- beq _080F5370
- movs r4, 0
- b _080F538A
- .pool
-_080F5370:
- strb r6, [r5, 0x12]
- ldr r0, =gUnknown_0203A031
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F5384
- adds r0, r5, 0
- movs r1, 0x1
- b _080F542C
- .pool
-_080F5384:
- adds r0, r5, 0
- movs r1, 0
- b _080F542C
-_080F538A:
- bl Random
- ldr r7, =gUnknown_0203A031
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl __modsi3
- strb r0, [r7, 0x1]
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r7]
- cmp r0, r1
- bne _080F53B2
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, =0x0000fffe
- cmp r4, r0
- bls _080F538A
-_080F53B2:
- movs r0, 0x2
- strb r0, [r5, 0x12]
- ldrb r1, [r7, 0x1]
- b _080F542A
- .pool
-_080F53C4:
- ldr r0, =gStringVar2
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x1B]
- bl sub_81DB5E8
- adds r0, r5, 0
- bl sub_80F5180
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x2
- bne _080F53F0
-_080F53DE:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F552A
- .pool
-_080F53F0:
- movs r4, 0
- ldr r7, =gUnknown_0203A031
- ldr r2, =0x0000fffe
- mov r8, r2
-_080F53F8:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl __modsi3
- strb r0, [r7, 0x2]
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r7]
- cmp r0, r1
- beq _080F5418
- ldrb r2, [r7, 0x1]
- cmp r0, r2
- bne _080F5422
-_080F5418:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r8
- bls _080F53F8
-_080F5422:
- movs r0, 0x3
- strb r0, [r5, 0x12]
- ldr r0, =gUnknown_0203A031
- ldrb r1, [r0, 0x2]
-_080F542A:
- adds r0, r5, 0
-_080F542C:
- bl sub_80F51AC
- ldr r1, =gUnknown_0203A030
- strb r0, [r1]
- b _080F552A
- .pool
-_080F5444:
- ldr r0, =gStringVar1
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x1C]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x1B]
- bl sub_81DB5E8
- ldrh r1, [r5, 0x2]
- movs r0, 0x2
- bl sub_80EF340
- ldrh r0, [r5, 0x2]
- cmp r0, 0x1E
- bhi _080F547C
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F552A
- .pool
-_080F547C:
- cmp r0, 0x64
- bhi _080F548C
- ldr r1, =gUnknown_0203A030
- movs r0, 0x5
- strb r0, [r1]
- b _080F552A
- .pool
-_080F548C:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x6
- strb r0, [r1]
- b _080F552A
- .pool
-_080F5498:
- ldr r0, =gStringVar1
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x1C]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x1B]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F552A
- .pool
-_080F54C4:
- ldr r0, =gStringVar1
- adds r1, r5, 0x4
- ldrb r2, [r5, 0x1C]
- bl sub_81DB5E8
- ldr r0, =gStringVar2
- adds r1, r5, 0
- adds r1, 0x13
- ldrb r2, [r5, 0x1B]
- bl sub_81DB5E8
- bl TVShowDone
- b _080F552A
- .pool
-_080F54E8:
- movs r0, 0x3
- b _080F5528
-_080F54EC:
- movs r0, 0x3
- b _080F5528
-_080F54F0:
- ldr r4, =gStringVar2
- ldrh r0, [r5, 0x10]
- bl ItemId_GetItem
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r1, =gUnknown_0203A030
- ldrb r0, [r5, 0x12]
- strb r0, [r1]
- b _080F552A
- .pool
-_080F5510:
- adds r0, r5, 0
- adds r0, 0x22
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080F5522
- movs r0, 0x16
- b _080F5528
-_080F5522:
- movs r0, 0x15
- b _080F5528
-_080F5526:
- ldrb r0, [r5, 0x12]
-_080F5528:
- strb r0, [r2]
-_080F552A:
- ldr r0, =gUnknown_0858D594
- mov r2, r9
- lsls r1, r2, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowSecretBaseSecrets
-
- thumb_func_start DoTVShowSafariFanClub
-DoTVShowSafariFanClub: @ 80F5548
- push {r4,r5,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gUnknown_0203A030
- ldrb r5, [r0]
- adds r2, r0, 0
- cmp r5, 0xA
- bls _080F5570
- b _080F56BC
-_080F5570:
- lsls r0, r5, 2
- ldr r1, =_080F5594
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F5594:
- .4byte _080F55C0
- .4byte _080F55DC
- .4byte _080F5614
- .4byte _080F5628
- .4byte _080F569A
- .4byte _080F562E
- .4byte _080F5650
- .4byte _080F5680
- .4byte _080F5694
- .4byte _080F569A
- .4byte _080F56B8
-_080F55C0:
- ldrb r1, [r4, 0x2]
- cmp r1, 0
- bne _080F55CC
- movs r0, 0x6
- strb r0, [r2]
- b _080F56BC
-_080F55CC:
- cmp r1, 0x3
- bhi _080F55D6
- movs r0, 0x5
- strb r0, [r2]
- b _080F56BC
-_080F55D6:
- movs r0, 0x1
- strb r0, [r2]
- b _080F56BC
-_080F55DC:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x4]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- ldrb r0, [r4, 0x3]
- cmp r0, 0
- bne _080F5608
- ldr r1, =gUnknown_0203A030
- movs r0, 0x3
- strb r0, [r1]
- b _080F56BC
- .pool
-_080F5608:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x2
- strb r0, [r1]
- b _080F56BC
- .pool
-_080F5614:
- ldrb r1, [r4, 0x3]
- movs r0, 0x1
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x4
- strb r0, [r1]
- b _080F56BC
- .pool
-_080F5628:
- movs r0, 0x4
- strb r0, [r2]
- b _080F56BC
-_080F562E:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x4]
- bl sub_81DB5E8
- ldrb r1, [r4, 0x2]
- movs r0, 0x1
- bl sub_80EF340
- ldrb r0, [r4, 0x3]
- cmp r0, 0
- beq _080F5662
- b _080F5674
- .pool
-_080F5650:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x4]
- bl sub_81DB5E8
- ldrb r0, [r4, 0x3]
- cmp r0, 0
- bne _080F5674
-_080F5662:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x8
- strb r0, [r1]
- b _080F56BC
- .pool
-_080F5674:
- ldr r1, =gUnknown_0203A030
- movs r0, 0x7
- strb r0, [r1]
- b _080F56BC
- .pool
-_080F5680:
- ldrb r1, [r4, 0x3]
- movs r0, 0x1
- bl sub_80EF340
- ldr r1, =gUnknown_0203A030
- movs r0, 0x9
- strb r0, [r1]
- b _080F56BC
- .pool
-_080F5694:
- movs r0, 0x9
- strb r0, [r2]
- b _080F56BC
-_080F569A:
- ldr r0, =gStringVar1
- adds r1, r4, 0
- adds r1, 0x13
- ldrb r2, [r4, 0x4]
- bl sub_81DB5E8
- ldr r1, =gUnknown_0203A030
- movs r0, 0xA
- strb r0, [r1]
- b _080F56BC
- .pool
-_080F56B8:
- bl TVShowDone
-_080F56BC:
- ldr r0, =gUnknown_0858D640
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowSafariFanClub
-
- thumb_func_start DoTVShowPokemonContestLiveUpdates2
-DoTVShowPokemonContestLiveUpdates2: @ 80F56D4
- push {r4-r6,lr}
- ldr r2, =gSaveBlock1Ptr
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =0x000027cc
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- ldr r1, =gScriptResult
- movs r0, 0
- strh r0, [r1]
- ldr r6, =gUnknown_0203A030
- ldrb r5, [r6]
- cmp r5, 0x2
- bgt _080F5718
- cmp r5, 0x1
- bge _080F5744
- cmp r5, 0
- beq _080F571E
- b _080F575E
- .pool
-_080F5718:
- cmp r5, 0x3
- beq _080F574E
- b _080F575E
-_080F571E:
- ldr r0, =gStringVar1
- ldrb r1, [r4, 0xA]
- bl sub_818E868
- ldrb r1, [r4, 0x16]
- cmp r1, 0x1
- bne _080F5734
- strb r1, [r6]
- b _080F575E
- .pool
-_080F5734:
- cmp r1, 0
- bne _080F573E
- movs r0, 0x2
- strb r0, [r6]
- b _080F575E
-_080F573E:
- movs r0, 0x3
- strb r0, [r6]
- b _080F575E
-_080F5744:
- ldr r0, =gStringVar3
- adds r1, r4, 0x2
- ldrb r2, [r4, 0x17]
- bl sub_81DB5E8
-_080F574E:
- ldr r0, =gStringVar2
- adds r1, r4, 0
- adds r1, 0xB
- ldrb r2, [r4, 0x18]
- bl sub_81DB5E8
- bl TVShowDone
-_080F575E:
- ldr r0, =gUnknown_0858D384
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- bl box_related_two__2
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoTVShowPokemonContestLiveUpdates2
-
- thumb_func_start TVShowDone
-TVShowDone: @ 80F577C
- ldr r1, =gScriptResult
- movs r0, 0x1
- strh r0, [r1]
- ldr r1, =gUnknown_0203A030
- movs r0, 0
- strb r0, [r1]
- ldr r0, =gSaveBlock1Ptr
- ldr r2, [r0]
- ldr r0, =gSpecialVar_0x8004
- ldrh r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r2, r0
- ldr r0, =0x000027cd
- adds r2, r0
- movs r0, 0
- strb r0, [r2]
- bx lr
- .pool
- thumb_func_end TVShowDone
-
- thumb_func_start ResetTVShowState
-ResetTVShowState: @ 80F57B8
- ldr r1, =gUnknown_0203A030
- movs r0, 0
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end ResetTVShowState
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/unk_text_util_2.s b/asm/unk_text_util_2.s
deleted file mode 100755
index 7f1a5ef70..000000000
--- a/asm/unk_text_util_2.s
+++ /dev/null
@@ -1,583 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start Font6Func
-@ int Font6Func(struct TextPrinter *x)
-Font6Func: @ 81BA250
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r6, 0
- adds r4, 0x14
- ldrb r0, [r6, 0x1C]
- cmp r0, 0x6
- bls _081BA260
- b _081BA660
-_081BA260:
- lsls r0, 2
- ldr r1, =_081BA270
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081BA270:
- .4byte _081BA28C
- .4byte _081BA554
- .4byte _081BA566
- .4byte _081BA590
- .4byte _081BA5C8
- .4byte _081BA63C
- .4byte _081BA64E
-_081BA28C:
- ldr r2, =gMain
- ldrh r1, [r2, 0x2C]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _081BA2A6
- ldrb r1, [r4]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _081BA2A6
- movs r0, 0
- strb r0, [r6, 0x1E]
-_081BA2A6:
- ldrb r1, [r6, 0x1E]
- cmp r1, 0
- beq _081BA2E8
- ldrb r0, [r6, 0x1D]
- cmp r0, 0
- beq _081BA2E8
- subs r0, r1, 0x1
- strb r0, [r6, 0x1E]
- ldr r0, =gTextFlags
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _081BA2C4
- b _081BA50E
-_081BA2C4:
- ldrh r1, [r2, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _081BA2D0
- b _081BA50E
-_081BA2D0:
- ldrb r0, [r4]
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r4]
- movs r0, 0
- strb r0, [r6, 0x1E]
- b _081BA50E
- .pool
-_081BA2E8:
- ldr r2, =gTextFlags
- ldrb r1, [r2]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _081BA2FC
- movs r0, 0x3
- b _081BA2FE
- .pool
-_081BA2FC:
- ldrb r0, [r6, 0x1D]
-_081BA2FE:
- strb r0, [r6, 0x1E]
- ldr r0, [r6]
- ldrb r3, [r0]
- adds r0, 0x1
- str r0, [r6]
- adds r0, r3, 0
- subs r0, 0xF8
- cmp r0, 0x7
- bls _081BA312
- b _081BA52E
-_081BA312:
- lsls r0, 2
- ldr r1, =_081BA320
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081BA320:
- .4byte _081BA524
- .4byte _081BA512
- .4byte _081BA504
- .4byte _081BA500
- .4byte _081BA36E
- .4byte _081BA368
- .4byte _081BA340
- .4byte _081BA660
-_081BA340:
- ldrb r0, [r6, 0x6]
- strb r0, [r6, 0x8]
- ldrb r1, [r6, 0x5]
- ldr r0, =gFonts
- ldr r2, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r6, 0xB]
- ldrb r0, [r0, 0x5]
- adds r1, r0
- ldrb r0, [r6, 0x9]
- adds r0, r1
- strb r0, [r6, 0x9]
-_081BA35E:
- movs r0, 0x2
- b _081BA662
- .pool
-_081BA368:
- ldr r0, [r6]
- adds r0, 0x1
- b _081BA4C4
-_081BA36E:
- ldr r0, [r6]
- ldrb r3, [r0]
- adds r0, 0x1
- str r0, [r6]
- subs r0, r3, 0x1
- cmp r0, 0xF
- bls _081BA37E
- b _081BA52E
-_081BA37E:
- lsls r0, 2
- ldr r1, =_081BA38C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_081BA38C:
- .4byte _081BA3CC
- .4byte _081BA3EE
- .4byte _081BA412
- .4byte _081BA42C
- .4byte _081BA478
- .4byte _081BA47E
- .4byte _081BA35E
- .4byte _081BA498
- .4byte _081BA4A8
- .4byte _081BA4BC
- .4byte _081BA4C0
- .4byte _081BA4C8
- .4byte _081BA4D2
- .4byte _081BA4DE
- .4byte _081BA4EE
- .4byte _081BA4C0
-_081BA3CC:
- ldr r2, [r6]
- ldrb r1, [r2]
- lsls r1, 4
- ldrb r3, [r6, 0xC]
- movs r0, 0xF
- ands r0, r3
- orrs r0, r1
- strb r0, [r6, 0xC]
- adds r2, 0x1
- str r2, [r6]
- lsls r0, 24
- lsrs r0, 28
- ldrb r2, [r6, 0xD]
- lsls r1, r2, 28
- lsrs r1, 28
- lsrs r2, 4
- b _081BA472
-_081BA3EE:
- ldr r1, [r6]
- ldrb r2, [r1]
- movs r0, 0xF
- ands r0, r2
- ldrb r3, [r6, 0xD]
- movs r2, 0x10
- negs r2, r2
- ands r2, r3
- orrs r2, r0
- strb r2, [r6, 0xD]
- adds r1, 0x1
- str r1, [r6]
- ldrb r0, [r6, 0xC]
- lsrs r0, 4
- lsls r1, r2, 28
- lsrs r1, 28
- lsrs r2, 4
- b _081BA472
-_081BA412:
- ldr r1, [r6]
- ldrb r0, [r1]
- lsls r0, 4
- ldrb r3, [r6, 0xD]
- movs r2, 0xF
- ands r2, r3
- orrs r2, r0
- strb r2, [r6, 0xD]
- adds r1, 0x1
- str r1, [r6]
- ldrb r0, [r6, 0xC]
- lsrs r0, 4
- b _081BA46A
-_081BA42C:
- ldr r3, [r6]
- ldrb r1, [r3]
- lsls r1, 4
- ldrb r4, [r6, 0xC]
- movs r2, 0xF
- adds r0, r2, 0
- ands r0, r4
- orrs r0, r1
- strb r0, [r6, 0xC]
- adds r5, r3, 0x1
- str r5, [r6]
- ldrb r3, [r3, 0x1]
- adds r1, r2, 0
- ands r1, r3
- ldrb r4, [r6, 0xD]
- movs r3, 0x10
- negs r3, r3
- ands r3, r4
- orrs r3, r1
- strb r3, [r6, 0xD]
- adds r4, r5, 0x1
- str r4, [r6]
- ldrb r1, [r5, 0x1]
- lsls r1, 4
- ands r2, r3
- orrs r2, r1
- strb r2, [r6, 0xD]
- adds r4, 0x1
- str r4, [r6]
- lsls r0, 24
- lsrs r0, 28
-_081BA46A:
- lsls r1, r2, 28
- lsrs r1, 28
- lsls r2, 24
- lsrs r2, 28
-_081BA472:
- bl GenerateFontHalfRowLookupTable
- b _081BA35E
-_081BA478:
- ldr r0, [r6]
- adds r0, 0x1
- b _081BA4C4
-_081BA47E:
- ldr r0, [r6]
- ldrb r0, [r0]
- movs r1, 0xF
- ands r1, r0
- ldrb r2, [r4]
- movs r0, 0x10
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4]
- ldr r0, [r6]
- adds r0, 0x1
- b _081BA4C4
-_081BA498:
- ldr r0, [r6]
- ldrb r1, [r0]
- strb r1, [r6, 0x1E]
- adds r0, 0x1
- str r0, [r6]
- movs r0, 0x6
- strb r0, [r6, 0x1C]
- b _081BA35E
-_081BA4A8:
- movs r0, 0x1
- strb r0, [r6, 0x1C]
- ldrb r1, [r2]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _081BA50E
- movs r0, 0
- strb r0, [r4, 0x2]
- b _081BA50E
-_081BA4BC:
- movs r0, 0x5
- b _081BA64A
-_081BA4C0:
- ldr r0, [r6]
- adds r0, 0x2
-_081BA4C4:
- str r0, [r6]
- b _081BA35E
-_081BA4C8:
- ldr r1, [r6]
- adds r0, r1, 0x1
- str r0, [r6]
- ldrb r3, [r1, 0x1]
- b _081BA52E
-_081BA4D2:
- ldr r1, [r6]
- ldrb r0, [r1]
- ldrb r2, [r6, 0x6]
- adds r0, r2
- strb r0, [r6, 0x8]
- b _081BA4E8
-_081BA4DE:
- ldr r1, [r6]
- ldrb r0, [r1]
- ldrb r2, [r6, 0x7]
- adds r0, r2
- strb r0, [r6, 0x9]
-_081BA4E8:
- adds r1, 0x1
- str r1, [r6]
- b _081BA35E
-_081BA4EE:
- ldrb r0, [r6, 0x4]
- ldrb r2, [r6, 0xD]
- lsls r2, 28
- lsrs r1, r2, 4
- orrs r1, r2
- lsrs r1, 24
- bl FillWindowPixelBuffer
- b _081BA35E
-_081BA500:
- movs r0, 0x2
- b _081BA506
-_081BA504:
- movs r0, 0x3
-_081BA506:
- strb r0, [r6, 0x1C]
- adds r0, r6, 0
- bl TextPrinterInitDownArrowCounters
-_081BA50E:
- movs r0, 0x3
- b _081BA662
-_081BA512:
- ldr r0, [r6]
- ldrb r3, [r0]
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- orrs r3, r1
- adds r0, 0x1
- str r0, [r6]
- b _081BA52E
-_081BA524:
- ldr r0, [r6]
- adds r0, 0x1
- str r0, [r6]
- movs r0, 0
- b _081BA662
-_081BA52E:
- adds r0, r3, 0
- bl DecompressGlyphFont6
- adds r0, r6, 0
- bl CopyGlyphToWindow
- ldr r0, =gUnknown_03002F90
- adds r0, 0x80
- ldrb r1, [r6, 0xA]
- ldrb r0, [r0]
- adds r1, r0
- ldrb r0, [r6, 0x8]
- adds r0, r1
- strb r0, [r6, 0x8]
- movs r0, 0
- b _081BA662
- .pool
-_081BA554:
- adds r0, r6, 0
- bl TextPrinterWait
- lsls r0, 16
- cmp r0, 0
- beq _081BA50E
- movs r0, 0
- strb r0, [r6, 0x1C]
- b _081BA50E
-_081BA566:
- adds r0, r6, 0
- bl TextPrinterWaitWithDownArrow
- lsls r0, 16
- cmp r0, 0
- beq _081BA50E
- ldrb r0, [r6, 0x4]
- ldrb r2, [r6, 0xD]
- lsls r2, 28
- lsrs r1, r2, 4
- orrs r1, r2
- lsrs r1, 24
- bl FillWindowPixelBuffer
- ldrb r0, [r6, 0x6]
- movs r1, 0
- strb r0, [r6, 0x8]
- ldrb r0, [r6, 0x7]
- strb r0, [r6, 0x9]
- strb r1, [r6, 0x1C]
- b _081BA50E
-_081BA590:
- adds r0, r6, 0
- bl TextPrinterWaitWithDownArrow
- lsls r0, 16
- cmp r0, 0
- beq _081BA50E
- adds r0, r6, 0
- bl TextPrinterClearDownArrow
- ldrb r1, [r6, 0x5]
- ldr r0, =gFonts
- ldr r2, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r6, 0xB]
- ldrb r0, [r0, 0x5]
- adds r1, r0
- strb r1, [r6, 0x1F]
- ldrb r0, [r6, 0x6]
- strb r0, [r6, 0x8]
- movs r0, 0x4
- strb r0, [r6, 0x1C]
- b _081BA50E
- .pool
-_081BA5C8:
- ldrb r2, [r6, 0x1F]
- cmp r2, 0
- beq _081BA638
- ldr r4, =gUnknown_08616124
- ldr r5, =gSaveBlock2Ptr
- ldr r0, [r5]
- ldrb r0, [r0, 0x14]
- lsls r1, r0, 29
- lsrs r0, r1, 29
- adds r0, r4
- ldrb r0, [r0]
- cmp r2, r0
- bcs _081BA604
- ldrb r0, [r6, 0x4]
- ldrb r1, [r6, 0xD]
- lsls r1, 28
- lsrs r3, r1, 4
- orrs r3, r1
- lsrs r3, 24
- movs r1, 0
- bl ScrollWindow
- movs r0, 0
- strb r0, [r6, 0x1F]
- b _081BA62E
- .pool
-_081BA604:
- ldrb r0, [r6, 0x4]
- lsrs r1, 29
- adds r1, r4
- ldrb r2, [r1]
- ldrb r1, [r6, 0xD]
- lsls r1, 28
- lsrs r3, r1, 4
- orrs r3, r1
- lsrs r3, 24
- movs r1, 0
- bl ScrollWindow
- ldr r0, [r5]
- ldrb r0, [r0, 0x14]
- lsls r0, 29
- lsrs r0, 29
- adds r0, r4
- ldrb r1, [r6, 0x1F]
- ldrb r0, [r0]
- subs r1, r0
- strb r1, [r6, 0x1F]
-_081BA62E:
- ldrb r0, [r6, 0x4]
- movs r1, 0x2
- bl CopyWindowToVram
- b _081BA50E
-_081BA638:
- strb r2, [r6, 0x1C]
- b _081BA50E
-_081BA63C:
- bl IsSEPlaying
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _081BA64A
- b _081BA50E
-_081BA64A:
- strb r0, [r6, 0x1C]
- b _081BA50E
-_081BA64E:
- ldrb r0, [r6, 0x1E]
- adds r1, r0, 0
- cmp r1, 0
- beq _081BA65C
- subs r0, 0x1
- strb r0, [r6, 0x1E]
- b _081BA50E
-_081BA65C:
- strb r1, [r6, 0x1C]
- b _081BA50E
-_081BA660:
- movs r0, 0x1
-_081BA662:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end Font6Func
-
- thumb_func_start DecompressGlyphFont6
-DecompressGlyphFont6: @ 81BA668
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r2, r0, 19
- lsls r2, 9
- movs r1, 0xE0
- lsls r1, 11
- ands r1, r0
- lsrs r1, 11
- ldr r0, =gFont6BrailleGlyphs
- adds r1, r0
- adds r5, r2, r1
- ldr r4, =gUnknown_03002F90
- adds r0, r5, 0
- adds r1, r4, 0
- bl DecompressGlyphTile
- adds r0, r5, 0
- adds r0, 0x10
- adds r1, r4, 0
- adds r1, 0x20
- bl DecompressGlyphTile
- movs r1, 0x80
- lsls r1, 1
- adds r0, r5, r1
- adds r1, r4, 0
- adds r1, 0x40
- bl DecompressGlyphTile
- movs r1, 0x88
- lsls r1, 1
- adds r0, r5, r1
- adds r1, r4, 0
- adds r1, 0x60
- bl DecompressGlyphTile
- adds r0, r4, 0
- adds r0, 0x80
- movs r1, 0x10
- strb r1, [r0]
- adds r0, 0x1
- strb r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DecompressGlyphFont6
-
- thumb_func_start GetGlyphWidthFont6
-GetGlyphWidthFont6: @ 81BA6CC
- movs r0, 0x10
- bx lr
- thumb_func_end GetGlyphWidthFont6
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/unknown_task.s b/asm/unknown_task.s
index e3526c809..f6b96287e 100644
--- a/asm/unknown_task.s
+++ b/asm/unknown_task.s
@@ -267,35 +267,35 @@ _080BA1D8:
.4byte _080BA250
.4byte _080BA24C
_080BA214:
- ldr r0, =gUnknown_02022E14
+ ldr r0, =gBattle_BG0_X
b _080BA24E
.pool
_080BA21C:
- ldr r0, =gUnknown_02022E16
+ ldr r0, =gBattle_BG0_Y
b _080BA24E
.pool
_080BA224:
- ldr r0, =gUnknown_02022E18
+ ldr r0, =gBattle_BG1_X
b _080BA24E
.pool
_080BA22C:
- ldr r0, =gUnknown_02022E1A
+ ldr r0, =gBattle_BG1_Y
b _080BA24E
.pool
_080BA234:
- ldr r0, =gUnknown_02022E1C
+ ldr r0, =gBattle_BG2_X
b _080BA24E
.pool
_080BA23C:
- ldr r0, =gUnknown_02022E1E
+ ldr r0, =gBattle_BG2_Y
b _080BA24E
.pool
_080BA244:
- ldr r0, =gUnknown_02022E20
+ ldr r0, =gBattle_BG3_X
b _080BA24E
.pool
_080BA24C:
- ldr r0, =gUnknown_02022E22
+ ldr r0, =gBattle_BG3_Y
_080BA24E:
ldrh r6, [r0]
_080BA250:
diff --git a/asm/walda_phrase.s b/asm/walda_phrase.s
deleted file mode 100755
index be754f386..000000000
--- a/asm/walda_phrase.s
+++ /dev/null
@@ -1,543 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start walda_maybe
-walda_maybe: @ 81D99E4
- push {r4,lr}
- sub sp, 0x8
- ldr r4, =gStringVar2
- bl sub_80D2548
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- movs r0, 0
- str r0, [sp]
- ldr r0, =sub_81D9A1C
- str r0, [sp, 0x4]
- movs r0, 0x4
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0
- bl DoNamingScreen
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end walda_maybe
-
- thumb_func_start sub_81D9A1C
-sub_81D9A1C: @ 81D9A1C
- push {r4,r5,lr}
- ldr r4, =gSpecialVar_0x8004
- ldr r5, =gStringVar2
- adds r0, r5, 0
- bl sub_81D9A98
- strh r0, [r4]
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _081D9A68
- cmp r0, 0x1
- bgt _081D9A44
- cmp r0, 0
- beq _081D9A62
- b _081D9A68
- .pool
-_081D9A44:
- cmp r0, 0x2
- bne _081D9A68
- bl sub_80D2578
- cmp r0, 0
- beq _081D9A5C
- ldr r0, =gText_Peekaboo
- bl sub_80D255C
- b _081D9A68
- .pool
-_081D9A5C:
- movs r0, 0x1
- strh r0, [r4]
- b _081D9A68
-_081D9A62:
- adds r0, r5, 0
- bl sub_80D255C
-_081D9A68:
- ldr r4, =gStringVar1
- bl sub_80D2548
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF168
- str r0, [r1]
- ldr r0, =c2_exit_to_overworld_2_switch
- bl SetMainCallback2
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81D9A1C
-
- thumb_func_start sub_81D9A98
-sub_81D9A98: @ 81D9A98
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4]
- cmp r0, 0xFF
- bne _081D9AA6
- movs r0, 0x2
- b _081D9ABC
-_081D9AA6:
- bl sub_80D2548
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCompare
- cmp r0, 0
- beq _081D9ABA
- movs r0, 0
- b _081D9ABC
-_081D9ABA:
- movs r0, 0x1
-_081D9ABC:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81D9A98
-
- thumb_func_start sub_81D9AC4
-sub_81D9AC4: @ 81D9AC4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- adds r0, 0xA
- bl ReadUnalignedWord
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r0, =gScriptResult
- mov r8, r0
- bl sub_80D2548
- mov r7, sp
- adds r7, 0xA
- add r6, sp, 0xC
- mov r5, sp
- adds r5, 0xD
- str r4, [sp]
- str r0, [sp, 0x4]
- add r0, sp, 0x8
- adds r1, r7, 0
- adds r2, r6, 0
- adds r3, r5, 0
- bl sub_81D9B68
- mov r1, r8
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- beq _081D9B1E
- ldrb r0, [r5]
- bl sub_80D24BC
- ldrb r0, [r6]
- bl sub_80D24F0
- add r0, sp, 0x8
- ldrh r0, [r0]
- ldrh r1, [r7]
- bl sub_80D2524
-_081D9B1E:
- mov r1, r8
- ldrh r0, [r1]
- bl sub_80D2480
- mov r1, r8
- ldrb r0, [r1]
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_81D9AC4
-
- thumb_func_start sub_81D9B40
-sub_81D9B40: @ 81D9B40
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r3, =gUnknown_0862AD14
-_081D9B4A:
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _081D9B5C
- lsls r0, r1, 24
- lsrs r0, 24
- b _081D9B64
- .pool
-_081D9B5C:
- adds r1, 0x1
- cmp r1, 0x1F
- bls _081D9B4A
- movs r0, 0x20
-_081D9B64:
- pop {r1}
- bx r1
- thumb_func_end sub_81D9B40
-
- thumb_func_start sub_81D9B68
-sub_81D9B68: @ 81D9B68
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x2C
- mov r10, r0
- str r1, [sp, 0x20]
- str r2, [sp, 0x24]
- str r3, [sp, 0x28]
- ldr r0, [sp, 0x4C]
- ldr r5, [sp, 0x50]
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- adds r0, r5, 0
- bl StringLength
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xF
- bne _081D9C7E
- movs r4, 0
- add r7, sp, 0x10
-_081D9B98:
- adds r0, r5, r4
- ldrb r0, [r0]
- bl sub_81D9B40
- adds r1, r7, r4
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x20
- beq _081D9C7E
- adds r4, 0x1
- cmp r4, 0xE
- ble _081D9B98
- movs r6, 0x3
- movs r5, 0
- movs r0, 0x5
- mov r8, r0
- movs r4, 0xD
-_081D9BBC:
- mov r1, r8
- str r1, [sp]
- add r0, sp, 0x4
- adds r1, r7, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl sub_81D9D5C
- adds r6, 0x8
- adds r5, 0x5
- subs r4, 0x1
- cmp r4, 0
- bge _081D9BBC
- movs r0, 0x2
- str r0, [sp]
- add r0, sp, 0x4
- adds r1, r7, 0
- movs r2, 0x46
- movs r3, 0x73
- bl sub_81D9D5C
- add r0, sp, 0x4
- movs r1, 0
- movs r2, 0x3
- bl sub_81D9DAC
- adds r4, r0, 0
- adds r0, r7, 0
- movs r1, 0x75
- movs r2, 0x3
- bl sub_81D9DAC
- cmp r4, r0
- bne _081D9C7E
- add r0, sp, 0x4
- movs r1, 0x9
- movs r2, 0x15
- bl sub_81D9C90
- add r0, sp, 0x4
- ldrb r0, [r0, 0x8]
- movs r2, 0xF
- ands r2, r0
- add r0, sp, 0x4
- movs r1, 0x8
- bl sub_81D9C90
- add r0, sp, 0x4
- ldrb r2, [r0, 0x8]
- lsrs r2, 4
- movs r1, 0x8
- bl sub_81D9CDC
- add r0, sp, 0x4
- ldrb r2, [r0, 0x6]
- adds r1, r0, 0
- ldrb r0, [r0]
- ldrb r1, [r1, 0x2]
- eors r0, r1
- add r1, sp, 0x4
- ldrb r4, [r1, 0x4]
- eors r0, r4
- mov r3, r9
- lsrs r1, r3, 8
- eors r0, r1
- cmp r2, r0
- bne _081D9C7E
- add r0, sp, 0x4
- ldrb r3, [r0, 0x7]
- adds r2, r0, 0
- ldrb r1, [r0, 0x1]
- ldrb r0, [r2, 0x3]
- eors r1, r0
- adds r0, r2, 0
- ldrb r2, [r0, 0x5]
- eors r1, r2
- movs r0, 0xFF
- mov r5, r9
- ands r0, r5
- eors r1, r0
- cmp r3, r1
- bne _081D9C7E
- add r0, sp, 0x4
- ldrh r0, [r0]
- mov r1, r10
- strh r0, [r1]
- mov r0, sp
- adds r0, 0x6
- ldrh r0, [r0]
- ldr r3, [sp, 0x20]
- strh r0, [r3]
- ldr r5, [sp, 0x24]
- strb r4, [r5]
- ldr r0, [sp, 0x28]
- strb r2, [r0]
- movs r0, 0x1
- b _081D9C80
-_081D9C7E:
- movs r0, 0
-_081D9C80:
- add sp, 0x2C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_81D9B68
-
- thumb_func_start sub_81D9C90
-sub_81D9C90: @ 81D9C90
- push {r4-r7,lr}
- adds r7, r0, 0
- mov r12, r1
- subs r3, r2, 0x1
- cmp r2, 0
- beq _081D9CD6
-_081D9C9C:
- ldrb r1, [r7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 31
- mov r2, r12
- subs r2, 0x1
- subs r5, r3, 0x1
- cmp r2, 0
- blt _081D9CCC
- movs r6, 0x80
- adds r3, r2, r7
-_081D9CB4:
- ldrb r1, [r3]
- adds r0, r6, 0
- ands r0, r1
- lsls r0, 24
- lsls r1, 1
- orrs r4, r1
- strb r4, [r3]
- lsrs r4, r0, 31
- subs r3, 0x1
- subs r2, 0x1
- cmp r2, 0
- bge _081D9CB4
-_081D9CCC:
- adds r3, r5, 0
- movs r0, 0x1
- negs r0, r0
- cmp r3, r0
- bne _081D9C9C
-_081D9CD6:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81D9C90
-
- thumb_func_start sub_81D9CDC
-sub_81D9CDC: @ 81D9CDC
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r5, r1, 0
- lsls r2, 24
- lsrs r3, r2, 24
- lsls r0, r3, 4
- orrs r3, r0
- lsls r0, r3, 24
- lsrs r3, r0, 24
- movs r4, 0
- cmp r4, r5
- bcs _081D9D04
-_081D9CF4:
- adds r2, r6, r4
- ldrb r1, [r2]
- adds r0, r3, 0
- eors r0, r1
- strb r0, [r2]
- adds r4, 0x1
- cmp r4, r5
- bcc _081D9CF4
-_081D9D04:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81D9CDC
-
- thumb_func_start sub_81D9D0C
-sub_81D9D0C: @ 81D9D0C
- push {lr}
- lsrs r3, r1, 3
- movs r2, 0x7
- ands r2, r1
- movs r1, 0x80
- asrs r1, r2
- adds r0, r3
- ldrb r0, [r0]
- ands r0, r1
- cmp r0, 0
- beq _081D9D24
- movs r0, 0x1
-_081D9D24:
- pop {r1}
- bx r1
- thumb_func_end sub_81D9D0C
-
- thumb_func_start sub_81D9D28
-sub_81D9D28: @ 81D9D28
- lsrs r3, r1, 3
- movs r2, 0x7
- ands r2, r1
- movs r1, 0x80
- asrs r1, r2
- lsls r1, 24
- lsrs r1, 24
- adds r0, r3
- ldrb r2, [r0]
- orrs r1, r2
- strb r1, [r0]
- bx lr
- thumb_func_end sub_81D9D28
-
- thumb_func_start sub_81D9D40
-sub_81D9D40: @ 81D9D40
- lsrs r3, r1, 3
- movs r2, 0x7
- ands r2, r1
- movs r1, 0x80
- asrs r1, r2
- mvns r1, r1
- lsls r1, 24
- lsrs r1, 24
- adds r0, r3
- ldrb r2, [r0]
- ands r1, r2
- strb r1, [r0]
- bx lr
- thumb_func_end sub_81D9D40
-
- thumb_func_start sub_81D9D5C
-sub_81D9D5C: @ 81D9D5C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r6, r0, 0
- mov r9, r1
- adds r1, r2, 0
- mov r8, r3
- ldr r7, [sp, 0x1C]
- movs r5, 0
- cmp r5, r7
- bcs _081D9DA0
- adds r4, r1, 0
-_081D9D76:
- mov r0, r8
- adds r1, r0, r5
- mov r0, r9
- bl sub_81D9D0C
- lsls r0, 24
- cmp r0, 0
- beq _081D9D90
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_81D9D28
- b _081D9D98
-_081D9D90:
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_81D9D40
-_081D9D98:
- adds r4, 0x1
- adds r5, 0x1
- cmp r5, r7
- bcc _081D9D76
-_081D9DA0:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81D9D5C
-
- thumb_func_start sub_81D9DAC
-sub_81D9DAC: @ 81D9DAC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r0
- adds r7, r1, 0
- adds r6, r2, 0
- movs r4, 0
- movs r5, 0
- cmp r4, r6
- bcs _081D9DD6
-_081D9DC0:
- lsls r4, 1
- adds r1, r7, r5
- mov r0, r8
- bl sub_81D9D0C
- lsls r0, 24
- lsrs r0, 24
- orrs r4, r0
- adds r5, 0x1
- cmp r5, r6
- bcc _081D9DC0
-_081D9DD6:
- adds r0, r4, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_81D9DAC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/wild_encounter.s b/asm/wild_encounter.s
index 2c628a5e4..9b6c901f6 100644
--- a/asm/wild_encounter.s
+++ b/asm/wild_encounter.s
@@ -68,7 +68,7 @@ _080B4920:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8089660
+ bl MetatileBehavior_IsSurfableAndNotWaterfall
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1424,7 +1424,7 @@ _080B539C:
lsls r0, r6, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_808952C
+ bl MetatileBehavior_IsLandWildEncounter
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1498,7 +1498,7 @@ _080B5418:
.pool
_080B543C:
adds r0, r4, 0
- bl sub_8089558
+ bl MetatileBehavior_IsWaterWildEncounter
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1509,7 +1509,7 @@ _080B543C:
cmp r0, 0
beq _080B54FE
adds r0, r4, 0
- bl sub_80894AC
+ bl MetatileBehavior_IsBridge
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1726,7 +1726,7 @@ _080B562C:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_808952C
+ bl MetatileBehavior_IsLandWildEncounter
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1769,7 +1769,7 @@ _080B568C:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8089558
+ bl MetatileBehavior_IsWaterWildEncounter
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1