summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_frontier_1.s6
-rw-r--r--asm/battle_records.s2
-rw-r--r--asm/battle_tower.s2
-rw-r--r--asm/cable_car.s2
-rw-r--r--asm/cable_club.s10
-rw-r--r--asm/contest.s2
-rw-r--r--asm/contest_link_80F57C4.s2
-rw-r--r--asm/field_control_avatar.s14
-rw-r--r--asm/field_effect.s14
-rw-r--r--asm/field_screen.s6
-rw-r--r--asm/field_specials.s8
-rw-r--r--asm/field_tasks.s8
-rw-r--r--asm/item_menu.s8
-rw-r--r--asm/learn_move.s2
-rw-r--r--asm/main_menu.s2
-rw-r--r--asm/overworld.s4352
-rw-r--r--asm/party_menu.s22
-rw-r--r--asm/player_pc.s6
-rw-r--r--asm/pokedex.s2
-rw-r--r--asm/pokemon_storage_system.s2
-rw-r--r--asm/pokemon_summary_screen.s4
-rw-r--r--asm/pokenav.s10
-rw-r--r--asm/rom_8011DC0.s30
-rw-r--r--asm/rotating_gate.s6
-rw-r--r--asm/roulette.s2
-rw-r--r--asm/script_pokemon_util_80F87D8.s6
-rw-r--r--asm/shop.s4
-rw-r--r--asm/start_menu.s10
-rw-r--r--asm/trade.s4
29 files changed, 98 insertions, 4450 deletions
diff --git a/asm/battle_frontier_1.s b/asm/battle_frontier_1.s
index 43966b607..e3094b955 100644
--- a/asm/battle_frontier_1.s
+++ b/asm/battle_frontier_1.s
@@ -6481,7 +6481,7 @@ _0819218E:
mov r0, r9
cmp r0, 0
bne _081921C4
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
b _081921FC
.pool
@@ -9539,7 +9539,7 @@ _08193B84:
ldr r0, [r4]
bl Free
str r6, [r4]
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
ldr r1, =gTasks
lsls r0, r5, 2
@@ -11320,7 +11320,7 @@ _08194B24:
ands r0, r1
cmp r0, 0
bne _08194B3C
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
adds r0, r4, 0
bl DestroyTask
diff --git a/asm/battle_records.s b/asm/battle_records.s
index b203f339b..1880e7b45 100644
--- a/asm/battle_records.s
+++ b/asm/battle_records.s
@@ -855,7 +855,7 @@ sub_813C664: @ 813C664
ands r0, r1
cmp r0, 0
bne _0813C694
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
ldr r0, =gUnknown_0203AB78
ldr r0, [r0]
diff --git a/asm/battle_tower.s b/asm/battle_tower.s
index 13641fef0..eb89d4d79 100644
--- a/asm/battle_tower.s
+++ b/asm/battle_tower.s
@@ -3172,7 +3172,7 @@ _08163A3C:
_08163A74:
bl sub_816537C
_08163A78:
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
add sp, 0x4
pop {r4-r6}
diff --git a/asm/cable_car.s b/asm/cable_car.s
index 6fd44dd9f..bfb96cb9b 100644
--- a/asm/cable_car.s
+++ b/asm/cable_car.s
@@ -777,7 +777,7 @@ _08150340:
bl warp_in
ldr r0, =gFieldCallback
str r4, [r0]
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
add sp, 0x8
pop {r3}
diff --git a/asm/cable_club.s b/asm/cable_club.s
index 885689e85..0bdda588e 100644
--- a/asm/cable_club.s
+++ b/asm/cable_club.s
@@ -736,7 +736,7 @@ _080B2984:
.pool
_080B2994:
bl GetLinkPlayerCount_2
- ldr r4, =gUnknown_03005DB8
+ ldr r4, =gFieldLinkPlayerCount
strb r0, [r4]
bl GetMultiplayerId
ldr r1, =gUnknown_03005DB4
@@ -826,7 +826,7 @@ _080B2A4E:
.pool
_080B2A6C:
bl GetLinkPlayerCount_2
- ldr r4, =gUnknown_03005DB8
+ ldr r4, =gFieldLinkPlayerCount
strb r0, [r4]
bl GetMultiplayerId
ldr r1, =gUnknown_03005DB4
@@ -2132,12 +2132,12 @@ _080B35E0:
ldrb r0, [r0]
cmp r0, 0
bne _080B35FE
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
b _080B35FE
.pool
_080B35F8:
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
_080B35FE:
bl RunTasks
@@ -2586,7 +2586,7 @@ sp02A_crash_sound: @ 80B39BC
push {lr}
ldr r0, =gSpecialVar_0x8006
ldrb r0, [r0]
- ldr r1, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r1, =CB2_ReturnToFieldContinueScript
bl sub_80C4E74
pop {r0}
bx r0
diff --git a/asm/contest.s b/asm/contest.s
index 8ea0d2d94..327a80d75 100644
--- a/asm/contest.s
+++ b/asm/contest.s
@@ -5588,7 +5588,7 @@ sub_80DA830: @ 80DA830
bl FreeAllWindowBuffers
bl sub_80D7A5C
bl FreeMonSpritesGfx
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
_080DA860:
pop {r0}
diff --git a/asm/contest_link_80F57C4.s b/asm/contest_link_80F57C4.s
index c07be821f..450a235d5 100644
--- a/asm/contest_link_80F57C4.s
+++ b/asm/contest_link_80F57C4.s
@@ -1825,7 +1825,7 @@ _080F6884:
adds r0, r5, 0
bl DestroyTask
bl FreeAllWindowBuffers
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
bl sub_80F7E64
_080F68A8:
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index 240437049..c1c96272f 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -5,8 +5,8 @@
.text
- thumb_func_start sub_809BEDC
-sub_809BEDC: @ 809BEDC
+ thumb_func_start FieldClearPlayerInput
+FieldClearPlayerInput: @ 809BEDC
push {r4,r5,lr}
movs r1, 0x2
negs r1, r1
@@ -29,11 +29,11 @@ sub_809BEDC: @ 809BEDC
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_809BEDC
+ thumb_func_end FieldClearPlayerInput
- thumb_func_start process_overworld_input
-@ void process_overworld_input(overworld_input_data *input_data, char buttons_new, char buttons_held)
-process_overworld_input: @ 809BF08
+ thumb_func_start FieldGetPlayerInput
+@ void FieldGetPlayerInput(overworld_input_data *input_data, char buttons_new, char buttons_held)
+FieldGetPlayerInput: @ 809BF08
push {r4-r7,lr}
mov r7, r9
mov r6, r8
@@ -176,7 +176,7 @@ _0809C006:
pop {r4-r7}
pop {r0}
bx r0
- thumb_func_end process_overworld_input
+ thumb_func_end FieldGetPlayerInput
thumb_func_start sub_809C014
@ int sub_809C014(overworld_input_data *input_data)
diff --git a/asm/field_effect.s b/asm/field_effect.s
index 6d35cca61..91cd0c972 100644
--- a/asm/field_effect.s
+++ b/asm/field_effect.s
@@ -1943,7 +1943,7 @@ _080B69D4:
thumb_func_start sub_80B69DC
sub_80B69DC: @ 80B69DC
push {lr}
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
ldr r1, =gFieldCallback
ldr r0, =mapldr_080842E8
@@ -2010,7 +2010,7 @@ _080B6A64:
bne _080B6A8A
bl Overworld_ResetStateAfterFly
bl warp_in
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
ldr r1, =gFieldCallback
ldr r0, =mapldr_08084390
@@ -2764,7 +2764,7 @@ sub_80B7060: @ 80B7060
ldr r1, =gFieldCallback
ldr r0, =sub_80B70B4
str r0, [r1]
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
ldr r0, =sub_80B6E88
bl FindTaskIdByFunc
@@ -3730,7 +3730,7 @@ sub_80B7814: @ 80B7814
ldr r1, =gFieldCallback
ldr r0, =mapldr_080851BC
str r0, [r1]
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
ldr r0, =sub_80B75F0
bl FindTaskIdByFunc
@@ -4205,7 +4205,7 @@ sub_80B7BF4: @ 80B7BF4
ldr r1, =gFieldCallback
ldr r0, =sub_80B6B68
str r0, [r1]
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
ldr r0, =sub_80B7A8C
bl FindTaskIdByFunc
@@ -4402,7 +4402,7 @@ _080B7D86:
ldr r1, =gFieldCallback
ldr r0, =mapldr_080859D4
str r0, [r1]
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
ldr r0, =sub_80B7CE4
bl FindTaskIdByFunc
@@ -4883,7 +4883,7 @@ _080B81B8:
bne _080B81E6
bl Overworld_SetWarpDestToLastHealLoc
bl warp_in
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
ldr r1, =gFieldCallback
ldr r0, =mapldr_08085D88
diff --git a/asm/field_screen.s b/asm/field_screen.s
index 0caa07a1b..2a539d111 100644
--- a/asm/field_screen.s
+++ b/asm/field_screen.s
@@ -9015,7 +9015,7 @@ _080AF9D0:
cmp r0, 0
bne _080AF9E8
bl warp_in
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
adds r0, r5, 0
bl DestroyTask
@@ -9087,7 +9087,7 @@ _080AFA64:
b _080AFA7C
_080AFA6C:
bl warp_in
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
adds r0, r6, 0
bl DestroyTask
@@ -10060,7 +10060,7 @@ _080B0222:
b _080B023A
_080B022A:
bl warp_in
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl SetMainCallback2
adds r0, r5, 0
bl DestroyTask
diff --git a/asm/field_specials.s b/asm/field_specials.s
index c1624cd0a..29c6dc800 100644
--- a/asm/field_specials.s
+++ b/asm/field_specials.s
@@ -20,7 +20,7 @@ Special_ShowDiploma: @ 8137CB4
Special_ViewWallClock: @ 8137CC8
push {lr}
ldr r0, =gMain
- ldr r1, =c2_exit_to_overworld_2_switch
+ ldr r1, =CB2_ReturnToField
str r1, [r0, 0x8]
ldr r0, =Cb2_ViewWallClock
bl SetMainCallback2
@@ -1906,7 +1906,7 @@ _08138C7E:
thumb_func_start CB2_FieldShowRegionMap
CB2_FieldShowRegionMap: @ 8138C84
push {lr}
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl sub_817018C
pop {r0}
bx r0
@@ -7153,14 +7153,14 @@ sub_813B7D8: @ 813B7D8
ldrh r0, [r0]
cmp r0, 0
bne _0813B7F8
- ldr r2, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r2, =CB2_ReturnToFieldContinueScript
movs r0, 0
movs r1, 0x1
bl DoRayquazaScene
b _0813B802
.pool
_0813B7F8:
- ldr r2, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r2, =CB2_ReturnToFieldContinueScript
movs r0, 0x1
movs r1, 0
bl DoRayquazaScene
diff --git a/asm/field_tasks.s b/asm/field_tasks.s
index 79980ec46..09f5bbc9b 100644
--- a/asm/field_tasks.s
+++ b/asm/field_tasks.s
@@ -88,7 +88,7 @@ sub_809D908: @ 809D908
bl sub_809D8B8
adds r0, r4, 0x2
adds r1, r4, 0x4
- bl wild_encounter_related
+ bl UpdateAmbientCry
_0809D930:
pop {r4}
pop {r0}
@@ -96,8 +96,8 @@ _0809D930:
.pool
thumb_func_end sub_809D908
- thumb_func_start overworld_ensure_per_step_coros_running
-overworld_ensure_per_step_coros_running: @ 809D93C
+ thumb_func_start SetUpFieldTasks
+SetUpFieldTasks: @ 809D93C
push {r4,r5,lr}
ldr r5, =task_per_step_callback_manager
adds r0, r5, 0
@@ -142,7 +142,7 @@ _0809D992:
pop {r0}
bx r0
.pool
- thumb_func_end overworld_ensure_per_step_coros_running
+ thumb_func_end SetUpFieldTasks
thumb_func_start ActivatePerStepCallback
ActivatePerStepCallback: @ 809D9A8
diff --git a/asm/item_menu.s b/asm/item_menu.s
index 010e83c49..654729a94 100644
--- a/asm/item_menu.s
+++ b/asm/item_menu.s
@@ -31,7 +31,7 @@ ResetBagScrollPositions: @ 81AAB70
@ void CB2_BagMenuFromStartMenu()
CB2_BagMenuFromStartMenu: @ 81AAB9C
push {lr}
- ldr r2, =sub_8086194
+ ldr r2, =CB2_ReturnToFieldWithOpenMenu
movs r0, 0
movs r1, 0x5
bl GoToBagMenu
@@ -5747,7 +5747,7 @@ bag_menu_leave_maybe_3: @ 81ADE6C
ldr r0, =gFieldCallback
ldr r1, =sub_819FA50
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
@@ -5782,7 +5782,7 @@ bag_menu_leave_maybe_2: @ 81ADEBC
ldr r0, =gFieldCallback
ldr r1, =sub_818DEF4
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
@@ -5813,7 +5813,7 @@ bag_menu_leave_maybe: @ 81ADF00
ldr r0, =gFieldCallback
ldr r1, =sub_818E564
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
diff --git a/asm/learn_move.s b/asm/learn_move.s
index f42514e68..56f6f84c7 100644
--- a/asm/learn_move.s
+++ b/asm/learn_move.s
@@ -713,7 +713,7 @@ _08160CD8:
b _08160E8A
_08160CE6:
bl sub_8160EA0
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
b _08160E8A
.pool
diff --git a/asm/main_menu.s b/asm/main_menu.s
index 48d1411c5..8ea65fbec 100644
--- a/asm/main_menu.s
+++ b/asm/main_menu.s
@@ -1480,7 +1480,7 @@ _08030444:
strh r1, [r0]
ldr r0, =gPlttBufferFaded
strh r1, [r0]
- ldr r0, =sub_8086230
+ ldr r0, =CB2_ContinueSavedGame
b _0803048A
.pool
_08030460:
diff --git a/asm/overworld.s b/asm/overworld.s
deleted file mode 100644
index d74a2674b..000000000
--- a/asm/overworld.s
+++ /dev/null
@@ -1,4352 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
-
-
- thumb_func_start sub_80859BC
-sub_80859BC: @ 80859BC
- push {r4,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- ldr r0, =sIsAmbientCryWaterMon
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080859F0
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsSurfableWaterOrUnderwater
- lsls r0, 24
- cmp r0, 0
- beq _08085A2C
-_080859F0:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x58
- bl __umodsi3
- adds r4, r0, 0
- adds r4, 0xD4
- lsls r4, 24
- lsrs r4, 24
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1E
- bl __umodsi3
- adds r2, r0, 0
- adds r2, 0x32
- ldr r0, =sAmbientCrySpecies
- ldrh r0, [r0]
- lsls r4, 24
- asrs r4, 24
- lsls r2, 24
- asrs r2, 24
- adds r1, r4, 0
- movs r3, 0x1
- bl PlayCry2
-_08085A2C:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80859BC
-
- thumb_func_start wild_encounter_related
-wild_encounter_related: @ 8085A3C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r6, r0, 0
- adds r7, r1, 0
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0x4
- bhi _08085B20
- lsls r0, 2
- ldr r1, =_08085A60
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08085A60:
- .4byte _08085A74
- .4byte _08085A88
- .4byte _08085AA4
- .4byte _08085B0C
- .4byte _08085B20
-_08085A74:
- ldr r0, =sAmbientCrySpecies
- ldrh r0, [r0]
- cmp r0, 0
- bne _08085A84
- movs r0, 0x4
- b _08085B1E
- .pool
-_08085A84:
- movs r0, 0x1
- b _08085B1E
-_08085A88:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x96
- lsls r1, 4
- bl __umodsi3
- movs r1, 0x96
- lsls r1, 3
- adds r0, r1
- strh r0, [r7]
- movs r0, 0x3
- b _08085B1E
-_08085AA4:
- movs r0, 0x1
- mov r9, r0
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r5, 0
- b _08085ABC
-_08085AB6:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_08085ABC:
- cmp r5, r8
- bcs _08085AE4
- movs r0, 0x64
- muls r0, r5
- ldr r4, =gPlayerParty
- adds r0, r4
- movs r1, 0x6
- bl GetMonData
- cmp r0, 0
- bne _08085AB6
- adds r0, r4, 0
- bl GetMonAbility
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x44
- bne _08085AB6
- movs r1, 0x2
- mov r9, r1
-_08085AE4:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r4, 0x96
- lsls r4, 3
- adds r1, r4, 0
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- adds r0, r4
- mov r1, r9
- bl __divsi3
- strh r0, [r7]
- movs r0, 0x3
- b _08085B1E
- .pool
-_08085B0C:
- ldrh r0, [r7]
- subs r0, 0x1
- strh r0, [r7]
- lsls r0, 16
- cmp r0, 0
- bne _08085B20
- bl sub_80859BC
- movs r0, 0x2
-_08085B1E:
- strh r0, [r6]
-_08085B20:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end wild_encounter_related
-
- thumb_func_start ChooseAmbientCrySpecies
-ChooseAmbientCrySpecies: @ 8085B2C
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- movs r0, 0xB4
- lsls r0, 6
- cmp r1, r0
- bne _08085B5C
- bl IsMirageIslandPresent
- lsls r0, 24
- cmp r0, 0
- bne _08085B5C
- ldr r1, =sIsAmbientCryWaterMon
- movs r0, 0x1
- strb r0, [r1]
- bl GetLocalWaterMon
- b _08085B62
- .pool
-_08085B5C:
- ldr r0, =sIsAmbientCryWaterMon
- bl GetLocalWildMon
-_08085B62:
- ldr r1, =sAmbientCrySpecies
- strh r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end ChooseAmbientCrySpecies
-
- thumb_func_start GetMapTypeByGroupAndId
-@ int GetMapTypeByGroupAndId(int bank, int number)
-GetMapTypeByGroupAndId: @ 8085B74
- push {lr}
- lsls r0, 24
- asrs r0, 8
- lsrs r0, 16
- lsls r1, 24
- asrs r1, 8
- lsrs r1, 16
- bl Overworld_GetMapHeaderByGroupAndId
- ldrb r0, [r0, 0x17]
- pop {r1}
- bx r1
- thumb_func_end GetMapTypeByGroupAndId
-
- thumb_func_start get_map_light_level_from_warp
-@ int get_map_light_level_from_warp(warpdata *warp)
-get_map_light_level_from_warp: @ 8085B8C
- push {lr}
- movs r2, 0
- ldrsb r2, [r0, r2]
- movs r1, 0x1
- ldrsb r1, [r0, r1]
- adds r0, r2, 0
- bl GetMapTypeByGroupAndId
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end get_map_light_level_from_warp
-
- thumb_func_start Overworld_GetMapTypeOfSaveblockLocation
-Overworld_GetMapTypeOfSaveblockLocation: @ 8085BA4
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x4
- bl get_map_light_level_from_warp
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end Overworld_GetMapTypeOfSaveblockLocation
-
- thumb_func_start get_map_light_from_warp0
-get_map_light_from_warp0: @ 8085BBC
- push {lr}
- ldr r0, =gUnknown_020322DC
- bl get_map_light_level_from_warp
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end get_map_light_from_warp0
-
- thumb_func_start is_light_level_1_2_3_5_or_6
-is_light_level_1_2_3_5_or_6: @ 8085BD0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _08085BEA
- cmp r0, 0x1
- beq _08085BEA
- cmp r0, 0x5
- beq _08085BEA
- cmp r0, 0x2
- beq _08085BEA
- cmp r0, 0x6
- bne _08085BEE
-_08085BEA:
- movs r0, 0x1
- b _08085BF0
-_08085BEE:
- movs r0, 0
-_08085BF0:
- pop {r1}
- bx r1
- thumb_func_end is_light_level_1_2_3_5_or_6
-
- thumb_func_start Overworld_MapTypeAllowsTeleportAndFly
-Overworld_MapTypeAllowsTeleportAndFly: @ 8085BF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _08085C0A
- cmp r0, 0x1
- beq _08085C0A
- cmp r0, 0x6
- beq _08085C0A
- cmp r0, 0x2
- bne _08085C0E
-_08085C0A:
- movs r0, 0x1
- b _08085C10
-_08085C0E:
- movs r0, 0
-_08085C10:
- pop {r1}
- bx r1
- thumb_func_end Overworld_MapTypeAllowsTeleportAndFly
-
- thumb_func_start Overworld_MapTypeIsIndoors
-Overworld_MapTypeIsIndoors: @ 8085C14
- push {lr}
- lsls r0, 24
- movs r1, 0xF8
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08085C28
- movs r0, 0
- b _08085C2A
-_08085C28:
- movs r0, 0x1
-_08085C2A:
- pop {r1}
- bx r1
- thumb_func_end Overworld_MapTypeIsIndoors
-
- thumb_func_start sav1_saved_warp2_map_get_name
-sav1_saved_warp2_map_get_name: @ 8085C30
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x14
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x15]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl Overworld_GetMapHeaderByGroupAndId
- ldrb r0, [r0, 0x14]
- pop {r1}
- bx r1
- .pool
- thumb_func_end sav1_saved_warp2_map_get_name
-
- thumb_func_start sav1_map_get_name
-sav1_map_get_name: @ 8085C58
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x5]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl Overworld_GetMapHeaderByGroupAndId
- ldrb r0, [r0, 0x14]
- pop {r1}
- bx r1
- .pool
- thumb_func_end sav1_map_get_name
-
- thumb_func_start GetCurrentMapBattleScene
-GetCurrentMapBattleScene: @ 8085C80
- push {lr}
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x5]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl Overworld_GetMapHeaderByGroupAndId
- ldrb r0, [r0, 0x1B]
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetCurrentMapBattleScene
-
- thumb_func_start overworld_bg_setup
-@ void overworld_bg_setup()
-overworld_bg_setup: @ 8085CA8
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- ldr r1, =gUnknown_08339DAC
- movs r0, 0
- movs r2, 0x4
- bl InitBgsFromTemplates
- movs r0, 0x1
- movs r1, 0x5
- movs r2, 0x1
- bl SetBgAttribute
- movs r0, 0x2
- movs r1, 0x5
- movs r2, 0x1
- bl SetBgAttribute
- movs r0, 0x3
- movs r1, 0x5
- movs r2, 0x1
- bl SetBgAttribute
- ldr r0, =gUnknown_03005DA0
- mov r8, r0
- movs r4, 0x80
- lsls r4, 4
- adds r0, r4, 0
- bl AllocZeroed
- mov r1, r8
- str r0, [r1]
- ldr r6, =gUnknown_03005D9C
- adds r0, r4, 0
- bl AllocZeroed
- str r0, [r6]
- ldr r5, =gUnknown_03005DA4
- adds r0, r4, 0
- bl AllocZeroed
- str r0, [r5]
- mov r0, r8
- ldr r1, [r0]
- movs r0, 0x1
- bl SetBgTilemapBuffer
- ldr r1, [r6]
- movs r0, 0x2
- bl SetBgTilemapBuffer
- ldr r1, [r5]
- movs r0, 0x3
- bl SetBgTilemapBuffer
- bl sub_81971D0
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end overworld_bg_setup
-
- thumb_func_start overworld_free_bg_tilemaps
-overworld_free_bg_tilemaps: @ 8085D34
- push {r4,lr}
- bl sub_81BE72C
- bl sub_81971F4
- ldr r4, =gUnknown_03005DA4
- ldr r0, [r4]
- cmp r0, 0
- beq _08085D4E
- bl Free
- movs r0, 0
- str r0, [r4]
-_08085D4E:
- ldr r4, =gUnknown_03005D9C
- ldr r0, [r4]
- cmp r0, 0
- beq _08085D5E
- bl Free
- movs r0, 0
- str r0, [r4]
-_08085D5E:
- ldr r4, =gUnknown_03005DA0
- ldr r0, [r4]
- cmp r0, 0
- beq _08085D6E
- bl Free
- movs r0, 0
- str r0, [r4]
-_08085D6E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end overworld_free_bg_tilemaps
-
- thumb_func_start ResetSafariZoneFlag_
-ResetSafariZoneFlag_: @ 8085D80
- push {lr}
- bl ResetSafariZoneFlag
- pop {r0}
- bx r0
- thumb_func_end ResetSafariZoneFlag_
-
- thumb_func_start is_c1_link_related_active
-@ _BOOL4 is_c1_link_related_active()
-is_c1_link_related_active: @ 8085D8C
- push {lr}
- ldr r0, =gMain
- ldr r1, [r0]
- ldr r0, =c1_link_related
- cmp r1, r0
- beq _08085DA4
- movs r0, 0
- b _08085DA6
- .pool
-_08085DA4:
- movs r0, 0x1
-_08085DA6:
- pop {r1}
- bx r1
- thumb_func_end is_c1_link_related_active
-
- thumb_func_start c1_overworld_normal
-@ void c1_overworld_normal(int buttons_new, int buttons_held)
-c1_overworld_normal: @ 8085DAC
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r0, 16
- adds r5, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r4, r1, 0
- bl sub_808B578
- mov r6, sp
- mov r0, sp
- bl sub_809BEDC
- mov r0, sp
- adds r1, r5, 0
- adds r2, r4, 0
- bl process_overworld_input
- bl ScriptContext2_IsEnabled
- lsls r0, 24
- cmp r0, 0
- bne _08085DFA
- mov r0, sp
- bl sub_809C014
- cmp r0, 0x1
- bne _08085DF0
- bl ScriptContext2_Enable
- bl HideMapNamePopUpWindow
- b _08085DFA
-_08085DF0:
- ldrb r0, [r6, 0x2]
- adds r1, r5, 0
- adds r2, r4, 0
- bl player_step
-_08085DFA:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end c1_overworld_normal
-
- thumb_func_start c1_overworld
-c1_overworld: @ 8085E04
- push {lr}
- ldr r2, =gMain
- ldr r1, [r2, 0x4]
- ldr r0, =c2_overworld
- cmp r1, r0
- bne _08085E18
- ldrh r0, [r2, 0x2E]
- ldrh r1, [r2, 0x2C]
- bl c1_overworld_normal
-_08085E18:
- pop {r0}
- bx r0
- .pool
- thumb_func_end c1_overworld
-
- thumb_func_start OverworldBasic
-@ void OverworldBasic()
-OverworldBasic: @ 8085E24
- push {lr}
- bl ScriptContext2_RunScript
- bl RunTasks
- bl AnimateSprites
- bl CameraUpdate
- bl UpdateCameraPanning
- bl BuildOamBuffer
- bl UpdatePaletteFade
- bl sub_80A0A38
- bl do_scheduled_bg_tilemap_copies_to_vram
- pop {r0}
- bx r0
- thumb_func_end OverworldBasic
-
- thumb_func_start CB2_OverworldBasic
-CB2_OverworldBasic: @ 8085E50
- push {lr}
- bl OverworldBasic
- pop {r0}
- bx r0
- thumb_func_end CB2_OverworldBasic
-
- thumb_func_start c2_overworld
-c2_overworld: @ 8085E5C
- push {r4,lr}
- ldr r0, =gPaletteFade
- ldrb r0, [r0, 0x7]
- lsrs r0, 7
- adds r4, r0, 0
- cmp r4, 0
- beq _08085E70
- movs r0, 0
- bl SetVBlankCallback
-_08085E70:
- bl OverworldBasic
- cmp r4, 0
- beq _08085E7C
- bl SetFieldVBlankCallback
-_08085E7C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_overworld
-
- thumb_func_start set_callback1
-set_callback1: @ 8085E88
- ldr r1, =gMain
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end set_callback1
-
- thumb_func_start sub_8085E94
-sub_8085E94: @ 8085E94
- ldr r1, =gUnknown_03000E0C
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_8085E94
-
- thumb_func_start map_post_load_hook_exec
-map_post_load_hook_exec: @ 8085EA0
- push {r4,lr}
- ldr r4, =gUnknown_03005DB0
- ldr r0, [r4]
- cmp r0, 0
- beq _08085ECC
- bl _call_via_r0
- lsls r0, 24
- cmp r0, 0
- bne _08085EBC
- movs r0, 0
- b _08085EEC
- .pool
-_08085EBC:
- movs r1, 0
- str r1, [r4]
- ldr r0, =gFieldCallback
- str r1, [r0]
- b _08085EEA
- .pool
-_08085ECC:
- ldr r0, =gFieldCallback
- ldr r0, [r0]
- cmp r0, 0
- beq _08085EE0
- bl _call_via_r0
- b _08085EE4
- .pool
-_08085EE0:
- bl mapldr_default
-_08085EE4:
- ldr r1, =gFieldCallback
- movs r0, 0
- str r0, [r1]
-_08085EEA:
- movs r0, 0x1
-_08085EEC:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end map_post_load_hook_exec
-
- thumb_func_start CB2_NewGame
-CB2_NewGame: @ 8085EF8
- push {lr}
- bl sub_808631C
- bl StopMapMusic
- bl ResetSafariZoneFlag_
- bl NewGameInitData
- bl player_avatar_init_params_reset
- bl PlayTimeCounter_Start
- bl ScriptContext1_Init
- bl ScriptContext2_Disable
- ldr r1, =gFieldCallback
- ldr r0, =ExecuteTruckSequence
- str r0, [r1]
- ldr r1, =gUnknown_03005DB0
- movs r0, 0
- str r0, [r1]
- ldr r0, =gMain+0x438
- bl do_load_map_stuff_loop
- bl SetFieldVBlankCallback
- ldr r0, =c1_overworld
- bl set_callback1
- ldr r0, =c2_overworld
- bl SetMainCallback2
- pop {r0}
- bx r0
- .pool
- thumb_func_end CB2_NewGame
-
- thumb_func_start CB2_WhiteOut
-CB2_WhiteOut: @ 8085F58
- push {lr}
- sub sp, 0x4
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x77
- bls _08085FB0
- bl sub_808631C
- bl StopMapMusic
- bl ResetSafariZoneFlag_
- bl DoWhiteOut
- bl player_avatar_init_params_reset
- bl ScriptContext1_Init
- bl ScriptContext2_Disable
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF3C8
- str r0, [r1]
- mov r1, sp
- movs r0, 0
- strb r0, [r1]
- mov r0, sp
- bl do_load_map_stuff_loop
- bl SetFieldVBlankCallback
- ldr r0, =c1_overworld
- bl set_callback1
- ldr r0, =c2_overworld
- bl SetMainCallback2
-_08085FB0:
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end CB2_WhiteOut
-
- thumb_func_start c2_load_new_map
-c2_load_new_map: @ 8085FCC
- push {lr}
- bl sub_808631C
- bl ScriptContext1_Init
- bl ScriptContext2_Disable
- movs r0, 0
- bl set_callback1
- ldr r0, =c2_change_map
- bl SetMainCallback2
- ldr r1, =gMain
- ldr r0, =c2_load_new_map_2
- str r0, [r1, 0x8]
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_load_new_map
-
- thumb_func_start c2_load_new_map_2
-c2_load_new_map_2: @ 8085FFC
- push {lr}
- ldr r0, =gMain+0x438
- bl do_load_map_stuff_loop
- bl SetFieldVBlankCallback
- ldr r0, =c1_overworld
- bl set_callback1
- ldr r0, =c2_overworld
- bl SetMainCallback2
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_load_new_map_2
-
- thumb_func_start sub_8086024
-sub_8086024: @ 8086024
- push {r4,lr}
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0
- bne _08086046
- bl sub_808631C
- bl ScriptContext1_Init
- bl ScriptContext2_Disable
- movs r0, 0
- bl set_callback1
-_08086046:
- adds r0, r4, 0
- movs r1, 0x1
- bl load_map_stuff
- cmp r0, 0
- beq _08086062
- bl SetFieldVBlankCallback
- ldr r0, =c1_overworld
- bl set_callback1
- ldr r0, =c2_overworld
- bl SetMainCallback2
-_08086062:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086024
-
- thumb_func_start sub_8086074
-sub_8086074: @ 8086074
- push {lr}
- bl sub_808631C
- ldr r0, =gFieldCallback
- ldr r1, =sub_80AF314
- str r1, [r0]
- ldr r0, =c2_80567AC
- bl SetMainCallback2
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086074
-
- thumb_func_start c2_80567AC
-c2_80567AC: @ 8086098
- push {lr}
- ldr r0, =gMain+0x438
- bl map_loading_iteration_3
- cmp r0, 0
- beq _080860B8
- bl SetFieldVBlankCallback
- ldr r0, =c1_link_related
- bl set_callback1
- bl sub_8086C2C
- ldr r0, =c2_overworld
- bl SetMainCallback2
-_080860B8:
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_80567AC
-
- thumb_func_start c2_exit_to_overworld_2_switch
-c2_exit_to_overworld_2_switch: @ 80860C8
- push {lr}
- bl is_c1_link_related_active
- cmp r0, 0x1
- bne _080860E0
- ldr r0, =c2_exit_to_overworld_2_link
- bl SetMainCallback2
- b _080860EA
- .pool
-_080860E0:
- bl sub_808631C
- ldr r0, =c2_exit_to_overworld_2_local
- bl SetMainCallback2
-_080860EA:
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_exit_to_overworld_2_switch
-
- thumb_func_start c2_exit_to_overworld_2_local
-c2_exit_to_overworld_2_local: @ 80860F4
- push {lr}
- ldr r0, =gMain+0x438
- bl sub_8086638
- cmp r0, 0
- beq _0808610A
- bl SetFieldVBlankCallback
- ldr r0, =c2_overworld
- bl SetMainCallback2
-_0808610A:
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_exit_to_overworld_2_local
-
- thumb_func_start c2_exit_to_overworld_2_link
-c2_exit_to_overworld_2_link: @ 8086118
- push {lr}
- bl sub_8087598
- cmp r0, 0
- bne _08086132
- ldr r0, =gMain+0x438
- bl map_loading_iteration_2_link
- cmp r0, 0
- beq _08086132
- ldr r0, =c2_overworld
- bl SetMainCallback2
-_08086132:
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_exit_to_overworld_2_link
-
- thumb_func_start c2_8056854
-c2_8056854: @ 8086140
- push {lr}
- bl sub_808631C
- bl StopMapMusic
- ldr r0, =c1_link_related
- bl set_callback1
- bl sub_8086C2C
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08086174
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF314
- b _08086178
- .pool
-_08086174:
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF214
-_08086178:
- str r0, [r1]
- bl ScriptContext1_Init
- bl ScriptContext2_Disable
- bl c2_exit_to_overworld_2_switch
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_8056854
-
- thumb_func_start sub_8086194
-sub_8086194: @ 8086194
- push {lr}
- bl sub_808631C
- ldr r1, =gUnknown_03005DB0
- ldr r0, =sub_80AF6A4
- str r0, [r1]
- bl c2_exit_to_overworld_2_switch
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086194
-
- thumb_func_start sub_80861B0
-sub_80861B0: @ 80861B0
- push {lr}
- bl sub_808631C
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF188
- str r0, [r1]
- bl c2_exit_to_overworld_2_switch
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80861B0
-
- thumb_func_start c2_exit_to_overworld_1_continue_scripts_restart_music
-c2_exit_to_overworld_1_continue_scripts_restart_music: @ 80861CC
- push {lr}
- bl sub_808631C
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF168
- str r0, [r1]
- bl c2_exit_to_overworld_2_switch
- pop {r0}
- bx r0
- .pool
- thumb_func_end c2_exit_to_overworld_1_continue_scripts_restart_music
-
- thumb_func_start sub_80861E8
-sub_80861E8: @ 80861E8
- push {lr}
- bl sub_808631C
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF3C8
- str r0, [r1]
- bl c2_exit_to_overworld_2_switch
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80861E8
-
- thumb_func_start sub_8086204
-sub_8086204: @ 8086204
- push {lr}
- ldr r0, =gMapHeader
- ldrb r1, [r0, 0x1A]
- movs r0, 0xF8
- ands r0, r1
- cmp r0, 0x8
- bne _08086222
- bl sub_80E909C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08086222
- bl ShowMapNamePopup
-_08086222:
- bl sub_80AF3C8
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086204
-
- thumb_func_start sub_8086230
-sub_8086230: @ 8086230
- push {r4,lr}
- bl sub_808631C
- bl StopMapMusic
- bl ResetSafariZoneFlag_
- ldr r0, =gSaveFileStatus
- ldrh r0, [r0]
- cmp r0, 0xFF
- bne _0808624A
- bl sub_81A3908
-_0808624A:
- bl LoadSaveblockMapHeader
- bl set_warp2_warp3_to_neg_1
- bl GetCurrentTrainerHillMapId
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gMapHeader
- ldrh r1, [r0, 0x12]
- ldr r0, =0x00000169
- cmp r1, r0
- bne _08086278
- bl sub_81AA2F8
- b _0808628A
- .pool
-_08086278:
- cmp r4, 0
- beq _08086286
- cmp r4, 0x6
- beq _08086286
- bl sub_81D5F48
- b _0808628A
-_08086286:
- bl LoadSaveblockMapObjScripts
-_0808628A:
- bl UnfreezeMapObjects
- bl DoTimeBasedEvents
- bl sub_8084788
- ldr r0, =gMapHeader
- ldrh r1, [r0, 0x12]
- ldr r0, =0x00000169
- cmp r1, r0
- bne _080862B0
- movs r0, 0x1
- bl battle_pyramid_map_load_related
- b _080862BE
- .pool
-_080862B0:
- cmp r4, 0
- beq _080862BA
- bl trainer_hill_map_load_related
- b _080862BE
-_080862BA:
- bl sub_8087D74
-_080862BE:
- bl PlayTimeCounter_Start
- bl ScriptContext1_Init
- bl ScriptContext2_Disable
- bl sub_8195E10
- bl sav2_x1_query_bit1
- cmp r0, 0x1
- bne _080862F4
- bl sav2_x9_clear_bit1
- bl warp1_set_to_sav1w
- bl warp_in
- bl sub_80EDB44
- ldr r0, =c2_load_new_map
- bl SetMainCallback2
- b _08086308
- .pool
-_080862F4:
- bl sub_80EDB44
- ldr r0, =gFieldCallback
- ldr r1, =sub_8086204
- str r1, [r0]
- ldr r0, =c1_overworld
- bl set_callback1
- bl c2_exit_to_overworld_2_switch
-_08086308:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086230
-
- thumb_func_start sub_808631C
-@ void sub_808631C()
-sub_808631C: @ 808631C
- push {r4,lr}
- bl warp0_in_pokecenter
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0808632E
- bl CloseLink
-_0808632E:
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08086348
- movs r0, 0xC5
- bl EnableInterrupts
- movs r0, 0x2
- bl DisableInterrupts
- b _08086362
- .pool
-_08086348:
- ldr r4, =0x04000208
- ldrh r3, [r4]
- strh r0, [r4]
- ldr r2, =0x04000200
- ldrh r1, [r2]
- ldr r0, =0x0000fffd
- ands r0, r1
- strh r0, [r2]
- ldrh r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strh r0, [r2]
- strh r3, [r4]
-_08086362:
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0
- bl SetHBlankCallback
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_808631C
-
- thumb_func_start SetFieldVBlankCallback
-@ void SetFieldVBlankCallback()
-SetFieldVBlankCallback: @ 8086380
- push {lr}
- ldr r0, =VBlankCB_Field
- bl SetVBlankCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetFieldVBlankCallback
-
- thumb_func_start VBlankCB_Field
-VBlankCB_Field: @ 8086390
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl ScanlineEffect_InitHBlankDmaTransfer
- bl FieldUpdateBgTilemapScroll
- bl TransferPlttBuffer
- bl TransferTilesetAnimsBuffer
- pop {r0}
- bx r0
- thumb_func_end VBlankCB_Field
-
- thumb_func_start sub_80863B0
-sub_80863B0: @ 80863B0
- push {lr}
- bl sub_81A9E6C
- lsls r0, 24
- cmp r0, 0
- beq _080863D4
- bl door_upload_tiles
- ldr r2, =gUnknown_08339DBC
- ldr r0, [r2]
- ldr r1, [r2, 0x4]
- ldr r2, [r2, 0x8]
- bl ScanlineEffect_SetParams
- b _080863F0
- .pool
-_080863D4:
- bl Overworld_GetFlashLevel
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080863F0
- bl sub_80B00E8
- ldr r2, =gUnknown_08339DBC
- ldr r0, [r2]
- ldr r1, [r2, 0x4]
- ldr r2, [r2, 0x8]
- bl ScanlineEffect_SetParams
-_080863F0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80863B0
-
- thumb_func_start map_loading_iteration_3
-map_loading_iteration_3: @ 80863F8
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4]
- cmp r0, 0xD
- bls _08086404
- b _08086512
-_08086404:
- lsls r0, 2
- ldr r1, =_08086414
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08086414:
- .4byte _0808644C
- .4byte _08086462
- .4byte _0808646A
- .4byte _08086472
- .4byte _08086484
- .4byte _08086492
- .4byte _08086498
- .4byte _080864A8
- .4byte _080864B8
- .4byte _080864D4
- .4byte _080864DA
- .4byte _080864E0
- .4byte _080864FC
- .4byte _0808650E
-_0808644C:
- bl overworld_bg_setup
- bl ScriptContext1_Init
- bl ScriptContext2_Disable
- bl MoveSaveBlocks_ResetHeap_
- bl sub_80867D8
- b _08086506
-_08086462:
- movs r0, 0x1
- bl mli0_load_map
- b _08086506
-_0808646A:
- movs r0, 0x1
- bl sub_8086988
- b _08086506
-_08086472:
- bl sub_8086AE4
- bl sub_80869DC
- bl sub_8086B14
- bl sub_8086AAC
- b _08086506
-_08086484:
- bl sub_80863B0
- bl map_loading_lcd_reset
- bl sub_8197200
- b _08086506
-_08086492:
- bl move_tilemap_camera_to_upper_left_corner
- b _08086506
-_08086498:
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl copy_map_tileset1_to_vram
- b _08086506
- .pool
-_080864A8:
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl copy_map_tileset2_to_vram
- b _08086506
- .pool
-_080864B8:
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08086512
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl apply_map_tileset1_tileset2_palette
- b _08086506
- .pool
-_080864D4:
- bl DrawWholeMapView
- b _08086506
-_080864DA:
- bl cur_mapheader_run_tileset_funcs_after_some_cpuset
- b _08086506
-_080864E0:
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08086506
- bl sub_800E0E8
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- b _08086506
- .pool
-_080864FC:
- bl map_post_load_hook_exec
- lsls r0, 24
- cmp r0, 0
- beq _08086512
-_08086506:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _08086512
-_0808650E:
- movs r0, 0x1
- b _08086514
-_08086512:
- movs r0, 0
-_08086514:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end map_loading_iteration_3
-
- thumb_func_start load_map_stuff
-@ int load_map_stuff(u8 *a1, int a2)
-load_map_stuff: @ 808651C
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldrb r0, [r4]
- cmp r0, 0xD
- bls _0808652A
- b _0808662E
-_0808652A:
- lsls r0, 2
- ldr r1, =_08086538
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08086538:
- .4byte _08086570
- .4byte _0808657C
- .4byte _08086586
- .4byte _0808658E
- .4byte _08086598
- .4byte _080865A6
- .4byte _080865AC
- .4byte _080865BC
- .4byte _080865CC
- .4byte _080865E8
- .4byte _080865EE
- .4byte _080865F4
- .4byte _08086618
- .4byte _0808662A
-_08086570:
- bl sub_808631C
- adds r0, r5, 0
- bl mli0_load_map
- b _08086622
-_0808657C:
- bl MoveSaveBlocks_ResetHeap_
- bl sub_80867D8
- b _08086622
-_08086586:
- adds r0, r5, 0
- bl sub_8086988
- b _08086622
-_0808658E:
- bl mli4_mapscripts_and_other
- bl sub_8086A80
- b _08086622
-_08086598:
- bl sub_80863B0
- bl map_loading_lcd_reset
- bl sub_8197200
- b _08086622
-_080865A6:
- bl move_tilemap_camera_to_upper_left_corner
- b _08086622
-_080865AC:
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl copy_map_tileset1_to_vram
- b _08086622
- .pool
-_080865BC:
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl copy_map_tileset2_to_vram
- b _08086622
- .pool
-_080865CC:
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0808662E
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl apply_map_tileset1_tileset2_palette
- b _08086622
- .pool
-_080865E8:
- bl DrawWholeMapView
- b _08086622
-_080865EE:
- bl cur_mapheader_run_tileset_funcs_after_some_cpuset
- b _08086622
-_080865F4:
- ldr r0, =gMapHeader
- ldrb r1, [r0, 0x1A]
- movs r0, 0xF8
- ands r0, r1
- cmp r0, 0x8
- bne _08086622
- bl sub_80E909C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08086622
- bl ShowMapNamePopup
- b _08086622
- .pool
-_08086618:
- bl map_post_load_hook_exec
- lsls r0, 24
- cmp r0, 0
- beq _0808662E
-_08086622:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _0808662E
-_0808662A:
- movs r0, 0x1
- b _08086630
-_0808662E:
- movs r0, 0
-_08086630:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end load_map_stuff
-
- thumb_func_start sub_8086638
-sub_8086638: @ 8086638
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4]
- cmp r0, 0x1
- beq _0808666E
- cmp r0, 0x1
- bgt _0808664C
- cmp r0, 0
- beq _08086656
- b _0808668E
-_0808664C:
- cmp r0, 0x2
- beq _08086678
- cmp r0, 0x3
- beq _0808668A
- b _0808668E
-_08086656:
- bl MoveSaveBlocks_ResetHeap_
- bl sub_80867D8
- movs r0, 0
- bl sub_8086988
- bl sub_8086A68
- bl sub_8086A80
- b _08086682
-_0808666E:
- bl sub_8086860
- bl sub_81D64C0
- b _08086682
-_08086678:
- bl map_post_load_hook_exec
- lsls r0, 24
- cmp r0, 0
- beq _0808668E
-_08086682:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _0808668E
-_0808668A:
- movs r0, 0x1
- b _08086690
-_0808668E:
- movs r0, 0
-_08086690:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8086638
-
- thumb_func_start map_loading_iteration_2_link
-map_loading_iteration_2_link: @ 8086698
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4]
- cmp r0, 0xD
- bls _080866A4
- b _080867A8
-_080866A4:
- lsls r0, 2
- ldr r1, =_080866B4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080866B4:
- .4byte _080866EC
- .4byte _080866FA
- .4byte _08086702
- .4byte _08086710
- .4byte _0808671E
- .4byte _08086724
- .4byte _08086734
- .4byte _08086744
- .4byte _08086760
- .4byte _08086766
- .4byte _08086792
- .4byte _0808676C
- .4byte _08086788
- .4byte _0808679A
-_080866EC:
- bl sub_808631C
- bl MoveSaveBlocks_ResetHeap_
- bl sub_80867D8
- b _08086792
-_080866FA:
- movs r0, 0x1
- bl sub_8086988
- b _08086792
-_08086702:
- bl sub_8086B9C
- bl sub_8086A68
- bl sub_8086AC8
- b _08086792
-_08086710:
- bl sub_80863B0
- bl map_loading_lcd_reset
- bl sub_8197200
- b _08086792
-_0808671E:
- bl move_tilemap_camera_to_upper_left_corner
- b _08086792
-_08086724:
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl copy_map_tileset1_to_vram
- b _08086792
- .pool
-_08086734:
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl copy_map_tileset2_to_vram
- b _08086792
- .pool
-_08086744:
- bl free_temp_tile_data_buffers_if_possible
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080867A8
- ldr r0, =gMapHeader
- ldr r0, [r0]
- bl apply_map_tileset1_tileset2_palette
- b _08086792
- .pool
-_08086760:
- bl DrawWholeMapView
- b _08086792
-_08086766:
- bl cur_mapheader_run_tileset_funcs_after_some_cpuset
- b _08086792
-_0808676C:
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08086792
- bl sub_800E0E8
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- b _08086792
- .pool
-_08086788:
- bl map_post_load_hook_exec
- lsls r0, 24
- cmp r0, 0
- beq _080867A8
-_08086792:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _080867A8
-_0808679A:
- bl SetFieldVBlankCallback
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- movs r0, 0x1
- b _080867AA
-_080867A8:
- movs r0, 0
-_080867AA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end map_loading_iteration_2_link
-
- thumb_func_start do_load_map_stuff_loop
-do_load_map_stuff_loop: @ 80867B0
- push {r4,lr}
- adds r4, r0, 0
-_080867B4:
- adds r0, r4, 0
- movs r1, 0
- bl load_map_stuff
- cmp r0, 0
- beq _080867B4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end do_load_map_stuff_loop
-
- thumb_func_start MoveSaveBlocks_ResetHeap_
-MoveSaveBlocks_ResetHeap_: @ 80867C8
- push {lr}
- bl sub_81BE6AC
- bl MoveSaveBlocks_ResetHeap
- pop {r0}
- bx r0
- thumb_func_end MoveSaveBlocks_ResetHeap_
-
- thumb_func_start sub_80867D8
-sub_80867D8: @ 80867D8
- push {r4-r7,lr}
- sub sp, 0x4
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- bl ScanlineEffect_Stop
- ldr r2, =0x05000002
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x040000d4
- mov r0, sp
- str r0, [r1]
- str r2, [r1, 0x4]
- ldr r0, =0x810001ff
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- movs r2, 0xC0
- lsls r2, 19
- movs r3, 0xC0
- lsls r3, 9
- mov r4, sp
- movs r6, 0
- movs r5, 0x80
- lsls r5, 5
- ldr r7, =0x81000800
- movs r0, 0x81
- lsls r0, 24
- mov r12, r0
-_08086816:
- strh r6, [r4]
- mov r0, sp
- str r0, [r1]
- str r2, [r1, 0x4]
- str r7, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r2, r5
- subs r3, r5
- cmp r3, r5
- bhi _08086816
- strh r6, [r4]
- mov r0, sp
- str r0, [r1]
- str r2, [r1, 0x4]
- lsrs r0, r3, 1
- mov r2, r12
- orrs r0, r2
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- movs r0, 0
- movs r1, 0x80
- bl ResetOamRange
- bl LoadOam
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80867D8
-
- thumb_func_start sub_8086860
-sub_8086860: @ 8086860
- push {lr}
- bl sub_80863B0
- bl map_loading_lcd_reset
- bl sub_8197200
- bl mapdata_load_assets_to_gpu_and_full_redraw
- pop {r0}
- bx r0
- thumb_func_end sub_8086860
-
- thumb_func_start map_loading_lcd_reset
-map_loading_lcd_reset: @ 8086878
- push {r4,lr}
- bl clear_scheduled_bg_copies_to_vram
- bl reset_temp_tile_data_buffers
- movs r0, 0x4C
- movs r1, 0
- bl SetGpuReg
- ldr r1, =0x00001f1f
- movs r0, 0x48
- bl SetGpuReg
- ldr r1, =0x00000101
- movs r0, 0x4A
- bl SetGpuReg
- movs r0, 0x40
- movs r1, 0xFF
- bl SetGpuReg
- movs r0, 0x44
- movs r1, 0xFF
- bl SetGpuReg
- ldr r4, =0x0000ffff
- movs r0, 0x42
- adds r1, r4, 0
- bl SetGpuReg
- movs r0, 0x46
- adds r1, r4, 0
- bl SetGpuReg
- ldr r0, =gUnknown_82EC7C4
- ldrh r1, [r0, 0x2]
- ldrh r2, [r0, 0x4]
- orrs r1, r2
- ldrh r0, [r0, 0x6]
- orrs r1, r0
- movs r2, 0x82
- lsls r2, 5
- adds r0, r2, 0
- orrs r1, r0
- movs r0, 0x50
- bl SetGpuReg
- ldr r1, =0x0000070d
- movs r0, 0x52
- bl SetGpuReg
- bl overworld_bg_setup
- movs r0, 0x1
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x2
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0x3
- bl schedule_bg_copy_tilemap_to_vram
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x2
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x2
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- ldr r1, =0x00007060
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- bl sub_8098128
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end map_loading_lcd_reset
-
- thumb_func_start sub_8086988
-sub_8086988: @ 8086988
- push {r4,lr}
- adds r4, r0, 0
- bl ResetTasks
- bl ResetSpriteData
- bl ResetPaletteFade
- bl ScanlineEffect_Clear
- bl dp13_810BB8C
- bl ResetCameraUpdateInfo
- bl InstallCameraPanAheadCallback
- cmp r4, 0
- bne _080869B4
- movs r0, 0
- bl npc_paltag_set_load
- b _080869BA
-_080869B4:
- movs r0, 0x1
- bl npc_paltag_set_load
-_080869BA:
- bl FieldEffectActiveListClear
- bl sub_80AAFA4
- bl sub_80AEE84
- cmp r4, 0
- bne _080869CE
- bl overworld_ensure_per_step_coros_running
-_080869CE:
- bl mapheader_run_script_with_tag_x5
- bl sub_81BE6B8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8086988
-
- thumb_func_start sub_80869DC
-sub_80869DC: @ 80869DC
- push {lr}
- ldr r0, =gUnknown_03005DEC
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_03005DE8
- strh r1, [r0]
- bl sub_808D438
- movs r0, 0
- movs r1, 0
- bl SpawnFieldObjectsInView
- bl mapheader_run_first_tag4_script_list_match
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80869DC
-
- thumb_func_start mli4_mapscripts_and_other
-mli4_mapscripts_and_other: @ 8086A04
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r0, =gUnknown_03005DEC
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gUnknown_03005DE8
- strh r1, [r0]
- bl sub_808D438
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl sav1_camera_get_focus_coords
- bl sub_80852D4
- adds r5, r0, 0
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- ldrb r2, [r5, 0x1]
- ldr r3, =gSaveBlock2Ptr
- ldr r3, [r3]
- ldrb r3, [r3, 0x8]
- bl InitPlayerAvatar
- ldrb r0, [r5]
- bl SetPlayerAvatarTransitionFlags
- bl player_avatar_init_params_reset
- movs r0, 0
- movs r1, 0
- bl SpawnFieldObjectsInView
- bl mapheader_run_first_tag4_script_list_match
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end mli4_mapscripts_and_other
-
- thumb_func_start sub_8086A68
-sub_8086A68: @ 8086A68
- push {lr}
- movs r0, 0
- movs r1, 0
- bl sub_808E16C
- bl sub_80FBED0
- bl mapheader_run_script_with_tag_x7
- pop {r0}
- bx r0
- thumb_func_end sub_8086A68
-
- thumb_func_start sub_8086A80
-sub_8086A80: @ 8086A80
- push {lr}
- ldr r2, =gMapObjects
- ldr r3, =gPlayerAvatar
- ldrb r1, [r3, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x1]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0, 0x1]
- ldrb r0, [r3, 0x4]
- bl InitCameraUpdateCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086A80
-
- thumb_func_start sub_8086AAC
-sub_8086AAC: @ 8086AAC
- push {lr}
- ldr r0, =gUnknown_03005DB4
- ldrb r0, [r0]
- bl sub_8087858
- lsls r0, 24
- lsrs r0, 24
- bl InitCameraUpdateCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086AAC
-
- thumb_func_start sub_8086AC8
-sub_8086AC8: @ 8086AC8
- push {lr}
- ldr r0, =gUnknown_03005DB4
- ldrb r0, [r0]
- bl sub_8087858
- lsls r0, 24
- lsrs r0, 24
- bl InitCameraUpdateCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086AC8
-
- thumb_func_start sub_8086AE4
-sub_8086AE4: @ 8086AE4
- push {r4,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl sav1_camera_get_focus_coords
- mov r2, sp
- ldr r0, =gUnknown_03005DB4
- ldrb r1, [r0]
- ldrh r0, [r2]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r4]
- bl sub_8088B3C
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086AE4
-
- thumb_func_start sub_8086B14
-sub_8086B14: @ 8086B14
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl sav1_camera_get_focus_coords
- mov r3, sp
- mov r2, sp
- ldr r0, =gUnknown_03005DB4
- ldrb r1, [r0]
- ldrh r0, [r2]
- subs r0, r1
- strh r0, [r3]
- movs r6, 0
- ldr r0, =gUnknown_03005DB8
- mov r8, r4
- ldrb r0, [r0]
- cmp r6, r0
- bcs _08086B7E
- ldr r7, =gLinkPlayers
-_08086B44:
- lsls r5, r6, 24
- lsrs r5, 24
- mov r0, sp
- ldrh r1, [r0]
- adds r1, r6, r1
- lsls r1, 16
- asrs r1, 16
- mov r0, r8
- movs r3, 0
- ldrsh r2, [r0, r3]
- lsls r4, r6, 3
- subs r4, r6
- lsls r4, 2
- adds r4, r7
- ldrb r3, [r4, 0x13]
- adds r0, r5, 0
- bl sub_80876F0
- ldrb r1, [r4]
- adds r0, r5, 0
- bl sub_8087BCC
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, =gUnknown_03005DB8
- ldrb r0, [r0]
- cmp r6, r0
- bcc _08086B44
-_08086B7E:
- bl sub_8086C40
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086B14
-
- thumb_func_start sub_8086B9C
-sub_8086B9C: @ 8086B9C
- push {r4,r5,lr}
- movs r4, 0
- ldr r0, =gUnknown_03005DB8
- ldrb r0, [r0]
- cmp r4, r0
- bcs _08086BCA
- ldr r5, =gLinkPlayers
-_08086BAA:
- lsls r0, r4, 24
- lsrs r0, 24
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 2
- adds r1, r5
- ldrb r1, [r1]
- bl sub_8087BCC
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, =gUnknown_03005DB8
- ldrb r0, [r0]
- cmp r4, r0
- bcc _08086BAA
-_08086BCA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086B9C
-
- thumb_func_start c1_link_related
-c1_link_related: @ 8086BD8
- push {r4,lr}
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08086BF2
- bl sub_800F0B8
- cmp r0, 0
- beq _08086BF2
- bl sub_8009F3C
- cmp r0, 0
- bne _08086C14
-_08086BF2:
- ldr r0, =gUnknown_03005DB4
- ldrb r4, [r0]
- ldr r0, =gLinkPartnersHeldKeys
- adds r1, r4, 0
- bl sub_8086F38
- ldr r0, =gUnknown_03000E14
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- lsls r0, 16
- lsrs r0, 16
- bl sub_8086FA0
- bl sub_8086C40
-_08086C14:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c1_link_related
-
- thumb_func_start sub_8086C2C
-sub_8086C2C: @ 8086C2C
- push {lr}
- bl sub_8086C90
- ldr r0, =sub_80870B0
- bl c1_link_related_func_set
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086C2C
-
- thumb_func_start sub_8086C40
-sub_8086C40: @ 8086C40
- push {lr}
- ldr r0, =gLinkPartnersHeldKeys
- bl sub_808709C
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086C40
-
- thumb_func_start c1_link_related_func_set
-c1_link_related_func_set: @ 8086C50
- ldr r2, =gUnknown_03000E19
- movs r1, 0
- strb r1, [r2]
- ldr r1, =gUnknown_03000E14
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end c1_link_related_func_set
-
- thumb_func_start sub_8086C64
-sub_8086C64: @ 8086C64
- push {lr}
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08086C82
- ldr r1, =gUnknown_03000E19
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3C
- bls _08086C82
- bl sub_8010198
-_08086C82:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086C64
-
- thumb_func_start sub_8086C90
-sub_8086C90: @ 8086C90
- push {lr}
- ldr r1, =gUnknown_03000E10
- movs r2, 0x80
- adds r0, r1, 0x3
-_08086C98:
- strb r2, [r0]
- subs r0, 0x1
- cmp r0, r1
- bge _08086C98
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086C90
-
- thumb_func_start sub_8086CA8
-sub_8086CA8: @ 8086CA8
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r0, =gUnknown_03005DB8
- ldrb r2, [r0]
- movs r1, 0
- cmp r1, r2
- bge _08086CD6
- ldr r4, =gUnknown_03000E10
-_08086CBA:
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, r3
- beq _08086CD0
- movs r0, 0
- b _08086CD8
- .pool
-_08086CD0:
- adds r1, 0x1
- cmp r1, r2
- blt _08086CBA
-_08086CD6:
- movs r0, 0x1
-_08086CD8:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8086CA8
-
- thumb_func_start sub_8086CE0
-sub_8086CE0: @ 8086CE0
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- ldr r0, =gUnknown_03005DB8
- ldrb r2, [r0]
- movs r1, 0
- cmp r1, r2
- bge _08086D0E
- ldr r4, =gUnknown_03000E10
-_08086CF2:
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, r3
- bne _08086D08
- movs r0, 0x1
- b _08086D10
- .pool
-_08086D08:
- adds r1, 0x1
- cmp r1, r2
- blt _08086CF2
-_08086D0E:
- movs r0, 0
-_08086D10:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8086CE0
-
- thumb_func_start sub_8086D18
-sub_8086D18: @ 8086D18
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r7, r0, 0
- adds r6, r2, 0
- mov r9, r3
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- ldr r0, =gUnknown_03000E10
- adds r5, r7, r0
- ldrb r0, [r5]
- cmp r0, 0x80
- beq _08086D38
- b _08086EB2
-_08086D38:
- adds r0, r6, 0
- bl sub_8087370
- adds r4, r0, 0
- cmp r4, 0
- beq _08086D70
- bl sub_8087480
- mov r1, r9
- strh r0, [r1]
- movs r0, 0x81
- strb r0, [r5]
- ldrb r0, [r6, 0x1]
- cmp r0, 0
- bne _08086D58
- b _08086F26
-_08086D58:
- ldr r0, =sub_80870F8
- bl c1_link_related_func_set
- adds r0, r4, 0
- bl sub_8087530
- b _08086F26
- .pool
-_08086D70:
- movs r0, 0x83
- bl sub_8086CE0
- cmp r0, 0x1
- bne _08086D98
- movs r0, 0x81
- strb r0, [r5]
- ldrb r0, [r6, 0x1]
- cmp r0, 0
- bne _08086D86
- b _08086F26
-_08086D86:
- ldr r0, =sub_80870F8
- bl c1_link_related_func_set
- bl sub_8087584
- b _08086F26
- .pool
-_08086D98:
- mov r0, r8
- subs r0, 0x12
- cmp r0, 0xA
- bls _08086DA2
- b _08086EB2
-_08086DA2:
- lsls r0, 2
- ldr r1, =_08086DB0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08086DB0:
- .4byte _08086E08
- .4byte _08086EB2
- .4byte _08086EB2
- .4byte _08086EB2
- .4byte _08086EB2
- .4byte _08086EB2
- .4byte _08086DDC
- .4byte _08086E34
- .4byte _08086EB2
- .4byte _08086E64
- .4byte _08086E90
-_08086DDC:
- adds r0, r6, 0
- bl sub_8087358
- cmp r0, 0
- beq _08086EB2
- ldr r0, =gUnknown_03000E10
- adds r0, r7, r0
- movs r1, 0x81
- strb r1, [r0]
- ldrb r0, [r6, 0x1]
- cmp r0, 0
- beq _08086EB2
- ldr r0, =sub_80870F8
- bl c1_link_related_func_set
- bl sub_808751C
- b _08086EB2
- .pool
-_08086E08:
- adds r0, r6, 0
- bl sub_8087388
- cmp r0, 0x1
- bne _08086EB2
- ldr r0, =gUnknown_03000E10
- adds r0, r7, r0
- movs r1, 0x81
- strb r1, [r0]
- ldrb r0, [r6, 0x1]
- cmp r0, 0
- beq _08086EB2
- ldr r0, =sub_80870F8
- bl c1_link_related_func_set
- bl sub_808754C
- b _08086EB2
- .pool
-_08086E34:
- adds r0, r6, 0
- bl sub_80873B4
- adds r4, r0, 0
- cmp r4, 0
- beq _08086EB2
- ldr r0, =gUnknown_03000E10
- adds r0, r7, r0
- movs r1, 0x81
- strb r1, [r0]
- ldrb r0, [r6, 0x1]
- cmp r0, 0
- beq _08086EB2
- ldr r0, =sub_80870F8
- bl c1_link_related_func_set
- adds r0, r4, 0
- bl sub_8087568
- b _08086EB2
- .pool
-_08086E64:
- adds r0, r6, 0
- bl sub_8087340
- cmp r0, 0
- beq _08086EB2
- ldr r0, =gUnknown_03000E10
- adds r0, r7, r0
- movs r1, 0x81
- strb r1, [r0]
- ldrb r0, [r6, 0x1]
- cmp r0, 0
- beq _08086EB2
- ldr r0, =sub_808711C
- bl c1_link_related_func_set
- bl sub_8087510
- b _08086EB2
- .pool
-_08086E90:
- adds r0, r6, 0
- bl sub_8087340
- cmp r0, 0
- beq _08086EB2
- ldr r0, =gUnknown_03000E10
- adds r0, r7, r0
- movs r1, 0x81
- strb r1, [r0]
- ldrb r0, [r6, 0x1]
- cmp r0, 0
- beq _08086EB2
- ldr r0, =sub_8087140
- bl c1_link_related_func_set
- bl sub_8087510
-_08086EB2:
- mov r0, r8
- cmp r0, 0x17
- beq _08086ED8
- cmp r0, 0x17
- bgt _08086ECC
- cmp r0, 0x16
- beq _08086EE8
- b _08086F26
- .pool
-_08086ECC:
- mov r1, r8
- cmp r1, 0x1A
- beq _08086EF8
- cmp r1, 0x1D
- beq _08086F18
- b _08086F26
-_08086ED8:
- ldr r0, =gUnknown_03000E10
- adds r0, r7, r0
- movs r1, 0x83
- strb r1, [r0]
- b _08086F26
- .pool
-_08086EE8:
- ldr r0, =gUnknown_03000E10
- adds r0, r7, r0
- movs r1, 0x82
- strb r1, [r0]
- b _08086F26
- .pool
-_08086EF8:
- ldr r0, =gUnknown_03000E10
- adds r0, r7, r0
- movs r1, 0x80
- strb r1, [r0]
- ldrb r0, [r6, 0x1]
- cmp r0, 0
- beq _08086F26
- ldr r0, =sub_80870B0
- bl c1_link_related_func_set
- b _08086F26
- .pool
-_08086F18:
- ldr r0, =gUnknown_03000E10
- adds r1, r7, r0
- ldrb r0, [r1]
- cmp r0, 0x82
- bne _08086F26
- movs r0, 0x81
- strb r0, [r1]
-_08086F26:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086D18
-
- thumb_func_start sub_8086F38
-sub_8086F38: @ 8086F38
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x14
- mov r8, r1
- movs r6, 0
- add r5, sp, 0x10
- mov r9, r5
- adds r7, r0, 0
-_08086F4C:
- ldrb r4, [r7]
- movs r0, 0
- strh r0, [r5]
- adds r0, r6, 0
- mov r1, r8
- mov r2, sp
- bl sub_80872D8
- adds r0, r6, 0
- adds r1, r4, 0
- mov r2, sp
- adds r3, r5, 0
- bl sub_8086D18
- ldr r0, =gUnknown_03000E10
- adds r0, r6, r0
- ldrb r0, [r0]
- cmp r0, 0x80
- bne _08086F7C
- adds r0, r4, 0
- bl sub_8087068
- mov r1, r9
- strh r0, [r1]
-_08086F7C:
- lsls r0, r6, 24
- lsrs r0, 24
- ldrb r1, [r5]
- bl sub_808796C
- adds r7, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _08086F4C
- add sp, 0x14
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086F38
-
- thumb_func_start sub_8086FA0
-sub_8086FA0: @ 8086FA0
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r1, =0xffef0000
- adds r0, r1
- lsrs r0, 16
- cmp r0, 0xC
- bhi _08086FC0
- ldr r0, =gUnknown_03005DA8
- strh r4, [r0]
- b _08086FC6
- .pool
-_08086FC0:
- ldr r1, =gUnknown_03005DA8
- movs r0, 0x11
- strh r0, [r1]
-_08086FC6:
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08086FFC
- bl sub_8087690
- cmp r0, 0x1
- bls _08086FFC
- bl is_c1_link_related_active
- cmp r0, 0x1
- bne _08086FFC
- bl sub_8009F3C
- cmp r0, 0x1
- bne _08086FFC
- cmp r4, 0x11
- blt _08086FFC
- cmp r4, 0x15
- ble _08086FF6
- cmp r4, 0x19
- bgt _08086FFC
- cmp r4, 0x18
- blt _08086FFC
-_08086FF6:
- ldr r1, =gUnknown_03005DA8
- movs r0, 0
- strh r0, [r1]
-_08086FFC:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8086FA0
-
- thumb_func_start sub_808700C
-sub_808700C: @ 808700C
- push {lr}
- ldr r2, =gMain
- ldrh r1, [r2, 0x2C]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08087024
- movs r0, 0x13
- b _08087064
- .pool
-_08087024:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08087030
- movs r0, 0x12
- b _08087064
-_08087030:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0808703C
- movs r0, 0x14
- b _08087064
-_0808703C:
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08087048
- movs r0, 0x15
- b _08087064
-_08087048:
- ldrh r1, [r2, 0x2E]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08087056
- movs r0, 0x18
- b _08087064
-_08087056:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08087062
- movs r0, 0x11
- b _08087064
-_08087062:
- movs r0, 0x19
-_08087064:
- pop {r1}
- bx r1
- thumb_func_end sub_808700C
-
- thumb_func_start sub_8087068
-sub_8087068: @ 8087068
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- adds r1, r0, 0
- cmp r0, 0x13
- beq _0808708E
- cmp r0, 0x13
- bgt _0808707E
- cmp r0, 0x12
- beq _08087092
- b _08087096
-_0808707E:
- cmp r1, 0x14
- beq _0808708A
- cmp r1, 0x15
- bne _08087096
- movs r0, 0x4
- b _08087098
-_0808708A:
- movs r0, 0x3
- b _08087098
-_0808708E:
- movs r0, 0x1
- b _08087098
-_08087092:
- movs r0, 0x2
- b _08087098
-_08087096:
- movs r0, 0
-_08087098:
- pop {r1}
- bx r1
- thumb_func_end sub_8087068
-
- thumb_func_start sub_808709C
-sub_808709C: @ 808709C
- push {lr}
- movs r2, 0x11
- adds r1, r0, 0x6
-_080870A2:
- strh r2, [r1]
- subs r1, 0x2
- cmp r1, r0
- bge _080870A2
- pop {r0}
- bx r0
- thumb_func_end sub_808709C
-
- thumb_func_start sub_80870B0
-sub_80870B0: @ 80870B0
- push {r4,lr}
- adds r4, r0, 0
- bl ScriptContext2_IsEnabled
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080870C4
- movs r0, 0x11
- b _080870E6
-_080870C4:
- bl sub_800B4DC
- cmp r0, 0x4
- bls _080870D0
- movs r0, 0x1B
- b _080870E6
-_080870D0:
- bl sub_8087690
- cmp r0, 0x4
- bls _080870DC
- movs r0, 0x1C
- b _080870E6
-_080870DC:
- adds r0, r4, 0
- bl sub_808700C
- lsls r0, 16
- lsrs r0, 16
-_080870E6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80870B0
-
- thumb_func_start sub_80870EC
-sub_80870EC: @ 80870EC
- push {lr}
- bl sub_8086C64
- movs r0, 0x11
- pop {r1}
- bx r1
- thumb_func_end sub_80870EC
-
- thumb_func_start sub_80870F8
-sub_80870F8: @ 80870F8
- push {r4,lr}
- bl ScriptContext2_IsEnabled
- lsls r0, 24
- lsrs r0, 24
- movs r4, 0x11
- cmp r0, 0x1
- beq _08087110
- movs r4, 0x1A
- ldr r0, =sub_80870EC
- bl c1_link_related_func_set
-_08087110:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80870F8
-
- thumb_func_start sub_808711C
-sub_808711C: @ 808711C
- push {r4,lr}
- bl sub_800B4DC
- movs r4, 0x11
- cmp r0, 0x2
- bhi _08087134
- movs r4, 0x1A
- bl ScriptContext2_Disable
- ldr r0, =sub_80870EC
- bl c1_link_related_func_set
-_08087134:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_808711C
-
- thumb_func_start sub_8087140
-sub_8087140: @ 8087140
- push {r4,lr}
- bl sub_8087690
- movs r4, 0x11
- cmp r0, 0x2
- bhi _08087158
- movs r4, 0x1A
- bl ScriptContext2_Disable
- ldr r0, =sub_80870EC
- bl c1_link_related_func_set
-_08087158:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8087140
-
- thumb_func_start sub_8087164
-sub_8087164: @ 8087164
- push {lr}
- bl sub_8086C64
- movs r0, 0x11
- pop {r1}
- bx r1
- thumb_func_end sub_8087164
-
- thumb_func_start sub_8087170
-sub_8087170: @ 8087170
- push {lr}
- ldr r1, =gUnknown_03000E10
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x82
- bne _080871A0
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080871A4
- ldr r0, =sub_8087164
- bl c1_link_related_func_set
- movs r0, 0x1D
- b _080871A6
- .pool
-_080871A0:
- bl sub_8086C64
-_080871A4:
- movs r0, 0x11
-_080871A6:
- pop {r1}
- bx r1
- thumb_func_end sub_8087170
-
- thumb_func_start sub_80871AC
-sub_80871AC: @ 80871AC
- push {lr}
- ldr r0, =sub_8087170
- bl c1_link_related_func_set
- movs r0, 0x16
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80871AC
-
- thumb_func_start sub_80871C0
-sub_80871C0: @ 80871C0
- movs r0, 0x11
- bx lr
- thumb_func_end sub_80871C0
-
- thumb_func_start sub_80871C4
-sub_80871C4: @ 80871C4
- push {lr}
- ldr r1, =gUnknown_03000E10
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x83
- beq _080871D4
- bl sub_8086C64
-_080871D4:
- movs r0, 0x83
- bl sub_8086CA8
- cmp r0, 0x1
- bne _080871EA
- ldr r0, =gUnknown_08277513
- bl ScriptContext1_SetupScript
- ldr r0, =sub_80871C0
- bl c1_link_related_func_set
-_080871EA:
- movs r0, 0x11
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80871C4
-
- thumb_func_start sub_80871FC
-sub_80871FC: @ 80871FC
- push {lr}
- ldr r0, =sub_80871C4
- bl c1_link_related_func_set
- movs r0, 0x17
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80871FC
-
- thumb_func_start sub_8087210
-sub_8087210: @ 8087210
- movs r0, 0x11
- bx lr
- thumb_func_end sub_8087210
-
- thumb_func_start sub_8087214
-sub_8087214: @ 8087214
- push {lr}
- movs r0, 0x83
- bl sub_8086CE0
- cmp r0, 0x1
- beq _08087250
- ldr r0, =gUnknown_03000E14
- ldr r2, [r0]
- ldr r1, =sub_8087170
- adds r3, r0, 0
- cmp r2, r1
- bne _0808723A
- ldr r1, =gUnknown_03000E10
- ldr r0, =gUnknown_03005DB4
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x82
- bne _08087272
-_0808723A:
- ldr r1, [r3]
- ldr r0, =sub_8087164
- cmp r1, r0
- bne _08087268
- ldr r1, =gUnknown_03000E10
- ldr r0, =gUnknown_03005DB4
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x81
- bne _08087268
-_08087250:
- movs r0, 0x2
- b _08087278
- .pool
-_08087268:
- movs r0, 0x82
- bl sub_8086CA8
- cmp r0, 0
- bne _08087276
-_08087272:
- movs r0, 0
- b _08087278
-_08087276:
- movs r0, 0x1
-_08087278:
- pop {r1}
- bx r1
- thumb_func_end sub_8087214
-
- thumb_func_start sub_808727C
-sub_808727C: @ 808727C
- push {lr}
- movs r0, 0x83
- bl sub_8086CE0
- pop {r1}
- bx r1
- thumb_func_end sub_808727C
-
- thumb_func_start sub_8087288
-sub_8087288: @ 8087288
- push {lr}
- ldr r0, =sub_80871AC
- bl c1_link_related_func_set
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8087288
-
- thumb_func_start sub_808729C
-sub_808729C: @ 808729C
- push {lr}
- ldr r0, =sub_80870F8
- bl c1_link_related_func_set
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_808729C
-
- thumb_func_start sub_80872B0
-sub_80872B0: @ 80872B0
- push {lr}
- ldr r0, =sub_80871FC
- bl c1_link_related_func_set
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80872B0
-
- thumb_func_start sub_80872C4
-sub_80872C4: @ 80872C4
- push {lr}
- ldr r0, =sub_8087210
- bl c1_link_related_func_set
- movs r0, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80872C4
-
- thumb_func_start sub_80872D8
-sub_80872D8: @ 80872D8
- push {r4-r6,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r6, r2, 0
- strb r4, [r6]
- movs r0, 0
- cmp r4, r1
- bne _080872EA
- movs r0, 0x1
-_080872EA:
- strb r0, [r6, 0x1]
- ldr r1, =gLinkPlayerMapObjects
- lsls r0, r4, 2
- adds r0, r1
- ldrb r0, [r0, 0x3]
- strb r0, [r6, 0x2]
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_80878A0
- strb r0, [r6, 0x3]
- mov r5, sp
- adds r5, 0x2
- adds r0, r4, 0
- mov r1, sp
- adds r2, r5, 0
- bl sub_8087878
- mov r0, sp
- ldrh r0, [r0]
- strh r0, [r6, 0x4]
- ldrh r0, [r5]
- strh r0, [r6, 0x6]
- adds r0, r4, 0
- bl sub_80878C0
- strb r0, [r6, 0x8]
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r5, r2]
- bl MapGridGetMetatileBehaviorAt
- strh r0, [r6, 0xC]
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80872D8
-
- thumb_func_start sub_8087340
-sub_8087340: @ 8087340
- push {lr}
- ldrb r0, [r0, 0x2]
- cmp r0, 0x2
- beq _0808734C
- cmp r0, 0
- bne _08087350
-_0808734C:
- movs r0, 0x1
- b _08087352
-_08087350:
- movs r0, 0
-_08087352:
- pop {r1}
- bx r1
- thumb_func_end sub_8087340
-
- thumb_func_start sub_8087358
-sub_8087358: @ 8087358
- push {lr}
- ldrb r0, [r0, 0x2]
- cmp r0, 0x2
- beq _08087364
- cmp r0, 0
- bne _08087368
-_08087364:
- movs r0, 0x1
- b _0808736A
-_08087368:
- movs r0, 0
-_0808736A:
- pop {r1}
- bx r1
- thumb_func_end sub_8087358
-
- thumb_func_start sub_8087370
-sub_8087370: @ 8087370
- push {lr}
- adds r1, r0, 0
- ldrb r0, [r1, 0x2]
- cmp r0, 0x2
- bne _08087382
- adds r0, r1, 0x4
- bl sub_809D0F4
- b _08087384
-_08087382:
- movs r0, 0
-_08087384:
- pop {r1}
- bx r1
- thumb_func_end sub_8087370
-
- thumb_func_start sub_8087388
-sub_8087388: @ 8087388
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0x2]
- cmp r0, 0x2
- beq _08087396
- cmp r0, 0
- bne _080873AC
-_08087396:
- ldrb r0, [r4, 0xC]
- bl MetatileBehavior_IsSouthArrowWarp
- lsls r0, 24
- cmp r0, 0
- beq _080873AC
- ldrb r0, [r4, 0x3]
- cmp r0, 0x1
- bne _080873AC
- movs r0, 0x1
- b _080873AE
-_080873AC:
- movs r0, 0
-_080873AE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8087388
-
- thumb_func_start sub_80873B4
-sub_80873B4: @ 80873B4
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldrb r0, [r4, 0x2]
- cmp r0, 0
- beq _080873C8
- cmp r0, 0x2
- beq _080873C8
- movs r0, 0
- b _08087476
-_080873C8:
- ldr r0, [r4, 0x4]
- ldr r1, [r4, 0x8]
- str r0, [sp]
- str r1, [sp, 0x4]
- ldr r3, =gUnknown_08339D64
- ldrb r0, [r4, 0x3]
- lsls r0, 3
- adds r0, r3
- ldr r0, [r0]
- mov r1, sp
- ldrh r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =0xffff0000
- ldr r2, [sp]
- ands r2, r1
- orrs r2, r0
- str r2, [sp]
- asrs r1, r2, 16
- ldrb r0, [r4, 0x3]
- lsls r0, 3
- adds r3, 0x4
- adds r0, r3
- ldr r0, [r0]
- adds r0, r1
- lsls r0, 16
- ldr r1, =0x0000ffff
- ands r1, r2
- orrs r1, r0
- str r1, [sp]
- ldr r2, =0xffffff00
- ldr r0, [sp, 0x4]
- ands r0, r2
- str r0, [sp, 0x4]
- mov r0, sp
- movs r2, 0
- ldrsh r0, [r0, r2]
- asrs r1, 16
- bl sub_808790C
- lsls r0, 24
- lsrs r1, r0, 24
- adds r2, r1, 0
- cmp r1, 0x4
- beq _0808746C
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- beq _08087434
- ldr r0, =gUnknown_03000E10
- adds r0, r1, r0
- ldrb r0, [r0]
- cmp r0, 0x80
- beq _08087450
-_08087434:
- ldr r0, =gUnknown_0827749C
- b _08087476
- .pool
-_08087450:
- adds r0, r2, 0
- bl sub_80B39D4
- cmp r0, 0
- bne _08087464
- ldr r0, =gUnknown_0827747E
- b _08087476
- .pool
-_08087464:
- ldr r0, =gUnknown_0827748D
- b _08087476
- .pool
-_0808746C:
- ldrb r1, [r4, 0xC]
- ldrb r2, [r4, 0x3]
- mov r0, sp
- bl sub_809C2C8
-_08087476:
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80873B4
-
- thumb_func_start sub_8087480
-sub_8087480: @ 8087480
- push {lr}
- adds r1, r0, 0
- ldr r0, =gUnknown_08277388
- cmp r1, r0
- beq _080874C6
- ldr r0, =gUnknown_082773A3
- cmp r1, r0
- beq _08087508
- ldr r0, =gUnknown_082773BE
- cmp r1, r0
- beq _080874C6
- ldr r0, =gUnknown_082773D9
- cmp r1, r0
- beq _08087508
- ldr r0, =gUnknown_0827741D
- cmp r1, r0
- beq _080874C6
- ldr r0, =gUnknown_08277432
- cmp r1, r0
- beq _08087508
- ldr r0, =gUnknown_08277447
- cmp r1, r0
- beq _080874C6
- ldr r0, =gUnknown_0827745C
- cmp r1, r0
- beq _08087508
- ldr r0, =gUnknown_08277374
- cmp r1, r0
- beq _080874C6
- ldr r0, =gUnknown_0827737E
- cmp r1, r0
- beq _08087508
- ldr r0, =gUnknown_082773F5
- cmp r1, r0
- bne _080874F8
-_080874C6:
- movs r0, 0xA
- b _0808750A
- .pool
-_080874F8:
- ldr r0, =gUnknown_082773FF
- cmp r1, r0
- beq _08087508
- movs r0, 0
- b _0808750A
- .pool
-_08087508:
- movs r0, 0x9
-_0808750A:
- pop {r1}
- bx r1
- thumb_func_end sub_8087480
-
- thumb_func_start sub_8087510
-sub_8087510: @ 8087510
- push {lr}
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- thumb_func_end sub_8087510
-
- thumb_func_start sub_808751C
-sub_808751C: @ 808751C
- push {lr}
- movs r0, 0x6
- bl PlaySE
- bl sub_809FA9C
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- thumb_func_end sub_808751C
-
- thumb_func_start sub_8087530
-sub_8087530: @ 8087530
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl ScriptContext1_SetupScript
- bl ScriptContext2_Enable
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8087530
-
- thumb_func_start sub_808754C
-sub_808754C: @ 808754C
- push {lr}
- movs r0, 0x6
- bl PlaySE
- ldr r0, =gUnknown_082774EF
- bl ScriptContext1_SetupScript
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_808754C
-
- thumb_func_start sub_8087568
-sub_8087568: @ 8087568
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl ScriptContext1_SetupScript
- bl ScriptContext2_Enable
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8087568
-
- thumb_func_start sub_8087584
-sub_8087584: @ 8087584
- push {lr}
- ldr r0, =gUnknown_08277509
- bl ScriptContext1_SetupScript
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8087584
-
- thumb_func_start sub_8087598
-sub_8087598: @ 8087598
- push {lr}
- bl is_c1_link_related_active
- cmp r0, 0
- bne _080875A6
- movs r0, 0
- b _080875C0
-_080875A6:
- bl sub_800B4DC
- cmp r0, 0x2
- bls _080875B8
- ldr r1, =gUnknown_03000E18
- movs r0, 0x1
- b _080875BC
- .pool
-_080875B8:
- ldr r1, =gUnknown_03000E18
- movs r0, 0
-_080875BC:
- strb r0, [r1]
- ldrb r0, [r1]
-_080875C0:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8087598
-
- thumb_func_start sub_80875C8
-sub_80875C8: @ 80875C8
- push {lr}
- bl sub_800B4DC
- cmp r0, 0x1
- bls _0808762C
- bl is_c1_link_related_active
- cmp r0, 0x1
- bne _0808762C
- bl sub_8009F3C
- cmp r0, 0x1
- bne _0808762C
- ldr r0, =gUnknown_03000E14
- ldr r1, [r0]
- ldr r0, =sub_808711C
- cmp r1, r0
- beq _08087614
- ldr r0, =sub_80870F8
- cmp r1, r0
- bne _0808762C
- ldr r0, =gUnknown_03000E18
- ldrb r2, [r0]
- movs r1, 0
- strb r1, [r0]
- cmp r2, 0x1
- beq _08087614
- ldr r2, =gPaletteFade
- ldrb r1, [r2, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0808762C
- ldrb r1, [r2, 0xA]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0808762C
-_08087614:
- movs r0, 0x1
- b _0808762E
- .pool
-_0808762C:
- movs r0, 0
-_0808762E:
- pop {r1}
- bx r1
- thumb_func_end sub_80875C8
-
- thumb_func_start sub_8087634
-sub_8087634: @ 8087634
- push {lr}
- bl sub_8087690
- cmp r0, 0x1
- bls _08087658
- bl is_c1_link_related_active
- cmp r0, 0x1
- bne _08087658
- bl sub_8009F3C
- cmp r0, 0x1
- bne _08087658
- ldr r0, =gUnknown_03000E14
- ldr r1, [r0]
- ldr r0, =sub_8087140
- cmp r1, r0
- beq _08087664
-_08087658:
- movs r0, 0
- b _08087666
- .pool
-_08087664:
- movs r0, 0x1
-_08087666:
- pop {r1}
- bx r1
- thumb_func_end sub_8087634
-
- thumb_func_start sub_808766C
-sub_808766C: @ 808766C
- push {lr}
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- bne _08087688
- bl sub_8009F3C
- cmp r0, 0
- beq _08087688
- movs r0, 0x1
- b _0808768A
- .pool
-_08087688:
- movs r0, 0
-_0808768A:
- pop {r1}
- bx r1
- thumb_func_end sub_808766C
-
- thumb_func_start sub_8087690
-sub_8087690: @ 8087690
- push {lr}
- ldr r0, =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- bne _080876B0
- ldr r0, =gLink
- ldr r1, =0x00000339
- adds r0, r1
- ldrb r0, [r0]
- b _080876B8
- .pool
-_080876B0:
- ldr r0, =gUnknown_03005000
- ldr r1, =0x00000c1a
- adds r0, r1
- ldrb r0, [r0]
-_080876B8:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8087690
-
- thumb_func_start sub_80876C4
-sub_80876C4: @ 80876C4
- movs r1, 0
- str r1, [r0]
- bx lr
- thumb_func_end sub_80876C4
-
- thumb_func_start strange_npc_table_clear
-strange_npc_table_clear: @ 80876CC
- push {lr}
- ldr r0, =gLinkPlayerMapObjects
- movs r1, 0
- movs r2, 0x10
- bl memset
- pop {r0}
- bx r0
- .pool
- thumb_func_end strange_npc_table_clear
-
- thumb_func_start sub_80876E0
-sub_80876E0: @ 80876E0
- push {lr}
- movs r1, 0
- movs r2, 0x24
- bl memset
- pop {r0}
- bx r0
- thumb_func_end sub_80876E0
-
- thumb_func_start sub_80876F0
-sub_80876F0: @ 80876F0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r9, r1
- mov r10, r2
- mov r8, r3
- lsls r0, 24
- lsrs r7, r0, 24
- mov r0, r9
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- mov r1, r10
- lsls r1, 16
- lsrs r1, 16
- mov r10, r1
- mov r2, r8
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- bl sub_808D4F4
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- lsls r4, r7, 2
- ldr r0, =gLinkPlayerMapObjects
- adds r4, r0
- lsls r5, r6, 3
- adds r5, r6
- lsls r5, 2
- ldr r0, =gMapObjects
- adds r5, r0
- adds r0, r4, 0
- bl sub_80876C4
- adds r0, r5, 0
- bl sub_80876E0
- movs r2, 0
- movs r1, 0x1
- movs r0, 0x1
- strb r0, [r4]
- strb r7, [r4, 0x1]
- strb r6, [r4, 0x2]
- strb r2, [r4, 0x3]
- ldrb r0, [r5]
- orrs r0, r1
- mov r2, r8
- ands r2, r1
- lsls r2, 1
- movs r1, 0x3
- negs r1, r1
- ands r0, r1
- orrs r0, r2
- strb r0, [r5]
- movs r0, 0x2
- strb r0, [r5, 0x19]
- movs r0, 0x40
- strb r0, [r5, 0x4]
- mov r0, r9
- lsls r0, 16
- asrs r0, 16
- mov r9, r0
- mov r1, r10
- lsls r1, 16
- asrs r1, 16
- mov r10, r1
- adds r0, r5, 0
- mov r1, r9
- mov r2, r10
- bl sub_808779C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80876F0
-
- thumb_func_start sub_808779C
-sub_808779C: @ 808779C
- push {r4,lr}
- adds r4, r0, 0
- adds r0, r1, 0
- adds r1, r2, 0
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- strh r0, [r4, 0x10]
- strh r1, [r4, 0x12]
- strh r0, [r4, 0x14]
- strh r1, [r4, 0x16]
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- adds r2, r4, 0
- adds r2, 0xC
- adds r3, r4, 0
- adds r3, 0xE
- bl sub_8093038
- ldrh r0, [r4, 0xC]
- adds r0, 0x8
- strh r0, [r4, 0xC]
- adds r0, r4, 0
- bl FieldObjectUpdateZCoord
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_808779C
-
- thumb_func_start sub_80877DC
-sub_80877DC: @ 80877DC
- push {lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r2, r1, 24
- ldr r1, =gLinkPlayerMapObjects
- lsrs r0, 22
- adds r1, r0, r1
- ldrb r0, [r1]
- cmp r0, 0
- beq _080877FE
- ldrb r0, [r1, 0x2]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r0, =gMapObjects
- adds r1, r0
- strb r2, [r1, 0x19]
-_080877FE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80877DC
-
- thumb_func_start sub_808780C
-sub_808780C: @ 808780C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 22
- ldr r1, =gLinkPlayerMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r4, r0, r1
- ldrb r0, [r4, 0x4]
- cmp r0, 0x40
- beq _08087838
- adds r1, r0, 0
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- bl DestroySprite
-_08087838:
- movs r0, 0
- strb r0, [r5]
- ldrb r1, [r4]
- subs r0, 0x2
- ands r0, r1
- strb r0, [r4]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_808780C
-
- thumb_func_start sub_8087858
-sub_8087858: @ 8087858
- lsls r0, 24
- ldr r1, =gLinkPlayerMapObjects
- lsrs r0, 22
- adds r0, r1
- ldrb r1, [r0, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- ldrb r0, [r0, 0x4]
- bx lr
- .pool
- thumb_func_end sub_8087858
-
- thumb_func_start sub_8087878
-sub_8087878: @ 8087878
- lsls r0, 24
- ldr r3, =gLinkPlayerMapObjects
- lsrs r0, 22
- adds r0, r3
- ldrb r3, [r0, 0x2]
- lsls r0, r3, 3
- adds r0, r3
- lsls r0, 2
- ldr r3, =gMapObjects
- adds r0, r3
- ldrh r3, [r0, 0x10]
- strh r3, [r1]
- ldrh r0, [r0, 0x12]
- strh r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_8087878
-
- thumb_func_start sub_80878A0
-sub_80878A0: @ 80878A0
- lsls r0, 24
- ldr r1, =gLinkPlayerMapObjects
- lsrs r0, 22
- adds r0, r1
- ldrb r1, [r0, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- ldrb r0, [r0, 0x19]
- bx lr
- .pool
- thumb_func_end sub_80878A0
-
- thumb_func_start sub_80878C0
-sub_80878C0: @ 80878C0
- lsls r0, 24
- ldr r1, =gLinkPlayerMapObjects
- lsrs r0, 22
- adds r0, r1
- ldrb r1, [r0, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- ldrb r0, [r0, 0xB]
- lsls r0, 28
- lsrs r0, 28
- bx lr
- .pool
- thumb_func_end sub_80878C0
-
- thumb_func_start sub_80878E4
-sub_80878E4: @ 80878E4
- lsls r0, 24
- ldr r1, =gLinkPlayerMapObjects
- lsrs r0, 22
- adds r0, r1
- ldrb r1, [r0, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- adds r0, 0x21
- movs r1, 0
- ldrsb r1, [r0, r1]
- movs r0, 0x10
- subs r0, r1
- bx lr
- .pool
- thumb_func_end sub_80878E4
-
- thumb_func_start sub_808790C
-sub_808790C: @ 808790C
- push {r4-r6,lr}
- movs r2, 0
- ldr r5, =gLinkPlayerMapObjects
- lsls r0, 16
- asrs r4, r0, 16
- lsls r1, 16
- asrs r3, r1, 16
-_0808791A:
- lsls r0, r2, 2
- adds r1, r0, r5
- ldrb r0, [r1]
- cmp r0, 0
- beq _08087958
- ldrb r0, [r1, 0x3]
- cmp r0, 0
- beq _0808792E
- cmp r0, 0x2
- bne _08087958
-_0808792E:
- ldrb r1, [r1, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r1, r0, r1
- movs r6, 0x10
- ldrsh r0, [r1, r6]
- cmp r0, r4
- bne _08087958
- movs r6, 0x12
- ldrsh r0, [r1, r6]
- cmp r0, r3
- bne _08087958
- adds r0, r2, 0
- b _08087964
- .pool
-_08087958:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3
- bls _0808791A
- movs r0, 0x4
-_08087964:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_808790C
-
- thumb_func_start sub_808796C
-sub_808796C: @ 808796C
- push {r4-r6,lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- adds r2, r3, 0
- lsrs r0, 22
- ldr r1, =gLinkPlayerMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r6, r0, r1
- ldrb r0, [r5]
- cmp r0, 0
- beq _080879C8
- cmp r3, 0xA
- bls _080879A4
- ldrb r0, [r6]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r6]
- b _080879C8
- .pool
-_080879A4:
- ldr r4, =gUnknown_08339E00
- ldr r1, =gUnknown_08339DC8
- ldrb r0, [r5, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r3, [r0]
- adds r0, r5, 0
- adds r1, r6, 0
- bl _call_via_r3
- lsls r0, 24
- lsrs r0, 22
- adds r0, r4
- ldr r2, [r0]
- adds r0, r5, 0
- adds r1, r6, 0
- bl _call_via_r2
-_080879C8:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_808796C
-
- thumb_func_start sub_80879D8
-sub_80879D8: @ 80879D8
- push {r4,lr}
- lsls r2, 24
- lsrs r2, 24
- ldr r4, =gUnknown_08339DD4
- lsls r3, r2, 2
- adds r3, r4
- ldr r3, [r3]
- bl _call_via_r3
- lsls r0, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80879D8
-
- thumb_func_start sub_80879F8
-sub_80879F8: @ 80879F8
- movs r0, 0x1
- bx lr
- thumb_func_end sub_80879F8
-
- thumb_func_start sub_80879FC
-sub_80879FC: @ 80879FC
- push {r4,lr}
- lsls r2, 24
- lsrs r2, 24
- ldr r4, =gUnknown_08339DD4
- lsls r3, r2, 2
- adds r3, r4
- ldr r3, [r3]
- bl _call_via_r3
- lsls r0, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80879FC
-
- thumb_func_start sub_8087A1C
-sub_8087A1C: @ 8087A1C
- movs r0, 0
- bx lr
- thumb_func_end sub_8087A1C
-
- thumb_func_start sub_8087A20
-sub_8087A20: @ 8087A20
- push {r4-r6,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r0, r2, 24
- lsrs r0, 24
- ldrb r1, [r5, 0x19]
- bl npc_something3
- strb r0, [r5, 0x19]
- ldrb r1, [r5, 0x19]
- mov r6, sp
- adds r6, 0x2
- adds r0, r5, 0
- mov r2, sp
- adds r3, r6, 0
- bl FieldObjectMoveDestCoords
- ldrb r0, [r4, 0x2]
- ldrb r1, [r5, 0x19]
- mov r2, sp
- movs r3, 0
- ldrsh r2, [r2, r3]
- movs r4, 0
- ldrsh r3, [r6, r4]
- bl npc_080587EC
- lsls r0, 24
- cmp r0, 0
- bne _08087A7E
- adds r1, r5, 0
- adds r1, 0x21
- movs r0, 0x10
- strb r0, [r1]
- mov r0, sp
- movs r2, 0
- ldrsh r1, [r0, r2]
- movs r3, 0
- ldrsh r2, [r6, r3]
- adds r0, r5, 0
- bl npc_coords_shift
- adds r0, r5, 0
- bl FieldObjectUpdateZCoord
- movs r0, 0x1
- b _08087A80
-_08087A7E:
- movs r0, 0
-_08087A80:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8087A20
-
- thumb_func_start sub_8087A88
-sub_8087A88: @ 8087A88
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, r2, 24
- lsrs r0, 24
- ldrb r1, [r4, 0x19]
- bl npc_something3
- strb r0, [r4, 0x19]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8087A88
-
- thumb_func_start sub_8087AA0
-sub_8087AA0: @ 8087AA0
- movs r1, 0
- strb r1, [r0, 0x3]
- bx lr
- thumb_func_end sub_8087AA0
-
- thumb_func_start sub_8087AA8
-sub_8087AA8: @ 8087AA8
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- adds r5, r4, 0
- adds r5, 0x21
- ldrb r0, [r5]
- subs r0, 0x1
- strb r0, [r5]
- movs r0, 0x1
- strb r0, [r6, 0x3]
- ldrb r0, [r4, 0x19]
- adds r1, 0xC
- adds r2, r4, 0
- adds r2, 0xE
- bl MoveCoords
- ldrb r0, [r5]
- cmp r0, 0
- bne _08087AD8
- adds r0, r4, 0
- bl npc_coords_shift_still
- movs r0, 0x2
- strb r0, [r6, 0x3]
-_08087AD8:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8087AA8
-
- thumb_func_start npc_something3
-npc_something3: @ 8087AE0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r2, r1, 24
- subs r0, 0x1
- cmp r0, 0x9
- bhi _08087B38
- lsls r0, 2
- ldr r1, =_08087B00
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08087B00:
- .4byte _08087B28
- .4byte _08087B2C
- .4byte _08087B30
- .4byte _08087B34
- .4byte _08087B38
- .4byte _08087B38
- .4byte _08087B28
- .4byte _08087B2C
- .4byte _08087B30
- .4byte _08087B34
-_08087B28:
- movs r0, 0x2
- b _08087B3A
-_08087B2C:
- movs r0, 0x1
- b _08087B3A
-_08087B30:
- movs r0, 0x3
- b _08087B3A
-_08087B34:
- movs r0, 0x4
- b _08087B3A
-_08087B38:
- adds r0, r2, 0
-_08087B3A:
- pop {r1}
- bx r1
- thumb_func_end npc_something3
-
- thumb_func_start npc_080587EC
-npc_080587EC: @ 8087B40
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r2, 16
- lsrs r2, 16
- mov r12, r2
- lsls r3, 16
- movs r4, 0
- ldr r0, =gMapObjects
- mov r9, r0
- lsrs r2, r3, 16
- mov r10, r2
- asrs r6, r3, 16
-_08087B64:
- mov r7, r12
- lsls r3, r7, 16
- mov r0, r10
- lsls r5, r0, 16
- cmp r4, r8
- beq _08087BA8
- lsls r0, r4, 3
- adds r0, r4
- lsls r0, 2
- mov r2, r9
- adds r1, r0, r2
- movs r7, 0x10
- ldrsh r0, [r1, r7]
- asrs r2, r3, 16
- cmp r0, r2
- bne _08087B8C
- movs r7, 0x12
- ldrsh r0, [r1, r7]
- cmp r0, r6
- beq _08087B9E
-_08087B8C:
- movs r7, 0x14
- ldrsh r0, [r1, r7]
- cmp r0, r2
- bne _08087BA8
- movs r0, 0x16
- ldrsh r1, [r1, r0]
- asrs r0, r5, 16
- cmp r1, r0
- bne _08087BA8
-_08087B9E:
- movs r0, 0x1
- b _08087BBE
- .pool
-_08087BA8:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bls _08087B64
- asrs r0, r3, 16
- asrs r1, r5, 16
- bl MapGridIsImpassableAt
- lsls r0, 24
- lsrs r0, 24
-_08087BBE:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end npc_080587EC
-
- thumb_func_start sub_8087BCC
-sub_8087BCC: @ 8087BCC
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- lsls r2, r5, 2
- ldr r0, =gLinkPlayerMapObjects
- adds r2, r0
- ldrb r1, [r2, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r4, r0, r1
- ldrb r0, [r2]
- cmp r0, 0
- beq _08087C7A
- subs r0, r3, 0x1
- cmp r0, 0x4
- bhi _08087C56
- lsls r0, 2
- ldr r1, =_08087C0C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08087C0C:
- .4byte _08087C2C
- .4byte _08087C2C
- .4byte _08087C38
- .4byte _08087C20
- .4byte _08087C20
-_08087C20:
- ldrb r0, [r4]
- lsls r0, 30
- lsrs r0, 31
- bl sub_808BD6C
- b _08087C44
-_08087C2C:
- ldrb r0, [r4]
- lsls r0, 30
- lsrs r0, 31
- bl sub_808BD7C
- b _08087C44
-_08087C38:
- ldrb r1, [r4]
- lsls r1, 30
- lsrs r1, 31
- movs r0, 0
- bl GetRivalAvatarGraphicsIdByStateIdAndGender
-_08087C44:
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =sub_8087C8C
- movs r2, 0
- str r2, [sp]
- movs r3, 0
- bl AddPseudoFieldObject
- strb r0, [r4, 0x4]
-_08087C56:
- ldrb r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- adds r3, r0, 0
- adds r3, 0x3E
- ldrb r1, [r3]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r3]
- strh r5, [r0, 0x2E]
- ldrb r1, [r4]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r4]
-_08087C7A:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8087BCC
-
- thumb_func_start sub_8087C8C
-sub_8087C8C: @ 8087C8C
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0x2E
- ldrsh r4, [r5, r0]
- lsls r4, 2
- ldr r0, =gLinkPlayerMapObjects
- adds r4, r0
- ldrb r1, [r4, 0x2]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r6, r0, r1
- ldrh r0, [r6, 0xC]
- strh r0, [r5, 0x20]
- ldrh r0, [r6, 0xE]
- strh r0, [r5, 0x22]
- ldrb r0, [r6, 0xB]
- lsrs r0, 4
- adds r1, r5, 0
- movs r2, 0x1
- bl SetObjectSubpriorityByZCoord
- ldrb r0, [r6, 0xB]
- lsrs r0, 4
- bl ZCoordToPriority
- movs r1, 0x3
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r5, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x5]
- ldrb r0, [r4, 0x3]
- cmp r0, 0
- bne _08087CF8
- ldrb r0, [r6, 0x19]
- bl FieldObjectDirectionToImageAnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl StartSpriteAnim
- b _08087D0A
- .pool
-_08087CF8:
- ldrb r0, [r6, 0x19]
- bl get_go_image_anim_num
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl StartSpriteAnimIfDifferent
-_08087D0A:
- adds r0, r5, 0
- movs r1, 0
- bl sub_80979D4
- ldrb r0, [r6]
- lsls r0, 29
- cmp r0, 0
- bge _08087D3C
- ldrh r0, [r5, 0x3C]
- movs r1, 0x4
- ands r1, r0
- lsls r1, 16
- adds r3, r5, 0
- adds r3, 0x3E
- lsrs r1, 18
- lsls r1, 2
- ldrb r2, [r3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- ldrh r0, [r5, 0x3C]
- adds r0, 0x1
- strh r0, [r5, 0x3C]
-_08087D3C:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8087C8C
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 0827a5a12..b71804617 100644
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -10083,7 +10083,7 @@ _081B5614:
.pool
_081B5624:
ldr r1, =gUnknown_0203CEC8
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
_081B5628:
str r0, [r1]
adds r0, r6, 0
@@ -10189,7 +10189,7 @@ _081B56F8:
b _081B572A
_081B56FE:
ldr r1, =gUnknown_0203CEC8
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
str r0, [r1]
adds r0, r4, 0
bl sub_81B12C0
@@ -10408,7 +10408,7 @@ sub_81B58A8: @ 81B58A8
str r0, [sp]
ldr r0, =sub_81B1370
str r0, [sp, 0x4]
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x8]
movs r0, 0
movs r1, 0
@@ -14836,7 +14836,7 @@ CB2_PartyMenuFromStartMenu: @ 81B7F34
str r0, [sp]
ldr r0, =sub_81B1370
str r0, [sp, 0x4]
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x8]
movs r0, 0
movs r1, 0
@@ -16021,7 +16021,7 @@ sub_81B892C: @ 81B892C
str r0, [sp]
ldr r0, =sub_81B1370
str r0, [sp, 0x4]
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
str r0, [sp, 0x8]
movs r0, 0
movs r1, 0
@@ -16042,7 +16042,7 @@ sub_81B8958: @ 81B8958
str r0, [sp]
ldr r0, =sub_81B1370
str r0, [sp, 0x4]
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
str r0, [sp, 0x8]
movs r0, 0xB
movs r1, 0
@@ -17283,7 +17283,7 @@ sub_81B9354: @ 81B9354
str r1, [sp]
ldr r1, =sub_81B1370
str r1, [sp, 0x4]
- ldr r1, =c2_exit_to_overworld_2_switch
+ ldr r1, =CB2_ReturnToField
str r1, [sp, 0x8]
movs r1, 0
movs r2, 0xB
@@ -17311,7 +17311,7 @@ _081B93A6:
ldr r0, =gUnknown_03005DB0
ldr r1, =hm_add_c3_without_phase_2
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r4}
pop {r0}
@@ -17420,7 +17420,7 @@ _081B9486:
ldr r1, =gUnknown_03005DB0
ldr r0, =hm_add_c3_without_phase_2
str r0, [r1]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
@@ -17556,7 +17556,7 @@ _081B95BA:
ldr r0, =gUnknown_03005DB0
ldr r1, =hm_add_c3_without_phase_2
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r4,r5}
pop {r0}
@@ -17660,7 +17660,7 @@ sub_81B968C: @ 81B968C
subs r3, 0x1
lsls r3, 24
lsrs r3, 24
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
str r0, [sp]
movs r0, 0x3
bl sub_81BF8EC
diff --git a/asm/player_pc.s b/asm/player_pc.s
index 1ae5b4d14..8a329a2fe 100644
--- a/asm/player_pc.s
+++ b/asm/player_pc.s
@@ -586,7 +586,7 @@ sub_816B31C: @ 816B31C
ldr r0, =gFieldCallback
ldr r1, =mapldr_080EBC0C
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
@@ -1279,7 +1279,7 @@ sub_816B900: @ 816B900
ldr r0, =gFieldCallback
ldr r1, =pal_fill_for_maplights_or_black
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
@@ -1538,7 +1538,7 @@ sub_816BB28: @ 816BB28
ldr r0, =gFieldCallback
ldr r1, =sub_816BB48
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
diff --git a/asm/pokedex.s b/asm/pokedex.s
index cb40f0eda..526188cca 100644
--- a/asm/pokedex.s
+++ b/asm/pokedex.s
@@ -1244,7 +1244,7 @@ _080BBE18:
bl sub_80BC890
adds r0, r6, 0
bl DestroyTask
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl SetMainCallback2
ldr r0, =gMPlayInfo_BGM
ldr r1, =0x0000ffff
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 2ff444f56..a74538fb1 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -657,7 +657,7 @@ sub_80C7678: @ 80C7678
ldr r1, =gFieldCallback
ldr r0, =mapldr_0808C6D8
str r0, [r1]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s
index 6e7c3af57..14dc569fe 100644
--- a/asm/pokemon_summary_screen.s
+++ b/asm/pokemon_summary_screen.s
@@ -2024,7 +2024,7 @@ sub_81C4EEC: @ 81C4EEC
thumb_func_start sub_81C4EFC
sub_81C4EFC: @ 81C4EFC
push {lr}
- ldr r1, =sub_8086194
+ ldr r1, =CB2_ReturnToFieldWithOpenMenu
movs r0, 0
bl sub_81C4F98
pop {r0}
@@ -2073,7 +2073,7 @@ sub_81C4F44: @ 81C4F44
ldr r0, =gUnknown_03005DB0
ldr r1, =hm_add_c3_without_phase_2
str r1, [r0]
- ldr r1, =c2_exit_to_overworld_2_switch
+ ldr r1, =CB2_ReturnToField
movs r0, 0x3
bl sub_81C4F98
adds r0, r4, 0
diff --git a/asm/pokenav.s b/asm/pokenav.s
index d98605dde..99b99383c 100644
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -14,7 +14,7 @@ CB2_PokeNav: @ 81C7250
str r0, [r4]
cmp r0, 0
bne _081C7270
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl SetMainCallback2
b _081C7292
.pool
@@ -66,7 +66,7 @@ sub_81C72BC: @ 81C72BC
str r0, [r4]
cmp r0, 0
bne _081C72F0
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
b _081C7320
.pool
@@ -351,12 +351,12 @@ _081C752C:
bl sub_81C7334
cmp r4, 0
beq _081C755C
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
b _081C7562
.pool
_081C755C:
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl SetMainCallback2
_081C7562:
pop {r4-r7}
@@ -3757,7 +3757,7 @@ sub_81C8EF8: @ 81C8EF8
lsls r2, 2
add r2, r8
str r2, [r5, 0x44]
- ldrh r3, [r2, 0x4]
+ ldrh r3, [r2( 0x4]
lsls r1, r3, 22
lsrs r1, 22
adds r1, 0x2
diff --git a/asm/rom_8011DC0.s b/asm/rom_8011DC0.s
index 80bc66f3f..b069ec58e 100644
--- a/asm/rom_8011DC0.s
+++ b/asm/rom_8011DC0.s
@@ -3116,7 +3116,7 @@ _08014070:
movs r0, 0x6
strb r0, [r1, 0x1]
ldr r1, =gMain
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
str r0, [r1, 0x8]
ldr r0, =sub_807AE50
bl SetMainCallback2
@@ -3258,7 +3258,7 @@ _080141D4:
eors r0, r1
lsls r0, 24
lsrs r0, 24
- ldr r1, =c2_exit_to_overworld_2_switch
+ ldr r1, =CB2_ReturnToField
bl sub_80C4E74
_080141F2:
bl RunTasks
@@ -3399,7 +3399,7 @@ sub_8014304: @ 8014304
ldr r0, =0x00004087
bl VarSet
bl GetLinkPlayerCount
- ldr r1, =gUnknown_03005DB8
+ ldr r1, =gFieldLinkPlayerCount
strb r0, [r1]
bl GetMultiplayerId
ldr r1, =gUnknown_03005DB4
@@ -3757,7 +3757,7 @@ _08014714:
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
- ldr r1, =c2_load_new_map
+ ldr r1, =CB2_LoadMap
bl sub_802A9A8
b _08014764
.pool
@@ -3766,7 +3766,7 @@ _08014734:
movs r1, 0x9
movs r2, 0x1
bl sub_8014290
- ldr r0, =c2_load_new_map
+ ldr r0, =CB2_LoadMap
bl sub_8020C70
b _08014764
.pool
@@ -3778,7 +3778,7 @@ _0801474C:
bl GetCursorSelectionMonId
lsls r0, 24
lsrs r0, 24
- ldr r1, =c2_load_new_map
+ ldr r1, =CB2_LoadMap
bl sub_802493C
_08014764:
adds r0, r4, 0
@@ -6931,7 +6931,7 @@ _08016502:
ldr r1, =gFieldCallback
ldr r0, =sub_80AF128
str r0, [r1]
- ldr r1, =c2_exit_to_overworld_2_switch
+ ldr r1, =CB2_ReturnToField
movs r0, 0x8
bl sub_81B8904
b _08016878
@@ -7229,7 +7229,7 @@ _0801677E:
ldr r1, =gFieldCallback
ldr r0, =sub_80AF128
str r0, [r1]
- ldr r1, =c2_exit_to_overworld_2_switch
+ ldr r1, =CB2_ReturnToField
movs r0, 0x9
bl sub_81B8904
adds r0, r6, 0
@@ -14941,7 +14941,7 @@ _0801A58C:
ldr r0, =gUnknown_03000DAC
ldr r0, [r0]
bl Free
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
pop {r4}
pop {r0}
@@ -16076,7 +16076,7 @@ _0801AF58:
bl sub_801ABDC
cmp r0, 0
beq _0801AFAE
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
b _0801AFAE
.pool
@@ -16102,7 +16102,7 @@ _0801AF98:
bl sub_801ABDC
cmp r0, 0
beq _0801AFAE
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
_0801AFAE:
bl RunTasks
@@ -23568,7 +23568,7 @@ _0801EBA8:
bne _0801EBC2
bl sub_801F544
bl sub_801DE30
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
_0801EBC2:
add sp, 0x4
@@ -27694,7 +27694,7 @@ _08020C26:
str r0, [r5]
adds r0, r4, 0
bl SetMainCallback2
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
cmp r4, r0
bne _08020C5A
ldr r2, =gTextFlags
@@ -27705,8 +27705,8 @@ _08020C26:
movs r0, 0xC8
lsls r0, 1
bl PlayNewMapMusic
- ldr r0, =c1_overworld
- bl set_callback1
+ ldr r0, =CB1_Overworld
+ bl SetMainCallback1
_08020C5A:
movs r0, 0
_08020C5C:
diff --git a/asm/rotating_gate.s b/asm/rotating_gate.s
index da5e73034..9b57dc1b0 100644
--- a/asm/rotating_gate.s
+++ b/asm/rotating_gate.s
@@ -915,8 +915,8 @@ _080FBECA:
bx r0
thumb_func_end RotatingGatePuzzleCameraUpdate
- thumb_func_start sub_80FBED0
-sub_80FBED0: @ 80FBED0
+ thumb_func_start RotatingGate_InitPuzzleAndGraphics
+RotatingGate_InitPuzzleAndGraphics: @ 80FBED0
push {lr}
bl GetCurrentMapRotatingGatePuzzleType
cmp r0, 0
@@ -929,7 +929,7 @@ sub_80FBED0: @ 80FBED0
_080FBEEA:
pop {r0}
bx r0
- thumb_func_end sub_80FBED0
+ thumb_func_end RotatingGate_InitPuzzleAndGraphics
thumb_func_start CheckForRotatingGatePuzzleCollision
CheckForRotatingGatePuzzleCollision: @ 80FBEF0
diff --git a/asm/roulette.s b/asm/roulette.s
index ab873dd32..d3dd5fd9e 100644
--- a/asm/roulette.s
+++ b/asm/roulette.s
@@ -3276,7 +3276,7 @@ sub_8141E7C: @ 8141E7C
ldr r1, =gFieldCallback
ldr r0, =sub_80AF168
str r0, [r1]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
adds r0, r5, 0
bl DestroyTask
diff --git a/asm/script_pokemon_util_80F87D8.s b/asm/script_pokemon_util_80F87D8.s
index 1869811c2..b241e3778 100644
--- a/asm/script_pokemon_util_80F87D8.s
+++ b/asm/script_pokemon_util_80F87D8.s
@@ -390,7 +390,7 @@ _080F8AB6:
thumb_func_start sub_80F8ACC
sub_80F8ACC: @ 80F8ACC
push {lr}
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
pop {r0}
bx r0
@@ -1559,7 +1559,7 @@ _080F9478:
movs r0, 0x1
strh r0, [r1]
_080F947E:
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
pop {r0}
bx r0
@@ -1599,7 +1599,7 @@ _080F94D0:
movs r0, 0x1
strh r0, [r1]
_080F94D6:
- ldr r0, =c2_exit_to_overworld_1_continue_scripts_restart_music
+ ldr r0, =CB2_ReturnToFieldContinueScript
bl SetMainCallback2
pop {r0}
bx r0
diff --git a/asm/shop.s b/asm/shop.s
index 97dbd07c8..c42af8ef1 100644
--- a/asm/shop.s
+++ b/asm/shop.s
@@ -230,7 +230,7 @@ CB2_ExitSellMenu: @ 80DFC48
ldr r0, =gFieldCallback
ldr r1, =MapPostLoadHook_ExitBuyOrSellMenu
str r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
pop {r0}
bx r0
@@ -2706,7 +2706,7 @@ Task_ExitBuyMenu: @ 80E11B0
bne _080E11D6
bl RemoveMoneyLabelObject
bl BuyMenuFreeMemory
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
adds r0, r4, 0
bl DestroyTask
diff --git a/asm/start_menu.s b/asm/start_menu.s
index 23ac3710a..03cb18341 100644
--- a/asm/start_menu.s
+++ b/asm/start_menu.s
@@ -591,7 +591,7 @@ StartMenu_PlayerName: @ 809FC8C
cmp r0, 0
beq _0809FCC8
_0809FCB6:
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl sub_80C4DDC
b _0809FCEA
.pool
@@ -601,12 +601,12 @@ _0809FCC8:
lsls r0, 24
cmp r0, 0
beq _0809FCE4
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl sub_80C51C4
b _0809FCEA
.pool
_0809FCE4:
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
bl sub_80C4DDC
_0809FCEA:
movs r0, 0x1
@@ -656,7 +656,7 @@ _0809FD38:
ldr r0, =CB2_InitOptionMenu
bl SetMainCallback2
ldr r1, =gMain
- ldr r0, =sub_8086194
+ ldr r0, =CB2_ReturnToFieldWithOpenMenu
str r0, [r1, 0x8]
movs r0, 0x1
_0809FD52:
@@ -703,7 +703,7 @@ _0809FDA0:
bl overworld_free_bg_tilemaps
ldr r0, =gUnknown_03005DB4
ldrb r0, [r0]
- ldr r1, =sub_8086194
+ ldr r1, =CB2_ReturnToFieldWithOpenMenu
bl sub_80C4E74
movs r0, 0x1
_0809FDB4:
diff --git a/asm/trade.s b/asm/trade.s
index f565cd7ba..7d3ec4a8a 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -10669,7 +10669,7 @@ _0807CF5C:
bl Free
str r4, [r7]
_0807CFAA:
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
bl sub_807E784
_0807CFB4:
@@ -12774,7 +12774,7 @@ _0807E3A8:
bl Free
str r4, [r7]
_0807E3F6:
- ldr r0, =c2_exit_to_overworld_2_switch
+ ldr r0, =CB2_ReturnToField
bl SetMainCallback2
bl sub_807E784
_0807E400: