summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_2.s48
-rw-r--r--asm/battle_3.s16
-rw-r--r--asm/battle_4.s28
-rw-r--r--asm/battle_7.s56
-rw-r--r--asm/battle_anim_80FE840.s20
-rw-r--r--asm/battle_controller_linkopponent.s18
-rw-r--r--asm/battle_controller_linkpartner.s6
-rw-r--r--asm/battle_controller_opponent.s10
-rw-r--r--asm/battle_controller_player.s16
-rw-r--r--asm/battle_controller_player_partner.s12
-rw-r--r--asm/battle_controller_recorded_opponent.s8
-rw-r--r--asm/battle_controller_recorded_player.s6
-rw-r--r--asm/battle_controller_safari.s6
-rw-r--r--asm/battle_controller_wally.s10
-rw-r--r--asm/battle_message.s20
-rw-r--r--asm/battle_setup.s16
-rw-r--r--asm/berry.s1120
-rw-r--r--asm/berry_blender.s6
-rw-r--r--asm/berry_tag_screen.s2
-rw-r--r--asm/cable_club.s8
-rw-r--r--asm/contest.s12
-rw-r--r--asm/contest_link_80F57C4.s4
-rw-r--r--asm/contest_painting.s4
-rw-r--r--asm/credits.s2
-rw-r--r--asm/easy_chat.s6
-rw-r--r--asm/egg_hatch.s8
-rw-r--r--asm/evolution_scene.s38
-rw-r--r--asm/field_control_avatar.s6
-rw-r--r--asm/hall_of_fame.s4
-rw-r--r--asm/item_use.s38
-rw-r--r--asm/lilycove_lady.s6
-rw-r--r--asm/link.s8
-rw-r--r--asm/main_menu.s4
-rw-r--r--asm/map_obj_lock.s10
-rw-r--r--asm/mystery_event_script.s12
-rw-r--r--asm/pokeblock_feed.s8
-rw-r--r--asm/pokedex.s46
-rw-r--r--asm/pokemon_1.s241
-rw-r--r--asm/pokemon_2.s3635
-rw-r--r--asm/pokemon_3.s4596
-rw-r--r--asm/pokemon_animation.s12
-rw-r--r--asm/pokemon_item_effect.s6
-rw-r--r--asm/recorded_battle.s20
-rw-r--r--asm/reshow_battle_screen.s10
-rw-r--r--asm/rom3.s4
-rw-r--r--asm/rom6.s32
-rw-r--r--asm/rom_8034C54.s2
-rw-r--r--asm/rom_8072304.s22
-rw-r--r--asm/rom_80A5C6C.s22
-rw-r--r--asm/rom_80C6FA0.s82
-rw-r--r--asm/rom_815A0D4.s4
-rw-r--r--asm/rom_8161F74.s88
-rw-r--r--asm/rom_817C95C.s6
-rw-r--r--asm/rom_818CFC8.s4
-rw-r--r--asm/rom_818E9AC.s152
-rw-r--r--asm/rom_81BE66C.s66
-rw-r--r--asm/scrcmd.s14
-rw-r--r--asm/script_pokemon_util_80F87D8.s12
-rw-r--r--asm/trade.s22
-rw-r--r--asm/trainer_card.s4
-rw-r--r--asm/tv.s6
61 files changed, 565 insertions, 10145 deletions
diff --git a/asm/battle_2.s b/asm/battle_2.s
index 53b83c10e..dd3e6d38c 100644
--- a/asm/battle_2.s
+++ b/asm/battle_2.s
@@ -95,7 +95,7 @@ InitBattle: @ 80367D4
ands r0, r1
cmp r0, 0
beq _08036870
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r1, [r0]
ldr r0, =0x00000c03
cmp r1, r0
@@ -410,7 +410,7 @@ sub_8036B44: @ 8036B44
movs r0, 0xC2
lsls r0, 1
adds r4, r5, r0
- bl sub_80E162C
+ bl IsEnigmaBerryValid
cmp r0, 0x1
bne _08036BC0
movs r2, 0
@@ -513,7 +513,7 @@ berry_801017C: @ 8036C08
beq _08036C20
b _08036D4C
_08036C20:
- bl sub_80E162C
+ bl IsEnigmaBerryValid
cmp r0, 0x1
bne _08036CDC
movs r5, 0
@@ -1537,12 +1537,12 @@ _08037530:
adds r0, 0x40
ldr r4, =gTrainerBattleOpponent_A
ldrh r1, [r4]
- bl sub_8162E20
+ bl GetFrontierTrainerName
adds r0, r6, 0
adds r0, 0x5C
ldr r5, =gTrainerBattleOpponent_B
ldrh r1, [r5]
- bl sub_8162E20
+ bl GetFrontierTrainerName
ldrh r1, [r4]
mov r0, sp
bl sub_8165B88
@@ -5470,17 +5470,17 @@ sub_8039894: @ 8039894
adds r0, r2, 0
movs r2, 0
movs r3, 0x1
- bl sub_806ECEC
+ bl BattleAnimateFrontSprite
_080398B0:
pop {r0}
bx r0
.pool
thumb_func_end sub_8039894
- thumb_func_start nullsub_18
-nullsub_18: @ 80398B8
+ thumb_func_start SpriteCallbackDummy_2
+SpriteCallbackDummy_2: @ 80398B8
bx lr
- thumb_func_end nullsub_18
+ thumb_func_end SpriteCallbackDummy_2
thumb_func_start sub_80398BC
sub_80398BC: @ 80398BC
@@ -5534,7 +5534,7 @@ sub_80398D0: @ 80398D0
ands r0, r1
mov r1, r12
strb r0, [r1]
- ldr r0, =nullsub_18
+ ldr r0, =SpriteCallbackDummy_2
str r0, [r3, 0x1C]
ldr r0, =gUnknown_02022F88
str r2, [r0]
@@ -5635,7 +5635,7 @@ _080399E4:
cmp r4, r0
bne _08039A08
ldr r0, =gUnknown_08525F78
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r1, r6, r1
ldrb r1, [r1]
lsls r1, 2
@@ -5708,13 +5708,13 @@ _08039A7C:
lsls r0, 24
lsrs r0, 24
bl GetBankIdentity
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
lsls r0, 24
lsrs r0, 22
adds r1, 0x4
adds r1, r0
- ldr r2, =gUnknown_020244E4
+ ldr r2, =gBattleMonForms
movs r3, 0x2E
ldrsh r0, [r4, r3]
adds r0, r2
@@ -5734,7 +5734,7 @@ _08039AAE:
subs r0, 0x1
cmp r0, 0
bge _08039AAE
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
movs r3, 0x2E
ldrsh r1, [r4, r3]
adds r1, r0
@@ -5815,7 +5815,7 @@ sub_8039B2C: @ 8039B2C
strb r1, [r2]
movs r1, 0
strh r1, [r0, 0x36]
- ldr r1, =nullsub_18
+ ldr r1, =SpriteCallbackDummy_2
str r1, [r0, 0x1C]
bx lr
.pool
@@ -5845,7 +5845,7 @@ sub_8039B58: @ 8039B58
beq _08039B94
_08039B80:
ldrh r0, [r4, 0x32]
- bl sub_806F0D4
+ bl HasTwoFramesAnimation
lsls r0, 24
cmp r0, 0
beq _08039B94
@@ -5857,7 +5857,7 @@ _08039B94:
adds r0, r4, 0
movs r2, 0x1
movs r3, 0x1
- bl sub_806ECEC
+ bl BattleAnimateFrontSprite
_08039BA0:
pop {r4}
pop {r0}
@@ -6212,7 +6212,7 @@ sub_8039E44: @ 8039E44
beq _08039E5C
ldrh r1, [r2, 0x32]
adds r0, r2, 0
- bl sub_806EEB4
+ bl BattleAnimateBackSprite
_08039E5C:
pop {r0}
bx r0
@@ -8082,7 +8082,7 @@ _0803AE0A:
add r1, r10
ldr r2, [r1]
movs r1, 0x2
- bl SetPokedexFlag
+ bl HandleSetPokedexFlag
b _0803AEC0
.pool
_0803AE60:
@@ -8109,7 +8109,7 @@ _0803AE60:
add r1, r10
ldr r2, [r1]
movs r1, 0x2
- bl SetPokedexFlag
+ bl HandleSetPokedexFlag
_0803AE96:
movs r0, 0
bl dp01_build_cmdbuf_x04_4_4_4
@@ -8669,7 +8669,7 @@ _0803B334:
adds r1, r7
ldr r2, [r1]
movs r1, 0x2
- bl SetPokedexFlag
+ bl HandleSetPokedexFlag
_0803B36C:
ldrb r0, [r4]
adds r0, 0x1
@@ -9615,7 +9615,7 @@ _0803BBB8:
lsls r0, 24
lsrs r2, r0, 24
_0803BBC2:
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldr r3, =gActiveBank
ldrb r0, [r3]
strb r0, [r1]
@@ -10556,7 +10556,7 @@ _0803C42E:
b _0803C6C4
.pool
_0803C440:
- bl PlayerPartyAndPokemonStorageFull
+ bl IsPlayerPartyAndPokemonStorageFull
lsls r0, 24
cmp r0, 0
bne _0803C44C
@@ -14854,7 +14854,7 @@ _0803EC54:
lsls r0, 24
lsrs r1, r0, 24
_0803EC5E:
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
strb r5, [r0]
cmp r1, 0x25
bne _0803EC9C
diff --git a/asm/battle_3.s b/asm/battle_3.s
index b314b6b5b..f2e384c86 100644
--- a/asm/battle_3.s
+++ b/asm/battle_3.s
@@ -315,7 +315,7 @@ _0803FDC4:
lsls r0, 24
lsrs r4, r0, 24
_0803FDCE:
- ldr r2, =gUnknown_0202420F
+ ldr r2, =gStringBank
ldr r1, =gActiveBank
ldrb r0, [r1]
strb r0, [r2]
@@ -466,7 +466,7 @@ _0803FF1C:
lsls r1, r7, 3
ldr r3, [sp, 0x14]
_0803FF2E:
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
strb r7, [r0]
movs r0, 0
mov r9, r0
@@ -8351,7 +8351,7 @@ _0804463C:
_08044654:
ldr r0, =gBattleScripting
strb r7, [r0, 0x17]
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
strb r7, [r0]
ldr r1, =gActiveBank
ldr r0, =gBankAttacker
@@ -8612,7 +8612,7 @@ _080448CE:
_080448EA:
ldr r0, =gBattleScripting
strb r7, [r0, 0x17]
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
strb r7, [r0]
ldr r1, =gActiveBank
ldr r0, =gBankAttacker
@@ -9682,7 +9682,7 @@ _080451D6:
_080451DE:
ldr r0, =gBattleScripting
strb r7, [r0, 0x17]
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
strb r7, [r0]
ldr r4, =gActiveBank
ldr r0, =gBankAttacker
@@ -10135,7 +10135,7 @@ _08045638:
beq _080456B8
ldr r0, =gBattleScripting
strb r7, [r0, 0x17]
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
strb r7, [r0]
bl b_movescr_stack_push_cursor
ldr r1, =gBattlescriptCurrInstr
@@ -10150,7 +10150,7 @@ _08045674:
_0804567A:
ldr r0, =gBattleScripting
strb r7, [r0, 0x17]
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
strb r7, [r0]
ldr r4, =gActiveBank
strb r7, [r4]
@@ -10305,7 +10305,7 @@ _08045794:
mov r1, sp
ldrh r1, [r1, 0x14]
strh r1, [r0]
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
strb r3, [r0]
ldr r0, =gBattleScripting
strb r3, [r0, 0x17]
diff --git a/asm/battle_4.s b/asm/battle_4.s
index 609a74566..8651b9724 100644
--- a/asm/battle_4.s
+++ b/asm/battle_4.s
@@ -1040,7 +1040,7 @@ _08046928:
lsls r0, 24
lsrs r2, r0, 24
_08046944:
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
ldr r1, =gBankTarget
ldrb r1, [r1]
strb r1, [r0]
@@ -1390,7 +1390,7 @@ _08046C48:
lsls r0, 24
lsrs r6, r0, 24
_08046C50:
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldr r3, =gBankAttacker
ldrb r0, [r3]
strb r0, [r1]
@@ -2982,7 +2982,7 @@ _0804795C:
lsls r0, 24
lsrs r6, r0, 24
_08047976:
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldr r5, =gBankTarget
ldrb r0, [r5]
strb r0, [r1]
@@ -3169,7 +3169,7 @@ _08047B0C:
lsls r0, 24
lsrs r6, r0, 24
_08047B26:
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldr r5, =gBankTarget
ldrb r0, [r5]
strb r0, [r1]
@@ -4230,7 +4230,7 @@ _08048478:
adds r0, r2
ldrh r0, [r0, 0x2E]
strh r0, [r4]
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldrb r0, [r3]
strb r0, [r1]
movs r0, 0x3F
@@ -4295,7 +4295,7 @@ _08048510:
adds r0, r2
ldrh r0, [r0, 0x2E]
strh r0, [r4]
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldrb r0, [r3]
strb r0, [r1]
movs r0, 0x3F
@@ -8717,7 +8717,7 @@ _0804ACE2:
ands r0, r1
cmp r0, 0
beq _0804AD48
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r1, [r0]
ldr r0, =0x00000c03
cmp r1, r0
@@ -12378,7 +12378,7 @@ atk4E_switchin_anim: @ 804CAE8
adds r1, r4
ldr r2, [r1]
movs r1, 0x2
- bl SetPokedexFlag
+ bl HandleSetPokedexFlag
_0804CB3E:
ldr r2, =gAbsentBankFlags
ldr r1, =gBitTable
@@ -16226,7 +16226,7 @@ _0804ED10:
lsls r0, 24
lsrs r6, r0, 24
_0804ED2A:
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldr r5, =gBankTarget
ldrb r0, [r5]
strb r0, [r1]
@@ -17407,7 +17407,7 @@ _0804F73E:
atk75_8026A58: @ 804F754
push {lr}
sub sp, 0x4
- ldr r2, =gUnknown_020244B8
+ ldr r2, =gBankInMenu
ldr r1, =gBankAttacker
ldrb r0, [r1]
strb r0, [r2]
@@ -21095,7 +21095,7 @@ _08051768:
lsls r0, 24
lsrs r6, r0, 24
_08051782:
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldr r5, =gBankTarget
ldrb r0, [r5]
strb r0, [r1]
@@ -29984,7 +29984,7 @@ _08056480:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
movs r4, 0xA
cmp r0, 0
@@ -30385,7 +30385,7 @@ atkF1_setpoke_as_caught: @ 8056850
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080568A8
@@ -30411,7 +30411,7 @@ _080568A8:
lsrs r0, 16
movs r1, 0x3
adds r2, r4, 0
- bl SetPokedexFlag
+ bl HandleSetPokedexFlag
ldr r1, =gBattlescriptCurrInstr
ldr r0, [r1]
adds r0, 0x5
diff --git a/asm/battle_7.s b/asm/battle_7.s
index b92d69947..fd8c3b4a5 100644
--- a/asm/battle_7.s
+++ b/asm/battle_7.s
@@ -991,7 +991,7 @@ move_anim_start_t3: @ 805D908
ands r0, r7
cmp r0, 0
beq _0805D950
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
adds r0, r6, r0
movs r2, 0x7F
adds r1, r7, 0
@@ -1371,7 +1371,7 @@ _0805DC58:
lsls r2, r5, 3
ldr r1, =gMonFrontPicTable
adds r2, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
lsrs r0, 22
adds r1, 0x4
@@ -1433,7 +1433,7 @@ _0805DCC6:
adds r1, r4
adds r0, r6, 0
bl LZDecompressWram
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
add r0, r8
ldrb r1, [r0]
lsls r1, 5
@@ -1543,7 +1543,7 @@ _0805DE00:
lsls r0, r5, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
lsls r2, r7, 2
adds r1, 0x4
@@ -1618,7 +1618,7 @@ _0805DE7E:
adds r1, r4
adds r0, r6, 0
bl LZDecompressWram
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
add r0, r8
ldrb r1, [r0]
lsls r1, 5
@@ -1684,7 +1684,7 @@ sub_805DF38: @ 805DF38
lsls r4, 3
ldr r2, =gTrainerFrontPicTable
adds r2, r4, r2
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
lsrs r0, 22
adds r1, 0x4
@@ -1718,7 +1718,7 @@ sub_805DF84: @ 805DF84
lsls r5, 3
ldr r2, =gTrainerBackPicTable
adds r2, r5, r2
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
lsrs r0, 22
adds r1, 0x4
@@ -1959,7 +1959,7 @@ _0805E1AE:
load_gfxc_health_bar: @ 805E1B8
push {lr}
ldr r0, =gUnknown_08C093F0
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
movs r2, 0xBA
lsls r2, 1
@@ -2308,7 +2308,7 @@ sub_805E448: @ 805E448
adds r1, r6, 0
movs r2, 0x20
bl LoadPalette
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r1, r7, r1
ldr r0, [r4]
ldr r0, [r0, 0x8]
@@ -2364,7 +2364,7 @@ _0805E51C:
lsls r0, r1, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
mov r3, r10
lsls r2, r3, 2
@@ -2486,7 +2486,7 @@ _0805E618:
mov r2, r8
bl HandleLoadSpecialPokePic_DontHandleDeoxys
_0805E662:
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
mov r2, r10
lsls r1, r2, 2
@@ -2554,7 +2554,7 @@ _0805E662:
adds r1, r4
mov r0, r9
bl LZDecompressWram
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
ldr r1, [sp]
adds r0, r1, r0
ldrb r1, [r0]
@@ -2589,7 +2589,7 @@ _0805E70A:
adds r0, r1
mov r2, r8
strh r2, [r0, 0x2]
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
adds r1, r7, r0
ldr r3, [sp]
adds r0, r3, r0
@@ -2614,7 +2614,7 @@ _0805E74A:
adds r0, r1
lsls r0, 2
adds r0, r2
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r1, r7, r1
ldrb r1, [r1]
bl StartSpriteAnim
@@ -2666,7 +2666,7 @@ _0805E814:
beq _0805E83C
ldr r0, =gUnknown_08C2CEE0
_0805E822:
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
lsls r4, 2
adds r1, 0x4
@@ -2677,7 +2677,7 @@ _0805E822:
.pool
_0805E83C:
ldr r0, =gUnknown_08C2D120
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
adds r0, 0x4
adds r4, r0, r4
@@ -2772,7 +2772,7 @@ refresh_graphics_maybe: @ 805E8F4
lsls r0, 2
ldr r1, =gSprites
adds r4, r0, r1
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
adds r0, r6, r0
ldrb r1, [r0]
adds r0, r4, 0
@@ -3586,7 +3586,7 @@ sub_805EF84: @ 805EF84
movs r3, 0
movs r2, 0
strh r2, [r0, 0x2]
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
adds r0, r4, r0
strb r3, [r0]
cmp r1, 0
@@ -3608,7 +3608,7 @@ init_uns_table_pokemon_copy: @ 805EFBC
mov r5, r8
push {r5-r7}
movs r6, 0
- ldr r4, =gUnknown_020244D4
+ ldr r4, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r2, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
movs r2, 0xBA
lsls r2, 1
@@ -3711,7 +3711,7 @@ _0805F01A:
thumb_func_start sub_805F094
sub_805F094: @ 805F094
push {r4-r6,lr}
- ldr r6, =gUnknown_020244D4
+ ldr r6, =gBattleSpritesGfx
ldr r0, [r6]
cmp r0, 0
beq _0805F106
diff --git a/asm/battle_anim_80FE840.s b/asm/battle_anim_80FE840.s
index 9bcbbe0c5..fc2c36fc8 100644
--- a/asm/battle_anim_80FE840.s
+++ b/asm/battle_anim_80FE840.s
@@ -14561,7 +14561,7 @@ _08105CCC:
lsls r0, 6
bl AllocZeroed
adds r1, r0, 0
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
movs r2, 0xBE
lsls r2, 1
@@ -14571,7 +14571,7 @@ _08105CCC:
bl LZDecompressWram
movs r4, 0
_08105D00:
- ldr r5, =gUnknown_020244D4
+ ldr r5, =gBattleSpritesGfx
ldr r0, [r5]
movs r1, 0xBE
lsls r1, 1
@@ -49777,7 +49777,7 @@ sub_8117C44: @ 8117C44
movs r0, 0x80
lsls r0, 6
bl AllocZeroed
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
movs r2, 0xBE
lsls r2, 1
@@ -49797,7 +49797,7 @@ sub_8117C70: @ 8117C70
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r6, =gUnknown_020244D4
+ ldr r6, =gBattleSpritesGfx
ldr r0, [r6]
movs r5, 0xBE
lsls r5, 1
@@ -49866,7 +49866,7 @@ _08117CF6:
adds r4, r0, 0
adds r4, 0x10
_08117CFC:
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r1, [r0]
ldr r0, =gBattleAnimArgs
movs r2, 0x2
@@ -49944,7 +49944,7 @@ _08117D98:
lsls r0, r4, 5
ldr r1, =gPlttBufferUnfaded
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r2, [r1]
ldr r1, =gBattleAnimArgs
movs r3, 0x2
@@ -50455,7 +50455,7 @@ battle_intro_launch: @ 81181D4
ands r0, r1
cmp r0, 0
beq _08118208
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r1, [r0]
ldr r0, =0x00000c03
cmp r1, r0
@@ -52081,12 +52081,12 @@ sub_8118FBC: @ 8118FBC
bl GetBankByPlayerAI
lsls r0, 24
lsrs r0, 24
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r2, [r1]
lsls r4, 2
adds r2, 0x4
adds r2, r4
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r0, r1
ldrb r1, [r0]
lsls r1, 11
@@ -52189,7 +52189,7 @@ sub_8119094: @ 8119094
lsls r0, 24
mov r9, r0
ldr r4, =0x040000d4
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
lsrs r2, 22
adds r0, 0x4
diff --git a/asm/battle_controller_linkopponent.s b/asm/battle_controller_linkopponent.s
index e07ec2dbb..d28823a8b 100644
--- a/asm/battle_controller_linkopponent.s
+++ b/asm/battle_controller_linkopponent.s
@@ -1230,7 +1230,7 @@ sub_8064DD0: @ 8064DD0
ldr r0, =SpriteCallbackDummy
cmp r1, r0
beq _08064E1A
- ldr r0, =nullsub_18
+ ldr r0, =SpriteCallbackDummy_2
cmp r1, r0
bne _08064E2A
_08064E1A:
@@ -3655,7 +3655,7 @@ sub_80662F8: @ 80662F8
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r2, r1
ldrb r1, [r2]
bl StartSpriteAnim
@@ -3850,7 +3850,7 @@ sub_8066494: @ 8066494
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r6, r1
ldrb r1, [r6]
bl StartSpriteAnim
@@ -4193,13 +4193,13 @@ _08066892:
cmp r0, 0
beq _080668BC
_080668AA:
- ldr r0, =gTrainerPicIndices
+ ldr r0, =gUnknown_0831F578
adds r0, 0x4F
ldrb r0, [r0]
b _0806694C
.pool
_080668BC:
- ldr r0, =gTrainerPicIndices
+ ldr r0, =gUnknown_0831F578
adds r0, 0x4E
ldrb r0, [r0]
b _0806694C
@@ -4243,13 +4243,13 @@ _080668FE:
cmp r0, 0
beq _08066924
_08066916:
- ldr r0, =gTrainerPicIndices
+ ldr r0, =gUnknown_0831F578
adds r0, 0x51
ldrb r0, [r0]
b _0806694C
.pool
_08066924:
- ldr r0, =gTrainerPicIndices
+ ldr r0, =gUnknown_0831F578
adds r0, 0x50
ldrb r0, [r0]
b _0806694C
@@ -4280,7 +4280,7 @@ _0806694C:
lsls r1, 24
lsrs r1, 24
mov r0, r8
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r9, r7
ldr r1, =gUnknown_083054E0
@@ -4409,7 +4409,7 @@ _08066A76:
lsls r1, 24
lsrs r1, 24
mov r0, r8
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r0, =gUnknown_0202499C
ldr r2, =gUnknown_083054E0
mov r3, r8
diff --git a/asm/battle_controller_linkpartner.s b/asm/battle_controller_linkpartner.s
index dbe8052b9..881228279 100644
--- a/asm/battle_controller_linkpartner.s
+++ b/asm/battle_controller_linkpartner.s
@@ -3237,7 +3237,7 @@ sub_814CB0C: @ 814CB0C
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r2, r1
ldrb r1, [r2]
bl StartSpriteAnim
@@ -3419,7 +3419,7 @@ sub_814CC98: @ 814CC98
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r6, r1
ldrb r1, [r6]
bl StartSpriteAnim
@@ -3703,7 +3703,7 @@ _0814D002:
lsls r1, 24
lsrs r1, 24
adds r0, r4, 0
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r8, r7
ldr r0, =gUnknown_08305D2C
diff --git a/asm/battle_controller_opponent.s b/asm/battle_controller_opponent.s
index 9e2512227..639ef0ce6 100644
--- a/asm/battle_controller_opponent.s
+++ b/asm/battle_controller_opponent.s
@@ -1324,7 +1324,7 @@ bx_803AEDC: @ 805FC80
ldr r0, =SpriteCallbackDummy
cmp r1, r0
beq _0805FCCA
- ldr r0, =nullsub_18
+ ldr r0, =SpriteCallbackDummy_2
cmp r1, r0
bne _0805FCDA
_0805FCCA:
@@ -3811,7 +3811,7 @@ sub_8061224: @ 8061224
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r2, r1
ldrb r1, [r2]
bl StartSpriteAnim
@@ -4012,7 +4012,7 @@ sub_80613DC: @ 80613DC
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r6, r1
ldrb r1, [r6]
bl StartSpriteAnim
@@ -4336,7 +4336,7 @@ _080617CA:
lsls r1, 24
lsrs r1, 24
mov r0, r8
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r9, r7
ldr r1, =gUnknown_083054E0
@@ -4562,7 +4562,7 @@ _080619DE:
lsls r1, 24
lsrs r1, 24
mov r0, r8
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r0, =gUnknown_0202499C
ldr r2, =gUnknown_083054E0
mov r3, r8
diff --git a/asm/battle_controller_player.s b/asm/battle_controller_player.s
index 5854d5e47..0e9318dc9 100644
--- a/asm/battle_controller_player.s
+++ b/asm/battle_controller_player.s
@@ -4127,7 +4127,7 @@ sub_80598E0: @ 80598E0
ands r0, r1
cmp r0, 0
bne _08059906
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r1, [r0]
movs r0, 0x1
bl dp01_build_cmdbuf_x23_aa_0
@@ -7067,7 +7067,7 @@ sub_805B258: @ 805B258
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r6, r1
ldrb r1, [r6]
bl StartSpriteAnim
@@ -7364,7 +7364,7 @@ _0805B5E0:
ands r0, r1
cmp r0, 0
beq _0805B618
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r1, [r0]
ldr r0, =0x00000c03
cmp r1, r0
@@ -7413,7 +7413,7 @@ _0805B656:
bne _0805B664
b _0805B794
_0805B664:
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r1, [r0]
ldr r0, =0x00000c03
cmp r1, r0
@@ -7549,7 +7549,7 @@ _0805B794:
lsls r1, 24
lsrs r1, 24
adds r0, r4, 0
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r8, r9
lsls r4, r7, 16
@@ -7731,7 +7731,7 @@ _0805B926:
lsls r1, 24
lsrs r1, 24
adds r0, r4, 0
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r0, =gUnknown_0202499C
ldr r1, =gUnknown_08305D2C
lsls r4, 2
@@ -8748,7 +8748,7 @@ sub_805C248: @ 805C248
adds r0, r1
ldr r1, =sub_80598A4
str r1, [r0]
- ldr r1, =gUnknown_020244B8
+ ldr r1, =gBankInMenu
ldrb r0, [r2]
strb r0, [r1]
movs r3, 0
@@ -8896,7 +8896,7 @@ _0805C330:
adds r0, r1
ldr r1, =sub_80597CC
str r1, [r0]
- ldr r1, =gUnknown_020244B8
+ ldr r1, =gBankInMenu
ldrb r0, [r4]
strb r0, [r1]
_0805C3BC:
diff --git a/asm/battle_controller_player_partner.s b/asm/battle_controller_player_partner.s
index 481096ffb..6b5a14f95 100644
--- a/asm/battle_controller_player_partner.s
+++ b/asm/battle_controller_player_partner.s
@@ -3812,7 +3812,7 @@ sub_81BCF58: @ 81BCF58
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r2, r1
ldrb r1, [r2]
bl StartSpriteAnim
@@ -3994,7 +3994,7 @@ sub_81BD0E4: @ 81BD0E4
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r6, r1
ldrb r1, [r6]
bl StartSpriteAnim
@@ -4174,7 +4174,7 @@ sub_81BD37C: @ 81BD37C
mov r7, r9
mov r6, r8
push {r6,r7}
- ldr r2, =gUnknown_02038BCE
+ ldr r2, =gPartnerTrainerId
ldrh r1, [r2]
ldr r0, =0x00000c03
cmp r1, r0
@@ -4205,7 +4205,7 @@ _081BD3BE:
lsls r1, 15
adds r0, r1
lsrs r7, r0, 16
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r1, [r0]
ldr r0, =0x00000c03
cmp r1, r0
@@ -4220,7 +4220,7 @@ _081BD3BE:
lsls r1, 24
lsrs r1, 24
adds r0, r4, 0
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r8, r9
lsls r4, r7, 16
@@ -5823,7 +5823,7 @@ sub_81BE10C: @ 81BE10C
bl AllocSpritePalette
lsls r0, 24
lsrs r4, r0, 24
- ldr r2, =gUnknown_02038BCE
+ ldr r2, =gPartnerTrainerId
ldrh r1, [r2]
ldr r0, =0x00000c03
cmp r1, r0
diff --git a/asm/battle_controller_recorded_opponent.s b/asm/battle_controller_recorded_opponent.s
index 2b0eed22e..dc7fe7de5 100644
--- a/asm/battle_controller_recorded_opponent.s
+++ b/asm/battle_controller_recorded_opponent.s
@@ -1211,7 +1211,7 @@ sub_8186F14: @ 8186F14
ldr r0, =SpriteCallbackDummy
cmp r1, r0
beq _08186F5E
- ldr r0, =nullsub_18
+ ldr r0, =SpriteCallbackDummy_2
cmp r1, r0
bne _08186F6E
_08186F5E:
@@ -3636,7 +3636,7 @@ sub_818843C: @ 818843C
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r2, r1
ldrb r1, [r2]
bl StartSpriteAnim
@@ -3831,7 +3831,7 @@ sub_81885D8: @ 81885D8
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r6, r1
ldrb r1, [r6]
bl StartSpriteAnim
@@ -4093,7 +4093,7 @@ _0818892C:
lsls r1, 24
lsrs r1, 24
mov r0, r8
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r9, r7
ldr r1, =gUnknown_083054E0
diff --git a/asm/battle_controller_recorded_player.s b/asm/battle_controller_recorded_player.s
index 7f2b918a4..b2769671c 100644
--- a/asm/battle_controller_recorded_player.s
+++ b/asm/battle_controller_recorded_player.s
@@ -3613,7 +3613,7 @@ sub_818B8E0: @ 818B8E0
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r2, r1
ldrb r1, [r2]
bl StartSpriteAnim
@@ -3795,7 +3795,7 @@ sub_818BA6C: @ 818BA6C
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r6, r1
ldrb r1, [r6]
bl StartSpriteAnim
@@ -4189,7 +4189,7 @@ _0818BEDC:
lsls r1, 24
lsrs r1, 24
adds r0, r4, 0
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r6, =gUnknown_0202499C
mov r8, r9
lsls r4, r7, 16
diff --git a/asm/battle_controller_safari.s b/asm/battle_controller_safari.s
index 3de3c2608..1aff72176 100644
--- a/asm/battle_controller_safari.s
+++ b/asm/battle_controller_safari.s
@@ -396,7 +396,7 @@ sub_8159698: @ 8159698
ands r0, r1
cmp r0, 0
bne _081596BE
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r1, [r0]
movs r0, 0x1
bl dp01_build_cmdbuf_x23_aa_0
@@ -578,7 +578,7 @@ sub_8159800: @ 8159800
lsls r1, 24
lsrs r1, 24
adds r0, r6, 0
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r0, =gUnknown_0202499C
ldr r2, =gUnknown_08305D2C
ldr r1, [r4]
@@ -923,7 +923,7 @@ sub_8159B14: @ 8159B14
adds r0, r1
ldr r1, =sub_8159660
str r1, [r0]
- ldr r1, =gUnknown_020244B8
+ ldr r1, =gBankInMenu
ldrb r0, [r2]
strb r0, [r1]
add sp, 0x4
diff --git a/asm/battle_controller_wally.s b/asm/battle_controller_wally.s
index c00988ed2..ddb97f927 100644
--- a/asm/battle_controller_wally.s
+++ b/asm/battle_controller_wally.s
@@ -308,7 +308,7 @@ sub_8168610: @ 8168610
ands r0, r1
cmp r0, 0
bne _08168636
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r1, [r0]
movs r0, 0x1
bl dp01_build_cmdbuf_x23_aa_0
@@ -3037,7 +3037,7 @@ sub_8169EC8: @ 8169EC8
lsls r1, 24
lsrs r1, 24
movs r0, 0x6
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r0, =gUnknown_0202499C
ldr r1, =gUnknown_08305D2C
ldrb r1, [r1, 0x18]
@@ -3122,7 +3122,7 @@ dp01t_07_6_: @ 8169F94
lsls r1, 24
lsrs r1, 24
movs r0, 0x6
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r0, =gUnknown_0202499C
ldr r1, =gUnknown_08305D2C
ldrb r1, [r1, 0x18]
@@ -3803,7 +3803,7 @@ sub_816A57C: @ 816A57C
adds r0, r1
ldr r1, =sub_81685D4
str r1, [r0]
- ldr r1, =gUnknown_020244B8
+ ldr r1, =gBankInMenu
ldrb r0, [r2]
strb r0, [r1]
add sp, 0x4
@@ -4504,7 +4504,7 @@ sub_816AA80: @ 816AA80
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r6, r1
ldrb r1, [r6]
bl StartSpriteAnim
diff --git a/asm/battle_message.s b/asm/battle_message.s
index c224df9f9..dec210b25 100644
--- a/asm/battle_message.s
+++ b/asm/battle_message.s
@@ -42,7 +42,7 @@ BufferStringBattle: @ 814E0C4
ldr r1, [r4]
ldrb r1, [r1, 0x9]
strb r1, [r0]
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldr r2, [r4]
ldrb r0, [r2, 0xA]
strb r0, [r1]
@@ -1602,7 +1602,7 @@ _0814EF98:
ldrb r0, [r0]
cmp r0, 0
beq _0814EFE0
- ldr r2, =gUnknown_0202420F
+ ldr r2, =gStringBank
ldrb r1, [r2]
movs r0, 0x1
ands r0, r1
@@ -1611,7 +1611,7 @@ _0814EF98:
b _0814F05C
.pool
_0814EFE0:
- ldr r2, =gUnknown_0202420F
+ ldr r2, =gStringBank
ldrb r1, [r2]
movs r0, 0x1
ands r0, r1
@@ -1640,7 +1640,7 @@ _0814F014:
subs r0, r1
lsls r0, 2
adds r0, r2
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldrb r2, [r1]
ldrh r0, [r0, 0x18]
cmp r0, r2
@@ -2237,11 +2237,11 @@ _0814F584:
b _0814F5C0
.pool
_0814F594:
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
_0814F596:
ldrh r0, [r0]
_0814F598:
- bl sub_8162BD8
+ bl GetFrontierOpponentClass
_0814F59C:
lsls r0, 24
lsrs r0, 24
@@ -2254,12 +2254,12 @@ _0814F5A2:
b _0814F5C0
.pool
_0814F5B4:
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
_0814F5B6:
ldrh r1, [r0]
_0814F5B8:
mov r0, sp
- bl sub_8162E20
+ bl GetFrontierTrainerName
_0814F5BE:
mov r4, sp
_0814F5C0:
@@ -2513,7 +2513,7 @@ _0814F7A4:
b _0814F8DE
.pool
_0814F7BC:
- ldr r1, =gUnknown_085CBE00
+ ldr r1, =gStatNamesTable
adds r0, r5, r7
ldrb r0, [r0, 0x1]
lsls r0, 2
@@ -2606,7 +2606,7 @@ _0814F858:
subs r0, r1
lsls r0, 2
adds r0, r2
- ldr r1, =gUnknown_0202420F
+ ldr r1, =gStringBank
ldrb r2, [r1]
ldrh r0, [r0, 0x18]
cmp r0, r2
diff --git a/asm/battle_setup.s b/asm/battle_setup.s
index 9418c4d1d..7e797e9f8 100644
--- a/asm/battle_setup.s
+++ b/asm/battle_setup.s
@@ -75,7 +75,7 @@ task_add_01_battle_start: @ 80B065C
adds r1, r2
strh r4, [r1, 0xA]
adds r0, r5, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
pop {r4,r5}
pop {r0}
bx r0
@@ -1359,7 +1359,7 @@ sub_80B1158: @ 80B1158
movs r3, 0
bl sub_80F9244
bl ResetTasks
- bl sub_806E64C
+ bl PlayBattleBGM
ldr r0, =sub_80B11A8
bl SetMainCallback2
movs r0, 0
@@ -1678,7 +1678,7 @@ battle_80801F0: @ 80B13F8
ldrb r1, [r2, 0x5]
ldrb r2, [r2, 0x4]
bl GetFieldObjectIdByLocalIdAndMap
- ldr r1, =gUnknown_03005DF0
+ ldr r1, =gSelectedMapObject
strb r0, [r1]
_080B141A:
pop {r0}
@@ -1880,7 +1880,7 @@ SingleTrainerWantsBattle: @ 80B162C
push {r4,lr}
lsls r0, 24
lsrs r0, 24
- ldr r2, =gUnknown_03005DF0
+ ldr r2, =gSelectedMapObject
strb r0, [r2]
ldr r4, =gScriptLastTalked
ldr r3, =gMapObjects
@@ -1908,7 +1908,7 @@ TwoTrainersWantBattle: @ 80B1670
push {r4,lr}
lsls r0, 24
lsrs r0, 24
- ldr r2, =gUnknown_03005DF0
+ ldr r2, =gSelectedMapObject
strb r0, [r2]
ldr r4, =gScriptLastTalked
ldr r3, =gMapObjects
@@ -1960,7 +1960,7 @@ GetTrainerFlagFromScriptPointer: @ 80B16B8
thumb_func_start sub_80B16D8
sub_80B16D8: @ 80B16D8
push {r4,lr}
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r0, [r0]
lsls r4, r0, 3
adds r4, r0
@@ -1998,7 +1998,7 @@ check_trainer_flag: @ 80B1718
lsls r0, 24
cmp r0, 0
beq _080B1734
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r0, [r0]
bl GetBattlePyramidTrainerFlag
b _080B1752
@@ -2013,7 +2013,7 @@ _080B1734:
bl FlagGet
b _080B1752
_080B174A:
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r0, [r0]
bl GetTrainerHillTrainerFlag
_080B1752:
diff --git a/asm/berry.s b/asm/berry.s
deleted file mode 100644
index ec8f225cd..000000000
--- a/asm/berry.s
+++ /dev/null
@@ -1,1120 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80E15B8
-sub_80E15B8: @ 80E15B8
- push {lr}
- sub sp, 0x4
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, =0x000031f8
- adds r1, r0
- ldr r2, =0x0100001a
- mov r0, sp
- bl CpuSet
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80E15B8
-
- thumb_func_start sub_80E15E4
-sub_80E15E4: @ 80E15E4
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000031f8
- adds r3, r0, r1
- movs r2, 0
-_080E15F2:
- adds r0, r3, r2
- adds r1, r4, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x33
- bls _080E15F2
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80E15E4
-
- thumb_func_start sub_80E1610
-sub_80E1610: @ 80E1610
- push {lr}
- adds r3, r0, 0
- movs r2, 0
- movs r1, 0
-_080E1618:
- adds r0, r3, r1
- ldrb r0, [r0]
- adds r2, r0
- adds r1, 0x1
- cmp r1, 0x2F
- bls _080E1618
- adds r0, r2, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80E1610
-
- thumb_func_start sub_80E162C
-sub_80E162C: @ 80E162C
- push {r4,lr}
- ldr r4, =gSaveBlock1Ptr
- ldr r1, [r4]
- ldr r2, =0x0000320c
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080E1674
- ldr r2, =0x00003202
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080E1674
- ldr r2, =0x000031f8
- adds r0, r1, r2
- bl sub_80E1610
- ldr r1, [r4]
- ldr r2, =0x00003228
- adds r1, r2
- ldr r1, [r1]
- cmp r0, r1
- bne _080E1674
- movs r0, 0x1
- b _080E1676
- .pool
-_080E1674:
- movs r0, 0
-_080E1676:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80E162C
-
- thumb_func_start GetBerryInfo
-@ struct berry_info *GetBerryInfo(u8 berryType)
-GetBerryInfo: @ 80E167C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2B
- bne _080E16A0
- bl sub_80E162C
- cmp r0, 0
- beq _080E16A0
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x000031f8
- b _080E16B4
- .pool
-_080E16A0:
- subs r0, r4, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2A
- bls _080E16AC
- movs r4, 0x1
-_080E16AC:
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- ldr r1, =gBerries - 0x1c @ 1-based array
-_080E16B4:
- adds r0, r1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetBerryInfo
-
- thumb_func_start GetBerryTreeInfo
-@ struct BerryTreeInfo *GetBerryTreeInfo(u8 berryTreeId)
-GetBerryTreeInfo: @ 80E16C0
- lsls r0, 24
- ldr r1, =gSaveBlock1Ptr
- lsrs r0, 21
- ldr r2, =0x0000169c
- adds r0, r2
- ldr r1, [r1]
- adds r1, r0
- adds r0, r1, 0
- bx lr
- .pool
- thumb_func_end GetBerryTreeInfo
-
- thumb_func_start FieldObjectInteractionWaterBerryTree
-@ bool8 FieldObjectInteractionWaterBerryTree()
-FieldObjectInteractionWaterBerryTree: @ 80E16DC
- push {lr}
- ldr r0, =gUnknown_03005DF0
- ldrb r0, [r0]
- bl FieldObjectGetBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryTreeInfo
- adds r2, r0, 0
- ldrb r0, [r2, 0x1]
- lsls r0, 25
- lsrs r0, 25
- cmp r0, 0x2
- beq _080E1718
- cmp r0, 0x2
- bgt _080E1708
- cmp r0, 0x1
- beq _080E1712
- b _080E172E
- .pool
-_080E1708:
- cmp r0, 0x3
- beq _080E171E
- cmp r0, 0x4
- beq _080E1724
- b _080E172E
-_080E1712:
- ldrb r0, [r2, 0x5]
- movs r1, 0x10
- b _080E1728
-_080E1718:
- ldrb r0, [r2, 0x5]
- movs r1, 0x20
- b _080E1728
-_080E171E:
- ldrb r0, [r2, 0x5]
- movs r1, 0x40
- b _080E1728
-_080E1724:
- ldrb r0, [r2, 0x5]
- movs r1, 0x80
-_080E1728:
- orrs r0, r1
- strb r0, [r2, 0x5]
- b _080E1732
-_080E172E:
- movs r0, 0
- b _080E1734
-_080E1732:
- movs r0, 0x1
-_080E1734:
- pop {r1}
- bx r1
- thumb_func_end FieldObjectInteractionWaterBerryTree
-
- thumb_func_start IsPlayerFacingPlantedBerryTree
-@ bool8 IsPlayerFacingPlantedBerryTree()
-IsPlayerFacingPlantedBerryTree: @ 80E1738
- push {lr}
- bl GetFieldObjectScriptPointerForComparison
- ldr r1, =gUnknown_082742F9
- cmp r0, r1
- bne _080E1768
- ldr r0, =gUnknown_03005DF0
- ldrb r0, [r0]
- bl FieldObjectGetBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- bl GetStageByBerryTreeId
- lsls r0, 24
- cmp r0, 0
- bne _080E1768
- movs r0, 0x1
- b _080E176A
- .pool
-_080E1768:
- movs r0, 0
-_080E176A:
- pop {r1}
- bx r1
- thumb_func_end IsPlayerFacingPlantedBerryTree
-
- thumb_func_start WaterBerryTree
-@ bool8 WaterBerryTree()
-WaterBerryTree: @ 80E1770
- push {lr}
- bl GetFieldObjectScriptPointerForComparison
- ldr r1, =gUnknown_082742F9
- cmp r0, r1
- bne _080E178C
- bl FieldObjectInteractionWaterBerryTree
- lsls r0, 24
- lsrs r0, 24
- b _080E178E
- .pool
-_080E178C:
- movs r0, 0
-_080E178E:
- pop {r1}
- bx r1
- thumb_func_end WaterBerryTree
-
- thumb_func_start ClearBerryTrees
-@ void ClearBerryTrees()
-ClearBerryTrees: @ 80E1794
- push {r4-r6,lr}
- movs r2, 0
- ldr r6, =gSaveBlock1Ptr
- ldr r5, =0x0000169c
- ldr r0, =gUnknown_0858ABD0
- ldr r3, [r0]
- ldr r4, [r0, 0x4]
-_080E17A2:
- ldr r0, [r6]
- lsls r1, r2, 3
- adds r0, r1
- adds r0, r5
- str r3, [r0]
- str r4, [r0, 0x4]
- adds r2, 0x1
- cmp r2, 0x7F
- ble _080E17A2
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ClearBerryTrees
-
- thumb_func_start BerryTreeGrow
-@ bool8 BerryTreeGrow(struct BerryTreeInfo *berryTree)
-BerryTreeGrow: @ 80E17C8
- push {r4,lr}
- adds r4, r0, 0
- ldrb r1, [r4, 0x1]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080E17DA
-_080E17D6:
- movs r0, 0
- b _080E1866
-_080E17DA:
- lsls r0, r1, 25
- lsrs r0, 25
- cmp r0, 0x5
- bhi _080E1864
- lsls r0, 2
- ldr r1, =_080E17F0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080E17F0:
- .4byte _080E17D6
- .4byte _080E1810
- .4byte _080E1810
- .4byte _080E1810
- .4byte _080E1808
- .4byte _080E1828
-_080E1808:
- adds r0, r4, 0
- bl CalcBerryYield
- strb r0, [r4, 0x4]
-_080E1810:
- ldrb r2, [r4, 0x1]
- lsls r1, r2, 25
- lsrs r1, 25
- adds r1, 0x1
- movs r0, 0x7F
- ands r1, r0
- movs r0, 0x80
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x1]
- b _080E1864
-_080E1828:
- ldrb r0, [r4, 0x5]
- movs r1, 0x11
- negs r1, r1
- ands r1, r0
- movs r0, 0x21
- negs r0, r0
- ands r1, r0
- subs r0, 0x20
- ands r1, r0
- movs r0, 0x7F
- ands r1, r0
- movs r0, 0
- strb r0, [r4, 0x4]
- ldrb r2, [r4, 0x1]
- subs r0, 0x80
- ands r0, r2
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r4, 0x1]
- adds r1, 0x1
- movs r0, 0xF
- ands r1, r0
- strb r1, [r4, 0x5]
- cmp r1, 0xA
- bne _080E1864
- ldr r0, =gUnknown_0858ABD0
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r4]
- str r1, [r4, 0x4]
-_080E1864:
- movs r0, 0x1
-_080E1866:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end BerryTreeGrow
-
- thumb_func_start BerryTreeTimeUpdate
-@ void BerryTreeTimeUpdate(s32 deltaSeconds)
-BerryTreeTimeUpdate: @ 80E1870
- push {r4-r7,lr}
- adds r6, r0, 0
- movs r2, 0
-_080E1876:
- ldr r1, =gSaveBlock1Ptr
- lsls r0, r2, 3
- ldr r3, =0x0000169c
- adds r0, r3
- ldr r1, [r1]
- adds r4, r1, r0
- ldrb r0, [r4]
- adds r7, r2, 0x1
- cmp r0, 0
- beq _080E1910
- ldrb r1, [r4, 0x1]
- movs r0, 0x7F
- ands r0, r1
- cmp r0, 0
- beq _080E1910
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080E1910
- ldrb r0, [r4]
- bl GetStageDurationByBerryType
- lsls r0, 16
- lsrs r0, 16
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 3
- subs r1, r0
- cmp r6, r1
- blt _080E18CC
- ldr r0, =gUnknown_0858ABD0
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r4]
- str r1, [r4, 0x4]
- b _080E1910
- .pool
-_080E18CC:
- adds r5, r6, 0
- cmp r5, 0
- beq _080E1910
- ldrh r1, [r4, 0x2]
- cmp r1, r5
- ble _080E18DC
- subs r0, r1, r5
- b _080E190E
-_080E18DC:
- subs r5, r1
- ldrb r0, [r4]
- bl GetStageDurationByBerryType
- strh r0, [r4, 0x2]
- adds r0, r4, 0
- bl BerryTreeGrow
- cmp r0, 0
- beq _080E1910
- ldrb r1, [r4, 0x1]
- movs r0, 0x7F
- ands r0, r1
- cmp r0, 0x5
- bne _080E1900
- ldrh r0, [r4, 0x2]
- lsls r0, 2
- strh r0, [r4, 0x2]
-_080E1900:
- cmp r5, 0
- beq _080E1910
- ldrh r0, [r4, 0x2]
- adds r1, r0, 0
- cmp r0, r5
- ble _080E18DC
- subs r0, r5
-_080E190E:
- strh r0, [r4, 0x2]
-_080E1910:
- adds r2, r7, 0
- cmp r2, 0x7F
- ble _080E1876
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end BerryTreeTimeUpdate
-
- thumb_func_start PlantBerryTree
-@ void PlantBerryTree(u8 berryTreeId, u8 berryType, u8 stage, u8 a4)
-PlantBerryTree: @ 80E191C
- push {r4-r7,lr}
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r3, 24
- lsrs r7, r3, 24
- bl GetBerryTreeInfo
- adds r6, r0, 0
- ldr r0, =gUnknown_0858ABD0
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r6]
- str r1, [r6, 0x4]
- strb r4, [r6]
- adds r0, r4, 0
- bl GetStageDurationByBerryType
- strh r0, [r6, 0x2]
- movs r1, 0x7F
- ands r1, r5
- ldrb r2, [r6, 0x1]
- movs r0, 0x80
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r6, 0x1]
- cmp r5, 0x5
- bne _080E196E
- adds r0, r6, 0
- bl CalcBerryYield
- strb r0, [r6, 0x4]
- ldrh r0, [r6, 0x2]
- lsls r0, 2
- strh r0, [r6, 0x2]
-_080E196E:
- cmp r7, 0
- bne _080E197A
- ldrb r0, [r6, 0x1]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r6, 0x1]
-_080E197A:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end PlantBerryTree
-
- thumb_func_start RemoveBerryTree
-@ void RemoveBerryTree(u8 berryTreeId)
-RemoveBerryTree: @ 80E1984
- lsls r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- lsrs r0, 21
- adds r2, r0
- ldr r0, =0x0000169c
- adds r2, r0
- ldr r0, =gUnknown_0858ABD0
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r2]
- str r1, [r2, 0x4]
- bx lr
- .pool
- thumb_func_end RemoveBerryTree
-
- thumb_func_start GetBerryTypeByBerryTreeId
-@ u8 GetBerryTypeByBerryTreeId(u8 berryTreeId)
-GetBerryTypeByBerryTreeId: @ 80E19AC
- lsls r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r1, [r1]
- lsrs r0, 21
- adds r1, r0
- ldr r0, =0x0000169c
- adds r1, r0
- ldrb r0, [r1]
- bx lr
- .pool
- thumb_func_end GetBerryTypeByBerryTreeId
-
- thumb_func_start GetStageByBerryTreeId
-@ u8 GetStageByBerryTreeId(u8 berryTreeId)
-GetStageByBerryTreeId: @ 80E19C8
- lsls r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r1, [r1]
- lsrs r0, 21
- adds r1, r0
- ldr r0, =0x0000169d
- adds r1, r0
- ldrb r0, [r1]
- lsls r0, 25
- lsrs r0, 25
- bx lr
- .pool
- thumb_func_end GetStageByBerryTreeId
-
- thumb_func_start ItemIdToBerryType
-@ u8 ItemIdToBerryType(u16 itemId)
-ItemIdToBerryType: @ 80E19E8
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r2, =0xff7b0000
- adds r0, r2
- lsrs r0, 16
- cmp r0, 0x2A
- bhi _080E1A08
- adds r0, r1, 0
- adds r0, 0x7C
- lsls r0, 24
- lsrs r0, 24
- b _080E1A0A
- .pool
-_080E1A08:
- movs r0, 0x1
-_080E1A0A:
- pop {r1}
- bx r1
- thumb_func_end ItemIdToBerryType
-
- thumb_func_start BerryTypeToItemId
-@ u16 BerryTypeToItemId(u16 berryType)
-BerryTypeToItemId: @ 80E1A10
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r2, =0xffff0000
- adds r0, r2
- lsrs r0, 16
- cmp r0, 0x2A
- bhi _080E1A30
- adds r0, r1, 0
- adds r0, 0x84
- lsls r0, 16
- lsrs r0, 16
- b _080E1A32
- .pool
-_080E1A30:
- movs r0, 0x85
-_080E1A32:
- pop {r1}
- bx r1
- thumb_func_end BerryTypeToItemId
-
- thumb_func_start GetBerryNameByBerryType
-@ void GetBerryNameByBerryType(u8 berryType, u8 *dest)
-GetBerryNameByBerryType: @ 80E1A38
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryInfo
- adds r1, r0, 0
- adds r0, r4, 0
- movs r2, 0x6
- bl memcpy
- movs r0, 0xFF
- strb r0, [r4, 0x6]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end GetBerryNameByBerryType
-
- thumb_func_start GetBerryCountStringByBerryType
-@ void GetBerryCountStringByBerryType(u8 berryType, u8 *dest, u32 berryCount)
-GetBerryCountStringByBerryType: @ 80E1A58
- push {r4,r5,lr}
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryInfo
- adds r1, r0, 0
- adds r0, r4, 0
- adds r2, r5, 0
- bl GetBerryCountString
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end GetBerryCountStringByBerryType
-
- thumb_func_start ResetBerryTreeSparkleFlag
-@ void ResetBerryTreeSparkleFlag(u8 berryTreeId)
-ResetBerryTreeSparkleFlag: @ 80E1A78
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryTreeInfo
- ldrb r2, [r0, 0x1]
- movs r1, 0x7F
- ands r1, r2
- strb r1, [r0, 0x1]
- pop {r0}
- bx r0
- thumb_func_end ResetBerryTreeSparkleFlag
-
- thumb_func_start BerryTreeGetNumStagesWatered
-@ u8 BerryTreeGetNumStagesWatered(struct BerryTreeInfo *berryTree)
-BerryTreeGetNumStagesWatered: @ 80E1A90
- push {lr}
- ldrb r2, [r0, 0x5]
- movs r0, 0x10
- ands r0, r2
- lsls r0, 24
- lsrs r0, 24
- negs r0, r0
- lsrs r1, r0, 31
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- beq _080E1AAA
- adds r1, 0x1
-_080E1AAA:
- movs r0, 0x40
- ands r0, r2
- cmp r0, 0
- beq _080E1AB8
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
-_080E1AB8:
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _080E1AC6
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
-_080E1AC6:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end BerryTreeGetNumStagesWatered
-
- thumb_func_start GetNumStagesWateredByBerryTreeId
-@ u8 GetNumStagesWateredByBerryTreeId(u8 berryTreeId)
-GetNumStagesWateredByBerryTreeId: @ 80E1ACC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryTreeInfo
- bl BerryTreeGetNumStagesWatered
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end GetNumStagesWateredByBerryTreeId
-
- thumb_func_start CalcBerryYieldInternal
-@ u8 CalcBerryYieldInternal(u16 max, u16 min, u8 numStagesWatered)
-CalcBerryYieldInternal: @ 80E1AE4
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r6, r1, 16
- lsls r2, 24
- lsrs r2, 24
- cmp r2, 0
- bne _080E1AFA
- lsls r0, r6, 24
- b _080E1B2E
-_080E1AFA:
- subs r1, r0, r6
- subs r0, r2, 0x1
- adds r5, r1, 0
- muls r5, r0
- adds r4, r1, 0
- muls r4, r2
- bl Random
- lsls r0, 16
- lsrs r0, 16
- subs r4, r5
- adds r4, 0x1
- adds r1, r4, 0
- bl __umodsi3
- adds r5, r0
- movs r0, 0x3
- ands r0, r5
- cmp r0, 0x1
- bls _080E1B28
- lsrs r0, r5, 2
- adds r0, 0x1
- b _080E1B2A
-_080E1B28:
- lsrs r0, r5, 2
-_080E1B2A:
- adds r0, r6
- lsls r0, 24
-_080E1B2E:
- lsrs r0, 24
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end CalcBerryYieldInternal
-
- thumb_func_start CalcBerryYield
-@ u8 CalcBerryYield(struct BerryTreeInfo *berryTree)
-CalcBerryYield: @ 80E1B38
- push {r4-r6,lr}
- adds r4, r0, 0
- ldrb r0, [r4]
- bl GetBerryInfo
- ldrb r6, [r0, 0xB]
- ldrb r5, [r0, 0xA]
- adds r0, r4, 0
- bl BerryTreeGetNumStagesWatered
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r5, 0
- adds r1, r6, 0
- bl CalcBerryYieldInternal
- lsls r0, 24
- lsrs r0, 24
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end CalcBerryYield
-
- thumb_func_start GetBerryCountByBerryTreeId
-@ u8 GetBerryCountByBerryTreeId(u8 berryTreeId)
-GetBerryCountByBerryTreeId: @ 80E1B64
- lsls r0, 24
- ldr r1, =gSaveBlock1Ptr
- ldr r1, [r1]
- lsrs r0, 21
- adds r1, r0
- movs r0, 0xB5
- lsls r0, 5
- adds r1, r0
- ldrb r0, [r1]
- bx lr
- .pool
- thumb_func_end GetBerryCountByBerryTreeId
-
- thumb_func_start GetStageDurationByBerryType
-@ u16 GetStageDurationByBerryType(u8 berryType)
-GetStageDurationByBerryType: @ 80E1B7C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryInfo
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 18
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end GetStageDurationByBerryType
-
- thumb_func_start FieldObjectInteractionGetBerryTreeData
-@ void FieldObjectInteractionGetBerryTreeData()
-FieldObjectInteractionGetBerryTreeData: @ 80E1B94
- push {r4-r6,lr}
- ldr r0, =gUnknown_03005DF0
- ldrb r0, [r0]
- bl FieldObjectGetBerryTreeId
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r5, 0
- bl GetBerryTypeByBerryTreeId
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r5, 0
- bl ResetBerryTreeSparkleFlag
- ldr r0, =gScriptLastTalked
- ldrb r0, [r0]
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl sub_8092E9C
- lsls r0, 24
- cmp r0, 0
- beq _080E1BE0
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0xFF
- strh r0, [r1]
- b _080E1BEE
- .pool
-_080E1BE0:
- ldr r4, =gSpecialVar_0x8004
- adds r0, r5, 0
- bl GetStageByBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
-_080E1BEE:
- ldr r4, =gSpecialVar_0x8005
- adds r0, r5, 0
- bl GetNumStagesWateredByBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- ldr r4, =gSpecialVar_0x8006
- adds r0, r5, 0
- bl GetBerryCountByBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- ldr r1, =gStringVar1
- ldrh r2, [r4]
- adds r0, r6, 0
- bl GetBerryCountStringByBerryType
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end FieldObjectInteractionGetBerryTreeData
-
- thumb_func_start FieldObjectInteractionGetBerryName
-@ void FieldObjectInteractionGetBerryName()
-FieldObjectInteractionGetBerryName: @ 80E1C2C
- push {lr}
- ldr r0, =gUnknown_03005DF0
- ldrb r0, [r0]
- bl FieldObjectGetBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- bl GetBerryTypeByBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gStringVar1
- bl GetBerryNameByBerryType
- pop {r0}
- bx r0
- .pool
- thumb_func_end FieldObjectInteractionGetBerryName
-
- thumb_func_start FieldObjectInteractionGetBerryCountString
-@ void FieldObjectInteractionGetBerryCountString()
-FieldObjectInteractionGetBerryCountString: @ 80E1C54
- push {r4,r5,lr}
- ldr r0, =gUnknown_03005DF0
- ldrb r0, [r0]
- bl FieldObjectGetBerryTreeId
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl GetBerryTypeByBerryTreeId
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- adds r0, r4, 0
- bl GetBerryCountByBerryTreeId
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- ldr r1, =gStringVar1
- adds r0, r5, 0
- bl GetBerryCountStringByBerryType
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end FieldObjectInteractionGetBerryCountString
-
- thumb_func_start ChooseBerry
-@ void ChooseBerry()
-ChooseBerry: @ 80E1C94
- push {lr}
- ldr r0, =CB2_ChooseBerry
- bl SetMainCallback2
- pop {r0}
- bx r0
- .pool
- thumb_func_end ChooseBerry
-
- thumb_func_start FieldObjectInteractionPlantBerryTree
-@ void FieldObjectInteractionPlantBerryTree()
-FieldObjectInteractionPlantBerryTree: @ 80E1CA4
- push {r4,lr}
- ldr r0, =gUnknown_0203CE7C
- ldrh r0, [r0]
- bl ItemIdToBerryType
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_03005DF0
- ldrb r0, [r0]
- bl FieldObjectGetBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- movs r2, 0x1
- movs r3, 0x1
- bl PlantBerryTree
- bl FieldObjectInteractionGetBerryTreeData
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end FieldObjectInteractionPlantBerryTree
-
- thumb_func_start FieldObjectInteractionPickBerryTree
-@ void FieldObjectInteractionPickBerryTree()
-FieldObjectInteractionPickBerryTree: @ 80E1CDC
- push {r4-r6,lr}
- ldr r0, =gUnknown_03005DF0
- ldrb r0, [r0]
- bl FieldObjectGetBerryTreeId
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- adds r0, r5, 0
- bl GetBerryTypeByBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- ldr r6, =gSpecialVar_0x8004
- bl BerryTypeToItemId
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- bl GetBerryCountByBerryTreeId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl AddBagItem
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r6]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end FieldObjectInteractionPickBerryTree
-
- thumb_func_start FieldObjectInteractionRemoveBerryTree
-@ void FieldObjectInteractionRemoveBerryTree()
-FieldObjectInteractionRemoveBerryTree: @ 80E1D28
- push {lr}
- ldr r0, =gUnknown_03005DF0
- ldrb r0, [r0]
- bl FieldObjectGetBerryTreeId
- lsls r0, 24
- lsrs r0, 24
- bl RemoveBerryTree
- ldr r0, =gScriptLastTalked
- ldrb r0, [r0]
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl sub_8092EF0
- pop {r0}
- bx r0
- .pool
- thumb_func_end FieldObjectInteractionRemoveBerryTree
-
- thumb_func_start PlayerHasBerries
-@ bool8 PlayerHasBerries()
-PlayerHasBerries: @ 80E1D5C
- push {lr}
- movs r0, 0x4
- bl IsBagPocketNonEmpty
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end PlayerHasBerries
-
- thumb_func_start ResetBerryTreeSparkleFlags
-@ void ResetBerryTreeSparkleFlags()
-ResetBerryTreeSparkleFlags: @ 80E1D6C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl GetCameraCoords
- mov r0, sp
- ldrh r2, [r0]
- ldrh r1, [r4]
- adds r1, 0x3
- adds r3, r2, 0
- adds r3, 0xE
- lsls r1, 16
- movs r5, 0x80
- lsls r5, 12
- adds r0, r1, r5
- lsrs r0, 16
- mov r10, r0
- mov r5, sp
- lsls r2, 16
- asrs r2, 16
- mov r9, r2
- ldr r4, =gMapObjects
- lsls r3, 16
- asrs r3, 16
- mov r8, r3
- asrs r7, r1, 16
- movs r6, 0xF
-_080E1DB0:
- ldrb r0, [r4]
- lsls r0, 31
- cmp r0, 0
- beq _080E1DEC
- ldrb r0, [r4, 0x6]
- cmp r0, 0xC
- bne _080E1DEC
- ldrh r0, [r4, 0x10]
- strh r0, [r5]
- ldrh r0, [r4, 0x12]
- mov r1, sp
- strh r0, [r1, 0x2]
- movs r2, 0
- ldrsh r1, [r5, r2]
- cmp r9, r1
- bgt _080E1DEC
- cmp r1, r8
- bgt _080E1DEC
- lsls r0, 16
- asrs r1, r0, 16
- cmp r7, r1
- bgt _080E1DEC
- mov r2, r10
- lsls r0, r2, 16
- asrs r0, 16
- cmp r1, r0
- bgt _080E1DEC
- ldrb r0, [r4, 0x1D]
- bl ResetBerryTreeSparkleFlag
-_080E1DEC:
- adds r4, 0x24
- subs r6, 0x1
- cmp r6, 0
- bge _080E1DB0
- 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 ResetBerryTreeSparkleFlags
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/berry_blender.s b/asm/berry_blender.s
index cc859f052..fb410e9f3 100644
--- a/asm/berry_blender.s
+++ b/asm/berry_blender.s
@@ -1190,7 +1190,7 @@ _080801F8:
movs r5, 0xAC
lsls r5, 1
adds r0, r5
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r1, [r1]
bl sub_807FE14
ldr r0, =gUnknown_020228C4
@@ -2043,7 +2043,7 @@ _080808F8:
_08080950:
bl sub_800B4C0
bl sub_8080588
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r1, [r4]
movs r0, 0
bl sub_8082FDC
@@ -7619,7 +7619,7 @@ _080837EA:
movs r1, 0x6
bl CreateTask
bl sub_80EECEC
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
movs r1, 0x1
bl RemoveBagItem
diff --git a/asm/berry_tag_screen.s b/asm/berry_tag_screen.s
index 4d5022189..4d7644723 100644
--- a/asm/berry_tag_screen.s
+++ b/asm/berry_tag_screen.s
@@ -12,7 +12,7 @@ sub_8177C14: @ 8177C14
ldr r0, =0x0000180c
bl AllocZeroed
str r0, [r4]
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemIdToBerryType
ldr r1, [r4]
diff --git a/asm/cable_club.s b/asm/cable_club.s
index 21713e0be..76d1dca06 100644
--- a/asm/cable_club.s
+++ b/asm/cable_club.s
@@ -1855,13 +1855,13 @@ _080B3354:
cmp r0, 0
beq _080B3370
ldr r0, =0x000001dd
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
b _080B3378
.pool
_080B3370:
movs r0, 0xEE
lsls r0, 1
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
_080B3378:
ldr r0, =gSpecialVar_0x8004
ldrh r0, [r0]
@@ -2025,13 +2025,13 @@ _080B34DE:
cmp r0, 0
beq _080B34FC
ldr r0, =0x000001dd
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
b _080B3504
.pool
_080B34FC:
movs r0, 0xEE
lsls r0, 1
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
_080B3504:
ldr r1, =gLinkPlayers
ldr r0, =0x00002211
diff --git a/asm/contest.s b/asm/contest.s
index 9425e262d..b891007bb 100644
--- a/asm/contest.s
+++ b/asm/contest.s
@@ -547,7 +547,7 @@ _080D7B4E:
strb r5, [r0]
bl sub_80D7988
bl init_uns_table_pokemon_copy
- ldr r4, =gUnknown_020244D4
+ ldr r4, =gBattleSpritesGfx
ldr r0, [r4]
ldr r0, [r0]
bl Free
@@ -581,7 +581,7 @@ _080D7B4E:
lsls r1, 9
adds r0, r1
strb r5, [r0]
- bl sub_806E414
+ bl ClearBattleMonForms
bl sub_80D787C
b _080D7BF6
.pool
@@ -2494,7 +2494,7 @@ _080D8DC4:
mov r4, r8
lsls r4, 2
mov r10, r4
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
movs r2, 0
adds r0, r1, 0x3
_080D8DD0:
@@ -6741,7 +6741,7 @@ sub_80DB174: @ 80DB174
lsls r0, r5, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x4]
adds r2, r5, 0
@@ -13607,7 +13607,7 @@ sub_80DE864: @ 80DE864
movs r2, 0x14
bl memset
bl sub_80A3934
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
movs r2, 0
adds r0, r1, 0x3
_080DE8A8:
diff --git a/asm/contest_link_80F57C4.s b/asm/contest_link_80F57C4.s
index 19aabe85f..da951f97d 100644
--- a/asm/contest_link_80F57C4.s
+++ b/asm/contest_link_80F57C4.s
@@ -1364,7 +1364,7 @@ _080F6454:
mov r9, r4
ldr r4, =gMonFrontPicTable
mov r12, r4
- ldr r4, =gUnknown_020244D4
+ ldr r4, =gBattleSpritesGfx
mov r8, r4
cmp r0, 0
beq _080F648C
@@ -1638,7 +1638,7 @@ _080F66DA:
lsls r0, 16
lsrs r0, 16
movs r1, 0x2
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
adds r5, 0x40
subs r4, 0x1
cmp r4, 0
diff --git a/asm/contest_painting.s b/asm/contest_painting.s
index d8dec9f2a..42cdf6802 100644
--- a/asm/contest_painting.s
+++ b/asm/contest_painting.s
@@ -581,7 +581,7 @@ sub_81302E8: @ 81302E8
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r4, =gUnknown_020244D4
+ ldr r4, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r4, =gBattleSpritesGfx
ldr r1, [r4]
ldr r1, [r1, 0x4]
ldr r2, [r6]
diff --git a/asm/credits.s b/asm/credits.s
index be5e9e5c4..0a568a3ae 100644
--- a/asm/credits.s
+++ b/asm/credits.s
@@ -3688,7 +3688,7 @@ sub_8177388: @ 8177388
_081773B4:
adds r0, r4, 0
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _081773D4
diff --git a/asm/easy_chat.s b/asm/easy_chat.s
index d123b23f2..565d9fcc6 100644
--- a/asm/easy_chat.s
+++ b/asm/easy_chat.s
@@ -10177,7 +10177,7 @@ _0811F146:
lsls r0, 16
lsrs r0, 16
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _0811F166
@@ -11016,7 +11016,7 @@ _0811F7D8:
lsls r0, 16
lsrs r0, 16
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
lsrs r0, 24
b _0811F82C
@@ -11030,7 +11030,7 @@ _0811F7EE:
lsls r0, 16
lsrs r0, 16
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
_0811F808:
movs r0, 0x1
b _0811F82C
diff --git a/asm/egg_hatch.s b/asm/egg_hatch.s
index 52a659663..d646dbb73 100644
--- a/asm/egg_hatch.s
+++ b/asm/egg_hatch.s
@@ -218,10 +218,10 @@ sub_80714B8: @ 80714B8
lsrs r4, 16
adds r0, r4, 0
movs r1, 0x2
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
adds r0, r4, 0
movs r1, 0x3
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
ldr r1, =gStringVar1
adds r0, r5, 0
bl pokemon_get_nick
@@ -399,7 +399,7 @@ _08071688:
lsls r0, r4, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r2, [r1]
mov r6, r8
lsls r1, r6, 1
@@ -937,7 +937,7 @@ _08071BBC:
adds r1, r7, 0
movs r2, 0
movs r3, 0x1
- bl sub_806ED40
+ bl DoMonFrontSpriteAnimation
ldr r1, [r5]
b _08071DC8
.pool
diff --git a/asm/evolution_scene.s b/asm/evolution_scene.s
index 01b495c09..b8710acd4 100644
--- a/asm/evolution_scene.s
+++ b/asm/evolution_scene.s
@@ -235,7 +235,7 @@ evolution_cutscene: @ 813DA8C
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r2, =gUnknown_020244D4
+ ldr r2, =gBattleSpritesGfx
ldr r1, [r2]
ldr r1, [r1, 0x8]
adds r2, r5, 0
@@ -272,7 +272,7 @@ evolution_cutscene: @ 813DA8C
adds r6, r7, 0
adds r6, 0x1C
adds r0, r1, r6
- ldr r2, =nullsub_18
+ ldr r2, =SpriteCallbackDummy_2
str r2, [r0]
adds r1, r7
ldrb r2, [r1, 0x5]
@@ -291,7 +291,7 @@ evolution_cutscene: @ 813DA8C
lsls r0, r1, 3
ldr r2, =gMonFrontPicTable
adds r0, r2
- ldr r2, =gUnknown_020244D4
+ ldr r2, =gBattleSpritesGfx
ldr r1, [r2]
ldr r1, [r1, 0x10]
mov r2, r10
@@ -325,7 +325,7 @@ evolution_cutscene: @ 813DA8C
adds r1, r3
lsls r1, 2
adds r6, r1, r6
- ldr r2, =nullsub_18
+ ldr r2, =SpriteCallbackDummy_2
str r2, [r6]
adds r1, r7
ldrb r0, [r1, 0x5]
@@ -492,7 +492,7 @@ sub_813DD7C: @ 813DD7C
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x10]
adds r2, r5, 0
@@ -528,7 +528,7 @@ sub_813DD7C: @ 813DD7C
adds r0, r3, 0
adds r0, 0x1C
adds r0, r1, r0
- ldr r2, =nullsub_18
+ ldr r2, =SpriteCallbackDummy_2
str r2, [r0]
adds r1, r3
ldrb r2, [r1, 0x5]
@@ -697,7 +697,7 @@ _0813E0A8:
lsls r0, r6, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x10]
adds r2, r6, 0
@@ -736,7 +736,7 @@ _0813E0F0:
adds r0, r3, 0
adds r0, 0x1C
adds r0, r1, r0
- ldr r2, =nullsub_18
+ ldr r2, =SpriteCallbackDummy_2
str r2, [r0]
adds r1, r3
ldrb r2, [r1, 0x5]
@@ -867,7 +867,7 @@ sub_813E1D4: @ 813E1D4
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x8]
adds r2, r5, 0
@@ -903,7 +903,7 @@ sub_813E1D4: @ 813E1D4
adds r0, r3, 0
adds r0, 0x1C
adds r0, r1, r0
- ldr r2, =nullsub_18
+ ldr r2, =SpriteCallbackDummy_2
str r2, [r0]
adds r1, r3
ldrb r2, [r1, 0x5]
@@ -1142,13 +1142,13 @@ _0813E4A0:
lsls r0, 16
lsrs r0, 16
movs r1, 0x2
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
ldrh r0, [r4, 0xC]
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x3
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
mov r0, r9
movs r1, 0xB
bl GetMonData
@@ -1647,19 +1647,19 @@ _0813E99E:
ldrh r1, [r4, 0xA]
ldrh r2, [r4, 0xC]
mov r0, r9
- bl sub_806D778
+ bl EvolutionRenameMon
ldrh r0, [r4, 0xC]
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x2
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
ldrh r0, [r4, 0xC]
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x3
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
movs r0, 0xE
bl IncrementGameStat
b _0813F1A4
@@ -2831,19 +2831,19 @@ _0813F4F2:
ldrh r1, [r4, 0xA]
ldrh r2, [r4, 0xC]
mov r0, r9
- bl sub_806D778
+ bl EvolutionRenameMon
ldrh r0, [r4, 0xC]
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x2
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
ldrh r0, [r4, 0xC]
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r0, 16
movs r1, 0x3
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
movs r0, 0xE
bl IncrementGameStat
b _0813FCC4
@@ -4182,7 +4182,7 @@ sub_81401E0: @ 81401E0
adds r0, r2
movs r2, 0
movs r3, 0
- bl sub_806ED40
+ bl DoMonFrontSpriteAnimation
pop {r0}
bx r0
.pool
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index c44d77e3f..5c515ae3d 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -187,7 +187,7 @@ sub_809C014: @ 809C014
ldr r0, =gScriptLastTalked
movs r1, 0
strh r1, [r0]
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
strb r1, [r0]
bl player_get_direction_lower_nybble
lsls r0, 24
@@ -580,7 +580,7 @@ _0809C34C:
adds r4, 0x1
cmp r4, 0x3
ble _0809C340
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
strb r3, [r0]
ldr r1, =gScriptLastTalked
adds r0, r2, r3
@@ -666,7 +666,7 @@ _0809C400:
b _0809C44E
.pool
_0809C40C:
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
strb r4, [r0]
ldr r1, =gScriptLastTalked
adds r0, r2, r4
diff --git a/asm/hall_of_fame.s b/asm/hall_of_fame.s
index 4dbea35d5..f8ba2f0be 100644
--- a/asm/hall_of_fame.s
+++ b/asm/hall_of_fame.s
@@ -3214,14 +3214,14 @@ _08175176:
adds r0, r2, 0
movs r2, 0x1
movs r3, 0x3
- bl sub_806ED40
+ bl DoMonFrontSpriteAnimation
b _0817519C
_08175190:
lsrs r1, 16
adds r0, r2, 0
movs r2, 0
movs r3, 0x3
- bl sub_806ED40
+ bl DoMonFrontSpriteAnimation
_0817519C:
pop {r4}
pop {r0}
diff --git a/asm/item_use.s b/asm/item_use.s
index 442b5681a..1f7ba10c5 100644
--- a/asm/item_use.s
+++ b/asm/item_use.s
@@ -11,7 +11,7 @@ SetUpItemUseCallback: @ 80FD060
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r0, [r1]
cmp r0, 0xAF
bne _080FD084
@@ -260,7 +260,7 @@ sub_80FD254: @ 80FD254
push {lr}
sub sp, 0x24
mov r1, sp
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
strh r0, [r1, 0x20]
ldr r1, =bag_menu_mail_related
@@ -381,7 +381,7 @@ ItemUseOnFieldCB_Bike: @ 80FD358
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemId_GetSecondaryId
lsls r0, 24
@@ -515,7 +515,7 @@ ItemUseOnFieldCB_Rod: @ 80FD468
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemId_GetSecondaryId
lsls r0, 24
@@ -1642,7 +1642,7 @@ sub_80FDD10: @ 80FDD10
b _080FDD68
.pool
_080FDD58:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemId_GetFieldFunc
adds r1, r0, 0
@@ -1661,7 +1661,7 @@ sub_80FDD74: @ 80FDD74
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
movs r1, 0x1
bl RemoveBagItem
@@ -1692,7 +1692,7 @@ ItemUseOutOfBattle_WailmerPail: @ 80FDDA4
b _080FDDD8
.pool
_080FDDC8:
- bl WaterBerryTree
+ bl TryToWaterBerryTree
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1886,7 +1886,7 @@ ItemUseOutOfBattle_TMHM: @ 80FDF48
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r1, [r0]
movs r0, 0xA9
lsls r0, 1
@@ -1945,7 +1945,7 @@ task08_0809AD8C: @ 80FDFBC
cmp r0, 0
beq _080FE000
ldr r4, =gStringVar1
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemIdToBattleMoveId
lsls r0, 16
@@ -2002,7 +2002,7 @@ sub_80FE03C: @ 80FE03C
thumb_func_start sub_80FE058
sub_80FE058: @ 80FE058
push {r4,lr}
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
movs r1, 0x1
bl RemoveBagItem
@@ -2125,7 +2125,7 @@ sub_80FE164: @ 80FE164
cmp r0, 0
bne _080FE1C2
ldr r4, =0x00004021
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemId_GetHoldEffectParam
adds r1, r0, 0
@@ -2205,7 +2205,7 @@ ItemUseOutOfBattle_BlackWhiteFlute: @ 80FE234
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
ldr r1, =gStringVar2
bl CopyItemName
@@ -2357,11 +2357,11 @@ ItemUseInBattle_PokeBall: @ 80FE394
lsls r0, 24
lsrs r4, r0, 24
adds r5, r4, 0
- bl PlayerPartyAndPokemonStorageFull
+ bl IsPlayerPartyAndPokemonStorageFull
lsls r0, 24
cmp r0, 0
bne _080FE3D0
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
movs r1, 0x1
bl RemoveBagItem
@@ -2450,7 +2450,7 @@ sub_80FE440: @ 80FE440
ble _080FE4AC
movs r0, 0x1
bl PlaySE
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
movs r1, 0x1
bl RemoveBagItem
@@ -2487,7 +2487,7 @@ ItemUseInBattle_StatIncrease: @ 80FE4B8
lsls r0, 24
lsrs r4, r0, 24
ldr r1, =gBattlePartyID
- ldr r0, =gUnknown_020244B8
+ ldr r0, =gBankInMenu
ldrb r0, [r0]
lsls r0, 1
adds r0, r1
@@ -2496,7 +2496,7 @@ ItemUseInBattle_StatIncrease: @ 80FE4B8
muls r0, r2
ldr r1, =gPlayerParty
adds r0, r1
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r1, [r1]
lsls r2, 24
lsrs r2, 24
@@ -2664,7 +2664,7 @@ ItemUseOutOfBattle_EnigmaBerry: @ 80FE650
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl GetItemEffectType
lsls r0, 24
@@ -2785,7 +2785,7 @@ ItemUseInBattle_EnigmaBerry: @ 80FE77C
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl GetItemEffectType
lsls r0, 24
diff --git a/asm/lilycove_lady.s b/asm/lilycove_lady.s
index debcc3fbe..fca8cb29b 100644
--- a/asm/lilycove_lady.s
+++ b/asm/lilycove_lady.s
@@ -566,7 +566,7 @@ _0818DE36:
thumb_func_start sub_818DE44
sub_818DE44: @ 818DE44
push {lr}
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl sub_818DD84
lsls r0, 24
@@ -1323,7 +1323,7 @@ sub_818E47C: @ 818E47C
thumb_func_start sub_818E490
sub_818E490: @ 818E490
push {lr}
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
movs r1, 0x1
bl RemoveBagItem
@@ -1341,7 +1341,7 @@ sub_818E4A4: @ 818E4A4
ldr r1, =0x00003b58
adds r0, r1
str r0, [r2]
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r1, [r1]
strh r1, [r0, 0x28]
movs r3, 0
diff --git a/asm/link.s b/asm/link.s
index 76f5058eb..16b7b1b4d 100644
--- a/asm/link.s
+++ b/asm/link.s
@@ -1232,7 +1232,7 @@ _08009E8C:
_08009EA8:
ldr r0, =gUnknown_03003110
strh r2, [r0]
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r1, [r1]
b _08009F04
.pool
@@ -21076,7 +21076,7 @@ sub_8014210: @ 8014210
str r0, [r1, 0x8]
ldr r0, =gBattleTypeFlags
str r6, [r0]
- bl sub_806E64C
+ bl PlayBattleBGM
pop {r4-r6}
pop {r0}
bx r0
@@ -45605,7 +45605,7 @@ _08020D74:
sub_8020D8C: @ 8020D8C
push {r4,lr}
sub sp, 0xC
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r0, [r1]
subs r0, 0x85
lsls r0, 16
@@ -45626,7 +45626,7 @@ _08020DB0:
ldrb r0, [r2, 0x8]
lsls r0, 5
adds r0, r2, r0
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r1, [r1]
subs r1, 0x85
adds r0, 0xA4
diff --git a/asm/main_menu.s b/asm/main_menu.s
index 0fa716115..6c5b0d2f4 100644
--- a/asm/main_menu.s
+++ b/asm/main_menu.s
@@ -3940,7 +3940,7 @@ AddBirchSpeechObjects: @ 803192C
strb r1, [r2]
strh r0, [r5, 0x1A]
movs r0, 0x3C
- bl TrainerClassToTrainerPic
+ bl sub_806EFF0
lsls r0, 24
lsrs r0, 24
ldr r4, =0x0201c000
@@ -3970,7 +3970,7 @@ AddBirchSpeechObjects: @ 803192C
strb r1, [r2, 0x5]
strh r0, [r5, 0x1C]
movs r0, 0x3F
- bl TrainerClassToTrainerPic
+ bl sub_806EFF0
lsls r0, 24
lsrs r0, 24
ldr r1, =0x0201c000
diff --git a/asm/map_obj_lock.s b/asm/map_obj_lock.s
index f02f8526b..60757cdd0 100644
--- a/asm/map_obj_lock.s
+++ b/asm/map_obj_lock.s
@@ -98,7 +98,7 @@ _0809842A:
cmp r0, 0
bne _08098452
ldr r2, =gMapObjects
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -152,7 +152,7 @@ _0809849A:
thumb_func_start sub_80984A0
sub_80984A0: @ 80984A0
push {r4,r5,lr}
- ldr r4, =gUnknown_03005DF0
+ ldr r4, =gSelectedMapObject
ldrb r0, [r4]
bl sub_80974D0
ldr r0, =sub_8098400
@@ -213,7 +213,7 @@ sub_80984F4: @ 80984F4
sub_8098524: @ 8098524
push {r4,lr}
ldr r4, =gMapObjects
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -249,7 +249,7 @@ _08098542:
thumb_func_start sub_8098574
sub_8098574: @ 8098574
push {lr}
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -267,7 +267,7 @@ sub_8098574: @ 8098574
thumb_func_start sub_809859C
sub_809859C: @ 809859C
push {lr}
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
diff --git a/asm/mystery_event_script.s b/asm/mystery_event_script.s
index 07c940f58..5ebe80e05 100644
--- a/asm/mystery_event_script.s
+++ b/asm/mystery_event_script.s
@@ -432,7 +432,7 @@ sub_8153AE8: @ 8153AE8
mov r6, r8
push {r6,r7}
adds r7, r0, 0
- bl sub_80E162C
+ bl IsEnigmaBerryValid
mov r8, r0
adds r0, r7, 0
bl ScriptReadWord
@@ -450,7 +450,7 @@ sub_8153AE8: @ 8153AE8
movs r2, 0x7
bl StringCopyN
adds r0, r4, 0
- bl sub_80E15E4
+ bl SetEnigmaBerry
ldr r4, =gStringVar2
ldr r1, [r6]
adds r1, r5
@@ -481,7 +481,7 @@ _08153B74:
bl StringExpandPlaceholders
movs r0, 0x2
str r0, [r7, 0x6C]
- bl sub_80E162C
+ bl IsEnigmaBerryValid
cmp r0, 0x1
bne _08153B9C
ldr r0, =0x0000402d
@@ -669,7 +669,7 @@ sub_8153CC8: @ 8153CC8
cmp r4, r0
bne _08153D18
ldr r0, =gStringVar1
- ldr r1, =gUnknown_085E8264
+ ldr r1, =gEggNickname
movs r2, 0xB
bl StringCopyN
b _08153D22
@@ -711,10 +711,10 @@ _08153D4C:
lsrs r4, 16
adds r0, r4, 0
movs r1, 0x2
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
adds r0, r4, 0
movs r1, 0x3
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
_08153D86:
adds r0, r7, 0
movs r1, 0xC
diff --git a/asm/pokeblock_feed.s b/asm/pokeblock_feed.s
index 8f63be452..bd348ec34 100644
--- a/asm/pokeblock_feed.s
+++ b/asm/pokeblock_feed.s
@@ -322,7 +322,7 @@ _08179E48:
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x8]
adds r2, r5, 0
@@ -380,7 +380,7 @@ _08179EEC:
b _08179F5E
.pool
_08179F00:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrb r0, [r0]
bl sub_8179FEC
ldr r0, =gUnknown_0203BD1C
@@ -692,7 +692,7 @@ sub_817A1C4: @ 817A1C4
ldr r0, =gPlayerParty
adds r5, r0
ldr r1, =gSaveBlock1Ptr
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
lsls r0, 3
ldr r2, =0x00000848
@@ -889,7 +889,7 @@ sub_817A358: @ 817A358
movs r1, 0x1
strb r1, [r0]
adds r0, r4, 0
- bl sub_806E840
+ bl IsPokeSpriteNotFlipped
lsls r0, 24
cmp r0, 0
bne _0817A402
diff --git a/asm/pokedex.s b/asm/pokedex.s
index c24701b76..b2ee96145 100644
--- a/asm/pokedex.s
+++ b/asm/pokedex.s
@@ -2450,7 +2450,7 @@ _080BC976:
strh r0, [r1]
ldrh r0, [r5, 0x4]
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
mov r3, r8
ldr r2, [r3]
adds r2, r4
@@ -2465,7 +2465,7 @@ _080BC976:
strb r0, [r2, 0x2]
ldrh r0, [r5, 0x4]
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
mov r1, r8
ldr r3, [r1]
adds r3, r4
@@ -2520,7 +2520,7 @@ _080BCA1A:
strh r0, [r6, 0x4]
ldrh r0, [r6, 0x4]
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
adds r7, r4, 0
cmp r0, 0
@@ -2541,7 +2541,7 @@ _080BCA36:
strh r0, [r1]
ldrh r0, [r6, 0x4]
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
mov r1, r8
ldr r2, [r1]
adds r2, r4
@@ -2558,7 +2558,7 @@ _080BCA36:
strb r0, [r2, 0x2]
ldrh r0, [r6, 0x4]
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
mov r2, r8
ldr r3, [r2]
adds r3, r4
@@ -2625,7 +2625,7 @@ _080BCADA:
bhi _080BCB58
ldrh r0, [r5, 0x4]
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080BCB58
@@ -2646,7 +2646,7 @@ _080BCADA:
strb r0, [r2, 0x2]
ldrh r0, [r5, 0x4]
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
mov r1, r8
ldr r3, [r1]
adds r1, r3, r6
@@ -2701,7 +2701,7 @@ _080BCB82:
bhi _080BCBE2
ldrh r0, [r5, 0x4]
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080BCBE2
@@ -2768,7 +2768,7 @@ _080BCC16:
bhi _080BCC7E
ldrh r0, [r5, 0x4]
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080BCC7E
@@ -2833,7 +2833,7 @@ _080BCCAA:
bhi _080BCD0A
ldrh r0, [r5, 0x4]
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080BCD0A
@@ -2900,7 +2900,7 @@ _080BCD3E:
bhi _080BCDA6
ldrh r0, [r5, 0x4]
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080BCDA6
@@ -9408,9 +9408,9 @@ _080C065C:
.pool
thumb_func_end GetPokedexHeightWeight
- thumb_func_start pokedex_flag_operation
-@ u8 pokedex_flag_operation(u16 nationalPokedexNum, u8 op)
-pokedex_flag_operation: @ 80C0664
+ thumb_func_start GetSetPokedexFlag
+@ u8 GetSetPokedexFlag(u16 nationalPokedexNum, u8 op)
+GetSetPokedexFlag: @ 80C0664
push {r4-r7,lr}
lsls r0, 16
lsls r1, 24
@@ -9595,7 +9595,7 @@ _080C07E8:
pop {r1}
bx r1
.pool
- thumb_func_end pokedex_flag_operation
+ thumb_func_end GetSetPokedexFlag
thumb_func_start pokedex_count
pokedex_count: @ 80C07F4
@@ -9625,7 +9625,7 @@ _080C081A:
lsrs r0, 16
movs r1, 0x1
_080C0822:
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080C0832
@@ -9675,7 +9675,7 @@ _080C086C:
lsrs r0, 16
movs r1, 0x1
_080C087C:
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080C088C
@@ -9719,7 +9719,7 @@ _080C08BC:
lsrs r0, 16
movs r1, 0x1
_080C08C4:
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080C08D4
@@ -9750,7 +9750,7 @@ _080C08E8:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _080C0908
@@ -9777,7 +9777,7 @@ _080C091C:
lsrs r4, r0, 16
adds r0, r4, 0
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _080C0934
@@ -9804,7 +9804,7 @@ _080C0948:
lsrs r4, r0, 16
adds r0, r4, 0
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080C0996
@@ -9818,7 +9818,7 @@ _080C0964:
lsrs r4, r0, 16
adds r0, r4, 0
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080C0996
@@ -9833,7 +9833,7 @@ _080C0982:
lsrs r4, r0, 16
adds r0, r4, 0
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _080C09A0
diff --git a/asm/pokemon_1.s b/asm/pokemon_1.s
index 45a863c67..ed97cd672 100644
--- a/asm/pokemon_1.s
+++ b/asm/pokemon_1.s
@@ -7,235 +7,6 @@
-
- thumb_func_start sub_8068338
-sub_8068338: @ 8068338
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x58
- adds r7, r0, 0
- adds r6, r1, 0
- lsls r2, 24
- lsrs r2, 24
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, =0x00000ca9
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _08068374
- lsls r0, r1, 30
- lsrs r0, 30
- bl sub_8165C90
- lsls r0, 24
- lsrs r3, r0, 24
- b _0806837C
- .pool
-_08068374:
- movs r3, 0x32
- cmp r2, 0
- bne _0806837C
- ldrb r3, [r6, 0xC]
-_0806837C:
- ldrh r1, [r6]
- movs r2, 0x1
- str r2, [sp]
- ldr r0, [r6, 0x1C]
- str r0, [sp, 0x4]
- str r2, [sp, 0x8]
- ldr r0, [r6, 0x14]
- str r0, [sp, 0xC]
- adds r0, r7, 0
- adds r2, r3, 0
- movs r3, 0
- bl CreateMon
- movs r5, 0
- movs r0, 0xD
- adds r0, r6
- mov r10, r0
- adds r1, r6, 0x2
- str r1, [sp, 0x38]
- adds r0, r6, 0
- adds r0, 0x2B
- str r0, [sp, 0x34]
- adds r1, 0x1E
- str r1, [sp, 0x54]
- add r0, sp, 0x30
- mov r9, r0
- subs r1, 0x12
- str r1, [sp, 0x3C]
- adds r0, r6, 0
- adds r0, 0xF
- str r0, [sp, 0x40]
- adds r1, 0x2
- str r1, [sp, 0x44]
- adds r0, 0x2
- str r0, [sp, 0x48]
- adds r1, 0x2
- str r1, [sp, 0x4C]
- adds r0, 0x2
- str r0, [sp, 0x50]
- movs r1, 0x31
- add r1, sp
- mov r8, r1
- adds r4, r6, 0x4
-_080683D2:
- ldrh r1, [r4]
- lsls r2, r5, 24
- lsrs r2, 24
- adds r0, r7, 0
- bl SetMonMoveSlot
- adds r4, 0x2
- adds r5, 0x1
- cmp r5, 0x3
- ble _080683D2
- adds r0, r7, 0
- movs r1, 0x15
- mov r2, r10
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0xC
- ldr r2, [sp, 0x38]
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x20
- ldr r2, [sp, 0x34]
- bl SetMonData
- add r0, sp, 0x10
- ldr r1, [sp, 0x54]
- bl StringCopy
- add r0, sp, 0x10
- ldrb r0, [r0]
- cmp r0, 0xFC
- bne _0806842A
- add r0, sp, 0x10
- ldrb r0, [r0, 0x1]
- cmp r0, 0x15
- bne _0806842A
- movs r0, 0x1
- mov r1, r9
- strb r0, [r1]
- add r0, sp, 0x10
- bl StripExtCtrlCodes
- b _08068430
-_0806842A:
- movs r0, 0x2
- mov r1, r9
- strb r0, [r1]
-_08068430:
- adds r0, r7, 0
- movs r1, 0x3
- mov r2, r9
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x2
- add r2, sp, 0x10
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x1A
- ldr r2, [sp, 0x3C]
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x1B
- ldr r2, [sp, 0x40]
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x1C
- ldr r2, [sp, 0x44]
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x1D
- ldr r2, [sp, 0x48]
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x1E
- ldr r2, [sp, 0x4C]
- bl SetMonData
- adds r0, r7, 0
- movs r1, 0x1F
- ldr r2, [sp, 0x50]
- bl SetMonData
- ldrb r0, [r6, 0x1B]
- lsrs r0, 7
- mov r1, r8
- strb r0, [r1]
- adds r0, r7, 0
- movs r1, 0x2E
- mov r2, r8
- bl SetMonData
- ldrb r0, [r6, 0x18]
- lsls r0, 27
- lsrs r0, 27
- mov r1, r8
- strb r0, [r1]
- adds r0, r7, 0
- movs r1, 0x27
- mov r2, r8
- bl SetMonData
- ldrh r0, [r6, 0x18]
- lsls r0, 22
- lsrs r0, 27
- mov r1, r8
- strb r0, [r1]
- adds r0, r7, 0
- movs r1, 0x28
- mov r2, r8
- bl SetMonData
- ldrb r0, [r6, 0x19]
- lsls r0, 25
- lsrs r0, 27
- mov r1, r8
- strb r0, [r1]
- adds r0, r7, 0
- movs r1, 0x29
- mov r2, r8
- bl SetMonData
- ldr r0, [r6, 0x18]
- lsls r0, 12
- lsrs r0, 27
- mov r1, r8
- strb r0, [r1]
- adds r0, r7, 0
- movs r1, 0x2A
- mov r2, r8
- bl SetMonData
- ldrh r0, [r6, 0x1A]
- lsls r0, 23
- lsrs r0, 27
- mov r1, r8
- strb r0, [r1]
- adds r0, r7, 0
- movs r1, 0x2B
- mov r2, r8
- bl SetMonData
- ldrb r0, [r6, 0x1B]
- lsls r0, 26
- lsrs r0, 27
- mov r1, r8
- strb r0, [r1]
- adds r0, r7, 0
- movs r1, 0x2C
- mov r2, r8
- bl SetMonData
- adds r0, r7, 0
- bl MonRestorePP
- adds r0, r7, 0
- bl CalculateMonStats
- add sp, 0x58
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8068338
-
thumb_func_start sub_8068528
sub_8068528: @ 8068528
push {r4-r7,lr}
@@ -284,7 +55,7 @@ sub_8068528: @ 8068528
subs r0, 0x1
lsls r0, 24
lsrs r0, 24
- bl sub_8165C90
+ bl BattleFrontierGetOpponentLvl
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
@@ -823,8 +594,8 @@ _08068A02:
.pool
thumb_func_end sub_80688F8
- thumb_func_start get_pokemon_data_3
-get_pokemon_data_3: @ 8068A10
+ thumb_func_start GetDeoxysStat
+GetDeoxysStat: @ 8068A10
push {r4-r6,lr}
adds r5, r0, 0
adds r6, r1, 0
@@ -895,7 +666,7 @@ _08068A9A:
pop {r1}
bx r1
.pool
- thumb_func_end get_pokemon_data_3
+ thumb_func_end GetDeoxysStat
thumb_func_start sub_8068AA4
sub_8068AA4: @ 8068AA4
@@ -1012,7 +783,7 @@ _08068B78:
lsls r2, 1
adds r2, r0
ldrh r0, [r2]
- bl TrainerClassToTrainerPic
+ bl sub_806EFF0
lsls r0, 16
lsrs r0, 16
pop {r1}
@@ -1056,7 +827,7 @@ _08068BE0:
ldrb r0, [r1, 0x13]
lsls r0, 3
orrs r2, r0
- ldr r1, =gTrainerClassNameIndices
+ ldr r1, =gTrainerClassToNameIndex
ldr r0, =gUnknown_08329D54
lsls r2, 1
adds r2, r0
diff --git a/asm/pokemon_2.s b/asm/pokemon_2.s
index 7b587ad5c..fc5e15cb8 100644
--- a/asm/pokemon_2.s
+++ b/asm/pokemon_2.s
@@ -5,3641 +5,6 @@
.text
- thumb_func_start CountAliveMonsInBattle
-CountAliveMonsInBattle: @ 8069DEC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- movs r6, 0
- cmp r0, 0x1
- beq _08069E40
- cmp r0, 0x1
- bgt _08069E04
- cmp r0, 0
- beq _08069E0A
- b _08069EC2
-_08069E04:
- cmp r1, 0x2
- beq _08069E88
- b _08069EC2
-_08069E0A:
- movs r5, 0
- ldr r0, =gActiveBank
- ldrb r3, [r0]
- ldr r4, =gAbsentBankFlags
- ldr r2, =gBitTable
-_08069E14:
- cmp r5, r3
- beq _08069E28
- ldrb r0, [r4]
- ldr r1, [r2]
- ands r0, r1
- cmp r0, 0
- bne _08069E28
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_08069E28:
- adds r2, 0x4
- adds r5, 0x1
- cmp r5, 0x3
- ble _08069E14
- b _08069EC2
- .pool
-_08069E40:
- movs r5, 0
-_08069E42:
- lsls r0, r5, 24
- lsrs r0, 24
- bl GetBankSide
- adds r4, r0, 0
- ldr r0, =gBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _08069E74
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r5, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08069E74
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_08069E74:
- adds r5, 0x1
- cmp r5, 0x3
- ble _08069E42
- b _08069EC2
- .pool
-_08069E88:
- movs r5, 0
-_08069E8A:
- lsls r0, r5, 24
- lsrs r0, 24
- bl GetBankSide
- adds r4, r0, 0
- ldr r0, =gBankTarget
- ldrb r0, [r0]
- bl GetBankSide
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _08069EBC
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r5, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08069EBC
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_08069EBC:
- adds r5, 0x1
- cmp r5, 0x3
- ble _08069E8A
-_08069EC2:
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end CountAliveMonsInBattle
-
- thumb_func_start ShouldGetStatBadgeBoost
-ShouldGetStatBadgeBoost: @ 8069ED8
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 24
- lsrs r2, r1, 24
- ldr r4, =gBattleTypeFlags
- ldr r0, [r4]
- ldr r1, =0x023f0902
- ands r0, r1
- cmp r0, 0
- bne _08069F1C
- adds r0, r2, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _08069F1C
- ldr r0, [r4]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08069F10
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0x80
- lsls r0, 3
- cmp r1, r0
- beq _08069F1C
-_08069F10:
- adds r0, r5, 0
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08069F2C
-_08069F1C:
- movs r0, 0
- b _08069F2E
- .pool
-_08069F2C:
- movs r0, 0x1
-_08069F2E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end ShouldGetStatBadgeBoost
-
- thumb_func_start sub_8069F34
-sub_8069F34: @ 8069F34
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- bl GetBankIdentity
- movs r1, 0x1
- movs r6, 0x1
- adds r4, r6, 0
- ands r4, r0
- eors r4, r1
- adds r5, r4, 0
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ands r0, r6
- cmp r0, 0
- bne _08069F5C
- adds r0, r4, 0
- b _08069FA6
- .pool
-_08069F5C:
- movs r0, 0
- bl CountAliveMonsInBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _08069F80
- bl Random
- adds r1, r6, 0
- ands r1, r0
- cmp r1, 0
- bne _08069F7C
- movs r0, 0x2
- eors r0, r4
- b _08069FA6
-_08069F7C:
- adds r0, r4, 0
- b _08069FA6
-_08069F80:
- ldr r0, =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, =gBitTable
- lsls r0, r4, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _08069FA0
- adds r0, r4, 0
- b _08069FA6
- .pool
-_08069FA0:
- movs r0, 0x2
- eors r5, r0
- adds r0, r5, 0
-_08069FA6:
- bl GetBankByPlayerAI
- lsls r0, 24
- lsrs r0, 24
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8069F34
-
- thumb_func_start GetMonGender
-GetMonGender: @ 8069FB4
- push {lr}
- bl GetBoxMonGender
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end GetMonGender
-
- thumb_func_start GetBoxMonGender
-GetBoxMonGender: @ 8069FC4
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0xB
- movs r2, 0
- bl GetBoxMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0
- bl GetBoxMonData
- adds r2, r0, 0
- ldr r1, =gBaseStats
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x10]
- cmp r0, 0
- beq _0806A01A
- cmp r0, 0
- blt _08069FFC
- cmp r0, 0xFF
- bgt _08069FFC
- cmp r0, 0xFE
- bge _0806A01A
-_08069FFC:
- ldr r1, =gBaseStats
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x10]
- movs r0, 0xFF
- ands r0, r2
- cmp r1, r0
- bhi _0806A018
- movs r0, 0
- b _0806A01A
- .pool
-_0806A018:
- movs r0, 0xFE
-_0806A01A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GetBoxMonGender
-
- thumb_func_start GetGenderFromSpeciesAndPersonality
-GetGenderFromSpeciesAndPersonality: @ 806A020
- push {lr}
- adds r3, r1, 0
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, =gBaseStats
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x10]
- cmp r0, 0
- beq _0806A062
- cmp r0, 0
- blt _0806A044
- cmp r0, 0xFF
- bgt _0806A044
- cmp r0, 0xFE
- bge _0806A062
-_0806A044:
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x10]
- movs r0, 0xFF
- ands r0, r3
- cmp r1, r0
- bhi _0806A060
- movs r0, 0
- b _0806A062
- .pool
-_0806A060:
- movs r0, 0xFE
-_0806A062:
- pop {r1}
- bx r1
- thumb_func_end GetGenderFromSpeciesAndPersonality
-
- thumb_func_start sub_806A068
-sub_806A068: @ 806A068
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 24
- lsrs r4, r1, 24
- ldr r0, =gUnknown_020244D4
- ldr r2, [r0]
- cmp r2, 0
- beq _0806A09C
- ldr r0, =gUnknown_0202499C
- lsls r1, r4, 1
- adds r1, r4
- lsls r1, 3
- adds r1, r2, r1
- adds r2, r0, 0
- adds r1, 0x14
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- adds r3, r0, 0
- b _0806A0DA
- .pool
-_0806A09C:
- ldr r1, =gUnknown_020249B4
- ldr r0, [r1]
- cmp r0, 0
- beq _0806A0B4
- ldr r3, =gUnknown_0202499C
- ldr r2, [r0, 0xC]
- b _0806A0C8
- .pool
-_0806A0B4:
- ldr r0, [r1, 0x4]
- cmp r0, 0
- beq _0806A0C4
- ldr r3, =gUnknown_0202499C
- ldr r2, [r0, 0xC]
- b _0806A0C8
- .pool
-_0806A0C4:
- ldr r3, =gUnknown_0202499C
- ldr r2, =gUnknown_08329D98
-_0806A0C8:
- lsls r0, r4, 1
- adds r0, r4
- lsls r0, 3
- adds r1, r3, 0
- adds r0, r2
- ldm r0!, {r2,r6,r7}
- stm r1!, {r2,r6,r7}
- ldm r0!, {r2,r6,r7}
- stm r1!, {r2,r6,r7}
-_0806A0DA:
- adds r2, r3, 0
- strh r5, [r2, 0x2]
- cmp r4, 0
- beq _0806A0E6
- cmp r4, 0x2
- bne _0806A0F8
-_0806A0E6:
- ldr r0, =gUnknown_082FF70C
- str r0, [r2, 0x8]
- b _0806A122
- .pool
-_0806A0F8:
- movs r0, 0xFA
- lsls r0, 1
- cmp r5, r0
- bls _0806A118
- ldr r0, =gUnknown_08309AAC
- ldr r3, =0xfffffe0c
- adds r1, r5, r3
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- str r0, [r2, 0x8]
- b _0806A122
- .pool
-_0806A118:
- ldr r0, =gUnknown_08309AAC
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- str r0, [r3, 0x8]
-_0806A122:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806A068
-
- thumb_func_start template_build_for_pokemon_or_trainer
-template_build_for_pokemon_or_trainer: @ 806A12C
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r1, 24
- lsrs r3, r1, 24
- ldr r0, =gUnknown_0202499C
- strh r4, [r0, 0x2]
- adds r5, r0, 0
- cmp r3, 0
- beq _0806A144
- cmp r3, 0x2
- bne _0806A170
-_0806A144:
- ldr r2, =gUnknown_08329DF8
- lsls r0, r4, 1
- adds r0, r4
- lsls r0, 3
- adds r1, r5, 0
- adds r0, r2
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldr r1, =gUnknown_08305D0C
- lsls r0, r4, 2
- adds r0, r1
- ldr r0, [r0]
- b _0806A1B0
- .pool
-_0806A170:
- ldr r0, =gUnknown_020244D4
- ldr r1, [r0]
- cmp r1, 0
- beq _0806A194
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 3
- adds r0, r1, r0
- adds r1, r5, 0
- adds r0, 0x14
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- b _0806A1A8
- .pool
-_0806A194:
- ldr r0, =gUnknown_08329D98
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r2, r5, 0
- adds r1, r0
- ldm r1!, {r0,r3,r6}
- stm r2!, {r0,r3,r6}
- ldm r1!, {r0,r3,r6}
- stm r2!, {r0,r3,r6}
-_0806A1A8:
- ldr r0, =gUnknown_0830536C
- lsls r1, r4, 2
- adds r1, r0
- ldr r0, [r1]
-_0806A1B0:
- str r0, [r5, 0x8]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end template_build_for_pokemon_or_trainer
-
- thumb_func_start sub_806A1C0
-sub_806A1C0: @ 806A1C0
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 24
- lsrs r4, r1, 24
- ldr r0, =gUnknown_020244D4
- ldr r2, [r0]
- cmp r2, 0
- beq _0806A1F4
- ldr r0, =gUnknown_0202499C
- lsls r1, r4, 1
- adds r1, r4
- lsls r1, 3
- adds r1, r2, r1
- adds r2, r0, 0
- adds r1, 0x14
- ldm r1!, {r3,r4,r6}
- stm r2!, {r3,r4,r6}
- ldm r1!, {r3,r4,r6}
- stm r2!, {r3,r4,r6}
- adds r3, r0, 0
- b _0806A20A
- .pool
-_0806A1F4:
- ldr r3, =gUnknown_0202499C
- ldr r2, =gUnknown_08329D98
- lsls r0, r4, 1
- adds r0, r4
- lsls r0, 3
- adds r1, r3, 0
- adds r0, r2
- ldm r0!, {r2,r4,r6}
- stm r1!, {r2,r4,r6}
- ldm r0!, {r2,r4,r6}
- stm r1!, {r2,r4,r6}
-_0806A20A:
- strh r5, [r3, 0x2]
- ldr r0, =gUnknown_0830536C
- lsls r1, r5, 2
- adds r1, r0
- ldr r0, [r1]
- str r0, [r3, 0x8]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806A1C0
-
- thumb_func_start EncryptBoxMon
-@ void EncryptBoxMon(pokemon *mon)
-EncryptBoxMon: @ 806A228
- push {r4,lr}
- adds r3, r0, 0
- movs r4, 0
- adds r2, r3, 0
- adds r2, 0x20
-_0806A232:
- ldr r0, [r2]
- ldr r1, [r3]
- eors r0, r1
- str r0, [r2]
- ldr r1, [r3, 0x4]
- eors r0, r1
- stm r2!, {r0}
- adds r4, 0x1
- cmp r4, 0xB
- bls _0806A232
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end EncryptBoxMon
-
- thumb_func_start DecryptBoxMon
-@ void DecryptBoxMon(pokemon *mon)
-DecryptBoxMon: @ 806A24C
- push {r4,lr}
- adds r3, r0, 0
- movs r4, 0
- adds r2, r3, 0
- adds r2, 0x20
-_0806A256:
- ldr r0, [r2]
- ldr r1, [r3, 0x4]
- eors r0, r1
- str r0, [r2]
- ldr r1, [r3]
- eors r0, r1
- stm r2!, {r0}
- adds r4, 0x1
- cmp r4, 0xB
- bls _0806A256
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end DecryptBoxMon
-
- thumb_func_start GetSubstruct
-@ int GetSubstruct(pokemon *mon, int a2, u8 a3)
-GetSubstruct: @ 806A270
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r0, r1, 0
- lsls r2, 24
- lsrs r4, r2, 24
- movs r6, 0
- movs r1, 0x18
- bl __umodsi3
- cmp r0, 0x17
- bls _0806A288
- b _0806A510
-_0806A288:
- lsls r0, 2
- ldr r1, =_0806A298
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806A298:
- .4byte _0806A2F8
- .4byte _0806A31C
- .4byte _0806A338
- .4byte _0806A34E
- .4byte _0806A364
- .4byte _0806A380
- .4byte _0806A396
- .4byte _0806A3AC
- .4byte _0806A3BC
- .4byte _0806A3DA
- .4byte _0806A3F2
- .4byte _0806A402
- .4byte _0806A416
- .4byte _0806A428
- .4byte _0806A43A
- .4byte _0806A44C
- .4byte _0806A45E
- .4byte _0806A470
- .4byte _0806A482
- .4byte _0806A498
- .4byte _0806A4AC
- .4byte _0806A4BA
- .4byte _0806A4CC
- .4byte _0806A4E0
-_0806A2F8:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A302
- b _0806A508
-_0806A302:
- cmp r4, 0x1
- bgt _0806A30E
-_0806A306:
- cmp r4, 0
- bne _0806A30C
- b _0806A50E
-_0806A30C:
- b _0806A510
-_0806A30E:
- cmp r4, 0x2
- bne _0806A314
- b _0806A502
-_0806A314:
- cmp r4, 0x3
- beq _0806A31A
- b _0806A510
-_0806A31A:
- b _0806A4FC
-_0806A31C:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A326
- b _0806A508
-_0806A326:
- cmp r4, 0x1
- ble _0806A306
-_0806A32A:
- cmp r4, 0x2
- bne _0806A330
- b _0806A4FC
-_0806A330:
- cmp r4, 0x3
- beq _0806A336
- b _0806A510
-_0806A336:
- b _0806A502
-_0806A338:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A342
- b _0806A502
-_0806A342:
- cmp r4, 0x1
- ble _0806A306
- cmp r4, 0x2
- bne _0806A34C
- b _0806A508
-_0806A34C:
- b _0806A314
-_0806A34E:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A358
- b _0806A4FC
-_0806A358:
- cmp r4, 0x1
- ble _0806A306
- cmp r4, 0x2
- bne _0806A362
- b _0806A508
-_0806A362:
- b _0806A330
-_0806A364:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A36E
- b _0806A502
-_0806A36E:
- cmp r4, 0x1
- ble _0806A306
-_0806A372:
- cmp r4, 0x2
- bne _0806A378
- b _0806A4FC
-_0806A378:
- cmp r4, 0x3
- beq _0806A37E
- b _0806A510
-_0806A37E:
- b _0806A508
-_0806A380:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A38A
- b _0806A4FC
-_0806A38A:
- cmp r4, 0x1
- ble _0806A306
- cmp r4, 0x2
- bne _0806A394
- b _0806A502
-_0806A394:
- b _0806A378
-_0806A396:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A3A0
- b _0806A50E
-_0806A3A0:
- cmp r4, 0x1
- bgt _0806A30E
-_0806A3A4:
- cmp r4, 0
- bne _0806A3AA
- b _0806A508
-_0806A3AA:
- b _0806A510
-_0806A3AC:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A3B6
- b _0806A50E
-_0806A3B6:
- cmp r4, 0x1
- ble _0806A3A4
- b _0806A32A
-_0806A3BC:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A3C6
- b _0806A50E
-_0806A3C6:
- cmp r4, 0x1
- bgt _0806A3D2
-_0806A3CA:
- cmp r4, 0
- bne _0806A3D0
- b _0806A502
-_0806A3D0:
- b _0806A510
-_0806A3D2:
- cmp r4, 0x2
- bne _0806A3D8
- b _0806A508
-_0806A3D8:
- b _0806A314
-_0806A3DA:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A3E4
- b _0806A50E
-_0806A3E4:
- cmp r4, 0x1
- bgt _0806A3EA
- b _0806A4EC
-_0806A3EA:
- cmp r4, 0x2
- bne _0806A3F0
- b _0806A508
-_0806A3F0:
- b _0806A330
-_0806A3F2:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A3FC
- b _0806A50E
-_0806A3FC:
- cmp r4, 0x1
- ble _0806A3CA
- b _0806A372
-_0806A402:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- bne _0806A40C
- b _0806A50E
-_0806A40C:
- cmp r4, 0x1
- ble _0806A4EC
- cmp r4, 0x2
- beq _0806A502
- b _0806A378
-_0806A416:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A502
- cmp r4, 0x1
- ble _0806A3A4
- cmp r4, 0x2
- beq _0806A50E
- b _0806A314
-_0806A428:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A4FC
- cmp r4, 0x1
- ble _0806A3A4
- cmp r4, 0x2
- beq _0806A50E
- b _0806A330
-_0806A43A:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A508
- cmp r4, 0x1
- ble _0806A3CA
- cmp r4, 0x2
- beq _0806A50E
- b _0806A314
-_0806A44C:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A508
- cmp r4, 0x1
- ble _0806A4EC
- cmp r4, 0x2
- beq _0806A50E
- b _0806A330
-_0806A45E:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A4FC
- cmp r4, 0x1
- ble _0806A3CA
- cmp r4, 0x2
- beq _0806A50E
- b _0806A378
-_0806A470:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A502
- cmp r4, 0x1
- ble _0806A4EC
- cmp r4, 0x2
- beq _0806A50E
- b _0806A378
-_0806A482:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A502
- cmp r4, 0x1
- ble _0806A3A4
-_0806A48E:
- cmp r4, 0x2
- beq _0806A4FC
-_0806A492:
- cmp r4, 0x3
- bne _0806A510
- b _0806A50E
-_0806A498:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A4FC
- cmp r4, 0x1
- bgt _0806A4A6
- b _0806A3A4
-_0806A4A6:
- cmp r4, 0x2
- beq _0806A502
- b _0806A492
-_0806A4AC:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A508
- cmp r4, 0x1
- ble _0806A3CA
- b _0806A48E
-_0806A4BA:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A508
- cmp r4, 0x1
- ble _0806A4EC
- cmp r4, 0x2
- beq _0806A502
- b _0806A492
-_0806A4CC:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A4FC
- cmp r4, 0x1
- bgt _0806A4DA
- b _0806A3CA
-_0806A4DA:
- cmp r4, 0x2
- beq _0806A508
- b _0806A492
-_0806A4E0:
- adds r0, r5, 0
- adds r0, 0x20
- cmp r4, 0x1
- beq _0806A502
- cmp r4, 0x1
- bgt _0806A4F2
-_0806A4EC:
- cmp r4, 0
- beq _0806A4FC
- b _0806A510
-_0806A4F2:
- cmp r4, 0x2
- beq _0806A508
- cmp r4, 0x3
- beq _0806A50E
- b _0806A510
-_0806A4FC:
- adds r6, r5, 0
- adds r6, 0x44
- b _0806A510
-_0806A502:
- adds r6, r5, 0
- adds r6, 0x38
- b _0806A510
-_0806A508:
- adds r6, r5, 0
- adds r6, 0x2C
- b _0806A510
-_0806A50E:
- adds r6, r0, 0
-_0806A510:
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GetSubstruct
-
- thumb_func_start GetMonData
-@ int GetMonData(pokemon *mon, enum pokemon_data_request req, void *data)
-GetMonData: @ 806A518
- push {r4,lr}
- adds r4, r0, 0
- adds r3, r1, 0
- adds r0, r3, 0
- subs r0, 0x37
- cmp r0, 0x21
- bls _0806A528
- b _0806A666
-_0806A528:
- lsls r0, 2
- ldr r1, =_0806A538
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806A538:
- .4byte _0806A5C0
- .4byte _0806A5C4
- .4byte _0806A5CC
- .4byte _0806A5D4
- .4byte _0806A5DC
- .4byte _0806A5EE
- .4byte _0806A600
- .4byte _0806A612
- .4byte _0806A624
- .4byte _0806A65E
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A666
- .4byte _0806A636
- .4byte _0806A63E
- .4byte _0806A646
- .4byte _0806A64E
- .4byte _0806A656
-_0806A5C0:
- ldr r0, [r4, 0x50]
- b _0806A66E
-_0806A5C4:
- adds r0, r4, 0
- adds r0, 0x54
- ldrb r0, [r0]
- b _0806A66E
-_0806A5CC:
- adds r0, r4, 0
- adds r0, 0x56
- ldrh r0, [r0]
- b _0806A66E
-_0806A5D4:
- adds r0, r4, 0
- adds r0, 0x58
- ldrh r0, [r0]
- b _0806A66E
-_0806A5DC:
- adds r0, r4, 0
- movs r1, 0x1
- bl get_pokemon_data_3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _0806A66E
- b _0806A636
-_0806A5EE:
- adds r0, r4, 0
- movs r1, 0x2
- bl get_pokemon_data_3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _0806A66E
- b _0806A63E
-_0806A600:
- adds r0, r4, 0
- movs r1, 0x3
- bl get_pokemon_data_3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _0806A66E
- b _0806A646
-_0806A612:
- adds r0, r4, 0
- movs r1, 0x4
- bl get_pokemon_data_3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _0806A66E
- b _0806A64E
-_0806A624:
- adds r0, r4, 0
- movs r1, 0x5
- bl get_pokemon_data_3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _0806A66E
- b _0806A656
-_0806A636:
- adds r0, r4, 0
- adds r0, 0x5A
- ldrh r0, [r0]
- b _0806A66E
-_0806A63E:
- adds r0, r4, 0
- adds r0, 0x5C
- ldrh r0, [r0]
- b _0806A66E
-_0806A646:
- adds r0, r4, 0
- adds r0, 0x5E
- ldrh r0, [r0]
- b _0806A66E
-_0806A64E:
- adds r0, r4, 0
- adds r0, 0x60
- ldrh r0, [r0]
- b _0806A66E
-_0806A656:
- adds r0, r4, 0
- adds r0, 0x62
- ldrh r0, [r0]
- b _0806A66E
-_0806A65E:
- adds r0, r4, 0
- adds r0, 0x55
- ldrb r0, [r0]
- b _0806A66E
-_0806A666:
- adds r0, r4, 0
- adds r1, r3, 0
- bl GetBoxMonData
-_0806A66E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetMonData
-
- thumb_func_start GetBoxMonData
-@ int GetBoxMonData(pokemon *mon, enum pokemon_data_request req, void *data)
-GetBoxMonData: @ 806A674
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- mov r8, r0
- str r1, [sp]
- adds r6, r2, 0
- movs r4, 0
- mov r9, r4
- mov r10, r4
- movs r7, 0
- movs r5, 0
- cmp r1, 0xA
- ble _0806A6F2
- ldr r1, [r0]
- movs r2, 0
- bl GetSubstruct
- mov r9, r0
- mov r0, r8
- ldr r1, [r0]
- movs r2, 0x1
- bl GetSubstruct
- mov r10, r0
- mov r2, r8
- ldr r1, [r2]
- mov r0, r8
- movs r2, 0x2
- bl GetSubstruct
- adds r7, r0, 0
- mov r0, r8
- ldr r1, [r0]
- movs r2, 0x3
- bl GetSubstruct
- adds r5, r0, 0
- mov r0, r8
- bl DecryptBoxMon
- mov r0, r8
- bl CalculateBoxMonChecksum
- lsls r0, 16
- lsrs r0, 16
- mov r1, r8
- ldrh r1, [r1, 0x1C]
- cmp r0, r1
- beq _0806A6F2
- mov r2, r8
- ldrb r0, [r2, 0x13]
- movs r1, 0x1
- orrs r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2, 0x13]
- ldrb r0, [r5, 0x7]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r5, 0x7]
-_0806A6F2:
- ldr r0, [sp]
- cmp r0, 0x53
- bls _0806A6FA
- b _0806AC8C
-_0806A6FA:
- lsls r0, 2
- ldr r1, =_0806A708
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806A708:
- .4byte _0806A858
- .4byte _0806A85E
- .4byte _0806A864
- .4byte _0806A918
- .4byte _0806A91E
- .4byte _0806A924
- .4byte _0806A92A
- .4byte _0806A930
- .4byte _0806A94C
- .4byte _0806A952
- .4byte _0806A958
- .4byte _0806A95E
- .4byte _0806A976
- .4byte _0806A98E
- .4byte _0806A98E
- .4byte _0806A98E
- .4byte _0806A98E
- .4byte _0806A99A
- .4byte _0806A99A
- .4byte _0806A99A
- .4byte _0806A99A
- .4byte _0806A982
- .4byte _0806A9BC
- .4byte _0806A9C0
- .4byte _0806A9C4
- .4byte _0806A97C
- .4byte _0806A9A4
- .4byte _0806A9A8
- .4byte _0806A9AC
- .4byte _0806A9B0
- .4byte _0806A9B4
- .4byte _0806A9B8
- .4byte _0806A988
- .4byte _0806A9C8
- .4byte _0806A9D4
- .4byte _0806A9D8
- .4byte _0806A9DC
- .4byte _0806A9E4
- .4byte _0806A9EC
- .4byte _0806A9F6
- .4byte _0806A9FE
- .4byte _0806AA06
- .4byte _0806AA0E
- .4byte _0806AA16
- .4byte _0806AA1E
- .4byte _0806AA26
- .4byte _0806AA2A
- .4byte _0806A9CC
- .4byte _0806A9D0
- .4byte _0806A9F0
- .4byte _0806AA30
- .4byte _0806AA38
- .4byte _0806AA40
- .4byte _0806AA48
- .4byte _0806AA50
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AC8C
- .4byte _0806AAB6
- .4byte _0806AADC
- .4byte _0806AA58
- .4byte _0806AA5E
- .4byte _0806AA62
- .4byte _0806AA66
- .4byte _0806AA6A
- .4byte _0806AA72
- .4byte _0806AA7A
- .4byte _0806AA82
- .4byte _0806AA8A
- .4byte _0806AA90
- .4byte _0806AA98
- .4byte _0806AAA0
- .4byte _0806AAA8
- .4byte _0806AAB0
- .4byte _0806AB16
- .4byte _0806AB70
- .4byte _0806ABF2
-_0806A858:
- mov r1, r8
- ldr r4, [r1]
- b _0806AC8C
-_0806A85E:
- mov r2, r8
- ldr r4, [r2, 0x4]
- b _0806AC8C
-_0806A864:
- mov r0, r8
- ldrb r1, [r0, 0x13]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0806A89C
- movs r4, 0
- ldr r0, =gUnknown_085CCB90
- ldrb r1, [r0]
- adds r2, r0, 0
- cmp r1, 0xFF
- beq _0806A944
- adds r3, r2, 0
-_0806A87E:
- adds r0, r6, r4
- adds r1, r4, r3
- ldrb r1, [r1]
- strb r1, [r0]
- adds r4, 0x1
- cmp r4, 0x9
- bhi _0806A944
- adds r0, r4, r2
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _0806A87E
- b _0806A944
- .pool
-_0806A89C:
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0806A8BC
- ldr r1, =gUnknown_085E8264
- adds r0, r6, 0
- bl StringCopy
- adds r0, r6, 0
- bl StringLength
- lsls r0, 16
- lsrs r4, r0, 16
- b _0806AC8C
- .pool
-_0806A8BC:
- mov r1, r8
- ldrb r0, [r1, 0x12]
- cmp r0, 0x1
- bne _0806A902
- movs r0, 0xFC
- strb r0, [r6]
- movs r0, 0x15
- strb r0, [r6, 0x1]
- movs r4, 0x2
- movs r3, 0
- ldrb r0, [r1, 0x8]
- cmp r0, 0xFF
- beq _0806A8F0
- mov r2, r8
- adds r2, 0x8
-_0806A8DA:
- adds r1, r6, r4
- ldrb r0, [r2]
- strb r0, [r1]
- adds r4, 0x1
- adds r2, 0x1
- adds r3, 0x1
- cmp r3, 0x4
- bgt _0806A8F0
- ldrb r0, [r2]
- cmp r0, 0xFF
- bne _0806A8DA
-_0806A8F0:
- adds r1, r6, r4
- movs r0, 0xFC
- strb r0, [r1]
- adds r4, 0x1
- adds r1, r6, r4
- movs r0, 0x16
- strb r0, [r1]
- adds r4, 0x1
- b _0806A944
-_0806A902:
- movs r4, 0
- mov r2, r8
- adds r2, 0x8
-_0806A908:
- adds r0, r6, r4
- adds r1, r2, r4
- ldrb r1, [r1]
- strb r1, [r0]
- adds r4, 0x1
- cmp r4, 0x9
- bls _0806A908
- b _0806A944
-_0806A918:
- mov r2, r8
- ldrb r4, [r2, 0x12]
- b _0806AC8C
-_0806A91E:
- mov r6, r8
- ldrb r0, [r6, 0x13]
- b _0806AA92
-_0806A924:
- mov r1, r8
- ldrb r0, [r1, 0x13]
- b _0806AA9A
-_0806A92A:
- mov r2, r8
- ldrb r0, [r2, 0x13]
- b _0806AAA2
-_0806A930:
- movs r4, 0
- mov r2, r8
- adds r2, 0x14
-_0806A936:
- adds r0, r6, r4
- adds r1, r2, r4
- ldrb r1, [r1]
- strb r1, [r0]
- adds r4, 0x1
- cmp r4, 0x6
- bls _0806A936
-_0806A944:
- adds r1, r6, r4
- movs r0, 0xFF
- strb r0, [r1]
- b _0806AC8C
-_0806A94C:
- mov r6, r8
- ldrb r4, [r6, 0x1B]
- b _0806AC8C
-_0806A952:
- mov r0, r8
- ldrh r4, [r0, 0x1C]
- b _0806AC8C
-_0806A958:
- mov r1, r8
- ldrh r4, [r1, 0x1E]
- b _0806AC8C
-_0806A95E:
- mov r2, r8
- ldrb r1, [r2, 0x13]
- movs r0, 0x1
- ands r0, r1
- movs r4, 0xCE
- lsls r4, 1
- cmp r0, 0
- beq _0806A970
- b _0806AC8C
-_0806A970:
- mov r6, r9
- ldrh r4, [r6]
- b _0806AC8C
-_0806A976:
- mov r0, r9
- ldrh r4, [r0, 0x2]
- b _0806AC8C
-_0806A97C:
- mov r1, r9
- ldr r4, [r1, 0x4]
- b _0806AC8C
-_0806A982:
- mov r2, r9
- ldrb r4, [r2, 0x8]
- b _0806AC8C
-_0806A988:
- mov r6, r9
- ldrb r4, [r6, 0x9]
- b _0806AC8C
-_0806A98E:
- ldr r0, [sp]
- subs r0, 0xD
- lsls r0, 1
- add r0, r10
- ldrh r4, [r0]
- b _0806AC8C
-_0806A99A:
- ldr r0, [sp]
- add r0, r10
- subs r0, 0x9
- ldrb r4, [r0]
- b _0806AC8C
-_0806A9A4:
- ldrb r4, [r7]
- b _0806AC8C
-_0806A9A8:
- ldrb r4, [r7, 0x1]
- b _0806AC8C
-_0806A9AC:
- ldrb r4, [r7, 0x2]
- b _0806AC8C
-_0806A9B0:
- ldrb r4, [r7, 0x3]
- b _0806AC8C
-_0806A9B4:
- ldrb r4, [r7, 0x4]
- b _0806AC8C
-_0806A9B8:
- ldrb r4, [r7, 0x5]
- b _0806AC8C
-_0806A9BC:
- ldrb r4, [r7, 0x6]
- b _0806AC8C
-_0806A9C0:
- ldrb r4, [r7, 0x7]
- b _0806AC8C
-_0806A9C4:
- ldrb r4, [r7, 0x8]
- b _0806AC8C
-_0806A9C8:
- ldrb r4, [r7, 0x9]
- b _0806AC8C
-_0806A9CC:
- ldrb r4, [r7, 0xA]
- b _0806AC8C
-_0806A9D0:
- ldrb r4, [r7, 0xB]
- b _0806AC8C
-_0806A9D4:
- ldrb r4, [r5]
- b _0806AC8C
-_0806A9D8:
- ldrb r4, [r5, 0x1]
- b _0806AC8C
-_0806A9DC:
- ldrb r0, [r5, 0x2]
- lsls r0, 25
- lsrs r4, r0, 25
- b _0806AC8C
-_0806A9E4:
- ldrh r0, [r5, 0x2]
- lsls r0, 21
- lsrs r4, r0, 28
- b _0806AC8C
-_0806A9EC:
- ldrb r0, [r5, 0x3]
- b _0806AAAA
-_0806A9F0:
- ldrb r0, [r5, 0x3]
- lsrs r4, r0, 7
- b _0806AC8C
-_0806A9F6:
- ldrb r0, [r5, 0x4]
- lsls r0, 27
- lsrs r4, r0, 27
- b _0806AC8C
-_0806A9FE:
- ldrh r0, [r5, 0x4]
- lsls r0, 22
- lsrs r4, r0, 27
- b _0806AC8C
-_0806AA06:
- ldrb r0, [r5, 0x5]
- lsls r0, 25
- lsrs r4, r0, 27
- b _0806AC8C
-_0806AA0E:
- ldr r0, [r5, 0x4]
- lsls r0, 12
- lsrs r4, r0, 27
- b _0806AC8C
-_0806AA16:
- ldrh r0, [r5, 0x6]
- lsls r0, 23
- lsrs r4, r0, 27
- b _0806AC8C
-_0806AA1E:
- ldrb r0, [r5, 0x7]
- lsls r0, 26
- lsrs r4, r0, 27
- b _0806AC8C
-_0806AA26:
- ldrb r0, [r5, 0x7]
- b _0806AA84
-_0806AA2A:
- ldrb r0, [r5, 0x7]
- lsrs r4, r0, 7
- b _0806AC8C
-_0806AA30:
- ldrb r0, [r5, 0x8]
- lsls r0, 29
- lsrs r4, r0, 29
- b _0806AC8C
-_0806AA38:
- ldrb r0, [r5, 0x8]
- lsls r0, 26
- lsrs r4, r0, 29
- b _0806AC8C
-_0806AA40:
- ldrh r0, [r5, 0x8]
- lsls r0, 23
- lsrs r4, r0, 29
- b _0806AC8C
-_0806AA48:
- ldrb r0, [r5, 0x9]
- lsls r0, 28
- lsrs r4, r0, 29
- b _0806AC8C
-_0806AA50:
- ldrb r0, [r5, 0x9]
- lsls r0, 25
- lsrs r4, r0, 29
- b _0806AC8C
-_0806AA58:
- ldrb r0, [r5, 0x9]
- lsrs r4, r0, 7
- b _0806AC8C
-_0806AA5E:
- ldrb r0, [r5, 0xA]
- b _0806AA92
-_0806AA62:
- ldrb r0, [r5, 0xA]
- b _0806AA9A
-_0806AA66:
- ldrb r0, [r5, 0xA]
- b _0806AAA2
-_0806AA6A:
- ldrb r0, [r5, 0xA]
- lsls r0, 28
- lsrs r4, r0, 31
- b _0806AC8C
-_0806AA72:
- ldrb r0, [r5, 0xA]
- lsls r0, 27
- lsrs r4, r0, 31
- b _0806AC8C
-_0806AA7A:
- ldrb r0, [r5, 0xA]
- lsls r0, 26
- lsrs r4, r0, 31
- b _0806AC8C
-_0806AA82:
- ldrb r0, [r5, 0xA]
-_0806AA84:
- lsls r0, 25
- lsrs r4, r0, 31
- b _0806AC8C
-_0806AA8A:
- ldrb r0, [r5, 0xA]
- lsrs r4, r0, 7
- b _0806AC8C
-_0806AA90:
- ldrb r0, [r5, 0xB]
-_0806AA92:
- lsls r0, 31
- lsrs r4, r0, 31
- b _0806AC8C
-_0806AA98:
- ldrb r0, [r5, 0xB]
-_0806AA9A:
- lsls r0, 30
- lsrs r4, r0, 31
- b _0806AC8C
-_0806AAA0:
- ldrb r0, [r5, 0xB]
-_0806AAA2:
- lsls r0, 29
- lsrs r4, r0, 31
- b _0806AC8C
-_0806AAA8:
- ldrb r0, [r5, 0xB]
-_0806AAAA:
- lsls r0, 25
- lsrs r4, r0, 28
- b _0806AC8C
-_0806AAB0:
- ldrb r0, [r5, 0xB]
- lsrs r4, r0, 7
- b _0806AC8C
-_0806AAB6:
- mov r0, r9
- ldrh r4, [r0]
- cmp r4, 0
- bne _0806AAC0
- b _0806AC8C
-_0806AAC0:
- ldrb r0, [r5, 0x7]
- lsls r0, 25
- cmp r0, 0
- blt _0806AAD6
- mov r2, r8
- ldrb r1, [r2, 0x13]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0806AAD6
- b _0806AC8C
-_0806AAD6:
- movs r4, 0xCE
- lsls r4, 1
- b _0806AC8C
-_0806AADC:
- ldrb r0, [r5, 0x4]
- lsls r0, 27
- lsrs r4, r0, 27
- ldrh r1, [r5, 0x4]
- movs r0, 0xF8
- lsls r0, 2
- ands r0, r1
- orrs r4, r0
- ldrb r0, [r5, 0x5]
- lsls r0, 25
- lsrs r0, 27
- lsls r0, 10
- orrs r4, r0
- ldr r0, [r5, 0x4]
- movs r1, 0xF8
- lsls r1, 12
- ands r0, r1
- orrs r4, r0
- ldrh r0, [r5, 0x6]
- lsls r0, 23
- lsrs r0, 27
- lsls r0, 20
- orrs r4, r0
- ldrb r0, [r5, 0x7]
- lsls r0, 26
- lsrs r0, 27
- lsls r0, 25
- orrs r4, r0
- b _0806AC8C
-_0806AB16:
- mov r1, r9
- ldrh r0, [r1]
- cmp r0, 0
- bne _0806AB20
- b _0806AC8C
-_0806AB20:
- ldrb r0, [r5, 0x7]
- lsls r0, 25
- cmp r0, 0
- bge _0806AB2A
- b _0806AC8C
-_0806AB2A:
- ldrh r0, [r6]
- ldr r1, =0x00000163
- cmp r0, r1
- bne _0806AB34
- b _0806AC8C
-_0806AB34:
- mov r2, r10
- ldrh r5, [r2]
- adds r7, r1, 0
- adds r2, r6, 0
- ldr r1, =gBitTable
-_0806AB3E:
- ldrh r3, [r2]
- cmp r5, r3
- beq _0806AB58
- mov r6, r10
- ldrh r0, [r6, 0x2]
- cmp r0, r3
- beq _0806AB58
- ldrh r0, [r6, 0x4]
- cmp r0, r3
- beq _0806AB58
- ldrh r0, [r6, 0x6]
- cmp r0, r3
- bne _0806AB5C
-_0806AB58:
- ldr r0, [r1]
- orrs r4, r0
-_0806AB5C:
- adds r2, 0x2
- adds r1, 0x4
- ldrh r0, [r2]
- cmp r0, r7
- bne _0806AB3E
- b _0806AC8C
- .pool
-_0806AB70:
- movs r4, 0
- mov r1, r9
- ldrh r0, [r1]
- cmp r0, 0
- bne _0806AB7C
- b _0806AC8C
-_0806AB7C:
- ldrb r0, [r5, 0x7]
- lsls r0, 25
- cmp r0, 0
- bge _0806AB86
- b _0806AC8C
-_0806AB86:
- ldrb r0, [r5, 0x8]
- lsls r1, r0, 29
- lsrs r4, r1, 29
- lsls r0, 26
- lsrs r0, 29
- adds r4, r0
- ldrh r0, [r5, 0x8]
- lsls r0, 23
- lsrs r0, 29
- adds r4, r0
- ldrb r1, [r5, 0x9]
- lsls r0, r1, 28
- lsrs r0, 29
- adds r4, r0
- lsls r0, r1, 25
- lsrs r0, 29
- adds r4, r0
- lsrs r1, 7
- adds r4, r1
- ldrb r1, [r5, 0xA]
- lsls r0, r1, 31
- lsrs r0, 31
- adds r4, r0
- lsls r0, r1, 30
- lsrs r0, 31
- adds r4, r0
- lsls r0, r1, 29
- lsrs r0, 31
- adds r4, r0
- lsls r0, r1, 28
- lsrs r0, 31
- adds r4, r0
- lsls r0, r1, 27
- lsrs r0, 31
- adds r4, r0
- lsls r0, r1, 26
- lsrs r0, 31
- adds r4, r0
- lsls r0, r1, 25
- lsrs r0, 31
- adds r4, r0
- lsrs r1, 7
- adds r4, r1
- ldrb r1, [r5, 0xB]
- lsls r0, r1, 31
- lsrs r0, 31
- adds r4, r0
- lsls r0, r1, 30
- lsrs r0, 31
- adds r4, r0
- lsls r1, 29
- lsrs r1, 31
- adds r4, r1
- b _0806AC8C
-_0806ABF2:
- movs r4, 0
- mov r2, r9
- ldrh r0, [r2]
- cmp r0, 0
- beq _0806AC8C
- ldrb r0, [r5, 0x7]
- lsls r0, 25
- cmp r0, 0
- blt _0806AC8C
- ldrb r2, [r5, 0x9]
- lsrs r4, r2, 7
- ldrb r1, [r5, 0x8]
- lsls r0, r1, 29
- lsrs r0, 28
- orrs r4, r0
- lsls r1, 26
- lsrs r1, 29
- lsls r1, 4
- orrs r4, r1
- ldrh r0, [r5, 0x8]
- lsls r0, 23
- lsrs r0, 29
- lsls r0, 7
- orrs r4, r0
- lsls r0, r2, 28
- lsrs r0, 29
- lsls r0, 10
- orrs r4, r0
- lsls r2, 25
- lsrs r2, 29
- lsls r2, 13
- orrs r4, r2
- ldrb r1, [r5, 0xA]
- lsls r0, r1, 31
- lsrs r0, 31
- lsls r0, 16
- orrs r4, r0
- lsls r0, r1, 30
- lsrs r0, 31
- lsls r0, 17
- orrs r4, r0
- lsls r0, r1, 29
- lsrs r0, 31
- lsls r0, 18
- orrs r4, r0
- lsls r0, r1, 28
- lsrs r0, 31
- lsls r0, 19
- orrs r4, r0
- lsls r0, r1, 27
- lsrs r0, 31
- lsls r0, 20
- orrs r4, r0
- lsls r0, r1, 26
- lsrs r0, 31
- lsls r0, 21
- orrs r4, r0
- lsls r0, r1, 25
- lsrs r0, 31
- lsls r0, 22
- orrs r4, r0
- lsrs r1, 7
- lsls r1, 23
- orrs r4, r1
- ldrb r1, [r5, 0xB]
- lsls r0, r1, 31
- lsrs r0, 31
- lsls r0, 24
- orrs r4, r0
- lsls r0, r1, 30
- lsrs r0, 31
- lsls r0, 25
- orrs r4, r0
- lsls r1, 29
- lsrs r1, 31
- lsls r1, 26
- orrs r4, r1
-_0806AC8C:
- ldr r6, [sp]
- cmp r6, 0xA
- ble _0806AC98
- mov r0, r8
- bl EncryptBoxMon
-_0806AC98:
- adds r0, r4, 0
- 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 GetBoxMonData
-
- thumb_func_start SetMonData
-@ int SetMonData(pokemon *mon, enum pokemon_data_request req, void *data)
-SetMonData: @ 806ACAC
- push {lr}
- adds r3, r0, 0
- adds r0, r1, 0
- subs r0, 0x37
- cmp r0, 0xA
- bhi _0806AD90
- lsls r0, 2
- ldr r1, =_0806ACC8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806ACC8:
- .4byte _0806ACF4
- .4byte _0806AD0C
- .4byte _0806AD16
- .4byte _0806AD26
- .4byte _0806AD36
- .4byte _0806AD46
- .4byte _0806AD56
- .4byte _0806AD66
- .4byte _0806AD76
- .4byte _0806AD86
- .4byte _0806AD96
-_0806ACF4:
- 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, 0x50]
- b _0806AD96
-_0806AD0C:
- ldrb r1, [r2]
- adds r0, r3, 0
- adds r0, 0x54
- strb r1, [r0]
- b _0806AD96
-_0806AD16:
- ldrb r0, [r2]
- ldrb r1, [r2, 0x1]
- lsls r1, 8
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x56
- strh r0, [r1]
- b _0806AD96
-_0806AD26:
- ldrb r0, [r2]
- ldrb r1, [r2, 0x1]
- lsls r1, 8
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x58
- strh r0, [r1]
- b _0806AD96
-_0806AD36:
- ldrb r0, [r2]
- ldrb r1, [r2, 0x1]
- lsls r1, 8
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x5A
- strh r0, [r1]
- b _0806AD96
-_0806AD46:
- ldrb r0, [r2]
- ldrb r1, [r2, 0x1]
- lsls r1, 8
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x5C
- strh r0, [r1]
- b _0806AD96
-_0806AD56:
- ldrb r0, [r2]
- ldrb r1, [r2, 0x1]
- lsls r1, 8
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x5E
- strh r0, [r1]
- b _0806AD96
-_0806AD66:
- ldrb r0, [r2]
- ldrb r1, [r2, 0x1]
- lsls r1, 8
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x60
- strh r0, [r1]
- b _0806AD96
-_0806AD76:
- ldrb r0, [r2]
- ldrb r1, [r2, 0x1]
- lsls r1, 8
- adds r0, r1
- adds r1, r3, 0
- adds r1, 0x62
- strh r0, [r1]
- b _0806AD96
-_0806AD86:
- ldrb r1, [r2]
- adds r0, r3, 0
- adds r0, 0x55
- strb r1, [r0]
- b _0806AD96
-_0806AD90:
- adds r0, r3, 0
- bl SetBoxMonData
-_0806AD96:
- pop {r0}
- bx r0
- thumb_func_end SetMonData
-
- thumb_func_start SetBoxMonData
-@ int SetBoxMonData(pokemon *mon, enum pokemon_data_request req, void *data)
-SetBoxMonData: @ 806AD9C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r7, r0, 0
- mov r10, r1
- adds r4, r2, 0
- movs r0, 0
- mov r8, r0
- mov r9, r0
- movs r6, 0
- movs r5, 0
- cmp r1, 0xA
- ble _0806AE1C
- ldr r1, [r7]
- adds r0, r7, 0
- movs r2, 0
- bl GetSubstruct
- mov r8, r0
- ldr r1, [r7]
- adds r0, r7, 0
- movs r2, 0x1
- bl GetSubstruct
- mov r9, r0
- ldr r1, [r7]
- adds r0, r7, 0
- movs r2, 0x2
- bl GetSubstruct
- adds r6, r0, 0
- ldr r1, [r7]
- adds r0, r7, 0
- movs r2, 0x3
- bl GetSubstruct
- adds r5, r0, 0
- adds r0, r7, 0
- bl DecryptBoxMon
- adds r0, r7, 0
- bl CalculateBoxMonChecksum
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r7, 0x1C]
- cmp r0, r1
- beq _0806AE1C
- ldrb r0, [r7, 0x13]
- movs r1, 0x1
- orrs r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r7, 0x13]
- ldrb r0, [r5, 0x7]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r5, 0x7]
- adds r0, r7, 0
- bl EncryptBoxMon
- b _0806B3EC
-_0806AE1C:
- mov r0, r10
- cmp r0, 0x50
- bls _0806AE24
- b _0806B3D8
-_0806AE24:
- lsls r0, 2
- ldr r1, =_0806AE34
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806AE34:
- .4byte _0806AF78
- .4byte _0806AF90
- .4byte _0806AFA8
- .4byte _0806AFBE
- .4byte _0806AFC4
- .4byte _0806AFD4
- .4byte _0806AFE6
- .4byte _0806AFF8
- .4byte _0806B00E
- .4byte _0806B014
- .4byte _0806B020
- .4byte _0806B02C
- .4byte _0806B04C
- .4byte _0806B084
- .4byte _0806B084
- .4byte _0806B084
- .4byte _0806B084
- .4byte _0806B098
- .4byte _0806B098
- .4byte _0806B098
- .4byte _0806B098
- .4byte _0806B074
- .4byte _0806B0C8
- .4byte _0806B0CE
- .4byte _0806B0D4
- .4byte _0806B05A
- .4byte _0806B0A4
- .4byte _0806B0AA
- .4byte _0806B0B0
- .4byte _0806B0B6
- .4byte _0806B0BC
- .4byte _0806B0C2
- .4byte _0806B07C
- .4byte _0806B0DA
- .4byte _0806B0EC
- .4byte _0806B0F2
- .4byte _0806B0F8
- .4byte _0806B10C
- .4byte _0806B124
- .4byte _0806B14A
- .4byte _0806B15E
- .4byte _0806B178
- .4byte _0806B18E
- .4byte _0806B1A8
- .4byte _0806B1C0
- .4byte _0806B1D4
- .4byte _0806B204
- .4byte _0806B0E0
- .4byte _0806B0E6
- .4byte _0806B13A
- .4byte _0806B214
- .4byte _0806B222
- .4byte _0806B238
- .4byte _0806B250
- .4byte _0806B260
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B3D8
- .4byte _0806B35E
- .4byte _0806B276
- .4byte _0806B286
- .4byte _0806B294
- .4byte _0806B2A4
- .4byte _0806B2B4
- .4byte _0806B2C4
- .4byte _0806B2D4
- .4byte _0806B2E4
- .4byte _0806B2FA
- .4byte _0806B30A
- .4byte _0806B318
- .4byte _0806B328
- .4byte _0806B338
- .4byte _0806B34E
-_0806AF78:
- ldrb r1, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r4, 0x2]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r4, 0x3]
- lsls r0, 24
- adds r1, r0
- str r1, [r7]
- b _0806B3D8
-_0806AF90:
- ldrb r1, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r4, 0x2]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r4, 0x3]
- lsls r0, 24
- adds r1, r0
- str r1, [r7, 0x4]
- b _0806B3D8
-_0806AFA8:
- movs r2, 0
- adds r3, r7, 0
- adds r3, 0x8
-_0806AFAE:
- adds r0, r3, r2
- adds r1, r4, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x9
- ble _0806AFAE
- b _0806B3D8
-_0806AFBE:
- ldrb r0, [r4]
- strb r0, [r7, 0x12]
- b _0806B3D8
-_0806AFC4:
- ldrb r0, [r4]
- movs r1, 0x1
- ands r1, r0
- ldrb r2, [r7, 0x13]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- b _0806B1F2
-_0806AFD4:
- ldrb r0, [r4]
- movs r1, 0x1
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r7, 0x13]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- b _0806B1F2
-_0806AFE6:
- ldrb r0, [r4]
- movs r1, 0x1
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r7, 0x13]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- b _0806B1F2
-_0806AFF8:
- movs r2, 0
- adds r3, r7, 0
- adds r3, 0x14
-_0806AFFE:
- adds r0, r3, r2
- adds r1, r4, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x6
- ble _0806AFFE
- b _0806B3D8
-_0806B00E:
- ldrb r0, [r4]
- strb r0, [r7, 0x1B]
- b _0806B3D8
-_0806B014:
- ldrb r1, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- adds r1, r0
- strh r1, [r7, 0x1C]
- b _0806B3D8
-_0806B020:
- ldrb r1, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- adds r1, r0
- strh r1, [r7, 0x1E]
- b _0806B3D8
-_0806B02C:
- ldrb r1, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- adds r1, r0
- mov r0, r8
- strh r1, [r0]
- lsls r1, 16
- cmp r1, 0
- beq _0806B044
- ldrb r0, [r7, 0x13]
- movs r1, 0x2
- b _0806B1F2
-_0806B044:
- ldrb r1, [r7, 0x13]
- movs r0, 0x3
- negs r0, r0
- b _0806B1FE
-_0806B04C:
- ldrb r1, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- adds r1, r0
- mov r0, r8
- strh r1, [r0, 0x2]
- b _0806B3D8
-_0806B05A:
- ldrb r1, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r4, 0x2]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r4, 0x3]
- lsls r0, 24
- adds r1, r0
- mov r0, r8
- str r1, [r0, 0x4]
- b _0806B3D8
-_0806B074:
- ldrb r0, [r4]
- mov r1, r8
- strb r0, [r1, 0x8]
- b _0806B3D8
-_0806B07C:
- ldrb r0, [r4]
- mov r1, r8
- strb r0, [r1, 0x9]
- b _0806B3D8
-_0806B084:
- mov r2, r10
- subs r2, 0xD
- lsls r2, 1
- add r2, r9
- ldrb r1, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- adds r1, r0
- strh r1, [r2]
- b _0806B3D8
-_0806B098:
- mov r0, r9
- add r0, r10
- subs r0, 0x9
- ldrb r1, [r4]
- strb r1, [r0]
- b _0806B3D8
-_0806B0A4:
- ldrb r0, [r4]
- strb r0, [r6]
- b _0806B3D8
-_0806B0AA:
- ldrb r0, [r4]
- strb r0, [r6, 0x1]
- b _0806B3D8
-_0806B0B0:
- ldrb r0, [r4]
- strb r0, [r6, 0x2]
- b _0806B3D8
-_0806B0B6:
- ldrb r0, [r4]
- strb r0, [r6, 0x3]
- b _0806B3D8
-_0806B0BC:
- ldrb r0, [r4]
- strb r0, [r6, 0x4]
- b _0806B3D8
-_0806B0C2:
- ldrb r0, [r4]
- strb r0, [r6, 0x5]
- b _0806B3D8
-_0806B0C8:
- ldrb r0, [r4]
- strb r0, [r6, 0x6]
- b _0806B3D8
-_0806B0CE:
- ldrb r0, [r4]
- strb r0, [r6, 0x7]
- b _0806B3D8
-_0806B0D4:
- ldrb r0, [r4]
- strb r0, [r6, 0x8]
- b _0806B3D8
-_0806B0DA:
- ldrb r0, [r4]
- strb r0, [r6, 0x9]
- b _0806B3D8
-_0806B0E0:
- ldrb r0, [r4]
- strb r0, [r6, 0xA]
- b _0806B3D8
-_0806B0E6:
- ldrb r0, [r4]
- strb r0, [r6, 0xB]
- b _0806B3D8
-_0806B0EC:
- ldrb r0, [r4]
- strb r0, [r5]
- b _0806B3D8
-_0806B0F2:
- ldrb r0, [r4]
- strb r0, [r5, 0x1]
- b _0806B3D8
-_0806B0F8:
- ldrb r1, [r4]
- movs r0, 0x7F
- ands r1, r0
- ldrb r2, [r5, 0x2]
- movs r0, 0x80
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x2]
- b _0806B3D8
-_0806B10C:
- ldrb r1, [r4]
- movs r0, 0xF
- ands r1, r0
- lsls r1, 7
- ldrh r2, [r5, 0x2]
- ldr r0, =0xfffff87f
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x2]
- b _0806B3D8
- .pool
-_0806B124:
- ldrb r1, [r4]
- movs r0, 0xF
- ands r1, r0
- lsls r1, 3
- ldrb r2, [r5, 0x3]
- movs r0, 0x79
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x3]
- b _0806B3D8
-_0806B13A:
- ldrb r0, [r4]
- lsls r0, 7
- ldrb r2, [r5, 0x3]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r5, 0x3]
- b _0806B3D8
-_0806B14A:
- ldrb r1, [r4]
- movs r0, 0x1F
- ands r1, r0
- ldrb r2, [r5, 0x4]
- movs r0, 0x20
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x4]
- b _0806B3D8
-_0806B15E:
- ldrb r1, [r4]
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 5
- ldrh r2, [r5, 0x4]
- ldr r0, =0xfffffc1f
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x4]
- b _0806B3D8
- .pool
-_0806B178:
- ldrb r1, [r4]
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r5, 0x5]
- movs r0, 0x7D
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x5]
- b _0806B3D8
-_0806B18E:
- ldrb r2, [r4]
- movs r0, 0x1F
- ands r2, r0
- lsls r2, 15
- ldr r0, [r5, 0x4]
- ldr r1, =0xfff07fff
- ands r0, r1
- orrs r0, r2
- str r0, [r5, 0x4]
- b _0806B3D8
- .pool
-_0806B1A8:
- ldrb r1, [r4]
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 4
- ldrh r2, [r5, 0x6]
- ldr r0, =0xfffffe0f
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x6]
- b _0806B3D8
- .pool
-_0806B1C0:
- ldrb r1, [r4]
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r5, 0x7]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- b _0806B3D6
-_0806B1D4:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 6
- ldrb r2, [r5, 0x7]
- movs r0, 0x41
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x7]
- lsls r0, 25
- cmp r0, 0
- bge _0806B1F8
- ldrb r0, [r7, 0x13]
- movs r1, 0x4
-_0806B1F2:
- orrs r0, r1
- strb r0, [r7, 0x13]
- b _0806B3D8
-_0806B1F8:
- ldrb r1, [r7, 0x13]
- movs r0, 0x5
- negs r0, r0
-_0806B1FE:
- ands r0, r1
- strb r0, [r7, 0x13]
- b _0806B3D8
-_0806B204:
- ldrb r0, [r4]
- lsls r0, 7
- ldrb r2, [r5, 0x7]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r5, 0x7]
- b _0806B3D8
-_0806B214:
- ldrb r1, [r4]
- movs r0, 0x7
- ands r1, r0
- ldrb r2, [r5, 0x8]
- movs r0, 0x8
- negs r0, r0
- b _0806B230
-_0806B222:
- ldrb r1, [r4]
- movs r0, 0x7
- ands r1, r0
- lsls r1, 3
- ldrb r2, [r5, 0x8]
- movs r0, 0x39
- negs r0, r0
-_0806B230:
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x8]
- b _0806B3D8
-_0806B238:
- ldrb r1, [r4]
- movs r0, 0x7
- ands r1, r0
- lsls r1, 6
- ldrh r2, [r5, 0x8]
- ldr r0, =0xfffffe3f
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x8]
- b _0806B3D8
- .pool
-_0806B250:
- ldrb r1, [r4]
- movs r0, 0x7
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r5, 0x9]
- movs r0, 0xF
- negs r0, r0
- b _0806B26E
-_0806B260:
- ldrb r1, [r4]
- movs r0, 0x7
- ands r1, r0
- lsls r1, 4
- ldrb r2, [r5, 0x9]
- movs r0, 0x71
- negs r0, r0
-_0806B26E:
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x9]
- b _0806B3D8
-_0806B276:
- ldrb r0, [r4]
- lsls r0, 7
- ldrb r2, [r5, 0x9]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r5, 0x9]
- b _0806B3D8
-_0806B286:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- ldrb r2, [r5, 0xA]
- movs r0, 0x2
- negs r0, r0
- b _0806B2F2
-_0806B294:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r5, 0xA]
- movs r0, 0x3
- negs r0, r0
- b _0806B2F2
-_0806B2A4:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r5, 0xA]
- movs r0, 0x5
- negs r0, r0
- b _0806B2F2
-_0806B2B4:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 3
- ldrb r2, [r5, 0xA]
- movs r0, 0x9
- negs r0, r0
- b _0806B2F2
-_0806B2C4:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 4
- ldrb r2, [r5, 0xA]
- movs r0, 0x11
- negs r0, r0
- b _0806B2F2
-_0806B2D4:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 5
- ldrb r2, [r5, 0xA]
- movs r0, 0x21
- negs r0, r0
- b _0806B2F2
-_0806B2E4:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 6
- ldrb r2, [r5, 0xA]
- movs r0, 0x41
- negs r0, r0
-_0806B2F2:
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0xA]
- b _0806B3D8
-_0806B2FA:
- ldrb r0, [r4]
- lsls r0, 7
- ldrb r2, [r5, 0xA]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r5, 0xA]
- b _0806B3D8
-_0806B30A:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- ldrb r2, [r5, 0xB]
- movs r0, 0x2
- negs r0, r0
- b _0806B346
-_0806B318:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r5, 0xB]
- movs r0, 0x3
- negs r0, r0
- b _0806B346
-_0806B328:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r5, 0xB]
- movs r0, 0x5
- negs r0, r0
- b _0806B346
-_0806B338:
- ldrb r1, [r4]
- movs r0, 0xF
- ands r1, r0
- lsls r1, 3
- ldrb r2, [r5, 0xB]
- movs r0, 0x79
- negs r0, r0
-_0806B346:
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0xB]
- b _0806B3D8
-_0806B34E:
- ldrb r0, [r4]
- lsls r0, 7
- ldrb r2, [r5, 0xB]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r5, 0xB]
- b _0806B3D8
-_0806B35E:
- ldrb r3, [r4]
- ldrb r0, [r4, 0x1]
- lsls r0, 8
- orrs r3, r0
- ldrb r0, [r4, 0x2]
- lsls r0, 16
- orrs r3, r0
- ldrb r0, [r4, 0x3]
- lsls r0, 24
- orrs r3, r0
- movs r4, 0x1F
- adds r1, r3, 0
- ands r1, r4
- ldrb r2, [r5, 0x4]
- movs r0, 0x20
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x4]
- lsrs r1, r3, 5
- ands r1, r4
- lsls r1, 5
- ldrh r2, [r5, 0x4]
- ldr r0, =0xfffffc1f
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x4]
- lsrs r1, r3, 10
- ands r1, r4
- lsls r1, 2
- ldrb r2, [r5, 0x5]
- movs r0, 0x7D
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x5]
- lsrs r1, r3, 15
- ands r1, r4
- lsls r1, 15
- ldr r0, [r5, 0x4]
- ldr r2, =0xfff07fff
- ands r0, r2
- orrs r0, r1
- str r0, [r5, 0x4]
- lsrs r1, r3, 20
- ands r1, r4
- lsls r1, 4
- ldrh r2, [r5, 0x6]
- ldr r0, =0xfffffe0f
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x6]
- lsrs r3, 25
- ands r3, r4
- lsls r3, 1
- ldrb r1, [r5, 0x7]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r1
- orrs r0, r3
-_0806B3D6:
- strb r0, [r5, 0x7]
-_0806B3D8:
- mov r0, r10
- cmp r0, 0xA
- ble _0806B3EC
- adds r0, r7, 0
- bl CalculateBoxMonChecksum
- strh r0, [r7, 0x1C]
- adds r0, r7, 0
- bl EncryptBoxMon
-_0806B3EC:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetBoxMonData
-
- thumb_func_start CopyMon
-@ void *CopyMon(void *dest, void *src, unsigned int size)
-CopyMon: @ 806B408
- push {lr}
- bl memcpy
- pop {r0}
- bx r0
- thumb_func_end CopyMon
-
- thumb_func_start GiveMonToPlayer
-@ int GiveMonToPlayer(pokemon *mon)
-GiveMonToPlayer: @ 806B414
- push {r4-r6,lr}
- adds r6, r0, 0
- ldr r4, =gSaveBlock2Ptr
- ldr r2, [r4]
- movs r1, 0x7
- bl SetMonData
- ldr r2, [r4]
- adds r2, 0x8
- adds r0, r6, 0
- movs r1, 0x31
- bl SetMonData
- ldr r2, [r4]
- adds r2, 0xA
- adds r0, r6, 0
- movs r1, 0x1
- bl SetMonData
- movs r5, 0
- b _0806B446
- .pool
-_0806B444:
- adds r5, 0x1
-_0806B446:
- cmp r5, 0x5
- bgt _0806B480
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- bne _0806B444
- adds r0, r4, 0
- adds r1, r6, 0
- movs r2, 0x64
- bl CopyMon
- ldr r1, =gPlayerPartyCount
- adds r0, r5, 0x1
- strb r0, [r1]
- movs r0, 0
- b _0806B48A
- .pool
-_0806B480:
- adds r0, r6, 0
- bl SendMonToPC
- lsls r0, 24
- lsrs r0, 24
-_0806B48A:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GiveMonToPlayer
-
- thumb_func_start SendMonToPC
-@ int SendMonToPC(pokemon *mon)
-SendMonToPC: @ 806B490
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r0
- ldr r0, =0x00004036
- bl VarGet
- lsls r0, 24
- lsrs r0, 24
- bl set_unknown_box_id
- bl get_preferred_box
- lsls r0, 24
- lsrs r5, r0, 24
-_0806B4AE:
- movs r6, 0
- lsls r7, r5, 24
-_0806B4B2:
- lsls r1, r6, 24
- lsrs r1, 24
- lsrs r0, r7, 24
- bl get_pokemon_by_box_and_pos
- adds r4, r0, 0
- movs r1, 0xB
- movs r2, 0
- bl GetBoxMonData
- cmp r0, 0
- bne _0806B514
- mov r0, r8
- bl MonRestorePP
- adds r0, r4, 0
- mov r1, r8
- movs r2, 0x50
- bl CopyMon
- ldr r0, =gSpecialVar_0x8012
- strh r5, [r0]
- ldr r0, =gSpecialVar_0x8013
- strh r6, [r0]
- bl get_unknown_box_id
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r5
- beq _0806B4F4
- ldr r0, =0x000008d7
- bl FlagReset
-_0806B4F4:
- lsls r1, r5, 16
- ldr r0, =0x00004036
- lsrs r1, 16
- bl VarSet
- movs r0, 0x1
- b _0806B530
- .pool
-_0806B514:
- adds r6, 0x1
- cmp r6, 0x1D
- ble _0806B4B2
- adds r5, 0x1
- cmp r5, 0xE
- bne _0806B522
- movs r5, 0
-_0806B522:
- bl get_preferred_box
- lsls r0, 24
- lsrs r0, 24
- cmp r5, r0
- bne _0806B4AE
- movs r0, 0x2
-_0806B530:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end SendMonToPC
-
- thumb_func_start CalculatePlayerPartyCount
-@ u8 CalculatePlayerPartyCount()
-CalculatePlayerPartyCount: @ 806B53C
- push {r4,lr}
- ldr r0, =gPlayerPartyCount
- movs r1, 0
- strb r1, [r0]
- b _0806B554
- .pool
-_0806B54C:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- adds r0, r4, 0
-_0806B554:
- adds r4, r0, 0
- ldrb r0, [r4]
- cmp r0, 0x5
- bhi _0806B572
- adds r1, r0, 0
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- bne _0806B54C
-_0806B572:
- ldrb r0, [r4]
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end CalculatePlayerPartyCount
-
- thumb_func_start CalculateEnemyPartyCount
-@ u8 CalculateEnemyPartyCount()
-CalculateEnemyPartyCount: @ 806B580
- push {r4,lr}
- ldr r0, =gUnknown_020244EA
- movs r1, 0
- strb r1, [r0]
- b _0806B598
- .pool
-_0806B590:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- adds r0, r4, 0
-_0806B598:
- adds r4, r0, 0
- ldrb r0, [r4]
- cmp r0, 0x5
- bhi _0806B5B6
- adds r1, r0, 0
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gEnemyParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- bne _0806B590
-_0806B5B6:
- ldrb r0, [r4]
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end CalculateEnemyPartyCount
-
- thumb_func_start GetMonsStateToDoubles
-GetMonsStateToDoubles: @ 806B5C4
- push {r4-r6,lr}
- movs r6, 0
- bl CalculatePlayerPartyCount
- ldr r1, =gPlayerPartyCount
- ldrb r0, [r1]
- cmp r0, 0x1
- beq _0806B628
- movs r5, 0
- ldrb r1, [r1]
- cmp r6, r1
- bge _0806B620
-_0806B5DC:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _0806B616
- adds r0, r4, 0
- movs r1, 0x39
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- beq _0806B616
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- beq _0806B616
- adds r6, 0x1
-_0806B616:
- adds r5, 0x1
- ldr r0, =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r5, r0
- blt _0806B5DC
-_0806B620:
- movs r0, 0
- cmp r6, 0x1
- bgt _0806B628
- movs r0, 0x2
-_0806B628:
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetMonsStateToDoubles
-
- thumb_func_start GetMonsStateToDoubles_2
-@ u8 GetMonsStateToDoubles_2()
-GetMonsStateToDoubles_2: @ 806B638
- push {r4-r6,lr}
- movs r6, 0
- movs r5, 0
-_0806B63E:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- adds r1, r0, 0
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- beq _0806B670
- cmp r1, 0
- beq _0806B670
- adds r0, r4, 0
- movs r1, 0x39
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- beq _0806B670
- adds r6, 0x1
-_0806B670:
- adds r5, 0x1
- cmp r5, 0x5
- ble _0806B63E
- cmp r6, 0x1
- bne _0806B684
- movs r0, 0x1
- b _0806B68C
- .pool
-_0806B684:
- movs r0, 0
- cmp r6, 0x1
- bgt _0806B68C
- movs r0, 0x2
-_0806B68C:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GetMonsStateToDoubles_2
-
- thumb_func_start GetAbilityBySpecies
-@ int GetAbilityBySpecies(u16 a1, int a2)
-GetAbilityBySpecies: @ 806B694
- push {lr}
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, 24
- cmp r1, 0
- beq _0806B6B8
- ldr r2, =gLastUsedAbility
- ldr r1, =gBaseStats
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x17]
- b _0806B6C6
- .pool
-_0806B6B8:
- ldr r2, =gLastUsedAbility
- ldr r1, =gBaseStats
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x16]
-_0806B6C6:
- strb r0, [r2]
- ldrb r0, [r2]
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetAbilityBySpecies
-
- thumb_func_start GetMonAbility
-@ u8 GetMonAbility(pokemon *mon)
-GetMonAbility: @ 806B6D8
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0x2E
- movs r2, 0
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl GetAbilityBySpecies
- lsls r0, 24
- lsrs r0, 24
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GetMonAbility
-
- thumb_func_start CreateSecretBaseEnemyParty
-CreateSecretBaseEnemyParty: @ 806B70C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- adds r5, r0, 0
- bl ZeroEnemyPartyMons
- ldr r4, =gBattleResources
- ldr r0, [r4]
- ldr r0, [r0]
- adds r1, r5, 0
- movs r2, 0xA0
- bl memcpy
- movs r0, 0
- mov r9, r0
-_0806B730:
- ldr r1, =gBattleResources
- ldr r3, [r1]
- ldr r2, [r3]
- mov r4, r9
- lsls r7, r4, 1
- adds r0, r2, 0
- adds r0, 0x7C
- adds r1, r0, r7
- ldrh r0, [r1]
- adds r4, 0x1
- str r4, [sp, 0x10]
- cmp r0, 0
- beq _0806B80A
- movs r0, 0x64
- mov r6, r9
- muls r6, r0
- ldr r4, =gEnemyParty
- mov r8, r4
- adds r5, r6, r4
- ldrh r1, [r1]
- adds r0, r2, 0
- adds r0, 0x94
- add r0, r9
- ldrb r2, [r0]
- movs r0, 0x1
- str r0, [sp]
- ldr r0, [r3]
- mov r3, r9
- lsls r4, r3, 2
- adds r0, 0x34
- adds r0, r4
- ldr r0, [r0]
- str r0, [sp, 0x4]
- movs r0, 0x2
- str r0, [sp, 0x8]
- movs r0, 0
- str r0, [sp, 0xC]
- adds r0, r5, 0
- movs r3, 0xF
- bl CreateMon
- ldr r1, =gBattleResources
- ldr r0, [r1]
- adds r1, r7, 0
- adds r1, 0x88
- ldr r2, [r0]
- adds r2, r1
- adds r0, r5, 0
- movs r1, 0xC
- bl SetMonData
- movs r5, 0
- mov r10, r4
- mov r7, r9
- adds r7, 0x9A
- mov r4, r8
-_0806B7A0:
- adds r1, r5, 0
- adds r1, 0x1A
- ldr r2, =gBattleResources
- ldr r0, [r2]
- ldr r2, [r0]
- adds r2, r7
- adds r0, r6, r4
- bl SetMonData
- adds r5, 0x1
- cmp r5, 0x5
- ble _0806B7A0
- movs r5, 0
- movs r3, 0x64
- mov r0, r9
- muls r0, r3
- ldr r1, =gEnemyParty
- adds r7, r0, r1
- mov r4, r10
- lsls r0, r4, 1
- adds r6, r0, 0
- adds r6, 0x4C
- adds r4, r0, 0
-_0806B7CE:
- adds r1, r5, 0
- adds r1, 0xD
- ldr r2, =gBattleResources
- ldr r0, [r2]
- ldr r2, [r0]
- adds r2, r6
- adds r0, r7, 0
- bl SetMonData
- adds r1, r5, 0
- adds r1, 0x11
- ldr r3, =gBattleResources
- ldr r0, [r3]
- ldr r0, [r0]
- adds r0, 0x4C
- adds r0, r4
- ldrh r0, [r0]
- lsls r2, r0, 1
- adds r2, r0
- lsls r2, 2
- ldr r0, =gBattleMoves + 0x4 @ PP offset
- adds r2, r0
- adds r0, r7, 0
- bl SetMonData
- adds r6, 0x2
- adds r4, 0x2
- adds r5, 0x1
- cmp r5, 0x3
- ble _0806B7CE
-_0806B80A:
- ldr r4, [sp, 0x10]
- mov r9, r4
- cmp r4, 0x5
- ble _0806B730
- 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 CreateSecretBaseEnemyParty
-
- thumb_func_start GetSecretBaseTrainerPicIndex
-GetSecretBaseTrainerPicIndex: @ 806B830
- push {r4,r5,lr}
- ldr r5, =gSecretBaseTrainerClasses
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r4, [r0]
- ldrb r0, [r4, 0x9]
- movs r1, 0x5
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- ldrb r2, [r4, 0x1]
- lsls r2, 27
- lsrs r2, 31
- lsls r1, r2, 2
- adds r1, r2
- adds r0, r1
- adds r0, r5
- ldrb r0, [r0]
- ldr r1, =gTrainerPicIndices
- adds r0, r1
- ldrb r0, [r0]
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetSecretBaseTrainerPicIndex
-
- thumb_func_start GetSecretBaseTrainerNameIndex
-GetSecretBaseTrainerNameIndex: @ 806B870
- push {r4,r5,lr}
- ldr r5, =gSecretBaseTrainerClasses
- ldr r0, =gBattleResources
- ldr r0, [r0]
- ldr r4, [r0]
- ldrb r0, [r4, 0x9]
- movs r1, 0x5
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- ldrb r2, [r4, 0x1]
- lsls r2, 27
- lsrs r2, 31
- lsls r1, r2, 2
- adds r1, r2
- adds r0, r1
- adds r0, r5
- ldrb r0, [r0]
- ldr r1, =gTrainerClassNameIndices
- adds r0, r1
- ldrb r0, [r0]
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetSecretBaseTrainerNameIndex
-
- thumb_func_start PlayerPartyAndPokemonStorageFull
-PlayerPartyAndPokemonStorageFull: @ 806B8B0
- push {r4,lr}
- movs r4, 0
-_0806B8B4:
- movs r0, 0x64
- muls r0, r4
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- bne _0806B8D0
- movs r0, 0
- b _0806B8DE
- .pool
-_0806B8D0:
- adds r4, 0x1
- cmp r4, 0x5
- ble _0806B8B4
- bl PokemonStorageFull
- lsls r0, 24
- lsrs r0, 24
-_0806B8DE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end PlayerPartyAndPokemonStorageFull
-
- thumb_func_start PokemonStorageFull
-PokemonStorageFull: @ 806B8E4
- push {r4-r6,lr}
- movs r6, 0
-_0806B8E8:
- movs r4, 0
- lsls r5, r6, 24
-_0806B8EC:
- lsls r1, r4, 24
- lsrs r1, 24
- lsrs r0, r5, 24
- movs r2, 0xB
- bl GetBoxMonDataFromAnyBox
- cmp r0, 0
- bne _0806B900
- movs r0, 0
- b _0806B90E
-_0806B900:
- adds r4, 0x1
- cmp r4, 0x1D
- ble _0806B8EC
- adds r6, 0x1
- cmp r6, 0xD
- ble _0806B8E8
- movs r0, 0x1
-_0806B90E:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end PokemonStorageFull
-
- thumb_func_start GetSpeciesName
-@ void GetSpeciesName(u8 *dest, u16 speciesId)
-GetSpeciesName: @ 806B914
- push {r4-r7,lr}
- adds r6, r0, 0
- lsls r1, 16
- lsrs r5, r1, 16
- movs r1, 0
- movs r0, 0xCE
- lsls r0, 1
- mov r12, r0
- ldr r7, =gSpeciesNames
- movs r0, 0xB
- muls r0, r5
- adds r3, r0, r7
- adds r2, r6, 0
- b _0806B93A
- .pool
-_0806B934:
- adds r3, 0x1
- adds r2, 0x1
- adds r1, 0x1
-_0806B93A:
- adds r4, r6, r1
- cmp r1, 0xA
- bgt _0806B954
- cmp r5, r12
- bls _0806B94A
- adds r0, r1, r7
- ldrb r0, [r0]
- b _0806B94C
-_0806B94A:
- ldrb r0, [r3]
-_0806B94C:
- strb r0, [r2]
- ldrb r0, [r4]
- cmp r0, 0xFF
- bne _0806B934
-_0806B954:
- movs r0, 0xFF
- strb r0, [r4]
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end GetSpeciesName
-
- thumb_func_start CalculatePPWithBonus
-@ u16 CalculatePPWithBonus(u16 moveId, s32 ppUpCounts, u8 monMoveIndex)
-CalculatePPWithBonus: @ 806B960
- push {r4,lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r2, 24
- lsrs r2, 24
- ldr r4, =gBattleMoves
- lsls r3, r0, 1
- adds r3, r0
- lsls r3, 2
- adds r3, r4
- ldrb r4, [r3, 0x4]
- ldr r0, =gUnknown_08329D22
- adds r0, r2, r0
- ldrb r3, [r0]
- ands r3, r1
- lsls r2, 1
- asrs r3, r2
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 2
- muls r0, r4
- movs r1, 0x64
- bl __divsi3
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end CalculatePPWithBonus
-
- thumb_func_start RemoveMonPPBonus
-RemoveMonPPBonus: @ 806B9A8
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- lsls r4, r1, 24
- lsrs r4, 24
- movs r1, 0x15
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- mov r1, sp
- strb r0, [r1]
- ldr r1, =gUnknown_08329D26
- adds r4, r1
- ldrb r1, [r4]
- ands r1, r0
- mov r0, sp
- strb r1, [r0]
- adds r0, r5, 0
- movs r1, 0x15
- mov r2, sp
- bl SetMonData
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end RemoveMonPPBonus
-
- thumb_func_start RemoveBattleMonPPBonus
-RemoveBattleMonPPBonus: @ 806B9E4
- lsls r1, 24
- lsrs r1, 24
- adds r0, 0x3B
- ldr r2, =gUnknown_08329D26
- adds r1, r2
- ldrb r2, [r0]
- ldrb r1, [r1]
- ands r1, r2
- strb r1, [r0]
- bx lr
- .pool
- thumb_func_end RemoveBattleMonPPBonus
thumb_func_start CopyPlayerPartyMonToBattleData
CopyPlayerPartyMonToBattleData: @ 806B9FC
diff --git a/asm/pokemon_3.s b/asm/pokemon_3.s
index 15d24d795..4301dccfd 100644
--- a/asm/pokemon_3.s
+++ b/asm/pokemon_3.s
@@ -5,4603 +5,7 @@
.text
- thumb_func_start HealStatusConditions
-@ bool8 HealStatusConditions(struct pokemon *a1, int a2, u32 healMask, u8 a4)
-HealStatusConditions: @ 806CD6C
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- adds r4, r2, 0
- lsls r3, 24
- lsrs r6, r3, 24
- movs r1, 0x37
- movs r2, 0
- bl GetMonData
- adds r1, r0, 0
- str r1, [sp]
- ands r0, r4
- cmp r0, 0
- beq _0806CDD0
- mvns r4, r4
- ands r1, r4
- str r1, [sp]
- adds r0, r5, 0
- movs r1, 0x37
- mov r2, sp
- bl SetMonData
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0806CDBE
- cmp r6, 0x4
- beq _0806CDBE
- ldr r0, =gBattleMons
- movs r1, 0x58
- muls r1, r6
- adds r0, 0x4C
- adds r1, r0
- ldr r0, [r1]
- ands r0, r4
- str r0, [r1]
-_0806CDBE:
- movs r0, 0
- b _0806CDD2
- .pool
-_0806CDD0:
- movs r0, 0x1
-_0806CDD2:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end HealStatusConditions
-
- thumb_func_start GetItemEffectParamOffset
-GetItemEffectParamOffset: @ 806CDDC
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, 24
- lsrs r4, r1, 24
- lsls r2, 24
- lsrs r5, r2, 24
- movs r7, 0x6
- ldr r1, =gItemEffectTable
- adds r0, r3, 0
- subs r0, 0xD
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0
- bne _0806CE08
- cmp r3, 0xAF
- beq _0806CE0C
-_0806CE00:
- movs r0, 0
- b _0806CF1C
- .pool
-_0806CE08:
- cmp r3, 0xAF
- bne _0806CE1A
-_0806CE0C:
- ldr r0, =gActiveBank
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- ldr r1, =gEnigmaBerries + 8
- adds r0, r1
-_0806CE1A:
- mov r12, r0
- movs r2, 0
-_0806CE1E:
- cmp r2, 0x4
- beq _0806CE3E
- cmp r2, 0x4
- ble _0806CE34
- cmp r2, 0x5
- beq _0806CEC8
- b _0806CF12
- .pool
-_0806CE34:
- cmp r2, 0
- blt _0806CF12
- cmp r2, r4
- bne _0806CF12
- b _0806CE00
-_0806CE3E:
- mov r0, r12
- ldrb r3, [r0, 0x4]
- movs r0, 0x20
- ands r0, r3
- cmp r0, 0
- beq _0806CE4E
- movs r0, 0xDF
- ands r3, r0
-_0806CE4E:
- movs r6, 0
- cmp r3, 0
- beq _0806CF12
-_0806CE54:
- movs r0, 0x1
- ands r0, r3
- cmp r0, 0
- beq _0806CEB4
- cmp r6, 0x7
- bhi _0806CEB4
- lsls r0, r6, 2
- ldr r1, =_0806CE70
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806CE70:
- .4byte _0806CE9C
- .4byte _0806CE9C
- .4byte _0806CE90
- .4byte _0806CE9C
- .4byte _0806CEB4
- .4byte _0806CEB4
- .4byte _0806CEB4
- .4byte _0806CEB0
-_0806CE90:
- movs r0, 0x10
- ands r0, r3
- cmp r0, 0
- beq _0806CE9C
- movs r0, 0xEF
- ands r3, r0
-_0806CE9C:
- cmp r2, r4
- bne _0806CEA8
- adds r0, r3, 0
- ands r0, r5
- cmp r0, 0
- bne _0806CF1A
-_0806CEA8:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- b _0806CEB4
-_0806CEB0:
- cmp r2, r4
- beq _0806CE00
-_0806CEB4:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- lsrs r3, 1
- cmp r2, r4
- bne _0806CEC2
- lsrs r5, 1
-_0806CEC2:
- cmp r3, 0
- bne _0806CE54
- b _0806CF12
-_0806CEC8:
- mov r0, r12
- ldrb r3, [r0, 0x5]
- movs r6, 0
-_0806CECE:
- cmp r3, 0
- beq _0806CF12
- movs r0, 0x1
- ands r0, r3
- cmp r0, 0
- beq _0806CF02
- cmp r6, 0
- blt _0806CF02
- cmp r6, 0x6
- ble _0806CEE8
- cmp r6, 0x7
- beq _0806CEFC
- b _0806CF02
-_0806CEE8:
- cmp r2, r4
- bne _0806CEF4
- adds r0, r3, 0
- ands r0, r5
- cmp r0, 0
- bne _0806CF1A
-_0806CEF4:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- b _0806CF02
-_0806CEFC:
- cmp r2, r4
- bne _0806CF02
- b _0806CE00
-_0806CF02:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- lsrs r3, 1
- cmp r2, r4
- bne _0806CECE
- lsrs r5, 1
- b _0806CECE
-_0806CF12:
- adds r2, 0x1
- cmp r2, 0x5
- bgt _0806CF1A
- b _0806CE1E
-_0806CF1A:
- adds r0, r7, 0
-_0806CF1C:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end GetItemEffectParamOffset
-
- thumb_func_start sub_806CF24
-sub_806CF24: @ 806CF24
- push {lr}
- ldr r2, =gBankTarget
- ldr r1, =gUnknown_020244B8
- ldrb r1, [r1]
- strb r1, [r2]
- ldr r3, =gBattleTextBuff1
- ldr r2, =gUnknown_085CBE00
- ldr r1, =gUnknown_08329EC8
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r2
- ldr r1, [r0]
- adds r0, r3, 0
- bl StringCopy
- ldr r0, =gBattleTextBuff2
- ldr r1, =gUnknown_085CB38A
- bl StringCopy
- ldr r0, =gUnknown_085CB3AA
- bl StrCpyDecodeToDisplayedStringBattle
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806CF24
-
- thumb_func_start sub_806CF78
-sub_806CF78: @ 806CF78
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xAF
- bne _0806CFCC
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0806CFB8
- ldr r2, =gUnknown_020244B8
- ldrb r1, [r2]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- ldr r1, =gEnigmaBerries + 8
- adds r7, r0, r1
- b _0806CFD8
- .pool
-_0806CFB8:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003214
- adds r7, r0, r1
- b _0806CFD6
- .pool
-_0806CFCC:
- ldr r1, =gItemEffectTable
- subs r0, 0xD
- lsls r0, 2
- adds r0, r1
- ldr r7, [r0]
-_0806CFD6:
- ldr r2, =gUnknown_020244B8
-_0806CFD8:
- ldr r1, =gUnknown_0202420F
- ldrb r0, [r2]
- strb r0, [r1]
- movs r5, 0
- ldr r0, =gBankAttacker
- mov r8, r0
- movs r6, 0
-_0806CFE6:
- adds r4, r7, r5
- ldrb r1, [r4]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0
- beq _0806CFF8
- adds r0, r6, 0
- bl sub_806CF24
-_0806CFF8:
- ldrb r1, [r4]
- movs r0, 0xF0
- ands r0, r1
- cmp r0, 0
- beq _0806D02E
- cmp r5, 0
- beq _0806D020
- adds r0, r6, 0x1
- bl sub_806CF24
- b _0806D02E
- .pool
-_0806D020:
- ldr r0, =gUnknown_020244B8
- ldrb r0, [r0]
- mov r1, r8
- strb r0, [r1]
- ldr r0, =gUnknown_085CA459
- bl StrCpyDecodeToDisplayedStringBattle
-_0806D02E:
- adds r6, 0x2
- adds r5, 0x1
- cmp r5, 0x2
- ble _0806CFE6
- ldrb r1, [r7, 0x3]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0806D04E
- ldr r1, =gBankAttacker
- ldr r0, =gUnknown_020244B8
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r0, =gUnknown_085CA424
- bl StrCpyDecodeToDisplayedStringBattle
-_0806D04E:
- ldr r0, =gDisplayedStringBattle
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806CF78
-
- thumb_func_start GetNature
-@ u8 GetNature(pokemon *mon)
-GetNature: @ 806D070
- push {lr}
- movs r1, 0
- movs r2, 0
- bl GetMonData
- movs r1, 0x19
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end GetNature
-
- thumb_func_start GetNatureFromPersonality
-@ u8 GetNatureFromPersonality(u32 personality)
-GetNatureFromPersonality: @ 806D088
- push {lr}
- movs r1, 0x19
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end GetNatureFromPersonality
-
- thumb_func_start GetEvolutionTargetSpecies
-GetEvolutionTargetSpecies: @ 806D098
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- mov r8, r0
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 16
- lsrs r2, 16
- mov r9, r2
- movs r0, 0
- mov r10, r0
- mov r0, r8
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r7, r0, 16
- mov r0, r8
- movs r1, 0xC
- movs r2, 0
- bl GetMonData
- mov r1, sp
- strh r0, [r1]
- mov r0, r8
- movs r1, 0
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- mov r0, r8
- movs r1, 0x17
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0xC]
- lsrs r4, 16
- str r4, [sp, 0x10]
- mov r0, sp
- ldrh r0, [r0]
- cmp r0, 0xAF
- bne _0806D10C
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003226
- adds r0, r1
- ldrb r0, [r0]
- b _0806D114
- .pool
-_0806D10C:
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r0, 24
-_0806D114:
- cmp r0, 0x26
- bne _0806D120
- cmp r5, 0x3
- beq _0806D120
- movs r0, 0
- b _0806D3B0
-_0806D120:
- cmp r5, 0x1
- bne _0806D126
- b _0806D340
-_0806D126:
- cmp r5, 0x1
- bgt _0806D130
- cmp r5, 0
- beq _0806D144
- b _0806D3AE
-_0806D130:
- cmp r5, 0x3
- ble _0806D136
- b _0806D3AE
-_0806D136:
- movs r2, 0
- str r2, [sp, 0x4]
- ldr r3, =gEvolutionTable
- lsls r6, r7, 2
- b _0806D38E
- .pool
-_0806D144:
- mov r0, r8
- movs r1, 0x38
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- mov r0, r8
- movs r1, 0x20
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0x8]
- movs r0, 0
- str r0, [sp, 0x4]
- lsls r6, r7, 2
-_0806D16A:
- ldr r1, =gEvolutionTable
- ldr r0, [sp, 0x4]
- lsls r2, r0, 3
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r2, r0
- adds r0, r1
- ldrh r0, [r0]
- subs r0, 0x1
- adds r3, r1, 0
- adds r4, r2, 0
- cmp r0, 0xE
- bls _0806D186
- b _0806D332
-_0806D186:
- lsls r0, 2
- ldr r1, =_0806D198
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806D198:
- .4byte _0806D1D4
- .4byte _0806D1E6
- .4byte _0806D208
- .4byte _0806D238
- .4byte _0806D332
- .4byte _0806D332
- .4byte _0806D332
- .4byte _0806D248
- .4byte _0806D272
- .4byte _0806D29C
- .4byte _0806D2CA
- .4byte _0806D2EA
- .4byte _0806D30E
- .4byte _0806D332
- .4byte _0806D31E
-_0806D1D4:
- ldr r1, [sp, 0x8]
- cmp r1, 0xDB
- bhi _0806D1DC
- b _0806D332
-_0806D1DC:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r0, r3
- b _0806D228
-_0806D1E6:
- bl RtcCalcLocalTime
- ldr r0, =gLocalTime
- ldrb r0, [r0, 0x2]
- subs r0, 0xC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB
- bls _0806D1FA
- b _0806D332
-_0806D1FA:
- ldr r2, [sp, 0x8]
- cmp r2, 0xDB
- bhi _0806D202
- b _0806D332
-_0806D202:
- b _0806D21E
- .pool
-_0806D208:
- bl RtcCalcLocalTime
- ldr r0, =gLocalTime
- ldrb r0, [r0, 0x2]
- cmp r0, 0xB
- bls _0806D216
- b _0806D332
-_0806D216:
- ldr r0, [sp, 0x8]
- cmp r0, 0xDB
- bhi _0806D21E
- b _0806D332
-_0806D21E:
- ldr r1, =gEvolutionTable
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r0, r1
-_0806D228:
- ldrh r0, [r0, 0x4]
- mov r10, r0
- b _0806D332
- .pool
-_0806D238:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r1, r0, r3
- ldrh r0, [r1, 0x2]
- cmp r0, r9
- bhi _0806D332
- b _0806D32E
-_0806D248:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r5, r0, r3
- ldrh r0, [r5, 0x2]
- cmp r0, r9
- bhi _0806D332
- mov r0, r8
- movs r1, 0x3B
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- mov r0, r8
- movs r1, 0x3C
- movs r2, 0
- bl GetMonData
- cmp r4, r0
- bls _0806D332
- b _0806D2C4
-_0806D272:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r5, r0, r3
- ldrh r0, [r5, 0x2]
- cmp r0, r9
- bhi _0806D332
- mov r0, r8
- movs r1, 0x3B
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- mov r0, r8
- movs r1, 0x3C
- movs r2, 0
- bl GetMonData
- cmp r4, r0
- bne _0806D332
- b _0806D2C4
-_0806D29C:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r5, r0, r3
- ldrh r0, [r5, 0x2]
- cmp r0, r9
- bhi _0806D332
- mov r0, r8
- movs r1, 0x3B
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- mov r0, r8
- movs r1, 0x3C
- movs r2, 0
- bl GetMonData
- cmp r4, r0
- bcs _0806D332
-_0806D2C4:
- ldrh r5, [r5, 0x4]
- mov r10, r5
- b _0806D332
-_0806D2CA:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r4, r0, r3
- ldrh r0, [r4, 0x2]
- cmp r0, r9
- bhi _0806D332
- ldr r0, [sp, 0x10]
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x4
- bhi _0806D332
- b _0806D308
-_0806D2EA:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r4, r0, r3
- ldrh r0, [r4, 0x2]
- cmp r0, r9
- bhi _0806D332
- ldr r0, [sp, 0x10]
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x4
- bls _0806D332
-_0806D308:
- ldrh r4, [r4, 0x4]
- mov r10, r4
- b _0806D332
-_0806D30E:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r1, r0, r3
- ldrh r0, [r1, 0x2]
- cmp r0, r9
- bhi _0806D332
- b _0806D32E
-_0806D31E:
- adds r0, r6, r7
- lsls r0, 3
- adds r0, r4, r0
- adds r1, r0, r3
- ldrh r0, [r1, 0x2]
- ldr r2, [sp, 0xC]
- cmp r0, r2
- bhi _0806D332
-_0806D32E:
- ldrh r1, [r1, 0x4]
- mov r10, r1
-_0806D332:
- ldr r0, [sp, 0x4]
- adds r0, 0x1
- str r0, [sp, 0x4]
- cmp r0, 0x4
- bgt _0806D33E
- b _0806D16A
-_0806D33E:
- b _0806D3AE
-_0806D340:
- lsls r6, r7, 2
- ldr r1, =gEvolutionTable
- adds r0, r6, r7
- lsls r0, 3
- adds r4, r0, r1
- mov r5, sp
- movs r1, 0x4
- str r1, [sp, 0x4]
-_0806D350:
- ldrh r0, [r4]
- cmp r0, 0x5
- beq _0806D370
- cmp r0, 0x6
- bne _0806D374
- ldrh r0, [r4, 0x2]
- ldrh r1, [r5]
- cmp r0, r1
- bne _0806D374
- movs r0, 0
- strh r0, [r5]
- mov r0, r8
- movs r1, 0xC
- mov r2, sp
- bl SetMonData
-_0806D370:
- ldrh r2, [r4, 0x4]
- mov r10, r2
-_0806D374:
- adds r4, 0x8
- ldr r0, [sp, 0x4]
- subs r0, 0x1
- str r0, [sp, 0x4]
- cmp r0, 0
- bge _0806D350
- b _0806D3AE
- .pool
-_0806D388:
- ldrh r1, [r1, 0x4]
- mov r10, r1
- b _0806D3AE
-_0806D38E:
- adds r0, r6, r7
- ldr r1, [sp, 0x4]
- adds r0, r1
- lsls r0, 3
- adds r1, r0, r3
- ldrh r0, [r1]
- cmp r0, 0x7
- bne _0806D3A4
- ldrh r0, [r1, 0x2]
- cmp r0, r9
- beq _0806D388
-_0806D3A4:
- ldr r2, [sp, 0x4]
- adds r2, 0x1
- str r2, [sp, 0x4]
- cmp r2, 0x4
- ble _0806D38E
-_0806D3AE:
- mov r0, r10
-_0806D3B0:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end GetEvolutionTargetSpecies
-
- thumb_func_start HoennPokedexNumToSpecies
-HoennPokedexNumToSpecies: @ 806D3C0
- push {r4,lr}
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- beq _0806D404
- movs r1, 0
- ldr r3, =gSpeciesToHoennPokedexNum
- ldrh r0, [r3]
- cmp r0, r2
- beq _0806D3EC
- movs r4, 0xCD
- lsls r4, 1
-_0806D3D8:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r4
- bhi _0806D3EC
- lsls r0, r1, 1
- adds r0, r3
- ldrh r0, [r0]
- cmp r0, r2
- bne _0806D3D8
-_0806D3EC:
- ldr r0, =0x0000019b
- cmp r1, r0
- beq _0806D404
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r0, 16
- b _0806D406
- .pool
-_0806D404:
- movs r0, 0
-_0806D406:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end HoennPokedexNumToSpecies
-
- thumb_func_start NationalPokedexNumToSpecies
-NationalPokedexNumToSpecies: @ 806D40C
- push {r4,lr}
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- beq _0806D450
- movs r1, 0
- ldr r3, =gSpeciesToNationalPokedexNum
- ldrh r0, [r3]
- cmp r0, r2
- beq _0806D438
- movs r4, 0xCD
- lsls r4, 1
-_0806D424:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r4
- bhi _0806D438
- lsls r0, r1, 1
- adds r0, r3
- ldrh r0, [r0]
- cmp r0, r2
- bne _0806D424
-_0806D438:
- ldr r0, =0x0000019b
- cmp r1, r0
- beq _0806D450
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r0, 16
- b _0806D452
- .pool
-_0806D450:
- movs r0, 0
-_0806D452:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end NationalPokedexNumToSpecies
-
- thumb_func_start NationalToHoennOrder
-NationalToHoennOrder: @ 806D458
- push {r4,lr}
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- beq _0806D49C
- movs r1, 0
- ldr r3, =gHoennToNationalOrder
- ldrh r0, [r3]
- cmp r0, r2
- beq _0806D484
- movs r4, 0xCD
- lsls r4, 1
-_0806D470:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r4
- bhi _0806D484
- lsls r0, r1, 1
- adds r0, r3
- ldrh r0, [r0]
- cmp r0, r2
- bne _0806D470
-_0806D484:
- ldr r0, =0x0000019b
- cmp r1, r0
- beq _0806D49C
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r0, 16
- b _0806D49E
- .pool
-_0806D49C:
- movs r0, 0
-_0806D49E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end NationalToHoennOrder
-
- thumb_func_start SpeciesToNationalPokedexNum
-SpeciesToNationalPokedexNum: @ 806D4A4
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _0806D4C0
- ldr r0, =gSpeciesToNationalPokedexNum
- subs r1, 0x1
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- b _0806D4C2
- .pool
-_0806D4C0:
- movs r0, 0
-_0806D4C2:
- pop {r1}
- bx r1
- thumb_func_end SpeciesToNationalPokedexNum
-
- thumb_func_start SpeciesToHoennPokedexNum
-SpeciesToHoennPokedexNum: @ 806D4C8
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _0806D4E4
- ldr r0, =gSpeciesToHoennPokedexNum
- subs r1, 0x1
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- b _0806D4E6
- .pool
-_0806D4E4:
- movs r0, 0
-_0806D4E6:
- pop {r1}
- bx r1
- thumb_func_end SpeciesToHoennPokedexNum
-
- thumb_func_start HoennToNationalOrder
-HoennToNationalOrder: @ 806D4EC
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _0806D508
- ldr r0, =gHoennToNationalOrder
- subs r1, 0x1
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- b _0806D50A
- .pool
-_0806D508:
- movs r0, 0
-_0806D50A:
- pop {r1}
- bx r1
- thumb_func_end HoennToNationalOrder
-
- thumb_func_start SpeciesToCryId
-SpeciesToCryId: @ 806D510
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- adds r1, r0, 0
- cmp r0, 0xFA
- bls _0806D53E
- ldr r0, =0x00000113
- cmp r1, r0
- bls _0806D53C
- ldr r0, =gSpeciesIdToCryId
- ldr r2, =0xfffffeec
- adds r1, r2
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- b _0806D53E
- .pool
-_0806D53C:
- movs r0, 0xC8
-_0806D53E:
- pop {r1}
- bx r1
- thumb_func_end SpeciesToCryId
-
- thumb_func_start sub_806D544
-sub_806D544: @ 806D544
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- adds r6, r1, 0
- mov r10, r2
- lsls r0, 16
- movs r1, 0x9A
- lsls r1, 17
- cmp r0, r1
- bne _0806D652
- ldr r0, =gUnknown_020244D4
- ldr r1, [r0]
- ldr r0, [r1, 0x4]
- cmp r10, r0
- beq _0806D652
- ldr r0, [r1, 0xC]
- cmp r10, r0
- beq _0806D652
- movs r5, 0
-_0806D570:
- lsls r3, r5, 3
- adds r3, r5
- lsls r3, 2
- ldr r0, =gSpindaSpotGraphics
- adds r4, r3, r0
- ldrb r1, [r4]
- adds r1, 0xF8
- movs r2, 0xF
- adds r0, r6, 0
- ands r0, r2
- adds r1, r0
- lsls r1, 24
- lsrs r1, 24
- mov r12, r1
- ldrb r1, [r4, 0x1]
- adds r1, 0xF8
- movs r0, 0xF0
- ands r0, r6
- lsrs r0, 4
- adds r1, r0
- lsls r1, 24
- lsrs r1, 24
- movs r2, 0
- lsrs r6, 8
- str r6, [sp, 0x4]
- adds r5, 0x1
- str r5, [sp]
- mov r9, r3
-_0806D5A8:
- lsls r0, r2, 1
- add r0, r9
- ldr r3, =gSpindaSpotGraphics + 0x2
- adds r0, r3
- ldrh r3, [r0]
- mov r4, r12
- adds r0, r4, 0
- adds r0, 0x10
- adds r7, r1, 0x1
- adds r2, 0x1
- mov r8, r2
- cmp r4, r0
- bge _0806D640
- lsrs r0, r1, 3
- lsls r6, r0, 8
- movs r0, 0x7
- ands r1, r0
- lsls r5, r1, 2
-_0806D5CC:
- adds r0, r4, 0
- cmp r4, 0
- bge _0806D5D4
- adds r0, r4, 0x7
-_0806D5D4:
- asrs r0, 3
- lsls r2, r0, 5
- add r2, r10
- lsls r0, 3
- subs r0, r4, r0
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- adds r2, r0
- adds r2, r6
- adds r2, r5
- movs r1, 0x1
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _0806D634
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _0806D620
- ldrb r1, [r2]
- movs r0, 0xF0
- ands r0, r1
- subs r0, 0x10
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x20
- bhi _0806D634
- adds r0, r1, 0
- adds r0, 0x40
- b _0806D632
- .pool
-_0806D620:
- ldrb r1, [r2]
- movs r0, 0xF
- ands r0, r1
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bhi _0806D634
- adds r0, r1, 0x4
-_0806D632:
- strb r0, [r2]
-_0806D634:
- asrs r3, 1
- adds r4, 0x1
- mov r0, r12
- adds r0, 0x10
- cmp r4, r0
- blt _0806D5CC
-_0806D640:
- lsls r0, r7, 24
- lsrs r1, r0, 24
- mov r2, r8
- cmp r2, 0xF
- ble _0806D5A8
- ldr r6, [sp, 0x4]
- ldr r5, [sp]
- cmp r5, 0x3
- ble _0806D570
-_0806D652:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_806D544
-
- thumb_func_start DrawSpindaSpots
-@ void DrawSpindaSpots(u16 species, u32 personality, u8 *pixels, u8 isFrontPic)
-DrawSpindaSpots: @ 806D664
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- adds r5, r1, 0
- str r2, [sp]
- lsls r0, 16
- lsls r3, 24
- lsrs r3, 24
- movs r1, 0x9A
- lsls r1, 17
- cmp r0, r1
- bne _0806D766
- cmp r3, 0
- beq _0806D766
- movs r6, 0
-_0806D688:
- lsls r3, r6, 3
- adds r3, r6
- lsls r3, 2
- ldr r0, =gSpindaSpotGraphics
- adds r4, r3, r0
- ldrb r1, [r4]
- adds r1, 0xF8
- movs r2, 0xF
- adds r0, r5, 0
- ands r0, r2
- adds r1, r0
- lsls r1, 24
- lsrs r1, 24
- mov r12, r1
- ldrb r1, [r4, 0x1]
- adds r1, 0xF8
- movs r0, 0xF0
- ands r0, r5
- lsrs r0, 4
- adds r1, r0
- lsls r1, 24
- lsrs r1, 24
- movs r2, 0
- lsrs r5, 8
- str r5, [sp, 0x4]
- adds r6, 0x1
- mov r10, r6
- mov r9, r3
-_0806D6C0:
- lsls r0, r2, 1
- add r0, r9
- ldr r3, =gSpindaSpotGraphics + 0x2
- adds r0, r3
- ldrh r3, [r0]
- mov r4, r12
- adds r0, r4, 0
- adds r0, 0x10
- adds r7, r1, 0x1
- adds r2, 0x1
- mov r8, r2
- cmp r4, r0
- bge _0806D754
- lsrs r0, r1, 3
- lsls r6, r0, 8
- movs r0, 0x7
- ands r1, r0
- lsls r5, r1, 2
-_0806D6E4:
- adds r0, r4, 0
- cmp r4, 0
- bge _0806D6EC
- adds r0, r4, 0x7
-_0806D6EC:
- asrs r0, 3
- lsls r2, r0, 5
- ldr r1, [sp]
- adds r2, r1, r2
- lsls r0, 3
- subs r0, r4, r0
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- adds r2, r0
- adds r2, r6
- adds r2, r5
- movs r1, 0x1
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _0806D748
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _0806D734
- ldrb r1, [r2]
- movs r0, 0xF0
- ands r0, r1
- subs r0, 0x10
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x20
- bhi _0806D748
- adds r0, r1, 0
- adds r0, 0x40
- b _0806D746
- .pool
-_0806D734:
- ldrb r1, [r2]
- movs r0, 0xF
- ands r0, r1
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bhi _0806D748
- adds r0, r1, 0x4
-_0806D746:
- strb r0, [r2]
-_0806D748:
- asrs r3, 1
- adds r4, 0x1
- mov r0, r12
- adds r0, 0x10
- cmp r4, r0
- blt _0806D6E4
-_0806D754:
- lsls r0, r7, 24
- lsrs r1, r0, 24
- mov r2, r8
- cmp r2, 0xF
- ble _0806D6C0
- ldr r5, [sp, 0x4]
- mov r6, r10
- cmp r6, 0x3
- ble _0806D688
-_0806D766:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end DrawSpindaSpots
-
- thumb_func_start sub_806D778
-sub_806D778: @ 806D778
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- adds r5, r0, 0
- lsls r1, 16
- lsrs r7, r1, 16
- lsls r2, 16
- lsrs r2, 16
- mov r8, r2
- ldr r0, =gStringVar1
- mov r9, r0
- adds r0, r5, 0
- movs r1, 0x2
- mov r2, r9
- 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 _0806D7D4
- movs r6, 0xB
- adds r0, r7, 0
- muls r0, r6
- ldr r4, =gSpeciesNames
- adds r0, r4
- mov r1, r9
- bl StringCompare
- cmp r0, 0
- bne _0806D7D4
- mov r2, r8
- muls r2, r6
- adds r2, r4
- adds r0, r5, 0
- movs r1, 0x2
- bl SetMonData
-_0806D7D4:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806D778
-
- thumb_func_start sub_806D7EC
-sub_806D7EC: @ 806D7EC
- push {r4,r5,lr}
- movs r5, 0
- ldr r4, =gLinkPlayers
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r4
- ldrh r0, [r1, 0x18]
- cmp r0, 0x2
- bgt _0806D818
- cmp r0, 0x1
- bge _0806D820
- cmp r0, 0
- beq _0806D81C
- b _0806D822
- .pool
-_0806D818:
- cmp r0, 0x3
- bne _0806D822
-_0806D81C:
- movs r5, 0
- b _0806D822
-_0806D820:
- movs r5, 0x1
-_0806D822:
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_806D7EC
-
- thumb_func_start sub_806D82C
-sub_806D82C: @ 806D82C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r3, 0
- ldr r2, =gLinkPlayers
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r2
- ldrh r0, [r1, 0x18]
- cmp r0, 0x2
- bgt _0806D854
- cmp r0, 0x1
- bge _0806D85C
- cmp r0, 0
- beq _0806D858
- b _0806D85E
- .pool
-_0806D854:
- cmp r0, 0x3
- bne _0806D85E
-_0806D858:
- movs r3, 0
- b _0806D85E
-_0806D85C:
- movs r3, 0x1
-_0806D85E:
- adds r0, r3, 0
- pop {r1}
- bx r1
- thumb_func_end sub_806D82C
-
- thumb_func_start sub_806D864
-sub_806D864: @ 806D864
- push {lr}
- lsls r0, 16
- lsrs r3, r0, 16
- movs r2, 0
- ldr r1, =gLinkPlayers
- b _0806D87C
- .pool
-_0806D874:
- adds r1, 0x1C
- adds r2, 0x1
- cmp r2, 0x3
- bgt _0806D882
-_0806D87C:
- ldrh r0, [r1, 0x18]
- cmp r0, r3
- bne _0806D874
-_0806D882:
- adds r0, r2, 0
- pop {r1}
- bx r1
- thumb_func_end sub_806D864
-
- thumb_func_start GetTrainerEncounterMusicId
-@ u8 GetTrainerEncounterMusicId(u16 trainerOpponentId)
-GetTrainerEncounterMusicId: @ 806D888
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- adds r5, r4, 0
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- beq _0806D8A2
- adds r0, r4, 0
- bl sub_81A9F3C
- b _0806D8CA
-_0806D8A2:
- bl sub_81D5C18
- lsls r0, 24
- cmp r0, 0
- bne _0806D8C4
- ldr r1, =gTrainers
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrb r1, [r0, 0x2]
- movs r0, 0x7F
- ands r0, r1
- b _0806D8CE
- .pool
-_0806D8C4:
- adds r0, r5, 0
- bl sub_81D63C8
-_0806D8CA:
- lsls r0, 24
- lsrs r0, 24
-_0806D8CE:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GetTrainerEncounterMusicId
-
- thumb_func_start nature_stat_mod
-nature_stat_mod: @ 806D8D4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 16
- lsrs r3, r1, 16
- lsls r2, 24
- lsrs r5, r2, 24
- movs r0, 0xFF
- lsls r0, 24
- adds r2, r0
- lsrs r2, 24
- cmp r2, 0x4
- bls _0806D8F2
- adds r0, r3, 0
- b _0806D92E
-_0806D8F2:
- ldr r0, =gNatureStatTable
- lsls r1, r4, 2
- adds r1, r4
- subs r1, 0x1
- adds r1, r5, r1
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 24
- asrs r1, 24
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0806D918
- cmp r1, 0x1
- bne _0806D92C
- movs r0, 0x6E
- b _0806D91A
- .pool
-_0806D918:
- movs r0, 0x5A
-_0806D91A:
- muls r0, r3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r0, 16
- b _0806D92E
-_0806D92C:
- adds r0, r3, 0
-_0806D92E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end nature_stat_mod
-
- thumb_func_start AdjustFriendship
-AdjustFriendship: @ 806D934
- push {r4-r7,lr}
- sub sp, 0x4
- adds r7, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- bl sub_806F104
- lsls r0, 24
- cmp r0, 0
- beq _0806D94A
- b _0806DAC2
-_0806D94A:
- adds r0, r7, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r7, 0
- movs r1, 0xC
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xAF
- bne _0806D9A0
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0806D98C
- ldr r0, =gEnigmaBerries
- ldrb r4, [r0, 0x7]
- b _0806D9A8
- .pool
-_0806D98C:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003226
- adds r0, r1
- ldrb r4, [r0]
- b _0806D9A8
- .pool
-_0806D9A0:
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r4, r0, 24
-_0806D9A8:
- cmp r6, 0
- bne _0806D9AE
- b _0806DAC2
-_0806D9AE:
- movs r0, 0xCE
- lsls r0, 1
- cmp r6, r0
- bne _0806D9B8
- b _0806DAC2
-_0806D9B8:
- movs r6, 0
- adds r0, r7, 0
- movs r1, 0x20
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- mov r1, sp
- strh r0, [r1]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x63
- ble _0806D9D6
- movs r6, 0x1
-_0806D9D6:
- cmp r0, 0xC7
- ble _0806D9E0
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_0806D9E0:
- cmp r5, 0x5
- bne _0806D9F0
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- bne _0806DAC2
-_0806D9F0:
- cmp r5, 0x3
- bne _0806DA20
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0806DAC2
- ldr r2, =gTrainers
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r1, [r0, 0x1]
- adds r0, r1, 0
- subs r0, 0x1F
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _0806DA20
- cmp r1, 0x26
- bne _0806DAC2
-_0806DA20:
- ldr r1, =gUnknown_08329ECE
- lsls r0, r5, 1
- adds r0, r5
- adds r0, r6, r0
- adds r0, r1
- ldrb r2, [r0]
- movs r1, 0
- ldrsb r1, [r0, r1]
- cmp r1, 0
- ble _0806DA46
- cmp r4, 0x1B
- bne _0806DA46
- movs r0, 0x96
- muls r0, r1
- movs r1, 0x64
- bl __divsi3
- lsls r0, 24
- lsrs r2, r0, 24
-_0806DA46:
- lsls r2, 24
- asrs r2, 24
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- adds r0, r2
- mov r1, sp
- strh r0, [r1]
- cmp r2, 0
- ble _0806DA98
- adds r0, r7, 0
- movs r1, 0x26
- movs r2, 0
- bl GetMonData
- cmp r0, 0xB
- bne _0806DA74
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- adds r0, 0x1
- mov r1, sp
- strh r0, [r1]
-_0806DA74:
- adds r0, r7, 0
- movs r1, 0x23
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- bl sav1_map_get_name
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- bne _0806DA98
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- adds r0, 0x1
- mov r1, sp
- strh r0, [r1]
-_0806DA98:
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _0806DAA8
- movs r1, 0
- mov r0, sp
- strh r1, [r0]
-_0806DAA8:
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0xFF
- ble _0806DAB8
- movs r1, 0xFF
- mov r0, sp
- strh r1, [r0]
-_0806DAB8:
- adds r0, r7, 0
- movs r1, 0x20
- mov r2, sp
- bl SetMonData
-_0806DAC2:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end AdjustFriendship
-
- thumb_func_start MonGainEVs
-MonGainEVs: @ 806DADC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- mov r8, r0
- lsls r1, 16
- lsrs r5, r1, 16
- movs r4, 0
- movs r7, 0
- movs r6, 0
-_0806DAF0:
- adds r1, r6, 0
- adds r1, 0x1A
- mov r0, r8
- movs r2, 0
- bl GetMonData
- mov r2, sp
- adds r1, r2, r6
- strb r0, [r1]
- ldrb r0, [r1]
- adds r0, r7, r0
- lsls r0, 16
- lsrs r7, r0, 16
- adds r6, 0x1
- cmp r6, 0x5
- ble _0806DAF0
- movs r6, 0
- b _0806DC72
-_0806DB14:
- mov r0, r8
- movs r1, 0
- bl CheckPartyHasHadPokerus
- lsls r0, 24
- movs r2, 0x1
- cmp r0, 0
- beq _0806DB26
- movs r2, 0x2
-_0806DB26:
- cmp r6, 0x5
- bhi _0806DBC8
- lsls r0, r6, 2
- ldr r1, =_0806DB38
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806DB38:
- .4byte _0806DB50
- .4byte _0806DB64
- .4byte _0806DB78
- .4byte _0806DB8C
- .4byte _0806DBA0
- .4byte _0806DBB4
-_0806DB50:
- ldr r0, =gBaseStats
- lsls r1, r5, 3
- subs r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- lsls r0, 30
- b _0806DBC2
- .pool
-_0806DB64:
- ldr r0, =gBaseStats
- lsls r1, r5, 3
- subs r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- b _0806DBC0
- .pool
-_0806DB78:
- ldr r0, =gBaseStats
- lsls r1, r5, 3
- subs r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- lsls r0, 26
- b _0806DBC2
- .pool
-_0806DB8C:
- ldr r0, =gBaseStats
- lsls r1, r5, 3
- subs r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xA]
- lsrs r0, 6
- b _0806DBC4
- .pool
-_0806DBA0:
- ldr r0, =gBaseStats
- lsls r1, r5, 3
- subs r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xB]
- lsls r0, 30
- b _0806DBC2
- .pool
-_0806DBB4:
- ldr r0, =gBaseStats
- lsls r1, r5, 3
- subs r1, r5
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xB]
-_0806DBC0:
- lsls r0, 28
-_0806DBC2:
- lsrs r0, 30
-_0806DBC4:
- adds r4, r0, 0
- muls r4, r2
-_0806DBC8:
- mov r0, r8
- movs r1, 0xC
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xAF
- bne _0806DC14
- ldr r0, =gMain
- ldr r1, =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0806DC00
- ldr r0, =gEnigmaBerries
- ldrb r0, [r0, 0x7]
- b _0806DC1C
- .pool
-_0806DC00:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r2, =0x00003226
- adds r0, r2
- ldrb r0, [r0]
- b _0806DC1C
- .pool
-_0806DC14:
- bl ItemId_GetHoldEffect
- lsls r0, 24
- lsrs r0, 24
-_0806DC1C:
- cmp r0, 0x18
- bne _0806DC24
- lsls r0, r4, 17
- lsrs r4, r0, 16
-_0806DC24:
- lsls r0, r4, 16
- asrs r2, r0, 16
- adds r1, r7, r2
- movs r0, 0xFF
- lsls r0, 1
- cmp r1, r0
- ble _0806DC3C
- adds r0, r2, r0
- adds r1, r7, r4
- subs r0, r1
- lsls r0, 16
- lsrs r4, r0, 16
-_0806DC3C:
- mov r0, sp
- adds r2, r0, r6
- ldrb r3, [r2]
- lsls r0, r4, 16
- asrs r1, r0, 16
- adds r0, r3, r1
- cmp r0, 0xFF
- ble _0806DC58
- adds r0, r1, 0
- adds r0, 0xFF
- adds r1, r3, r4
- subs r0, r1
- lsls r0, 16
- lsrs r4, r0, 16
-_0806DC58:
- adds r0, r3, r4
- strb r0, [r2]
- adds r0, r7, r4
- lsls r0, 16
- lsrs r7, r0, 16
- adds r1, r6, 0
- adds r1, 0x1A
- mov r0, r8
- bl SetMonData
- adds r6, 0x1
- cmp r6, 0x5
- bgt _0806DC7A
-_0806DC72:
- ldr r0, =0x000001fd
- cmp r7, r0
- bhi _0806DC7A
- b _0806DB14
-_0806DC7A:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end MonGainEVs
-
- thumb_func_start GetMonEVCount
-GetMonEVCount: @ 806DC8C
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r5, 0
- movs r4, 0
-_0806DC94:
- adds r1, r4, 0
- adds r1, 0x1A
- adds r0, r6, 0
- movs r2, 0
- bl GetMonData
- adds r0, r5, r0
- lsls r0, 16
- lsrs r5, r0, 16
- adds r4, 0x1
- cmp r4, 0x5
- ble _0806DC94
- adds r0, r5, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GetMonEVCount
-
- thumb_func_start RandomlyGivePartyPokerus
-RandomlyGivePartyPokerus: @ 806DCB4
- push {r4-r6,lr}
- sub sp, 0x4
- adds r6, r0, 0
- bl Random
- lsls r0, 16
- lsrs r5, r0, 16
- movs r0, 0x80
- lsls r0, 7
- cmp r5, r0
- beq _0806DCDA
- movs r0, 0x80
- lsls r0, 8
- cmp r5, r0
- beq _0806DCDA
- movs r0, 0xC0
- lsls r0, 8
- cmp r5, r0
- bne _0806DD70
-_0806DCDA:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 16
- lsrs r5, r0, 16
- movs r0, 0x64
- muls r0, r5
- adds r4, r6, r0
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- beq _0806DCDA
- adds r0, r4, 0
- movs r1, 0x2D
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- bne _0806DCDA
- ldr r1, =gBitTable
- lsls r0, r5, 2
- adds r0, r1
- ldrb r1, [r0]
- adds r0, r6, 0
- bl CheckPartyHasHadPokerus
- lsls r0, 24
- cmp r0, 0
- bne _0806DD70
- movs r4, 0x7
-_0806DD24:
- bl Random
- lsls r0, 24
- lsrs r0, 24
- mov r1, sp
- strb r0, [r1]
- adds r2, r0, 0
- adds r1, r2, 0
- ands r1, r4
- cmp r1, 0
- beq _0806DD24
- movs r0, 0xF0
- ands r0, r2
- cmp r0, 0
- beq _0806DD46
- mov r0, sp
- strb r1, [r0]
-_0806DD46:
- mov r0, sp
- ldrb r0, [r0]
- lsls r1, r0, 4
- orrs r0, r1
- lsls r0, 24
- lsrs r0, 24
- mov r1, sp
- strb r0, [r1]
- movs r1, 0xF3
- ands r1, r0
- mov r0, sp
- strb r1, [r0]
- adds r1, 0x1
- strb r1, [r0]
- movs r0, 0x64
- muls r0, r5
- adds r0, r6, r0
- movs r1, 0x22
- mov r2, sp
- bl SetMonData
-_0806DD70:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end RandomlyGivePartyPokerus
-
- thumb_func_start CheckPartyPokerus
-CheckPartyPokerus: @ 806DD7C
- push {r4-r7,lr}
- sub sp, 0x4
- adds r7, r0, 0
- lsls r1, 24
- lsrs r4, r1, 24
- movs r3, 0
- movs r6, 0x1
- movs r5, 0
- cmp r4, 0
- beq _0806DDC4
-_0806DD90:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0806DDB8
- movs r0, 0x64
- muls r0, r3
- adds r0, r7, r0
- movs r1, 0x22
- movs r2, 0
- str r3, [sp]
- bl GetMonData
- movs r1, 0xF
- ands r1, r0
- ldr r3, [sp]
- cmp r1, 0
- beq _0806DDB8
- orrs r5, r6
- lsls r0, r5, 24
- lsrs r5, r0, 24
-_0806DDB8:
- adds r3, 0x1
- lsls r6, 1
- lsrs r4, 1
- cmp r4, 0
- bne _0806DD90
- b _0806DDD8
-_0806DDC4:
- adds r0, r7, 0
- movs r1, 0x22
- movs r2, 0
- bl GetMonData
- movs r1, 0xF
- ands r1, r0
- cmp r1, 0
- beq _0806DDD8
- movs r5, 0x1
-_0806DDD8:
- adds r0, r5, 0
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end CheckPartyPokerus
-
- thumb_func_start CheckPartyHasHadPokerus
-CheckPartyHasHadPokerus: @ 806DDE4
- push {r4-r7,lr}
- sub sp, 0x4
- adds r7, r0, 0
- lsls r1, 24
- lsrs r4, r1, 24
- movs r3, 0
- movs r6, 0x1
- movs r5, 0
- cmp r4, 0
- beq _0806DE28
-_0806DDF8:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0806DE1C
- movs r0, 0x64
- muls r0, r3
- adds r0, r7, r0
- movs r1, 0x22
- movs r2, 0
- str r3, [sp]
- bl GetMonData
- ldr r3, [sp]
- cmp r0, 0
- beq _0806DE1C
- orrs r5, r6
- lsls r0, r5, 24
- lsrs r5, r0, 24
-_0806DE1C:
- adds r3, 0x1
- lsls r6, 1
- lsrs r4, 1
- cmp r4, 0
- bne _0806DDF8
- b _0806DE38
-_0806DE28:
- adds r0, r7, 0
- movs r1, 0x22
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- beq _0806DE38
- movs r5, 0x1
-_0806DE38:
- adds r0, r5, 0
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end CheckPartyHasHadPokerus
-
- thumb_func_start UpdatePartyPokerusTime
-UpdatePartyPokerusTime: @ 806DE44
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r7, r0, 16
- movs r6, 0
- mov r5, sp
-_0806DE50:
- 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
- cmp r0, 0
- beq _0806DEB2
- adds r0, r4, 0
- movs r1, 0x22
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- strb r0, [r5]
- movs r1, 0xF
- adds r2, r0, 0
- ands r1, r2
- cmp r1, 0
- beq _0806DEB2
- cmp r1, r7
- bcc _0806DE8A
- cmp r7, 0x4
- bls _0806DE94
-_0806DE8A:
- movs r0, 0xF0
- ands r0, r2
- b _0806DE96
- .pool
-_0806DE94:
- subs r0, r2, r7
-_0806DE96:
- strb r0, [r5]
- ldrb r0, [r5]
- cmp r0, 0
- bne _0806DEA2
- movs r0, 0x10
- strb r0, [r5]
-_0806DEA2:
- movs r0, 0x64
- muls r0, r6
- ldr r1, =gPlayerParty
- adds r0, r1
- movs r1, 0x22
- mov r2, sp
- bl SetMonData
-_0806DEB2:
- adds r6, 0x1
- cmp r6, 0x5
- ble _0806DE50
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end UpdatePartyPokerusTime
-
- thumb_func_start PartySpreadPokerus
-PartySpreadPokerus: @ 806DEC4
- push {r4-r7,lr}
- sub sp, 0x4
- adds r7, r0, 0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _0806DF6A
- movs r5, 0
-_0806DEE0:
- movs r0, 0x64
- adds r6, r5, 0
- muls r6, r0
- adds r4, r7, r6
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- beq _0806DF64
- adds r0, r4, 0
- movs r1, 0x22
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r1, r0, 24
- mov r0, sp
- strb r1, [r0]
- cmp r1, 0
- beq _0806DF64
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0
- beq _0806DF64
- cmp r5, 0
- beq _0806DF3A
- adds r0, r6, 0
- subs r0, 0x64
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0x22
- movs r2, 0
- bl GetMonData
- movs r1, 0xF0
- ands r1, r0
- cmp r1, 0
- bne _0806DF3A
- adds r0, r4, 0
- movs r1, 0x22
- mov r2, sp
- bl SetMonData
-_0806DF3A:
- cmp r5, 0x5
- beq _0806DF64
- movs r0, 0x64
- muls r0, r5
- adds r0, 0x64
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0x22
- movs r2, 0
- bl GetMonData
- movs r1, 0xF0
- ands r1, r0
- cmp r1, 0
- bne _0806DF64
- adds r0, r4, 0
- movs r1, 0x22
- mov r2, sp
- bl SetMonData
- adds r5, 0x1
-_0806DF64:
- adds r5, 0x1
- cmp r5, 0x5
- ble _0806DEE0
-_0806DF6A:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end PartySpreadPokerus
-
- thumb_func_start TryIncrementMonLevel
-TryIncrementMonLevel: @ 806DF74
- push {r4-r6,lr}
- sub sp, 0x8
- adds r5, r0, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0x38
- movs r2, 0
- bl GetMonData
- adds r0, 0x1
- mov r1, sp
- strb r0, [r1]
- adds r0, r5, 0
- movs r1, 0x19
- movs r2, 0
- bl GetMonData
- str r0, [sp, 0x4]
- ldr r6, =gExperienceTables
- ldr r2, =gBaseStats
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x13]
- movs r1, 0xCA
- lsls r1, 1
- adds r4, r2, 0
- muls r4, r1
- movs r2, 0xC8
- lsls r2, 1
- adds r1, r6, r2
- adds r1, r4, r1
- ldr r1, [r1]
- cmp r0, r1
- bls _0806DFD4
- str r1, [sp, 0x4]
- add r2, sp, 0x4
- adds r0, r5, 0
- movs r1, 0x19
- bl SetMonData
-_0806DFD4:
- mov r0, sp
- ldrb r0, [r0]
- cmp r0, 0x64
- bhi _0806DFEA
- lsls r0, 2
- adds r0, r4
- adds r0, r6
- ldr r1, [sp, 0x4]
- ldr r0, [r0]
- cmp r1, r0
- bcs _0806DFF8
-_0806DFEA:
- movs r0, 0
- b _0806E004
- .pool
-_0806DFF8:
- adds r0, r5, 0
- movs r1, 0x38
- mov r2, sp
- bl SetMonData
- movs r0, 0x1
-_0806E004:
- add sp, 0x8
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end TryIncrementMonLevel
-
- thumb_func_start CanMonLearnTMHM
-CanMonLearnTMHM: @ 806E00C
- push {r4,r5,lr}
- lsls r1, 24
- lsrs r4, r1, 24
- adds r5, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- adds r3, r1, 0
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- bne _0806E02E
- movs r0, 0
- b _0806E05A
-_0806E02E:
- cmp r4, 0x1F
- bls _0806E04C
- adds r0, r4, 0
- subs r0, 0x20
- movs r2, 0x1
- lsls r2, r0
- ldr r0, =gTMHMLearnsets
- lsls r1, 3
- adds r0, 0x4
- adds r1, r0
- ldr r0, [r1]
- ands r0, r2
- b _0806E05A
- .pool
-_0806E04C:
- movs r1, 0x1
- lsls r1, r5
- ldr r2, =gTMHMLearnsets
- lsls r0, r3, 3
- adds r0, r2
- ldr r0, [r0]
- ands r0, r1
-_0806E05A:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end CanMonLearnTMHM
-
- thumb_func_start CanSpeciesLearnTMHM
-CanSpeciesLearnTMHM: @ 806E064
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- adds r4, r3, 0
- lsls r1, 24
- lsrs r1, 24
- adds r2, r1, 0
- movs r0, 0xCE
- lsls r0, 1
- cmp r3, r0
- bne _0806E07E
- movs r0, 0
- b _0806E0AA
-_0806E07E:
- cmp r1, 0x1F
- bls _0806E09C
- adds r0, r1, 0
- subs r0, 0x20
- movs r2, 0x1
- lsls r2, r0
- ldr r0, =gTMHMLearnsets
- lsls r1, r3, 3
- adds r0, 0x4
- adds r1, r0
- ldr r0, [r1]
- ands r0, r2
- b _0806E0AA
- .pool
-_0806E09C:
- movs r1, 0x1
- lsls r1, r2
- ldr r2, =gTMHMLearnsets
- lsls r0, r4, 3
- adds r0, r2
- ldr r0, [r0]
- ands r0, r1
-_0806E0AA:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end CanSpeciesLearnTMHM
-
- thumb_func_start GetMoveRelearnerMoves
-GetMoveRelearnerMoves: @ 806E0B4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x18
- adds r6, r0, 0
- str r1, [sp, 0x8]
- movs r0, 0
- mov r10, r0
- adds r0, r6, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r7, r0, 16
- adds r0, r6, 0
- movs r1, 0x38
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0xC]
- movs r5, 0
- mov r4, sp
-_0806E0EA:
- adds r1, r5, 0
- adds r1, 0xD
- adds r0, r6, 0
- movs r2, 0
- bl GetMonData
- strh r0, [r4]
- adds r4, 0x2
- adds r5, 0x1
- cmp r5, 0x3
- ble _0806E0EA
- movs r5, 0
- ldr r6, =gLevelUpLearnsets
- lsls r1, r7, 2
- adds r2, r1, r6
- ldr r3, [r2]
- ldrh r0, [r3]
- ldr r4, =0x0000ffff
- str r1, [sp, 0x14]
- cmp r0, r4
- beq _0806E1E4
- mov r9, r2
- str r3, [sp, 0x10]
-_0806E118:
- lsls r2, r5, 1
- ldr r1, [sp, 0x10]
- adds r0, r2, r1
- ldrh r3, [r0]
- movs r0, 0xFE
- lsls r0, 8
- ands r0, r3
- ldr r4, [sp, 0xC]
- lsls r1, r4, 9
- adds r7, r2, 0
- adds r5, 0x1
- mov r12, r5
- cmp r0, r1
- bgt _0806E1CE
- movs r4, 0
- mov r0, sp
- ldrh r1, [r0]
- ldr r0, =0x000001ff
- ands r0, r3
- cmp r1, r0
- beq _0806E168
- ldr r0, [sp, 0x14]
- ldr r1, =gLevelUpLearnsets
- adds r6, r0, r1
- ldr r2, =0x000001ff
- mov r8, r2
- mov r3, sp
- adds r5, r7, 0
-_0806E150:
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- bgt _0806E168
- ldr r0, [r6]
- adds r0, r5, r0
- ldrh r1, [r0]
- ldrh r2, [r3]
- mov r0, r8
- ands r0, r1
- cmp r2, r0
- bne _0806E150
-_0806E168:
- cmp r4, 0x4
- bne _0806E1CE
- movs r4, 0
- cmp r4, r10
- bge _0806E1AC
- mov r1, r9
- ldr r0, [r1]
- adds r0, r7, r0
- ldrh r1, [r0]
- ldr r0, [sp, 0x8]
- ldrh r2, [r0]
- ldr r0, =0x000001ff
- ands r0, r1
- cmp r2, r0
- beq _0806E1AC
- ldr r1, [sp, 0x14]
- ldr r2, =gLevelUpLearnsets
- adds r6, r1, r2
- ldr r0, =0x000001ff
- mov r8, r0
- ldr r3, [sp, 0x8]
- adds r5, r7, 0
-_0806E194:
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, r10
- bge _0806E1AC
- ldr r0, [r6]
- adds r0, r5, r0
- ldrh r1, [r0]
- ldrh r2, [r3]
- mov r0, r8
- ands r0, r1
- cmp r2, r0
- bne _0806E194
-_0806E1AC:
- cmp r4, r10
- bne _0806E1CE
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- lsls r2, r4, 1
- ldr r1, [sp, 0x8]
- adds r2, r1
- mov r4, r9
- ldr r0, [r4]
- adds r0, r7, r0
- ldrh r1, [r0]
- ldr r0, =0x000001ff
- ands r0, r1
- strh r0, [r2]
-_0806E1CE:
- mov r5, r12
- cmp r5, 0x13
- bgt _0806E1E4
- mov r1, r9
- ldr r0, [r1]
- lsls r1, r5, 1
- adds r1, r0
- ldrh r0, [r1]
- ldr r2, =0x0000ffff
- cmp r0, r2
- bne _0806E118
-_0806E1E4:
- mov r0, r10
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetMoveRelearnerMoves
-
- thumb_func_start GetLevelUpMovesBySpecies
-GetLevelUpMovesBySpecies: @ 806E204
- push {r4-r7,lr}
- adds r6, r1, 0
- lsls r0, 16
- movs r5, 0
- movs r4, 0
- ldr r1, =gLevelUpLearnsets
- lsrs r0, 14
- adds r0, r1
- ldr r2, [r0]
- ldrh r0, [r2]
- ldr r1, =0x0000ffff
- cmp r0, r1
- beq _0806E248
- ldr r0, =0x000001ff
- mov r12, r0
- adds r7, r1, 0
- adds r3, r2, 0
-_0806E226:
- adds r1, r5, 0
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 1
- adds r1, r6
- ldrh r2, [r3]
- mov r0, r12
- ands r0, r2
- strh r0, [r1]
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x13
- bgt _0806E248
- ldrh r0, [r3]
- cmp r0, r7
- bne _0806E226
-_0806E248:
- adds r0, r5, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetLevelUpMovesBySpecies
- thumb_func_start GetNumberOfRelearnableMoves
-GetNumberOfRelearnableMoves: @ 806E25C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x3C
- adds r6, r0, 0
- movs r0, 0
- mov r10, r0
- adds r0, r6, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r6, 0
- movs r1, 0x38
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x30]
- movs r0, 0xCE
- lsls r0, 1
- cmp r4, r0
- bne _0806E298
- movs r0, 0
- b _0806E3A2
-_0806E298:
- movs r5, 0
- lsls r4, 2
- str r4, [sp, 0x38]
- mov r4, sp
-_0806E2A0:
- adds r1, r5, 0
- adds r1, 0xD
- adds r0, r6, 0
- movs r2, 0
- bl GetMonData
- strh r0, [r4]
- adds r4, 0x2
- adds r5, 0x1
- cmp r5, 0x3
- ble _0806E2A0
- movs r5, 0
- ldr r3, =gLevelUpLearnsets
- ldr r2, [sp, 0x38]
- adds r1, r2, r3
- ldr r0, [r1]
- ldrh r0, [r0]
- ldr r2, =0x0000ffff
- cmp r0, r2
- beq _0806E3A0
- mov r9, r1
- mov r4, sp
- adds r4, 0x8
- str r4, [sp, 0x34]
-_0806E2D0:
- mov r1, r9
- ldr r0, [r1]
- lsls r2, r5, 1
- adds r0, r2, r0
- ldrh r3, [r0]
- movs r0, 0xFE
- lsls r0, 8
- ands r0, r3
- ldr r4, [sp, 0x30]
- lsls r1, r4, 9
- adds r7, r2, 0
- adds r5, 0x1
- mov r12, r5
- cmp r0, r1
- bgt _0806E38A
- movs r4, 0
- mov r0, sp
- ldrh r1, [r0]
- ldr r0, =0x000001ff
- ands r0, r3
- cmp r1, r0
- beq _0806E322
- ldr r0, [sp, 0x38]
- ldr r1, =gLevelUpLearnsets
- adds r6, r0, r1
- ldr r2, =0x000001ff
- mov r8, r2
- mov r3, sp
- adds r5, r7, 0
-_0806E30A:
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- bgt _0806E322
- ldr r0, [r6]
- adds r0, r5, r0
- ldrh r1, [r0]
- ldrh r2, [r3]
- mov r0, r8
- ands r0, r1
- cmp r2, r0
- bne _0806E30A
-_0806E322:
- cmp r4, 0x4
- bne _0806E38A
- movs r4, 0
- cmp r4, r10
- bge _0806E368
- mov r1, r9
- ldr r0, [r1]
- adds r0, r7, r0
- ldrh r1, [r0]
- ldr r0, [sp, 0x34]
- ldrh r2, [r0]
- ldr r0, =0x000001ff
- ands r0, r1
- add r1, sp, 0x8
- cmp r2, r0
- beq _0806E368
- ldr r2, [sp, 0x38]
- ldr r0, =gLevelUpLearnsets
- adds r6, r2, r0
- ldr r2, =0x000001ff
- mov r8, r2
- adds r3, r1, 0
- adds r5, r7, 0
-_0806E350:
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, r10
- bge _0806E368
- ldr r0, [r6]
- adds r0, r5, r0
- ldrh r1, [r0]
- ldrh r2, [r3]
- mov r0, r8
- ands r0, r1
- cmp r2, r0
- bne _0806E350
-_0806E368:
- cmp r4, r10
- bne _0806E38A
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- lsls r2, r4, 1
- ldr r4, [sp, 0x34]
- adds r2, r4, r2
- mov r1, r9
- ldr r0, [r1]
- adds r0, r7, r0
- ldrh r1, [r0]
- ldr r0, =0x000001ff
- ands r0, r1
- strh r0, [r2]
-_0806E38A:
- mov r5, r12
- cmp r5, 0x13
- bgt _0806E3A0
- mov r2, r9
- ldr r0, [r2]
- lsls r1, r5, 1
- adds r1, r0
- ldrh r0, [r1]
- ldr r4, =0x0000ffff
- cmp r0, r4
- bne _0806E2D0
-_0806E3A0:
- mov r0, r10
-_0806E3A2:
- add sp, 0x3C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetNumberOfRelearnableMoves
-
- thumb_func_start SpeciesToPokedexNum
-SpeciesToPokedexNum: @ 806E3C0
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- bl IsNationalPokedexEnabled
- cmp r0, 0
- beq _0806E3DA
- adds r0, r4, 0
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- b _0806E3F2
-_0806E3DA:
- adds r0, r4, 0
- bl SpeciesToHoennPokedexNum
- adds r4, r0, 0
- cmp r4, 0xCA
- bls _0806E3F0
- ldr r0, =0x0000ffff
- b _0806E3F2
- .pool
-_0806E3F0:
- adds r0, r4, 0
-_0806E3F2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end SpeciesToPokedexNum
-
- thumb_func_start sub_806E3F8
-sub_806E3F8: @ 806E3F8
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl SpeciesToHoennPokedexNum
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xCA
- bhi _0806E40E
- movs r0, 0x1
- b _0806E410
-_0806E40E:
- movs r0, 0
-_0806E410:
- pop {r1}
- bx r1
- thumb_func_end sub_806E3F8
-
- thumb_func_start sub_806E414
-sub_806E414: @ 806E414
- push {lr}
- ldr r1, =gUnknown_020244E4
- movs r2, 0
- adds r0, r1, 0x3
-_0806E41C:
- strb r2, [r0]
- subs r0, 0x1
- cmp r0, r1
- bge _0806E41C
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806E414
-
- thumb_func_start song_id_for_battle
-song_id_for_battle: @ 806E42C
- push {lr}
- ldr r0, =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 5
- ands r0, r1
- cmp r0, 0
- beq _0806E448
- movs r0, 0xF0
- lsls r0, 1
- b _0806E646
- .pool
-_0806E448:
- movs r0, 0x80
- lsls r0, 7
- ands r0, r1
- cmp r0, 0
- beq _0806E45C
- ldr r0, =0x000001df
- b _0806E646
- .pool
-_0806E45C:
- ldr r0, =0x02000002
- ands r0, r1
- cmp r0, 0
- beq _0806E466
- b _0806E63C
-_0806E466:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- bne _0806E470
- b _0806E642
-_0806E470:
- ldr r0, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0806E494
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r0, [r0]
- bl sub_8162BD8
- lsls r0, 24
- lsrs r0, 24
- b _0806E4B2
- .pool
-_0806E494:
- movs r0, 0x80
- lsls r0, 19
- ands r1, r0
- cmp r1, 0
- beq _0806E4A2
- movs r0, 0xA
- b _0806E4B2
-_0806E4A2:
- 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]
-_0806E4B2:
- subs r0, 0x3
- cmp r0, 0x3D
- bls _0806E4BA
- b _0806E63C
-_0806E4BA:
- lsls r0, 2
- ldr r1, =_0806E4D0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0806E4D0:
- .4byte _0806E5D0
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E5D0
- .4byte _0806E63C
- .4byte _0806E5D0
- .4byte _0806E63C
- .4byte _0806E5C8
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E62C
- .4byte _0806E5D8
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E5E0
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E5D0
- .4byte _0806E5E6
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E5C8
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E63C
- .4byte _0806E632
- .4byte _0806E632
- .4byte _0806E632
- .4byte _0806E632
- .4byte _0806E632
- .4byte _0806E632
- .4byte _0806E632
-_0806E5C8:
- ldr r0, =0x000001e3
- b _0806E646
- .pool
-_0806E5D0:
- ldr r0, =0x000001db
- b _0806E646
- .pool
-_0806E5D8:
- ldr r0, =0x000001dd
- b _0806E646
- .pool
-_0806E5E0:
- movs r0, 0xEF
- lsls r0, 1
- b _0806E646
-_0806E5E6:
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x003f0100
- ands r0, r1
- cmp r0, 0
- beq _0806E604
-_0806E5F2:
- ldr r0, =0x000001e1
- b _0806E646
- .pool
-_0806E604:
- ldr r0, =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- ldr r1, =gTrainers + 0x4 @ name offset
- adds r0, r1
- ldr r1, =gUnknown_085CCB98
- bl StringCompare
- cmp r0, 0
- beq _0806E63C
- b _0806E5F2
- .pool
-_0806E62C:
- movs r0, 0xF1
- lsls r0, 1
- b _0806E646
-_0806E632:
- ldr r0, =0x000001d7
- b _0806E646
- .pool
-_0806E63C:
- movs r0, 0xEE
- lsls r0, 1
- b _0806E646
-_0806E642:
- movs r0, 0xED
- lsls r0, 1
-_0806E646:
- pop {r1}
- bx r1
- thumb_func_end song_id_for_battle
-
- thumb_func_start sub_806E64C
-sub_806E64C: @ 806E64C
- push {lr}
- bl ResetMapMusic
- bl m4aMPlayAllStop
- bl song_id_for_battle
- lsls r0, 16
- lsrs r0, 16
- bl PlayBGM
- pop {r0}
- bx r0
- thumb_func_end sub_806E64C
-
- thumb_func_start PlayNewMapMusic__default_for_battle
-PlayNewMapMusic__default_for_battle: @ 806E668
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- bl ResetMapMusic
- bl m4aMPlayAllStop
- cmp r4, 0
- beq _0806E682
- adds r0, r4, 0
- bl PlayNewMapMusic
- b _0806E68E
-_0806E682:
- bl song_id_for_battle
- lsls r0, 16
- lsrs r0, 16
- bl PlayNewMapMusic
-_0806E68E:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end PlayNewMapMusic__default_for_battle
-
- thumb_func_start sub_806E694
-sub_806E694: @ 806E694
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- bl ResetMapMusic
- bl m4aMPlayAllStop
- ldr r0, =sub_806E6CC
- 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
- strh r4, [r1, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806E694
-
- thumb_func_start sub_806E6CC
-sub_806E6CC: @ 806E6CC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r1, r0, r1
- movs r2, 0x8
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _0806E6F0
- ldrh r0, [r1, 0x8]
- bl PlayNewMapMusic
- b _0806E6FC
- .pool
-_0806E6F0:
- bl song_id_for_battle
- lsls r0, 16
- lsrs r0, 16
- bl PlayNewMapMusic
-_0806E6FC:
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_806E6CC
-
- thumb_func_start pokemon_get_pal
-pokemon_get_pal: @ 806E708
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0x1
- movs r2, 0
- bl GetMonData
- adds r6, r0, 0
- adds r0, r5, 0
- movs r1, 0
- movs r2, 0
- bl GetMonData
- adds r2, r0, 0
- adds r0, r4, 0
- adds r1, r6, 0
- bl species_and_otid_get_pal
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end pokemon_get_pal
-
- thumb_func_start species_and_otid_get_pal
-species_and_otid_get_pal: @ 806E740
- push {r4,r5,lr}
- adds r3, r2, 0
- lsls r0, 16
- lsrs r4, r0, 16
- adds r5, r4, 0
- movs r0, 0xCE
- lsls r0, 1
- cmp r4, r0
- bls _0806E75C
- ldr r0, =gMonPaletteTable
- ldr r0, [r0]
- b _0806E788
- .pool
-_0806E75C:
- lsrs r0, r1, 16
- ldr r2, =0x0000ffff
- ands r1, r2
- eors r0, r1
- lsrs r1, r3, 16
- eors r0, r1
- ands r3, r2
- eors r0, r3
- cmp r0, 0x7
- bls _0806E780
- ldr r0, =gMonPaletteTable
- lsls r1, r4, 3
- b _0806E784
- .pool
-_0806E780:
- ldr r0, =gMonShinyPaletteTable
- lsls r1, r5, 3
-_0806E784:
- adds r1, r0
- ldr r0, [r1]
-_0806E788:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end species_and_otid_get_pal
-
- thumb_func_start sub_806E794
-sub_806E794: @ 806E794
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0x1
- movs r2, 0
- bl GetMonData
- adds r6, r0, 0
- adds r0, r5, 0
- movs r1, 0
- movs r2, 0
- bl GetMonData
- adds r2, r0, 0
- adds r0, r4, 0
- adds r1, r6, 0
- bl sub_806E7CC
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_806E794
-
- thumb_func_start sub_806E7CC
-sub_806E7CC: @ 806E7CC
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- lsrs r0, r1, 16
- ldr r3, =0x0000ffff
- ands r1, r3
- eors r0, r1
- lsrs r1, r2, 16
- eors r0, r1
- ands r2, r3
- eors r0, r2
- cmp r0, 0x7
- bls _0806E7F4
- lsls r0, r4, 3
- ldr r1, =gMonPaletteTable
- b _0806E7F8
- .pool
-_0806E7F4:
- lsls r0, r4, 3
- ldr r1, =gMonShinyPaletteTable
-_0806E7F8:
- adds r0, r1
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806E7CC
-
- thumb_func_start IsHMMove2
-IsHMMove2: @ 806E804
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r2, =gHMMoves
- ldrh r0, [r2]
- ldr r1, =0x0000ffff
- cmp r0, r1
- beq _0806E836
- adds r4, r1, 0
- adds r1, r2, 0
-_0806E818:
- ldrh r0, [r2]
- adds r1, 0x2
- adds r2, 0x2
- cmp r0, r3
- bne _0806E830
- movs r0, 0x1
- b _0806E838
- .pool
-_0806E830:
- ldrh r0, [r1]
- cmp r0, r4
- bne _0806E818
-_0806E836:
- movs r0, 0
-_0806E838:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end IsHMMove2
-
- thumb_func_start sub_806E840
-sub_806E840: @ 806E840
- lsls r0, 16
- lsrs r0, 16
- ldr r2, =gBaseStats
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0x19]
- lsrs r0, 7
- bx lr
- .pool
- thumb_func_end sub_806E840
-
- thumb_func_start GetMonFlavourRelation
-GetMonFlavourRelation: @ 806E858
- push {r4,lr}
- lsls r4, r1, 24
- lsrs r4, 24
- bl GetNature
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gPokeblockFlavorCompatibilityTable
- lsls r1, r0, 2
- adds r1, r0
- adds r1, r4
- adds r1, r2
- movs r0, 0
- ldrsb r0, [r1, r0]
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetMonFlavourRelation
-
- thumb_func_start GetFlavourRelationByPersonality
-GetFlavourRelationByPersonality: @ 806E880
- push {r4,lr}
- lsls r4, r1, 24
- lsrs r4, 24
- bl GetNatureFromPersonality
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gPokeblockFlavorCompatibilityTable
- lsls r1, r0, 2
- adds r1, r0
- adds r1, r4
- adds r1, r2
- movs r0, 0
- ldrsb r0, [r1, r0]
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetFlavourRelationByPersonality
-
- thumb_func_start IsTradedMon
-IsTradedMon: @ 806E8A8
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- movs r1, 0x7
- mov r2, sp
- bl GetMonData
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0
- bl GetMonData
- mov r1, sp
- bl IsOtherTrainer
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end IsTradedMon
-
- thumb_func_start IsOtherTrainer
-IsOtherTrainer: @ 806E8D4
- push {r4,r5,lr}
- adds r5, r1, 0
- ldr r1, =gSaveBlock2Ptr
- ldr r3, [r1]
- ldrb r2, [r3, 0xA]
- ldrb r1, [r3, 0xB]
- lsls r1, 8
- orrs r2, r1
- ldrb r1, [r3, 0xC]
- lsls r1, 16
- orrs r2, r1
- ldrb r1, [r3, 0xD]
- lsls r1, 24
- orrs r2, r1
- cmp r0, r2
- bne _0806E91C
- movs r4, 0
- ldrb r0, [r5]
- cmp r0, 0xFF
- beq _0806E912
- adds r2, r5, 0
-_0806E8FE:
- adds r1, r3, r4
- ldrb r0, [r2]
- ldrb r1, [r1]
- cmp r0, r1
- bne _0806E91C
- adds r2, 0x1
- adds r4, 0x1
- ldrb r0, [r2]
- cmp r0, 0xFF
- bne _0806E8FE
-_0806E912:
- movs r0, 0
- b _0806E91E
- .pool
-_0806E91C:
- movs r0, 0x1
-_0806E91E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end IsOtherTrainer
-
- thumb_func_start MonRestorePP
-MonRestorePP: @ 806E924
- push {lr}
- bl BoxMonRestorePP
- pop {r0}
- bx r0
- thumb_func_end MonRestorePP
-
- thumb_func_start BoxMonRestorePP
-BoxMonRestorePP: @ 806E930
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- movs r6, 0
-_0806E938:
- adds r4, r6, 0
- adds r4, 0xD
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0
- bl GetBoxMonData
- cmp r0, 0
- beq _0806E984
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0
- bl GetBoxMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0x15
- movs r2, 0
- bl GetBoxMonData
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r2, r6, 24
- lsrs r2, 24
- adds r0, r4, 0
- bl CalculatePPWithBonus
- mov r1, sp
- strb r0, [r1]
- adds r1, r6, 0
- adds r1, 0x11
- adds r0, r5, 0
- mov r2, sp
- bl SetBoxMonData
-_0806E984:
- adds r6, 0x1
- cmp r6, 0x3
- ble _0806E938
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end BoxMonRestorePP
-
- thumb_func_start sub_806E994
-sub_806E994: @ 806E994
- push {r4,r5,lr}
- ldr r2, =gLastUsedAbility
- ldr r5, =gBattleStruct
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0xB0
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r4, =gBattleTextBuff1
- movs r0, 0xFD
- strb r0, [r4]
- movs r0, 0x4
- strb r0, [r4, 0x1]
- adds r1, 0x49
- ldrb r0, [r1]
- strb r0, [r4, 0x2]
- movs r0, 0xFF
- strb r0, [r4, 0x4]
- ldrb r0, [r1]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0806E9E8
- ldr r1, =gBattlePartyID
- ldr r0, [r5]
- adds r0, 0x49
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrb r0, [r0]
- bl pokemon_order_func
- b _0806E9F6
- .pool
-_0806E9E8:
- ldr r1, =gBattlePartyID
- ldr r0, [r5]
- adds r0, 0x49
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
-_0806E9F6:
- strb r0, [r4, 0x3]
- ldr r4, =gBattleTextBuff2
- movs r0, 0xFD
- strb r0, [r4]
- movs r0, 0x4
- strb r0, [r4, 0x1]
- ldr r1, =gUnknown_020244B8
- ldrb r0, [r1]
- strb r0, [r4, 0x2]
- ldr r2, =gBattlePartyID
- ldrb r0, [r1]
- lsls r0, 1
- adds r0, r2
- ldrb r0, [r0]
- bl pokemon_order_func
- strb r0, [r4, 0x3]
- movs r0, 0xFF
- strb r0, [r4, 0x4]
- ldr r0, =gUnknown_085CB2A1
- ldr r1, =gStringVar4
- bl StrCpyDecodeBattle
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806E994
-
- thumb_func_start GetWildMonTableIdInAlteringCave
-GetWildMonTableIdInAlteringCave: @ 806EA40
- push {lr}
- lsls r0, 16
- lsrs r3, r0, 16
- movs r1, 0
- ldr r2, =gUnknown_08329EFC
-_0806EA4A:
- ldrh r0, [r2]
- cmp r0, r3
- bne _0806EA58
- adds r0, r1, 0
- b _0806EA62
- .pool
-_0806EA58:
- adds r2, 0x4
- adds r1, 0x1
- cmp r1, 0x8
- ble _0806EA4A
- movs r0, 0
-_0806EA62:
- pop {r1}
- bx r1
- thumb_func_end GetWildMonTableIdInAlteringCave
-
- thumb_func_start SetWildMonHeldItem
-SetWildMonHeldItem: @ 806EA68
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x00302008
- ands r0, r1
- cmp r0, 0
- beq _0806EA7C
- b _0806EB90
-_0806EA7C:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, =gEnemyParty
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- movs r0, 0x2D
- mov r8, r0
- movs r7, 0x5F
- ldr r5, =gPlayerParty
- adds r0, r5, 0
- movs r1, 0x6
- movs r2, 0
- bl GetMonData
- cmp r0, 0
- bne _0806EAC6
- adds r0, r5, 0
- bl GetMonAbility
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE
- bne _0806EAC6
- movs r2, 0x14
- mov r8, r2
- movs r7, 0x50
-_0806EAC6:
- ldr r0, =gMapHeader
- ldrh r1, [r0, 0x12]
- movs r0, 0xD2
- lsls r0, 1
- cmp r1, r0
- bne _0806EB2C
- adds r0, r4, 0
- bl GetWildMonTableIdInAlteringCave
- adds r2, r0, 0
- cmp r2, 0
- beq _0806EB04
- cmp r6, r7
- bcc _0806EB90
- ldr r0, =gEnemyParty
- lsls r2, 2
- ldr r1, =gAlteringCaveWildMonHeldItems
- b _0806EB6C
- .pool
-_0806EB04:
- cmp r6, r8
- bcc _0806EB90
- cmp r6, r7
- bcs _0806EB18
- ldr r0, =gEnemyParty
- lsls r2, r4, 3
- b _0806EB66
- .pool
-_0806EB18:
- ldr r0, =gEnemyParty
- lsls r2, r4, 3
- subs r2, r4
- lsls r2, 2
- ldr r1, =gBaseStats + 0xe @ item 2 offset
- b _0806EB6C
- .pool
-_0806EB2C:
- ldr r0, =gBaseStats
- mov r12, r0
- lsls r0, r4, 3
- subs r1, r0, r4
- lsls r5, r1, 2
- mov r2, r12
- adds r1, r5, r2
- ldrh r3, [r1, 0xC]
- adds r2, r0, 0
- ldrh r1, [r1, 0xE]
- cmp r3, r1
- bne _0806EB5C
- cmp r3, 0
- beq _0806EB5C
- ldr r0, =gEnemyParty
- mov r2, r12
- adds r2, 0xC
- adds r2, r5, r2
- b _0806EB6E
- .pool
-_0806EB5C:
- cmp r6, r8
- bcc _0806EB90
- cmp r6, r7
- bcs _0806EB80
- ldr r0, =gEnemyParty
-_0806EB66:
- subs r2, r4
- lsls r2, 2
- ldr r1, =gBaseStats + 0xc @ item 1 offset
-_0806EB6C:
- adds r2, r1
-_0806EB6E:
- movs r1, 0xC
- bl SetMonData
- b _0806EB90
- .pool
-_0806EB80:
- ldr r0, =gEnemyParty
- subs r2, r4
- lsls r2, 2
- ldr r1, =gBaseStats + 0xe @ item 2 offset
- adds r2, r1
- movs r1, 0xC
- bl SetMonData
-_0806EB90:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetWildMonHeldItem
-
- thumb_func_start IsMonShiny
-IsMonShiny: @ 806EBA4
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x1
- movs r2, 0
- bl GetMonData
- adds r5, r0, 0
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0
- bl GetMonData
- adds r1, r0, 0
- adds r0, r5, 0
- bl IsShinyOtIdPersonality
- lsls r0, 24
- lsrs r0, 24
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end IsMonShiny
-
- thumb_func_start IsShinyOtIdPersonality
-IsShinyOtIdPersonality: @ 806EBD0
- push {r4,lr}
- movs r4, 0
- lsrs r2, r0, 16
- ldr r3, =0x0000ffff
- ands r0, r3
- eors r2, r0
- lsrs r0, r1, 16
- eors r2, r0
- ands r1, r3
- eors r2, r1
- cmp r2, 0x7
- bhi _0806EBEA
- movs r4, 0x1
-_0806EBEA:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end IsShinyOtIdPersonality
-
- thumb_func_start sub_806EBF8
-sub_806EBF8: @ 806EBF8
- push {r4,lr}
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 15
- ands r0, r1
- cmp r0, 0
- beq _0806EC3C
- ldr r2, =gUnknown_02038BCE
- ldrh r1, [r2]
- ldr r0, =0x00000c03
- cmp r1, r0
- bne _0806EC28
- ldr r0, =gTrainers + TRAINER_STEVEN * 0x28 + 0x4 @ Steven's name
- b _0806EC64
- .pool
-_0806EC28:
- ldr r4, =gStringVar1
- ldrh r1, [r2]
- adds r0, r4, 0
- bl sub_8162E20
- adds r0, r4, 0
- b _0806EC64
- .pool
-_0806EC3C:
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gLinkPlayers
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x18]
- movs r0, 0x2
- eors r0, r1
- bl sub_806D864
- adds r1, r0, 0
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r4, 0x8
- adds r0, r4
-_0806EC64:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806EBF8
-
- thumb_func_start sub_806EC70
-sub_806EC70: @ 806EC70
- 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, 0xE]
- subs r0, 0x1
- strh r0, [r2, 0xE]
- lsls r0, 16
- cmp r0, 0
- bne _0806ECA0
- ldrh r0, [r2, 0x8]
- ldrh r1, [r2, 0xA]
- lsls r1, 16
- orrs r0, r1
- ldrb r1, [r2, 0xC]
- bl sub_817F544
- adds r0, r4, 0
- bl DestroyTask
-_0806ECA0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806EC70
-
- thumb_func_start sub_806ECAC
-sub_806ECAC: @ 806ECAC
- 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, 0xE]
- subs r0, 0x1
- strh r0, [r2, 0xE]
- lsls r0, 16
- cmp r0, 0
- bne _0806ECE2
- ldrh r0, [r2, 0x8]
- ldrh r1, [r2, 0xA]
- lsls r1, 16
- orrs r0, r1
- ldrb r1, [r2, 0xC]
- bl sub_817F578
- movs r0, 0xFF
- bl sub_81C488C
- adds r0, r4, 0
- bl DestroyTask
-_0806ECE2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806ECAC
-
- thumb_func_start sub_806ECEC
-sub_806ECEC: @ 806ECEC
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0806ED30
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x02000002
- ands r0, r1
- cmp r0, 0
- bne _0806ED30
- movs r0, 0x80
- orrs r3, r0
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_806ED40
- b _0806ED38
- .pool
-_0806ED30:
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_806ED40
-_0806ED38:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_806ECEC
-
- thumb_func_start sub_806ED40
-sub_806ED40: @ 806ED40
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x7F
- ands r0, r3
- cmp r0, 0
- beq _0806ED60
- cmp r0, 0x1
- beq _0806ED64
- movs r1, 0
- b _0806ED66
-_0806ED60:
- movs r1, 0xE7
- b _0806ED66
-_0806ED64:
- movs r1, 0x19
-_0806ED66:
- movs r0, 0x80
- ands r0, r3
- cmp r0, 0
- beq _0806ED84
- cmp r2, 0
- bne _0806ED7C
- lsls r1, 24
- asrs r1, 24
- adds r0, r4, 0
- bl PlayCry1
-_0806ED7C:
- ldr r0, =SpriteCallbackDummy
- b _0806EDFA
- .pool
-_0806ED84:
- cmp r2, 0
- bne _0806EDA6
- lsls r1, 24
- asrs r1, 24
- adds r0, r4, 0
- bl PlayCry1
- adds r0, r4, 0
- bl sub_806F0D4
- lsls r0, 24
- cmp r0, 0
- beq _0806EDA6
- adds r0, r5, 0
- movs r1, 0x1
- bl StartSpriteAnim
-_0806EDA6:
- ldr r0, =gUnknown_08329B87
- subs r4, 0x1
- adds r6, r4, r0
- ldrb r0, [r6]
- cmp r0, 0
- beq _0806EDEC
- ldr r0, =sub_806EC70
- 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
- strh r5, [r1, 0x8]
- lsrs r0, r5, 16
- strh r0, [r1, 0xA]
- ldr r0, =gUnknown_083299EC
- adds r0, r4, r0
- ldrb r0, [r0]
- strh r0, [r1, 0xC]
- ldrb r0, [r6]
- strh r0, [r1, 0xE]
- b _0806EDF8
- .pool
-_0806EDEC:
- ldr r0, =gUnknown_083299EC
- adds r0, r4, r0
- ldrb r1, [r0]
- adds r0, r5, 0
- bl sub_817F544
-_0806EDF8:
- ldr r0, =nullsub_18
-_0806EDFA:
- str r0, [r5, 0x1C]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806ED40
-
- thumb_func_start sub_806EE0C
-sub_806EE0C: @ 806EE0C
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 24
- cmp r2, 0
- bne _0806EE2E
- adds r0, r4, 0
- bl sub_806F0D4
- lsls r0, 24
- cmp r0, 0
- beq _0806EE2E
- adds r0, r5, 0
- movs r1, 0x1
- bl StartSpriteAnim
-_0806EE2E:
- ldr r0, =gUnknown_08329B87
- subs r4, 0x1
- adds r6, r4, r0
- ldrb r0, [r6]
- cmp r0, 0
- beq _0806EE80
- ldr r0, =sub_806ECAC
- 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
- strh r5, [r2, 0x8]
- lsrs r1, r5, 16
- strh r1, [r2, 0xA]
- ldr r1, =gUnknown_083299EC
- adds r1, r4, r1
- ldrb r1, [r1]
- strh r1, [r2, 0xC]
- ldrb r1, [r6]
- strh r1, [r2, 0xE]
- bl sub_81C488C
- adds r0, r5, 0
- bl sub_817F60C
- b _0806EE8C
- .pool
-_0806EE80:
- ldr r0, =gUnknown_083299EC
- adds r0, r4, r0
- ldrb r1, [r0]
- adds r0, r5, 0
- bl sub_817F578
-_0806EE8C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806EE0C
-
- thumb_func_start sub_806EE98
-sub_806EE98: @ 806EE98
- push {lr}
- ldr r0, =sub_806ECAC
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _0806EEAC
- bl DestroyTask
-_0806EEAC:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806EE98
-
- thumb_func_start sub_806EEB4
-sub_806EEB4: @ 806EEB4
- push {r4,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r2, r1, 16
- ldr r0, =gHitMarker
- ldr r0, [r0]
- movs r1, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0806EEE8
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x02000002
- ands r0, r1
- cmp r0, 0
- bne _0806EEE8
- ldr r0, =SpriteCallbackDummy
- b _0806EEFC
- .pool
-_0806EEE8:
- adds r0, r2, 0
- bl sub_817F474
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_817F594
- ldr r0, =nullsub_18
-_0806EEFC:
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_806EEB4
-
- thumb_func_start sub_806EF08
-sub_806EF08: @ 806EF08
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r5, 0
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gLinkPlayers
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r2
- ldrh r0, [r1, 0x18]
- cmp r0, 0x1
- beq _0806EF4C
- cmp r0, 0x1
- bgt _0806EF38
- cmp r0, 0
- beq _0806EF42
- b _0806EF56
- .pool
-_0806EF38:
- cmp r0, 0x2
- beq _0806EF42
- cmp r0, 0x3
- beq _0806EF4C
- b _0806EF56
-_0806EF42:
- movs r5, 0x3
- cmp r4, 0
- beq _0806EF56
- movs r5, 0x1
- b _0806EF56
-_0806EF4C:
- negs r0, r4
- orrs r0, r4
- asrs r5, r0, 31
- movs r0, 0x2
- ands r5, r0
-_0806EF56:
- movs r2, 0
- ldr r4, =gLinkPlayers
- ldrh r0, [r4, 0x18]
- adds r1, r5, 0
- cmp r0, r1
- beq _0806EF74
- adds r3, r1, 0
- adds r1, r4, 0
-_0806EF66:
- adds r1, 0x1C
- adds r2, 0x1
- cmp r2, 0x3
- bgt _0806EF74
- ldrh r0, [r1, 0x18]
- cmp r0, r3
- bne _0806EF66
-_0806EF74:
- lsls r0, r2, 24
- lsrs r0, 24
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806EF08
-
- thumb_func_start sub_806EF84
-sub_806EF84: @ 806EF84
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r1, 24
- lsrs r1, 24
- movs r4, 0
- ldr r2, =gLinkPlayers
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r0, [r0, 0x18]
- cmp r0, 0x1
- beq _0806EFC4
- cmp r0, 0x1
- bgt _0806EFB0
- cmp r0, 0
- beq _0806EFBA
- b _0806EFCE
- .pool
-_0806EFB0:
- cmp r0, 0x2
- beq _0806EFBA
- cmp r0, 0x3
- beq _0806EFC4
- b _0806EFCE
-_0806EFBA:
- movs r4, 0x3
- cmp r3, 0
- beq _0806EFCE
- movs r4, 0x1
- b _0806EFCE
-_0806EFC4:
- negs r0, r3
- orrs r0, r3
- asrs r4, r0, 31
- movs r0, 0x2
- ands r4, r0
-_0806EFCE:
- movs r3, 0
- ldrh r0, [r2, 0x18]
- adds r1, r4, 0
- cmp r0, r1
- beq _0806EFE6
-_0806EFD8:
- adds r2, 0x1C
- adds r3, 0x1
- cmp r3, 0x3
- bgt _0806EFE6
- ldrh r0, [r2, 0x18]
- cmp r0, r1
- bne _0806EFD8
-_0806EFE6:
- lsls r0, r3, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_806EF84
-
- thumb_func_start TrainerClassToTrainerPic
-@ u8 TrainerClassToTrainerPic(u16 trainerClassId)
-TrainerClassToTrainerPic: @ 806EFF0
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gTrainerPicIndices
- adds r0, r1
- ldrb r0, [r0]
- bx lr
- .pool
- thumb_func_end TrainerClassToTrainerPic
-
- thumb_func_start sub_806F000
-sub_806F000: @ 806F000
- push {lr}
- lsls r0, 24
- cmp r0, 0
- bne _0806F00C
- movs r0, 0x3C
- b _0806F00E
-_0806F00C:
- movs r0, 0x3F
-_0806F00E:
- bl TrainerClassToTrainerPic
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_806F000
-
- thumb_func_start SetPokedexFlag
-@ void SetPokedexFlag(u16 nationalPokedexNum, u8 op, u32 personality)
-SetPokedexFlag: @ 806F01C
- push {r4-r7,lr}
- adds r7, r2, 0
- lsls r0, 16
- lsrs r4, r0, 16
- adds r6, r4, 0
- lsls r1, 24
- lsrs r5, r1, 24
- movs r0, 0x2
- eors r0, r5
- negs r1, r0
- orrs r1, r0
- lsrs r1, 31
- adds r0, r4, 0
- bl pokedex_flag_operation
- lsls r0, 24
- cmp r0, 0
- bne _0806F072
- adds r0, r4, 0
- adds r1, r5, 0
- bl pokedex_flag_operation
- adds r0, r4, 0
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xC9
- bne _0806F05C
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- str r7, [r0, 0x1C]
-_0806F05C:
- adds r0, r6, 0
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- movs r1, 0x9A
- lsls r1, 17
- cmp r0, r1
- bne _0806F072
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- str r7, [r0, 0x20]
-_0806F072:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetPokedexFlag
-
- thumb_func_start sub_806F07C
-sub_806F07C: @ 806F07C
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, =0x00000356
- cmp r2, r0
- bls _0806F08A
- movs r2, 0
-_0806F08A:
- ldr r1, =gTrainers
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- ldrb r1, [r0, 0x1]
- movs r0, 0xD
- muls r0, r1
- ldr r1, =gTrainerClassNames
- adds r0, r1
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806F07C
-
- thumb_func_start sub_806F0B0
-sub_806F0B0: @ 806F0B0
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, =0x00000356
- cmp r1, r0
- bls _0806F0BE
- movs r1, 0
-_0806F0BE:
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- ldr r1, =gTrainers + 0x4 @ name offset
- adds r0, r1
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806F0B0
-
- thumb_func_start sub_806F0D4
-sub_806F0D4: @ 806F0D4
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- movs r1, 0
- ldr r0, =0x00000181
- cmp r2, r0
- beq _0806F0F8
- adds r0, 0x19
- cmp r2, r0
- beq _0806F0F8
- subs r0, 0x66
- cmp r2, r0
- beq _0806F0F8
- movs r1, 0xC9
- eors r1, r2
- negs r0, r1
- orrs r0, r1
- lsrs r1, r0, 31
-_0806F0F8:
- adds r0, r1, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_806F0D4
-
- thumb_func_start sub_806F104
-sub_806F104: @ 806F104
- push {lr}
- ldr r2, =gMain
- ldr r1, =0x00000439
- adds r0, r2, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0806F122
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- ldr r1, =0x003f0100
- ands r0, r1
- cmp r0, 0
- bne _0806F144
-_0806F122:
- ldr r1, =0x00000439
- adds r0, r2, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0806F158
- bl InBattlePike
- lsls r0, 24
- cmp r0, 0
- bne _0806F144
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- beq _0806F158
-_0806F144:
- movs r0, 0x1
- b _0806F15A
- .pool
-_0806F158:
- movs r0, 0
-_0806F15A:
- pop {r1}
- bx r1
- thumb_func_end sub_806F104
thumb_func_start sub_806F160
sub_806F160: @ 806F160
diff --git a/asm/pokemon_animation.s b/asm/pokemon_animation.s
index 1b0119424..a29ecb729 100644
--- a/asm/pokemon_animation.s
+++ b/asm/pokemon_animation.s
@@ -89,8 +89,8 @@ _0817F528:
.pool
thumb_func_end sub_817F498
- thumb_func_start sub_817F544
-sub_817F544: @ 817F544
+ thumb_func_start LaunchAnimationTaskForFrontSprite
+LaunchAnimationTaskForFrontSprite: @ 817F544
push {r4,r5,lr}
adds r5, r0, 0
lsls r4, r1, 24
@@ -113,7 +113,7 @@ sub_817F544: @ 817F544
pop {r0}
bx r0
.pool
- thumb_func_end sub_817F544
+ thumb_func_end LaunchAnimationTaskForFrontSprite
thumb_func_start sub_817F578
sub_817F578: @ 817F578
@@ -130,8 +130,8 @@ sub_817F578: @ 817F578
.pool
thumb_func_end sub_817F578
- thumb_func_start sub_817F594
-sub_817F594: @ 817F594
+ thumb_func_start LaunchAnimationTaskForBackSprite
+LaunchAnimationTaskForBackSprite: @ 817F594
push {r4-r6,lr}
adds r5, r0, 0
lsls r6, r1, 24
@@ -178,7 +178,7 @@ sub_817F594: @ 817F594
pop {r0}
bx r0
.pool
- thumb_func_end sub_817F594
+ thumb_func_end LaunchAnimationTaskForBackSprite
thumb_func_start sub_817F60C
sub_817F60C: @ 817F60C
diff --git a/asm/pokemon_item_effect.s b/asm/pokemon_item_effect.s
index 2002343eb..137f7a5c0 100644
--- a/asm/pokemon_item_effect.s
+++ b/asm/pokemon_item_effect.s
@@ -77,7 +77,7 @@ ExecuteTableBasedItemEffect: @ 806BD28
cmp r0, 0
beq _0806BDA8
ldr r2, =gEnigmaBerries
- ldr r0, =gUnknown_020244B8
+ ldr r0, =gBankInMenu
ldrb r1, [r0]
lsls r0, r1, 3
subs r0, r1
@@ -100,8 +100,8 @@ _0806BDBC:
lsrs r0, 24
_0806BDC4:
str r0, [sp, 0x34]
- ldr r1, =gUnknown_0202420F
- ldr r0, =gUnknown_020244B8
+ ldr r1, =gStringBank
+ ldr r0, =gBankInMenu
ldrb r2, [r0]
strb r2, [r1]
ldr r0, =gMain
diff --git a/asm/recorded_battle.s b/asm/recorded_battle.s
index 5a4a811e6..53824dfea 100644
--- a/asm/recorded_battle.s
+++ b/asm/recorded_battle.s
@@ -883,7 +883,7 @@ _081854E2:
ldr r2, =0x000004f6
adds r0, r7, r2
strh r1, [r0]
- ldr r3, =gUnknown_02038BCE
+ ldr r3, =gPartnerTrainerId
ldrh r1, [r3]
movs r4, 0x9F
lsls r4, 3
@@ -1196,7 +1196,7 @@ _081857B6:
b _08185856
.pool
_081857E4:
- ldr r3, =gUnknown_02038BCE
+ ldr r3, =gPartnerTrainerId
ldrh r3, [r3]
adds r0, r1, r3
lsls r0, 16
@@ -1207,7 +1207,7 @@ _081857E4:
ldr r4, =0x00000504
adds r3, r7, r4
mov r10, r9
- ldr r5, =gUnknown_02038BCE
+ ldr r5, =gPartnerTrainerId
mov r12, r5
ldr r0, =0xfffffed4
mov r8, r0
@@ -1231,7 +1231,7 @@ _08185804:
ble _08185804
mov r0, r9
ldr r1, [r0]
- ldr r2, =gUnknown_02038BCE
+ ldr r2, =gPartnerTrainerId
ldrh r0, [r2]
ldr r3, =0xfffffed4
adds r0, r3
@@ -1246,7 +1246,7 @@ _08185804:
strb r1, [r0]
mov r0, r9
ldr r1, [r0]
- ldr r4, =gUnknown_02038BCE
+ ldr r4, =gPartnerTrainerId
ldrh r0, [r4]
adds r0, r3
muls r0, r2
@@ -1374,7 +1374,7 @@ _08185936:
b _081859AC
.pool
_0818597C:
- ldr r3, =gUnknown_02038BCE
+ ldr r3, =gPartnerTrainerId
ldrh r0, [r3]
cmp r0, r1
bls _081859C0
@@ -1395,7 +1395,7 @@ _0818597C:
adds r1, r7, r5
strb r0, [r1]
ldr r2, [r4]
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r1, [r0]
adds r1, r3
_081859AC:
@@ -1546,7 +1546,7 @@ sub_8185AB0: @ 8185AB0
strh r1, [r0]
ldr r0, =gTrainerBattleOpponent_B
strh r1, [r0]
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
strh r1, [r0]
bl sub_8185EFC
ldr r0, =gUnknown_0203C7B0
@@ -1725,7 +1725,7 @@ _08185C2A:
adds r0, r7, r3
ldrh r0, [r0]
strh r0, [r1]
- ldr r1, =gUnknown_02038BCE
+ ldr r1, =gPartnerTrainerId
adds r2, 0x4
adds r0, r7, r2
ldrh r0, [r0]
@@ -1905,7 +1905,7 @@ sub_8185E24: @ 8185E24
ldr r0, =gUnknown_0203C7B0
str r5, [r0]
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
ldr r0, =sub_8185E8C
bl SetMainCallback2
_08185E6E:
diff --git a/asm/reshow_battle_screen.s b/asm/reshow_battle_screen.s
index 10fd6c6ce..f83a11ff1 100644
--- a/asm/reshow_battle_screen.s
+++ b/asm/reshow_battle_screen.s
@@ -265,7 +265,7 @@ _080A94F8:
bl sub_805EE54
_080A955C:
ldr r1, =gUnknown_020244AC
- ldr r0, =gUnknown_020244B8
+ ldr r0, =gBankInMenu
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
@@ -587,7 +587,7 @@ _080A9786:
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r1, r7, r1
ldrb r1, [r1]
bl StartSpriteAnim
@@ -616,7 +616,7 @@ _080A986C:
lsls r1, 24
lsrs r1, 24
adds r0, r4, 0
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r6, =gUnknown_0202499C
ldr r1, =gUnknown_08305D2C
ldr r0, [r5]
@@ -654,7 +654,7 @@ _080A98D0:
lsls r1, 24
lsrs r1, 24
movs r0, 0x6
- bl template_build_for_pokemon_or_trainer
+ bl sub_806A12C
ldr r5, =gUnknown_0202499C
ldr r0, =gUnknown_08305D2C
ldrb r0, [r0, 0x18]
@@ -804,7 +804,7 @@ _080A998C:
adds r0, r1
lsls r0, 2
adds r0, r5
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r1, r7, r1
ldrb r1, [r1]
bl StartSpriteAnim
diff --git a/asm/rom3.s b/asm/rom3.s
index ac74e0735..e2f268f43 100644
--- a/asm/rom3.s
+++ b/asm/rom3.s
@@ -76,7 +76,7 @@ _080326B8:
movs r5, 0
str r5, [r0]
bl sub_80A3934
- bl sub_806E414
+ bl ClearBattleMonForms
movs r0, 0xF
bl BattleAI_HandleItemUseBeforeAISetup
ldr r0, =gBattleTypeFlags
@@ -2619,7 +2619,7 @@ dp01_build_cmdbuf_x10_TODO: @ 8033BE4
adds r0, 0xB1
ldrb r0, [r0]
strb r0, [r3, 0x9]
- ldr r0, =gUnknown_0202420F
+ ldr r0, =gStringBank
ldrb r0, [r0]
strb r0, [r3, 0xA]
ldr r3, =gBattleMoves
diff --git a/asm/rom6.s b/asm/rom6.s
index 31d385fa9..a88c708a5 100644
--- a/asm/rom6.s
+++ b/asm/rom6.s
@@ -2140,7 +2140,7 @@ _081366D0:
ldr r2, =0x0000ffff
adds r1, r2, 0
strh r1, [r0]
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
mov r1, r9
strh r1, [r0]
adds r0, r7, 0
@@ -2150,7 +2150,7 @@ _081366D0:
_081366F8:
movs r0, 0x5
bl PlaySE
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
strh r4, [r0]
adds r0, r7, 0
bl sub_8136938
@@ -2541,7 +2541,7 @@ sub_8136A50: @ 8136A50
sub_8136A74: @ 8136A74
push {lr}
ldr r2, =gSaveBlock1Ptr
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r1, [r0]
lsls r1, 3
ldr r0, =0x00000848
@@ -2586,7 +2586,7 @@ sub_8136AB4: @ 8136AB4
ldr r3, =gPokeblockNames
ldr r1, =gSaveBlock1Ptr
ldr r2, [r1]
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r1, [r1]
lsls r1, 3
adds r2, r1
@@ -2689,7 +2689,7 @@ sub_8136BC0: @ 8136BC0
ands r0, r1
cmp r0, 0
beq _08136C36
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrb r0, [r0]
bl sub_8136F68
movs r0, 0x5
@@ -2772,7 +2772,7 @@ sub_8136C8C: @ 8136C8C
lsls r0, 24
lsrs r0, 24
ldr r5, =gSaveBlock1Ptr
- ldr r7, =gUnknown_0203CE7C
+ ldr r7, =gScriptItemId
ldrh r2, [r7]
lsls r2, 3
ldr r6, =0x00000848
@@ -2836,7 +2836,7 @@ sub_8136D2C: @ 8136D2C
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r5, =gUnknown_0203CE7C
+ ldr r5, =gScriptItemId
ldrb r0, [r5]
bl SafariZoneActivatePokeblockFeeder
ldr r0, =gStringVar1
@@ -2877,7 +2877,7 @@ sub_8136D90: @ 8136D90
lsrs r4, 24
ldr r6, =gSpecialVar_0x8004
ldr r0, =gSaveBlock1Ptr
- ldr r5, =gUnknown_0203CE7C
+ ldr r5, =gScriptItemId
ldrh r1, [r5]
lsls r1, 3
ldr r2, =0x00000848
@@ -4566,7 +4566,7 @@ _08137B7C:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _08137BEA
@@ -4576,7 +4576,7 @@ _08137B7C:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _08137BEA
@@ -4590,7 +4590,7 @@ _08137BB8:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08137C04
@@ -4600,7 +4600,7 @@ _08137BB8:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08137C04
@@ -11184,7 +11184,7 @@ sub_813B21C: @ 813B21C
lsls r0, 24
cmp r0, 0
bne _0813B258
- bl get_preferred_box
+ bl StorageGetCurrentBox
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
@@ -11215,7 +11215,7 @@ sub_813B260: @ 813B260
lsls r0, 24
lsrs r0, 24
bl set_unknown_box_id
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r4, r0, 24
_0813B278:
@@ -11226,7 +11226,7 @@ _0813B27E:
lsls r1, r5, 24
lsrs r1, 24
lsrs r0, r6, 24
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
movs r1, 0xB
movs r2, 0
bl GetBoxMonData
@@ -11257,7 +11257,7 @@ _0813B2C0:
bne _0813B2CE
movs r4, 0
_0813B2CE:
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
cmp r4, r0
diff --git a/asm/rom_8034C54.s b/asm/rom_8034C54.s
index 2690b0f98..8b0c99138 100644
--- a/asm/rom_8034C54.s
+++ b/asm/rom_8034C54.s
@@ -2524,7 +2524,7 @@ _08036208:
ands r1, r0
cmp r1, 0
beq _08036224
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r1, [r0]
ldr r0, =0x00000c03
cmp r1, r0
diff --git a/asm/rom_8072304.s b/asm/rom_8072304.s
index 87c9f2567..c7db3830a 100644
--- a/asm/rom_8072304.s
+++ b/asm/rom_8072304.s
@@ -1317,7 +1317,7 @@ _08072D86:
movs r2, 0x1
movs r3, 0x3
bl ConvertIntToDecimalStringN
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
movs r1, 0xBA
lsls r1, 1
@@ -1333,7 +1333,7 @@ _08072D86:
lsls r0, 2
adds r5, r0, r1
_08072DB8:
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
movs r1, 0xBA
lsls r1, 1
@@ -1536,7 +1536,7 @@ _08072F52:
ldr r1, =gUnknown_085E8D3E
bl StringCopy
_08072F82:
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
movs r1, 0xBA
lsls r1, 1
@@ -1556,7 +1556,7 @@ _08072F82:
_08072FA6:
cmp r4, 0x2
bhi _08072FF0
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
movs r2, 0xBA
lsls r2, 1
@@ -1579,7 +1579,7 @@ _08072FA6:
b _0807301A
.pool
_08072FF0:
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
movs r1, 0xBA
lsls r1, 1
@@ -1609,7 +1609,7 @@ _08073024:
mov r3, r8
cmp r3, 0
bne _08073084
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
movs r1, 0xBA
lsls r1, 1
@@ -1702,7 +1702,7 @@ sub_80730D4: @ 80730D4
lsls r0, 24
lsrs r0, 24
bl GetBankIdentity
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r2, [r1]
movs r3, 0xBA
lsls r3, 1
@@ -1877,7 +1877,7 @@ _08073236:
strb r0, [r1, 0x5]
movs r0, 0xBA
strb r0, [r1, 0x8]
- ldr r5, =gUnknown_020244D4
+ ldr r5, =gBattleSpritesGfx
ldr r0, [r5]
movs r2, 0xBA
lsls r2, 1
@@ -3922,7 +3922,7 @@ sub_8074310: @ 8074310
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _080743E6
@@ -8234,7 +8234,7 @@ _080766BA:
adds r0, r2, 0
movs r2, 0x1
movs r3, 0
- bl sub_806ED40
+ bl DoMonFrontSpriteAnimation
b _08076708
.pool
_080766FC:
@@ -8242,7 +8242,7 @@ _080766FC:
adds r0, r2, 0
movs r2, 0
movs r3, 0
- bl sub_806ED40
+ bl DoMonFrontSpriteAnimation
_08076708:
adds r0, r4, 0
bl DestroySpriteAndFreeResources
diff --git a/asm/rom_80A5C6C.s b/asm/rom_80A5C6C.s
index 22e91ecdc..ea75d4e2b 100644
--- a/asm/rom_80A5C6C.s
+++ b/asm/rom_80A5C6C.s
@@ -263,7 +263,7 @@ _080A5E90:
cmp r5, r0
bne _080A5EB0
ldr r0, =gUnknown_08525F8C
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r1, r4, r1
ldrb r1, [r1]
adds r1, r0
@@ -353,7 +353,7 @@ _080A5F58:
cmp r5, r0
bne _080A5F7C
ldr r0, =gUnknown_08525F78
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r1, r4, r1
ldrb r1, [r1]
lsls r1, 2
@@ -407,7 +407,7 @@ sub_80A5FA0: @ 80A5FA0
cmp r4, r0
bne _080A5FE8
ldr r0, =gUnknown_08525F88
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
adds r1, r6, r1
ldrb r1, [r1]
adds r1, r0
@@ -4541,7 +4541,7 @@ sub_80A7F18: @ 80A7F18
movs r4, 0
ldr r1, =gBankSpriteIds
ldr r7, =0x00000181
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
adds r6, r5, r0
_080A7F38:
adds r0, r4, r1
@@ -5155,7 +5155,7 @@ sub_80A8394: @ 80A8394
bl AllocSpritePalette
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, =gUnknown_020244D4
+ ldr r4, =gBattleSpritesGfx
ldr r0, [r4]
cmp r0, 0
beq _080A8412
@@ -5213,7 +5213,7 @@ _080A845E:
lsls r0, r6, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
movs r2, 0xBE
lsls r2, 1
@@ -5276,7 +5276,7 @@ _080A84F6:
lsls r0, r6, 3
ldr r1, =gMonBackPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
movs r3, 0xBE
lsls r3, 1
@@ -5305,7 +5305,7 @@ _080A8524:
mov r3, r8
bl LoadSpecialPokePic_2
_080A8540:
- ldr r5, =gUnknown_020244D4
+ ldr r5, =gBattleSpritesGfx
ldr r0, [r5]
movs r4, 0xBE
lsls r4, 1
@@ -5658,7 +5658,7 @@ _080A882E:
cmp r7, r0
bne _080A8850
_080A8834:
- ldr r0, =gUnknown_020244E4
+ ldr r0, =gBattleMonForms
add r0, r8
ldrb r0, [r0]
lsls r0, 2
diff --git a/asm/rom_80C6FA0.s b/asm/rom_80C6FA0.s
index d6d3bb375..fadda4cdb 100644
--- a/asm/rom_80C6FA0.s
+++ b/asm/rom_80C6FA0.s
@@ -1763,7 +1763,7 @@ _080C7DA8:
bl CreateTask
ldr r1, [r4]
strb r0, [r1, 0x4]
- bl get_preferred_box
+ bl StorageGetCurrentBox
ldr r1, =gUnknown_02039D10
strb r0, [r1]
ldr r0, =c2_Box
@@ -2102,7 +2102,7 @@ _080C80EC:
bl sub_80CA704
b _080C8198
_080C80F2:
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
bl sub_80CC32C
@@ -2252,7 +2252,7 @@ _080C8230:
ldrb r0, [r0]
cmp r0, 0x2
bne _080C825C
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
cmp r0, 0
beq _080C825C
@@ -2459,7 +2459,7 @@ _080C8440:
_080C844C:
movs r0, 0x5
bl PlaySE
- bl get_preferred_box
+ bl StorageGetCurrentBox
ldr r4, =gUnknown_02039D08
ldr r1, [r4]
lsls r0, 24
@@ -2483,7 +2483,7 @@ _080C846E:
_080C8484:
movs r0, 0x5
bl PlaySE
- bl get_preferred_box
+ bl StorageGetCurrentBox
ldr r4, =gUnknown_02039D08
ldr r1, [r4]
lsls r0, 24
@@ -4859,7 +4859,7 @@ _080C99FE:
movs r1, 0xA
movs r3, 0x3
bl sub_80C77E8
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
bl sub_80C78D4
@@ -4888,7 +4888,7 @@ _080C9A2C:
cmp r0, 0xC9
beq _080C9A6C
adds r4, r0, 0
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -5421,7 +5421,7 @@ _080C9F04:
.pool
_080C9F1C:
bl sub_80C9FC8
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
bl sav3_get_box_name
@@ -5458,7 +5458,7 @@ _080C9F56:
sub_80C9F6C: @ 80C9F6C
push {lr}
sub sp, 0x4
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r1, [r0]
mov r0, sp
strh r1, [r0]
@@ -6895,7 +6895,7 @@ _080CABDA:
sub_80CABE0: @ 80CABE0
push {r4,lr}
ldr r4, =gUnknown_02039D10
- bl get_preferred_box
+ bl StorageGetCurrentBox
ldrb r1, [r4]
lsls r0, 24
lsrs r0, 24
@@ -6904,7 +6904,7 @@ sub_80CABE0: @ 80CABE0
ldr r0, =0x000008d7
bl FlagReset
ldr r4, =0x00004036
- bl get_preferred_box
+ bl StorageGetCurrentBox
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -10143,7 +10143,7 @@ sub_80CC644: @ 80CC644
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r1, r0, 24
movs r2, 0
@@ -10180,7 +10180,7 @@ sub_80CC680: @ 80CC680
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
adds r1, r4, 0
@@ -10244,7 +10244,7 @@ _080CC718:
lsls r0, 24
cmp r0, 0
bne _080CC794
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
movs r1, 0
@@ -11229,7 +11229,7 @@ _080CCF96:
thumb_func_start sub_80CCF9C
sub_80CCF9C: @ 80CCF9C
push {lr}
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
bl sub_80D20F8
@@ -12975,7 +12975,7 @@ _080CDDFE:
b _080CDE2A
.pool
_080CDE20:
- bl get_preferred_box
+ bl StorageGetCurrentBox
ldr r1, [r4]
ldr r2, =0x00000d91
adds r1, r2
@@ -13141,7 +13141,7 @@ _080CDF68:
ldrb r0, [r0]
cmp r0, 0
bne _080CDF8E
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
ldr r4, =gUnknown_02039D79
@@ -13182,7 +13182,7 @@ sub_80CDFAC: @ 80CDFAC
b _080CDFF8
.pool
_080CDFDC:
- bl get_preferred_box
+ bl StorageGetCurrentBox
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
@@ -13417,7 +13417,7 @@ _080CE1DC:
ldrb r0, [r5]
bl sub_80CBB68
_080CE1F6:
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
cmp r6, r0
@@ -13539,7 +13539,7 @@ _080CE2F0:
b _080CE30C
.pool
_080CE304:
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r2, r0, 24
_080CE30C:
@@ -13687,7 +13687,7 @@ _080CE418:
b _080CE488
.pool
_080CE464:
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
ldr r1, =gUnknown_02039D79
@@ -13697,7 +13697,7 @@ _080CE464:
ldr r3, =0x00002108
adds r2, r3
bl sub_80D2054
- bl get_preferred_box
+ bl StorageGetCurrentBox
ldr r1, [r4]
ldr r2, =0x00002170
adds r1, r2
@@ -14140,11 +14140,11 @@ _080CE838:
b _080CE8CA
.pool
_080CE894:
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
movs r1, 0
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
ldr r3, =gUnknown_02039D08
ldr r2, [r3]
ldr r4, =0x0000218c
@@ -14527,12 +14527,12 @@ _080CEBB0:
bl sub_80CEC00
b _080CEBD0
_080CEBBA:
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
ldr r1, =gUnknown_02039D79
ldrb r1, [r1]
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
movs r1, 0x1
bl sub_80CEC00
_080CEBD0:
@@ -14847,7 +14847,7 @@ _080CEE94:
_080CEEC0:
ldr r2, =0x00000cf9
adds r0, r1, r2
- ldr r1, =gUnknown_085E8264
+ ldr r1, =gEggNickname
movs r2, 0
movs r3, 0x8
bl StringCopyPadded
@@ -15491,7 +15491,7 @@ _080CF428:
adds r1, r0
movs r0, 0x2
strb r0, [r1]
- bl get_preferred_box
+ bl StorageGetCurrentBox
ldr r1, =gUnknown_02039D7B
strb r0, [r1]
movs r0, 0x17
@@ -18075,7 +18075,7 @@ _080D0902:
_080D0914:
adds r0, 0x1
strb r0, [r2, 0xB]
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
mov r10, r0
@@ -18111,7 +18111,7 @@ _080D093C:
_080D095A:
mov r0, r10
adds r1, r5, 0
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
adds r1, r0, 0
ldr r2, =gUnknown_02039D80
ldr r0, [r2]
@@ -18161,7 +18161,7 @@ sub_80D09A4: @ 80D09A4
ldrb r0, [r0, 0xB]
adds r1, r0
mov r9, r1
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
mov r8, r0
@@ -18305,7 +18305,7 @@ sub_80D0AAC: @ 80D0AAC
ldrb r0, [r0, 0xB]
adds r1, r0
str r1, [sp]
- bl get_preferred_box
+ bl StorageGetCurrentBox
lsls r0, 24
lsrs r0, 24
str r0, [sp, 0x4]
@@ -20559,15 +20559,15 @@ nullsub_98: @ 80D1D08
bx lr
thumb_func_end nullsub_98
- thumb_func_start get_preferred_box
-@ char get_preferred_box()
-get_preferred_box: @ 80D1D0C
+ thumb_func_start StorageGetCurrentBox
+@ char StorageGetCurrentBox()
+StorageGetCurrentBox: @ 80D1D0C
ldr r0, =gPokemonStoragePtr
ldr r0, [r0]
ldrb r0, [r0]
bx lr
.pool
- thumb_func_end get_preferred_box
+ thumb_func_end StorageGetCurrentBox
thumb_func_start sub_80D1D18
sub_80D1D18: @ 80D1D18
@@ -21050,9 +21050,9 @@ _080D2088:
.pool
thumb_func_end sub_80D2054
- thumb_func_start get_pokemon_by_box_and_pos
-@ pokemon *get_pokemon_by_box_and_pos(u8 box_id, u8 pos)
-get_pokemon_by_box_and_pos: @ 80D2094
+ thumb_func_start GetBoxedMonPtr
+@ pokemon *GetBoxedMonPtr(u8 box_id, u8 pos)
+GetBoxedMonPtr: @ 80D2094
push {r4,lr}
lsls r0, 24
lsrs r3, r0, 24
@@ -21083,7 +21083,7 @@ _080D20CA:
pop {r4}
pop {r1}
bx r1
- thumb_func_end get_pokemon_by_box_and_pos
+ thumb_func_end GetBoxedMonPtr
thumb_func_start sav3_get_box_name
sav3_get_box_name: @ 80D20D0
@@ -27175,7 +27175,7 @@ sub_80D5070: @ 80D5070
adds r4, r0, 0
cmp r4, 0x2A
bne _080D5082
- bl sub_80E162C
+ bl IsEnigmaBerryValid
_080D5082:
ldr r5, =gBerryPicTable
lsls r4, 3
diff --git a/asm/rom_815A0D4.s b/asm/rom_815A0D4.s
index bd09771b0..bdec296c0 100644
--- a/asm/rom_815A0D4.s
+++ b/asm/rom_815A0D4.s
@@ -3024,12 +3024,12 @@ _0815B8E0:
lsls r0, 24
lsrs r1, r0, 24
_0815B8EA:
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r2, [r0]
lsls r0, r1, 2
adds r2, 0x4
adds r2, r0
- ldr r1, =gUnknown_020244E4
+ ldr r1, =gBattleMonForms
ldr r0, =gAnimationBankAttacker
ldrb r0, [r0]
adds r0, r1
diff --git a/asm/rom_8161F74.s b/asm/rom_8161F74.s
index 339476c45..75bfc07bb 100644
--- a/asm/rom_8161F74.s
+++ b/asm/rom_8161F74.s
@@ -391,7 +391,7 @@ _081622B2:
adds r4, r1, r0
mov r0, r10
str r2, [sp, 0x38]
- bl sub_8165C90
+ bl BattleFrontierGetOpponentLvl
ldrb r1, [r4]
lsls r0, 24
lsrs r0, 24
@@ -1340,7 +1340,7 @@ sub_8162AA0: @ 8162AA0
lsls r0, 1
cmp r4, r0
bne _08162AD0
- ldr r1, =gTrainerPicIndices
+ ldr r1, =gUnknown_0831F578
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r2, =0x00000bed
@@ -1362,7 +1362,7 @@ _08162AE4:
ldr r0, =0x0000012b
cmp r4, r0
bhi _08162B08
- ldr r2, =gTrainerPicIndices
+ ldr r2, =gUnknown_0831F578
ldr r0, =gUnknown_0203BC88
ldr r1, [r0]
movs r0, 0x34
@@ -1383,7 +1383,7 @@ _08162B08:
ands r0, r1
cmp r0, 0
beq _08162B38
- ldr r4, =gTrainerPicIndices
+ ldr r4, =gUnknown_0831F578
bl sub_818649C
lsls r0, 24
lsrs r0, 24
@@ -1391,7 +1391,7 @@ _08162B08:
b _08162BC8
.pool
_08162B38:
- ldr r3, =gTrainerPicIndices
+ ldr r3, =gUnknown_0831F578
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r1, =0xfffffed4
@@ -1413,7 +1413,7 @@ _08162B64:
ands r0, r1
cmp r0, 0
bne _08162BB0
- ldr r4, =gTrainerPicIndices
+ ldr r4, =gUnknown_0831F578
ldr r3, =gUnknown_08610970
ldr r0, =gSaveBlock2Ptr
ldr r1, [r0]
@@ -1436,7 +1436,7 @@ _08162B64:
b _08162BC8
.pool
_08162BB0:
- ldr r5, =gTrainerPicIndices
+ ldr r5, =gUnknown_0831F578
ldr r4, =gUnknown_08610970
bl sub_81864A8
lsls r0, 24
@@ -1456,8 +1456,8 @@ _08162BCA:
.pool
thumb_func_end sub_8162AA0
- thumb_func_start sub_8162BD8
-sub_8162BD8: @ 8162BD8
+ thumb_func_start GetFrontierOpponentClass
+GetFrontierOpponentClass: @ 8162BD8
push {r4,r5,lr}
lsls r0, 16
lsrs r4, r0, 16
@@ -1467,7 +1467,7 @@ sub_8162BD8: @ 8162BD8
lsls r0, 1
cmp r4, r0
bne _08162C08
- ldr r1, =gTrainerClassNameIndices
+ ldr r1, =gTrainerClassToNameIndex
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r2, =0x00000bed
@@ -1499,7 +1499,7 @@ _08162C38:
ldr r0, =0x0000012b
cmp r4, r0
bhi _08162C60
- ldr r2, =gTrainerClassNameIndices
+ ldr r2, =gTrainerClassToNameIndex
ldr r0, =gUnknown_0203BC88
ldr r1, [r0]
movs r0, 0x34
@@ -1521,7 +1521,7 @@ _08162C60:
ands r0, r1
cmp r0, 0
beq _08162C90
- ldr r4, =gTrainerClassNameIndices
+ ldr r4, =gTrainerClassToNameIndex
bl sub_818649C
lsls r0, 24
lsrs r0, 24
@@ -1530,7 +1530,7 @@ _08162C60:
b _08162D1E
.pool
_08162C90:
- ldr r3, =gTrainerClassNameIndices
+ ldr r3, =gTrainerClassToNameIndex
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r1, =0xfffffed4
@@ -1553,7 +1553,7 @@ _08162CBC:
ands r0, r1
cmp r0, 0
beq _08162CF4
- ldr r5, =gTrainerClassNameIndices
+ ldr r5, =gTrainerClassToNameIndex
ldr r4, =gUnknown_08610970
bl sub_81864A8
lsls r0, 24
@@ -1568,7 +1568,7 @@ _08162CBC:
b _08162D1E
.pool
_08162CF4:
- ldr r4, =gTrainerClassNameIndices
+ ldr r4, =gTrainerClassToNameIndex
ldr r3, =gUnknown_08610970
ldr r0, =gSaveBlock2Ptr
ldr r1, [r0]
@@ -1594,7 +1594,7 @@ _08162D1E:
pop {r1}
bx r1
.pool
- thumb_func_end sub_8162BD8
+ thumb_func_end GetFrontierOpponentClass
thumb_func_start sub_8162D34
sub_8162D34: @ 8162D34
@@ -1697,8 +1697,8 @@ _08162E0C:
.pool
thumb_func_end sub_8162D34
- thumb_func_start sub_8162E20
-sub_8162E20: @ 8162E20
+ thumb_func_start GetFrontierTrainerName
+GetFrontierTrainerName: @ 8162E20
push {r4-r6,lr}
adds r6, r0, 0
lsls r1, 16
@@ -1846,7 +1846,7 @@ _08162F62:
pop {r4-r6}
pop {r0}
bx r0
- thumb_func_end sub_8162E20
+ thumb_func_end GetFrontierTrainerName
thumb_func_start sub_8162F68
sub_8162F68: @ 8162F68
@@ -3275,7 +3275,7 @@ _08163B56:
_08163B64:
movs r0, 0x2
bl sub_816306C
- ldr r1, =gUnknown_02038BCE
+ ldr r1, =gPartnerTrainerId
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r2, =0x00000cd6
@@ -3302,7 +3302,7 @@ _08163BA6:
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0
b _08163E10
.pool
@@ -3334,7 +3334,7 @@ _08163BC4:
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0xC
b _08163E10
.pool
@@ -3369,7 +3369,7 @@ _08163C18:
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0xD
b _08163E10
.pool
@@ -3438,7 +3438,7 @@ _08163D12:
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0x4
b _08163E10
.pool
@@ -3467,7 +3467,7 @@ _08163D5E:
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0x5
b _08163E10
.pool
@@ -3490,7 +3490,7 @@ _08163D8E:
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0x6
b _08163E10
.pool
@@ -3513,7 +3513,7 @@ _08163DC8:
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0xA
b _08163E10
.pool
@@ -3528,7 +3528,7 @@ _08163E00:
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0x7
_08163E10:
bl sub_80B100C
@@ -3553,13 +3553,13 @@ _08163E2C:
strb r0, [r4]
ldr r0, =gUnknown_08224167
bl TrainerBattleConfigure
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
strh r5, [r0]
ldr r0, =sub_8163A8C
movs r1, 0x1
bl CreateTask
movs r0, 0
- bl PlayNewMapMusic__default_for_battle
+ bl PlayMapChosenOrBattleBGM
movs r0, 0x12
bl sub_8145EF4
_08163E68:
@@ -3979,7 +3979,7 @@ _081641E6:
lsls r0, r1, 24
lsrs r0, 24
str r2, [sp, 0x18]
- bl sub_8165C90
+ bl BattleFrontierGetOpponentLvl
ldrb r1, [r4]
lsls r0, 24
lsrs r0, 24
@@ -4464,7 +4464,7 @@ _081645B8:
lsls r0, r1, 24
lsrs r0, 24
str r3, [sp, 0x48]
- bl sub_8165C90
+ bl BattleFrontierGetOpponentLvl
ldrb r1, [r4]
lsls r0, 24
lsrs r0, 24
@@ -4782,7 +4782,7 @@ _081648D6:
_081648E2:
ldr r0, =gStringVar1
adds r1, r7, 0
- bl sub_8162E20
+ bl GetFrontierTrainerName
b _08164AC2
.pool
_081648F4:
@@ -4841,7 +4841,7 @@ _08164910:
ldr r0, =gStringVar3
mov r3, r10
lsrs r1, r3, 16
- bl sub_8162E20
+ bl GetFrontierTrainerName
b _08164AC2
.pool
_08164984:
@@ -4867,7 +4867,7 @@ _081649A8:
b _08164AC2
.pool
_081649BC:
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
strh r7, [r0]
ldr r0, =0x0000012b
cmp r7, r0
@@ -4944,7 +4944,7 @@ _08164A60:
bl sub_8162548
lsls r0, 16
lsrs r3, r0, 16
- ldr r0, =gUnknown_02038BCE
+ ldr r0, =gPartnerTrainerId
ldrh r0, [r0]
cmp r0, r3
beq _08164A60
@@ -5340,7 +5340,7 @@ sub_8164E04: @ 8164E04
ldr r5, =gTrainerBattleOpponent_A
ldrh r1, [r5]
mov r0, sp
- bl sub_8162E20
+ bl GetFrontierTrainerName
mov r0, sp
bl StripExtCtrlCodes
ldr r4, =gSaveBlock2Ptr
@@ -5845,7 +5845,7 @@ _08165206:
thumb_func_start sub_8165244
sub_8165244: @ 8165244
- ldr r1, =gTrainerPicIndices
+ ldr r1, =gUnknown_0831F578
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r2, =0x00000bed
@@ -5859,7 +5859,7 @@ sub_8165244: @ 8165244
thumb_func_start sub_8165264
sub_8165264: @ 8165264
- ldr r1, =gTrainerClassNameIndices
+ ldr r1, =gTrainerClassToNameIndex
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r2, =0x00000bed
@@ -7104,7 +7104,7 @@ sub_8165C40: @ 8165C40
ldrb r0, [r2]
lsls r0, 30
lsrs r0, 30
- bl sub_8165C90
+ bl BattleFrontierGetOpponentLvl
b _08165C88
.pool
_08165C84:
@@ -7116,8 +7116,8 @@ _08165C88:
bx r1
thumb_func_end sub_8165C40
- thumb_func_start sub_8165C90
-sub_8165C90: @ 8165C90
+ thumb_func_start BattleFrontierGetOpponentLvl
+BattleFrontierGetOpponentLvl: @ 8165C90
push {lr}
lsls r0, 24
lsrs r0, 24
@@ -7138,7 +7138,7 @@ _08165CA2:
_08165CB0:
pop {r1}
bx r1
- thumb_func_end sub_8165C90
+ thumb_func_end BattleFrontierGetOpponentLvl
thumb_func_start sub_8165CB4
sub_8165CB4: @ 8165CB4
@@ -8813,7 +8813,7 @@ _08166BB6:
lsls r0, 24
cmp r0, 0
bne _08166BDA
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrb r0, [r0]
bl sub_8136F68
ldr r0, =sub_8166BEC
diff --git a/asm/rom_817C95C.s b/asm/rom_817C95C.s
index 68963869a..a08d34cad 100644
--- a/asm/rom_817C95C.s
+++ b/asm/rom_817C95C.s
@@ -4959,8 +4959,8 @@ sub_817F3F0: @ 817F3F0
bx r0
thumb_func_end sub_817F3F0
- thumb_func_start sub_817F474
-sub_817F474: @ 817F474
+ thumb_func_start GetSpeciesBackAnimId
+GetSpeciesBackAnimId: @ 817F474
push {lr}
lsls r0, 16
lsrs r0, 16
@@ -4979,6 +4979,6 @@ _0817F48C:
_0817F492:
pop {r1}
bx r1
- thumb_func_end sub_817F474
+ thumb_func_end GetSpeciesBackAnimId
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/rom_818CFC8.s b/asm/rom_818CFC8.s
index 7a703aca4..2661d4667 100644
--- a/asm/rom_818CFC8.s
+++ b/asm/rom_818CFC8.s
@@ -1263,13 +1263,13 @@ sub_818D97C: @ 818D97C
bne _0818D9A2
cmp r0, 0
beq _0818D99C
- ldr r0, =gTrainerPicIndices
+ ldr r0, =gUnknown_0831F578
adds r0, 0x3F
ldrb r0, [r0]
b _0818D9A2
.pool
_0818D99C:
- ldr r0, =gTrainerPicIndices
+ ldr r0, =gUnknown_0831F578
adds r0, 0x3C
ldrb r0, [r0]
_0818D9A2:
diff --git a/asm/rom_818E9AC.s b/asm/rom_818E9AC.s
index 0ee8404a6..41af18b05 100644
--- a/asm/rom_818E9AC.s
+++ b/asm/rom_818E9AC.s
@@ -7171,7 +7171,7 @@ _0819270A:
ldr r4, [sp, 0x24]
cmp r4, r0
bne _08192784
- ldr r0, =gTrainerClassNameIndices
+ ldr r0, =gTrainerClassToNameIndex
adds r0, 0x3C
ldrb r5, [r0]
b _081927A2
@@ -7186,7 +7186,7 @@ _08192784:
.pool
_08192798:
ldr r0, [sp, 0x24]
- bl sub_8162BD8
+ bl GetFrontierOpponentClass
_0819279E:
lsls r0, 24
lsrs r5, r0, 24
@@ -15869,7 +15869,7 @@ _0819702E:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08197050
@@ -15882,7 +15882,7 @@ _08197050:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _0819706C
@@ -40744,7 +40744,7 @@ sub_81A3DD0: @ 81A3DD0
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _081A3ED6
@@ -41123,7 +41123,7 @@ _081A4112:
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _081A412A
@@ -41472,14 +41472,14 @@ _081A4450:
ldr r0, =gStringVar1
ldr r1, =gTrainerBattleOpponent_A
ldrh r1, [r1]
- bl sub_8162E20
+ bl GetFrontierTrainerName
b _081A446E
.pool
_081A4464:
ldr r0, =gStringVar2
ldr r1, =gTrainerBattleOpponent_A
ldrh r1, [r1]
- bl sub_8162E20
+ bl GetFrontierTrainerName
_081A446E:
pop {r0}
bx r0
@@ -44244,7 +44244,7 @@ sub_81A5BE0: @ 81A5BE0
ldr r0, =gStringVar1
ldr r1, =gTrainerBattleOpponent_A
ldrh r1, [r1]
- bl sub_8162E20
+ bl GetFrontierTrainerName
pop {r0}
bx r0
.pool
@@ -51131,7 +51131,7 @@ sub_81A9424: @ 81A9424
adds r1, r0
mov r8, r1
ldr r2, =gMapObjects
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -51179,7 +51179,7 @@ _081A9488:
_081A94AE:
ldr r3, =gUnknown_08613ED8
ldr r2, =gMapObjects
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -51803,7 +51803,7 @@ _081A99CE:
cmp r0, r12
bne _081A9A8A
adds r2, 0x7
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -51964,7 +51964,7 @@ sub_81A9B04: @ 81A9B04
beq _081A9B2E
movs r0, 0x1
bl sub_80B47E0
- ldr r1, =gUnknown_03005DF0
+ ldr r1, =gSelectedMapObject
strb r0, [r1]
ldr r0, =gTrainerBattleOpponent_B
ldrh r0, [r0]
@@ -51987,7 +51987,7 @@ sub_81A9B44: @ 81A9B44
movs r3, 0
ldr r0, =gMapObjects
mov r12, r0
- ldr r6, =gUnknown_03005DF0
+ ldr r6, =gSelectedMapObject
ldr r1, =gSaveBlock1Ptr
mov r10, r1
ldr r7, =gSaveBlock2Ptr
@@ -52450,13 +52450,13 @@ sub_81A9F1C: @ 81A9F1C
.pool
thumb_func_end sub_81A9F1C
- thumb_func_start sub_81A9F3C
-sub_81A9F3C: @ 81A9F3C
+ thumb_func_start GetTrainerEncounterMusicIdInBattlePyramind
+GetTrainerEncounterMusicIdInBattlePyramind: @ 81A9F3C
push {r4,lr}
lsls r0, 16
lsrs r0, 16
movs r4, 0
- ldr r3, =gTrainerClassNameIndices
+ ldr r3, =gTrainerClassToNameIndex
ldr r1, =gUnknown_0203BC88
ldr r2, [r1]
movs r1, 0x34
@@ -52483,7 +52483,7 @@ _081A9F7A:
pop {r4}
pop {r1}
bx r1
- thumb_func_end sub_81A9F3C
+ thumb_func_end GetTrainerEncounterMusicIdInBattlePyramind
thumb_func_start sub_81A9F80
sub_81A9F80: @ 81A9F80
@@ -56182,7 +56182,7 @@ _081ABE32:
_081ABE40:
movs r0, 0x5
bl PlaySE
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
mov r1, r10
strh r1, [r0]
ldr r0, =gTasks + 0x8
@@ -56216,7 +56216,7 @@ _081ABE68:
lsrs r0, 24
adds r1, r4, 0
bl BagGetItemIdByPocketPosition
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
strh r0, [r1]
ldr r1, =gUnknown_08614054
ldrb r0, [r5, 0x4]
@@ -57126,7 +57126,7 @@ _081AC668:
.4byte _081AC70C
.4byte _081AC690
_081AC690:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemId_GetBattleUsage
lsls r0, 24
@@ -57171,7 +57171,7 @@ _081AC6E8:
b _081ACA10
.pool
_081AC70C:
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl itemid_is_unique
lsls r0, 24
@@ -57206,7 +57206,7 @@ _081AC748:
b _081ACA10
.pool
_081AC76C:
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl itemid_is_unique
lsls r0, 24
@@ -57241,7 +57241,7 @@ _081AC7A8:
b _081ACA10
.pool
_081AC7CC:
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl itemid_is_unique
lsls r0, 24
@@ -57289,7 +57289,7 @@ _081AC840:
ldrb r0, [r0, 0x5]
cmp r0, 0x4
beq _081AC856
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl sub_8122148
lsls r0, 24
@@ -57359,7 +57359,7 @@ _081AC8D4:
ldr r1, =gUnknown_0861402C
movs r2, 0x4
bl memcpy
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl itemid_is_mail
lsls r0, 24
@@ -57397,7 +57397,7 @@ _081AC92C:
ldr r0, [r0]
ldr r1, =0x00000496
adds r0, r1
- ldr r2, =gUnknown_0203CE7C
+ ldr r2, =gScriptItemId
ldrh r0, [r0]
ldrh r1, [r2]
cmp r0, r1
@@ -57473,7 +57473,7 @@ _081ACA12:
bne _081ACA50
movs r0, 0x1
bl ClearWindowTilemap
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl PrintTMHMMoveData
movs r0, 0x3
@@ -57485,7 +57485,7 @@ _081ACA12:
b _081ACA86
.pool
_081ACA50:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -57986,7 +57986,7 @@ ItemMenu_UseOutOfBattle: @ 81ACE7C
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r5, =gUnknown_0203CE7C
+ ldr r5, =gScriptItemId
ldrh r0, [r5]
bl ItemId_GetFieldFunc
cmp r0, 0
@@ -58016,7 +58016,7 @@ _081ACEB8:
ldrb r0, [r0, 0x5]
cmp r0, 0x3
beq _081ACEE8
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemId_GetFieldFunc
adds r1, r0, 0
@@ -58056,7 +58056,7 @@ ItemMenu_Toss: @ 81ACEF4
b _081ACF6A
.pool
_081ACF24:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -58106,7 +58106,7 @@ BagMenuConfirmToss: @ 81ACF88
lsls r4, 3
ldr r0, =gTasks + 0x8
adds r4, r0
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -58243,7 +58243,7 @@ BagMenuActuallyToss: @ 81AD0CC
lsls r4, 3
ldr r5, =gTasks + 0x8
adds r6, r4, r5
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -58313,7 +58313,7 @@ Task_ActuallyToss: @ 81AD150
beq _081AD1CE
movs r0, 0x5
bl PlaySE
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldrh r1, [r5, 0x10]
bl RemoveBagItem
@@ -58370,7 +58370,7 @@ ItemMenu_Register: @ 81AD1EC
ldr r0, [r0]
ldr r2, =0x00000496
adds r1, r0, r2
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r2, [r0]
ldrh r0, [r1]
cmp r0, r2
@@ -58413,7 +58413,7 @@ ItemMenu_Give: @ 81AD278
lsrs r4, r0, 24
adds r6, r4, 0
bl bag_menu_remove_some_window
- ldr r5, =gUnknown_0203CE7C
+ ldr r5, =gScriptItemId
ldrh r0, [r5]
bl itemid_80BF6D8_mail_related
lsls r0, 24
@@ -58477,7 +58477,7 @@ bag_menu_print_cant_be_held_msg: @ 81AD30C
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -58568,7 +58568,7 @@ ItemMenu_UseInBattle: @ 81AD3DC
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl ItemId_GetBattleFunc
cmp r0, 0
@@ -58602,7 +58602,7 @@ item_menu_type_2: @ 81AD41C
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl itemid_80BF6D8_mail_related
lsls r0, 24
@@ -58663,7 +58663,7 @@ item_menu_type_b: @ 81AD4B4
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r5, =gUnknown_0203CE7C
+ ldr r5, =gScriptItemId
ldrh r0, [r5]
bl itemid_is_mail
lsls r0, 24
@@ -58752,7 +58752,7 @@ _081AD550:
bl player_bitmagic
bl sub_808B864
bl sub_808BCF4
- ldr r2, =gUnknown_0203CE7C
+ ldr r2, =gScriptItemId
ldr r0, [r4]
adds r0, r5
ldrh r1, [r0]
@@ -58799,7 +58799,7 @@ display_sell_item_ask_str: @ 81AD5DC
lsls r0, 3
ldr r1, =gTasks + 0x8
adds r4, r0, r1
- ldr r6, =gUnknown_0203CE7C
+ ldr r6, =gScriptItemId
ldrh r0, [r6]
bl itemid_get_market_price
lsls r0, 16
@@ -58862,7 +58862,7 @@ sub_81AD680: @ 81AD680
ldr r0, =gTasks + 0x8
adds r4, r0
ldr r6, =gStringVar1
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl itemid_get_market_price
lsls r0, 16
@@ -58945,7 +58945,7 @@ sub_81AD730: @ 81AD730
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl itemid_get_market_price
lsls r0, 16
@@ -58997,7 +58997,7 @@ sub_81AD794: @ 81AD794
ldrb r4, [r0]
movs r2, 0x10
ldrsh r5, [r6, r2]
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl itemid_get_market_price
lsls r0, 16
@@ -59062,7 +59062,7 @@ sub_81AD84C: @ 81AD84C
lsls r4, 3
ldr r0, =gTasks + 0x8
adds r4, r0
- ldr r6, =gUnknown_0203CE7C
+ ldr r6, =gScriptItemId
ldrh r0, [r6]
ldr r1, =gStringVar2
bl CopyItemName
@@ -59123,7 +59123,7 @@ sub_81AD8C8: @ 81AD8C8
adds r5, r0
movs r0, 0x5F
bl PlaySE
- ldr r2, =gUnknown_0203CE7C
+ ldr r2, =gScriptItemId
mov r8, r2
ldrh r0, [r2]
mov r3, r10
@@ -59242,7 +59242,7 @@ display_deposit_item_ask_str: @ 81AD9EC
b _081ADA5E
.pool
_081ADA18:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -59367,7 +59367,7 @@ sub_81ADB14: @ 81ADB14
movs r0, 0x1
movs r1, 0
bl FillWindowPixelBuffer
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl itemid_is_unique
lsls r0, 24
@@ -59691,7 +59691,7 @@ _081ADDEC:
ldrb r0, [r4]
movs r1, 0x2
bl bag_menu_print_cursor_
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
movs r0, 0x4
strh r0, [r1]
adds r0, r5, 0
@@ -59727,7 +59727,7 @@ unknown_ItemMenu_Show: @ 81ADE38
lsls r4, 24
lsrs r4, 24
ldr r1, =gSpecialVar_0x8005
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
strh r0, [r1]
ldr r1, =gScriptResult
@@ -59761,7 +59761,7 @@ unknown_ItemMenu_Give2: @ 81ADE8C
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
movs r1, 0x1
bl RemoveBagItem
@@ -65475,7 +65475,7 @@ sub_81B0BFC: @ 81B0BFC
muls r1, r0
ldr r0, =gPlayerParty
adds r6, r1, r0
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r4, [r0]
ldr r0, =gUnknown_0203CEC8
ldrb r0, [r0, 0xB]
@@ -72001,7 +72001,7 @@ c2_8123744: @ 81B41F0
mov r7, r8
push {r7}
sub sp, 0xC
- ldr r6, =gUnknown_0203CE7C
+ ldr r6, =gScriptItemId
ldrh r0, [r6]
cmp r0, 0
bne _081B4224
@@ -72107,7 +72107,7 @@ sub_81B42D0: @ 81B42D0
ands r0, r1
cmp r0, 0
bne _081B432C
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r4, [r0]
ldr r0, =gUnknown_0203CEC8
mov r8, r0
@@ -72231,7 +72231,7 @@ _081B43FC:
beq _081B44DE
b _081B44EC
_081B4402:
- ldr r5, =gUnknown_0203CE7C
+ ldr r5, =gScriptItemId
ldrh r0, [r5]
movs r1, 0x1
bl RemoveBagItem
@@ -72474,7 +72474,7 @@ sub_81B4624: @ 81B4624
muls r0, r1
ldr r1, =gPlayerParty
adds r0, r1
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r1, [r1]
movs r2, 0
movs r3, 0
@@ -72482,7 +72482,7 @@ sub_81B4624: @ 81B4624
b _081B467C
.pool
_081B4670:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldrh r1, [r1]
movs r2, 0
@@ -75621,7 +75621,7 @@ _081B61BC:
movs r7, 0
movs r6, 0
_081B61C0:
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl GetItemEffectType
lsls r0, 24
@@ -76049,7 +76049,7 @@ ItemUseCB_Medicine: @ 81B6588
muls r1, r0
ldr r0, =gPlayerParty
adds r5, r1, r0
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r6, [r0]
adds r0, r5, 0
adds r1, r6, 0
@@ -76294,7 +76294,7 @@ sub_81B67C8: @ 81B67C8
muls r1, r0
ldr r0, =gPlayerParty
adds r5, r1, r0
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r6, [r0]
adds r0, r6, 0
bl GetItemEffectType
@@ -76653,7 +76653,7 @@ dp05_ether: @ 81B6AFC
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
cmp r0, 0xAF
bne _081B6B20
@@ -76762,7 +76762,7 @@ ether_effect_related: @ 81B6BEC
lsrs r6, r0, 24
movs r4, 0
ldr r7, =gUnknown_0203CED6
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r5, [r0]
movs r0, 0xE
negs r0, r0
@@ -76991,7 +76991,7 @@ sub_81B6DC4: @ 81B6DC4
movs r0, 0xE
adds r0, r7
mov r8, r0
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r4, [r0]
ldr r1, =gStringVar1
adds r0, r5, 0
@@ -77080,7 +77080,7 @@ sub_81B6EB4: @ 81B6EB4
adds r5, r1, r0
adds r6, r2, 0
adds r6, 0xE
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r4, [r0]
movs r1, 0x2
ldrsh r0, [r6, r1]
@@ -77671,7 +77671,7 @@ dp05_rare_candy: @ 81B7404
movs r1, 0x86
lsls r1, 2
adds r4, r6, r1
- ldr r2, =gUnknown_0203CE7C
+ ldr r2, =gScriptItemId
mov r8, r2
adds r0, r5, 0
movs r1, 0x38
@@ -77729,7 +77729,7 @@ _081B74B4:
ldrb r0, [r0, 0x9]
adds r1, r5, 0
bl sub_81B754C
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
movs r1, 0x1
bl RemoveBagItem
@@ -78346,7 +78346,7 @@ sub_81B7A28: @ 81B7A28
lsls r0, 16
lsrs r7, r0, 16
ldrb r0, [r6, 0x9]
- ldr r1, =gUnknown_0203CE7C
+ ldr r1, =gScriptItemId
ldrh r1, [r1]
movs r2, 0
bl ExecuteTableBasedItemEffect__
@@ -78498,7 +78498,7 @@ _081B7BC8:
ldr r1, =gUnknown_0203CEE8
movs r0, 0x1
strb r0, [r1]
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
movs r1, 0x1
bl RemoveBagItem
@@ -78574,7 +78574,7 @@ sub_81B7C74: @ 81B7C74
ldr r0, [r1]
str r0, [r2]
ldrb r0, [r1, 0x9]
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r1, [r4]
movs r2, 0
bl ExecuteTableBasedItemEffect__
@@ -78947,7 +78947,7 @@ _081B7F72:
movs r3, 0
bl sub_81B0038
ldr r1, =gUnknown_0203CEC8
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
strh r0, [r1, 0xC]
add sp, 0xC
@@ -80272,7 +80272,7 @@ sub_81B8A7C: @ 81B8A7C
bne _081B8AC4
_081B8AA2:
ldr r4, =gStringVar1
- bl sub_806EBF8
+ bl GetTrainerPartnerName
adds r1, r0, 0
adds r0, r4, 0
bl StringCopy
@@ -80378,7 +80378,7 @@ _081B8BA8:
movs r0, 0x1
strb r0, [r1]
ldr r1, =gBattlePartyID
- ldr r0, =gUnknown_020244B8
+ ldr r0, =gBankInMenu
ldrb r0, [r0]
lsls r0, 1
adds r0, r1
@@ -80410,7 +80410,7 @@ _081B8BFC:
b _081B8C42
.pool
_081B8C20:
- ldr r0, =gUnknown_020244B8
+ ldr r0, =gBankInMenu
ldrb r0, [r0]
ldr r1, =gBattlePartyID
lsls r0, 1
@@ -82460,7 +82460,7 @@ sub_81B9CF0: @ 81B9CF0
ldr r0, =gStringVar1
ldr r1, =gTrainerBattleOpponent_A
ldrh r1, [r1]
- bl sub_8162E20
+ bl GetFrontierTrainerName
pop {r0}
bx r0
.pool
diff --git a/asm/rom_81BE66C.s b/asm/rom_81BE66C.s
index 46d95ac40..ca42b7f38 100644
--- a/asm/rom_81BE66C.s
+++ b/asm/rom_81BE66C.s
@@ -2290,7 +2290,7 @@ _081BF9EE:
strb r1, [r0]
movs r0, 0xFF
bl sub_81C488C
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
cmp r0, 0
bne _081BFA12
@@ -3447,7 +3447,7 @@ sub_81C0484: @ 81C0484
movs r2, 0x80
lsls r2, 1
bl m4aMPlayVolumeControl
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r0, [r0]
cmp r0, 0
bne _081C04E2
@@ -10970,7 +10970,7 @@ _081C4620:
lsls r0, r2, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x8]
b _081C46D6
@@ -10980,12 +10980,12 @@ _081C4668:
lsls r0, r2, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
b _081C46B0
.pool
_081C4680:
- ldr r0, =gUnknown_020244D4
+ ldr r0, =gBattleSpritesGfx
ldr r3, [r0]
adds r4, r0, 0
cmp r3, 0
@@ -11162,7 +11162,7 @@ sub_81C47B4: @ 81C47B4
ands r0, r1
strb r0, [r7, 0x5]
ldrh r0, [r6, 0x2]
- bl sub_806E840
+ bl IsPokeSpriteNotFlipped
lsls r0, 24
cmp r0, 0
bne _081C4828
@@ -11210,7 +11210,7 @@ sub_81C4844: @ 81C4844
cmp r0, 0x1
beq _081C487E
ldrh r0, [r4, 0x2E]
- bl sub_806E840
+ bl IsPokeSpriteNotFlipped
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x30]
@@ -11218,7 +11218,7 @@ sub_81C4844: @ 81C4844
ldrh r1, [r4, 0x2E]
ldrb r2, [r5, 0x4]
adds r0, r4, 0
- bl sub_806EE0C
+ bl PokemonSummaryDoMonAnimation
_081C487E:
pop {r4,r5}
pop {r0}
@@ -13574,7 +13574,7 @@ _081C5C5C:
_081C5C88:
movs r0, 0x5
bl PlaySE
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
strh r4, [r0]
adds r0, r5, 0
bl sub_81C5B14
@@ -13583,7 +13583,7 @@ _081C5C88:
_081C5CA0:
movs r0, 0x5
bl PlaySE
- ldr r2, =gUnknown_0203CE7C
+ ldr r2, =gScriptItemId
mov r12, r2
ldr r0, =gSaveBlock2Ptr
ldr r2, [r0]
@@ -13670,7 +13670,7 @@ sub_81C5D20: @ 81C5D20
b _081C5DD8
.pool
_081C5D74:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
bl ItemId_GetBattleUsage
lsls r0, 24
@@ -13711,7 +13711,7 @@ _081C5DCE:
_081C5DD8:
strb r0, [r1]
_081C5DDA:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -14184,7 +14184,7 @@ sub_81C61E0: @ 81C61E0
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl ItemId_GetPocket
lsls r0, 24
@@ -14304,7 +14304,7 @@ sub_81C62C4: @ 81C62C4
b _081C6334
.pool
_081C62F4:
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -14351,7 +14351,7 @@ sub_81C6350: @ 81C6350
lsls r4, 3
ldr r0, =gTasks + 0x8
adds r4, r0
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -14566,7 +14566,7 @@ sub_81C654C: @ 81C654C
lsls r4, 3
ldr r5, =gTasks + 0x8
adds r6, r4, r5
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -14624,7 +14624,7 @@ sub_81C65CC: @ 81C65CC
beq _081C662E
movs r0, 0x5
bl PlaySE
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldrh r1, [r4, 0x10]
bl RemovePyramidBagItem
@@ -14660,7 +14660,7 @@ sub_81C6648: @ 81C6648
lsrs r4, r0, 24
adds r6, r4, 0
bl sub_81C61A8
- ldr r5, =gUnknown_0203CE7C
+ ldr r5, =gScriptItemId
ldrh r0, [r5]
bl itemid_is_mail
lsls r0, 24
@@ -14702,7 +14702,7 @@ sub_81C66AC: @ 81C66AC
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r0, =gUnknown_0203CE7C
+ ldr r0, =gScriptItemId
ldrh r0, [r0]
ldr r1, =gStringVar1
bl CopyItemName
@@ -14774,7 +14774,7 @@ sub_81C674C: @ 81C674C
lsls r0, 24
lsrs r4, r0, 24
adds r6, r4, 0
- ldr r5, =gUnknown_0203CE7C
+ ldr r5, =gScriptItemId
ldrh r0, [r5]
bl itemid_80BF6D8_mail_related
lsls r0, 24
@@ -14809,7 +14809,7 @@ sub_81C679C: @ 81C679C
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, =gUnknown_0203CE7C
+ ldr r4, =gScriptItemId
ldrh r0, [r4]
bl ItemId_GetBattleFunc
cmp r0, 0
@@ -23949,7 +23949,7 @@ _081CAF34:
adds r0, r5, 0
bl sub_81D1BD0
adds r4, r0, 0
- ldr r0, =gTrainerPicIndices
+ ldr r0, =gUnknown_0831F578
adds r0, r4, r0
ldrb r0, [r0]
b _081CAF6C
@@ -28902,7 +28902,7 @@ sub_81CD624: @ 81CD624
bl sub_81D2C68
cmp r0, 0
beq _081CD690
- ldr r1, =gUnknown_085E8264
+ ldr r1, =gEggNickname
adds r0, r5, 0
movs r2, 0
movs r3, 0xC
@@ -28946,7 +28946,7 @@ _081CD690:
_081CD6E0:
mov r0, r8
mov r1, r9
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
adds r4, r0, 0
bl GetBoxMonGender
lsls r0, 24
@@ -33128,7 +33128,7 @@ sub_81CF8E4: @ 81CF8E4
_081CF924:
ldrb r0, [r2]
ldrb r1, [r2, 0x1]
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
adds r4, r0, 0
bl GetBoxMonGender
lsls r0, 24
@@ -34505,7 +34505,7 @@ sub_81D035C: @ 81D035C
_081D03A4:
ldrb r0, [r7]
ldrb r1, [r7, 0x1]
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
adds r4, r0, 0
bl GetBoxMonGender
lsls r0, 24
@@ -34992,7 +34992,7 @@ sub_81D06E4: @ 81D06E4
_081D0730:
ldrb r0, [r1]
ldrb r1, [r1, 0x1]
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
adds r4, r0, 0
bl GetBoxMonGender
strb r0, [r6]
@@ -35049,7 +35049,7 @@ sub_81D0760: @ 81D0760
_081D07AC:
ldrb r0, [r1]
ldrb r1, [r1, 0x1]
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
adds r4, r0, 0
movs r1, 0xB
bl GetBoxMonData
@@ -39944,7 +39944,7 @@ sub_81D2CD0: @ 81D2CD0
bl sub_81D2C68
cmp r0, 0
beq _081D2D20
- ldr r1, =gUnknown_085E8264
+ ldr r1, =gEggNickname
adds r0, r5, 0
movs r2, 0
movs r3, 0xC
@@ -39990,7 +39990,7 @@ _081D2D70:
lsrs r0, 24
lsls r1, r6, 24
lsrs r1, 24
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
adds r4, r0, 0
bl GetBoxMonGender
lsls r0, 24
@@ -44939,7 +44939,7 @@ sub_81D5530: @ 81D5530
lsls r1, 24
adds r0, r1
lsrs r0, 24
- ldr r2, =gTrainerClassNameIndices
+ ldr r2, =gTrainerClassToNameIndex
ldr r1, =gUnknown_0203CF58
ldr r1, [r1]
adds r1, 0x16
@@ -45006,7 +45006,7 @@ sub_81D5588: @ 81D5588
adds r3, r0
ldrb r4, [r3, 0x1B]
bl sub_81D5710
- ldr r0, =gTrainerPicIndices
+ ldr r0, =gUnknown_0831F578
adds r4, r0
ldrb r0, [r4]
pop {r4}
@@ -46715,7 +46715,7 @@ sub_81D63C8: @ 81D63C8
ldrb r4, [r3, 0x1B]
bl sub_81D5710
movs r2, 0
- ldr r0, =gTrainerClassNameIndices
+ ldr r0, =gTrainerClassToNameIndex
adds r4, r0
ldrb r3, [r4]
ldr r1, =gUnknown_0862A3B4
diff --git a/asm/scrcmd.s b/asm/scrcmd.s
index 6d531821c..39366d29f 100644
--- a/asm/scrcmd.s
+++ b/asm/scrcmd.s
@@ -2988,7 +2988,7 @@ sA9_unknown: @ 809A974
s5A_face_player: @ 809A9A4
push {r4,lr}
ldr r2, =gMapObjects
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -3164,7 +3164,7 @@ sub_809AAEC: @ 809AAEC
b _0809AB3A
_0809AAFC:
ldr r2, =gMapObjects
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -3224,7 +3224,7 @@ s6C_release_2: @ 809AB7C
push {r4,lr}
bl textbox_close
ldr r4, =gMapObjects
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -5379,7 +5379,7 @@ sub_809BBDC: @ 809BBDC
sub_809BBE8: @ 809BBE8
push {lr}
bl sub_80B47BC
- ldr r1, =gUnknown_03005DF0
+ ldr r1, =gSelectedMapObject
strb r0, [r1]
movs r0, 0
pop {r1}
@@ -5398,7 +5398,7 @@ sub_809BBFC: @ 809BBFC
b _0809BC30
_0809BC0C:
ldr r2, =gMapObjects
- ldr r0, =gUnknown_03005DF0
+ ldr r0, =gSelectedMapObject
ldrb r1, [r0]
lsls r0, r1, 3
adds r0, r1
@@ -5630,7 +5630,7 @@ sub_809BDD0: @ 809BDD0
lsls r4, 2
adds r4, r1
ldr r4, [r4]
- bl sub_806F07C
+ bl GetTrainerClassNameFromId
adds r1, r0, 0
adds r0, r4, 0
bl StringCopy
@@ -5658,7 +5658,7 @@ sub_809BE0C: @ 809BE0C
lsls r4, 2
adds r4, r1
ldr r4, [r4]
- bl sub_806F0B0
+ bl GetTrainerNameFromId
adds r1, r0, 0
adds r0, r4, 0
bl StringCopy
diff --git a/asm/script_pokemon_util_80F87D8.s b/asm/script_pokemon_util_80F87D8.s
index e5193c4d2..e26194298 100644
--- a/asm/script_pokemon_util_80F87D8.s
+++ b/asm/script_pokemon_util_80F87D8.s
@@ -710,7 +710,7 @@ _080F8D44:
lsls r0, r6, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x8]
adds r2, r6, 0
@@ -776,7 +776,7 @@ _080F8DD8:
adds r1, r6, 0
movs r2, 0
movs r3, 0
- bl sub_806ED40
+ bl DoMonFrontSpriteAnimation
b _080F8E6C
.pool
_080F8E58:
@@ -788,7 +788,7 @@ _080F8E58:
adds r1, r6, 0
movs r2, 0
movs r3, 0
- bl sub_806ED40
+ bl DoMonFrontSpriteAnimation
_080F8E6C:
ldr r1, =gTasks
lsls r0, r7, 2
@@ -1320,10 +1320,10 @@ sub_80F9244: @ 80F9244
blt _080F92B8
adds r0, r5, 0
movs r1, 0x2
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
adds r0, r5, 0
movs r1, 0x3
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
_080F92B8:
adds r0, r4, 0
add sp, 0x78
diff --git a/asm/trade.s b/asm/trade.s
index 6a46acb8c..3f9323971 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -288,7 +288,7 @@ sub_80773AC: @ 80773AC
ldr r0, =gMain
movs r1, 0
str r1, [r0]
- ldr r0, =gUnknown_020244EA
+ ldr r0, =gEnemyPartyCount
strb r1, [r0]
pop {r0}
bx r0
@@ -600,7 +600,7 @@ _080776A8:
adds r0, 0x36
strb r1, [r0]
ldr r0, [r2]
- ldr r1, =gUnknown_020244EA
+ ldr r1, =gEnemyPartyCount
ldrb r1, [r1]
adds r0, 0x37
strb r1, [r0]
@@ -1211,7 +1211,7 @@ _08077C6C:
adds r0, 0x36
strb r1, [r0]
ldr r0, [r4]
- ldr r1, =gUnknown_020244EA
+ ldr r1, =gEnemyPartyCount
ldrb r1, [r1]
adds r0, 0x37
strb r1, [r0]
@@ -7128,7 +7128,7 @@ _0807AD58:
lsls r0, r5, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
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, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r2, [r1]
lsls r4, r6, 1
adds r1, r4, 0x1
@@ -7885,11 +7885,11 @@ sub_807B464: @ 807B464
lsrs r4, 16
adds r0, r4, 0
movs r1, 0x2
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
adds r0, r4, 0
movs r1, 0x3
adds r2, r5, 0
- bl SetPokedexFlag
+ bl HandleSetPokedexFlag
_0807B4B8:
pop {r4,r5}
pop {r0}
@@ -9588,7 +9588,7 @@ _0807C66C:
ldr r0, [r5]
adds r0, 0xF0
ldrh r0, [r0]
- bl sub_806E840
+ bl IsPokeSpriteNotFlipped
lsls r0, 24
cmp r0, 0
bne _0807C6E4
@@ -10369,7 +10369,7 @@ _0807CCEE:
lsls r0, r2, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x10]
ldr r3, [r3, 0x6C]
@@ -11662,7 +11662,7 @@ _0807DA74:
ldr r0, [r5]
adds r0, 0xF0
ldrh r0, [r0]
- bl sub_806E840
+ bl IsPokeSpriteNotFlipped
lsls r0, 24
cmp r0, 0
bne _0807DAEC
@@ -12474,7 +12474,7 @@ _0807E13A:
lsls r0, r2, 3
ldr r1, =gMonFrontPicTable
adds r0, r1
- ldr r1, =gUnknown_020244D4
+ ldr r1, =gBattleSpritesGfx
ldr r1, [r1]
ldr r1, [r1, 0x10]
ldr r3, [r3, 0x6C]
diff --git a/asm/trainer_card.s b/asm/trainer_card.s
index 202c4f75e..ec0b58653 100644
--- a/asm/trainer_card.s
+++ b/asm/trainer_card.s
@@ -4754,7 +4754,7 @@ sub_80C4FF0: @ 80C4FF0
ldr r1, =0x00000583
adds r0, r1
ldrb r0, [r0]
- bl TrainerClassToTrainerPic
+ bl sub_806EFF0
lsls r0, 16
lsrs r0, 16
ldr r4, =gUnknown_0856FB18
@@ -4795,7 +4795,7 @@ _080C5060:
adds r0, r1
adds r0, r2
ldrb r0, [r0]
- bl TrainerClassToTrainerPic
+ bl sub_806EFF0
lsls r0, 16
lsrs r0, 16
ldr r4, =gUnknown_0856FB18
diff --git a/asm/tv.s b/asm/tv.s
index 12f1852ff..2ebdfc0a1 100644
--- a/asm/tv.s
+++ b/asm/tv.s
@@ -6988,7 +6988,7 @@ _080EFA62:
lsls r0, 16
lsrs r0, 16
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
asrs r0, 24
cmp r0, 0x1
@@ -7570,7 +7570,7 @@ sub_80EFEC4: @ 80EFEC4
ldrb r0, [r0]
ldr r1, =gSpecialVar_0x8013
ldrb r1, [r1]
- bl get_pokemon_by_box_and_pos
+ bl GetBoxedMonPtr
adds r6, r0, 0
ldr r2, =gStringVar3
movs r1, 0x2
@@ -9041,7 +9041,7 @@ sub_80F0B24: @ 80F0B24
lsls r0, 16
lsrs r0, 16
movs r1, 0
- bl pokedex_flag_operation
+ bl GetSetPokedexFlag
lsls r0, 24
asrs r2, r0, 24
cmp r2, 0