summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/overworld.s3343
1 files changed, 24 insertions, 3319 deletions
diff --git a/asm/overworld.s b/asm/overworld.s
index f840e590a..f17e829e7 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -5,3301 +5,6 @@
.text
- thumb_func_start sub_8054BC8
-sub_8054BC8: @ 8054BC8
- push {r4,lr}
- ldr r0, _08054BFC @ =EventScript_ResetEliteFourEnd
- bl ScriptContext2_RunNewScript
- ldr r0, _08054C00 @ =gSaveBlock1Ptr
- ldr r4, [r0]
- movs r0, 0xA4
- lsls r0, 2
- adds r4, r0
- bl ComputeWhiteOutMoneyLoss
- adds r1, r0, 0
- adds r0, r4, 0
- bl RemoveMoney
- bl HealPlayerParty
- bl sub_8054DD8
- bl sub_80554BC
- bl WarpIntoMap
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08054BFC: .4byte EventScript_ResetEliteFourEnd
-_08054C00: .4byte gSaveBlock1Ptr
- thumb_func_end sub_8054BC8
-
- thumb_func_start ComputeWhiteOutMoneyLoss
-ComputeWhiteOutMoneyLoss: @ 8054C04
- push {r4,lr}
- bl CountBadgesForOverworldWhiteOutLossCalculation
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl GetPlayerPartyHighestLevel
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08054C40 @ =sWhiteOutMoneyLossMultipliers
- adds r4, r1
- ldrb r1, [r4]
- lsls r1, 2
- adds r4, r0, 0
- muls r4, r1
- ldr r0, _08054C44 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0xA4
- lsls r1, 2
- adds r0, r1
- bl GetMoney
- cmp r4, r0
- bls _08054C38
- adds r4, r0, 0
-_08054C38:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08054C40: .4byte sWhiteOutMoneyLossMultipliers
-_08054C44: .4byte gSaveBlock1Ptr
- thumb_func_end ComputeWhiteOutMoneyLoss
-
- thumb_func_start OverworldWhiteOutGetMoneyLoss
-OverworldWhiteOutGetMoneyLoss: @ 8054C48
- push {r4,r5,lr}
- bl ComputeWhiteOutMoneyLoss
- adds r4, r0, 0
- ldr r5, _08054C6C @ =gStringVar1
- bl CountDigits
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0
- bl ConvertIntToDecimalStringN
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08054C6C: .4byte gStringVar1
- thumb_func_end OverworldWhiteOutGetMoneyLoss
-
- thumb_func_start CountBadgesForOverworldWhiteOutLossCalculation
-CountBadgesForOverworldWhiteOutLossCalculation: @ 8054C70
- push {r4-r6,lr}
- movs r6, 0
- movs r5, 0
- ldr r4, _08054C9C @ =sWhiteOutMoneyLossBadgeFlagIDs
-_08054C78:
- ldrh r0, [r4]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08054C8A
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_08054C8A:
- adds r4, 0x2
- adds r5, 0x1
- cmp r5, 0x7
- bls _08054C78
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08054C9C: .4byte sWhiteOutMoneyLossBadgeFlagIDs
- thumb_func_end CountBadgesForOverworldWhiteOutLossCalculation
-
- thumb_func_start Overworld_ResetStateAfterFly
-Overworld_ResetStateAfterFly: @ 8054CA0
- push {lr}
- bl ResetInitialPlayerAvatarState
- movs r0, 0x83
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054CEC @ =0x0000405e
- movs r1, 0
- bl VarSet
- ldr r0, _08054CF0 @ =0x00000802
- bl FlagClear
- movs r0, 0x80
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054CF4 @ =0x0000406e
- movs r1, 0
- bl VarSet
- ldr r0, _08054CF8 @ =0x00000805
- bl FlagClear
- ldr r0, _08054CFC @ =0x00000806
- bl FlagClear
- ldr r0, _08054D00 @ =0x00000808
- bl FlagClear
- ldr r0, _08054D04 @ =0x0000404d
- movs r1, 0
- bl VarSet
- pop {r0}
- bx r0
- .align 2, 0
-_08054CEC: .4byte 0x0000405e
-_08054CF0: .4byte 0x00000802
-_08054CF4: .4byte 0x0000406e
-_08054CF8: .4byte 0x00000805
-_08054CFC: .4byte 0x00000806
-_08054D00: .4byte 0x00000808
-_08054D04: .4byte 0x0000404d
- thumb_func_end Overworld_ResetStateAfterFly
-
- thumb_func_start Overworld_ResetStateAfterTeleport
-Overworld_ResetStateAfterTeleport: @ 8054D08
- push {lr}
- bl ResetInitialPlayerAvatarState
- movs r0, 0x83
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054D54 @ =0x0000405e
- movs r1, 0
- bl VarSet
- ldr r0, _08054D58 @ =0x00000802
- bl FlagClear
- movs r0, 0x80
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054D5C @ =0x0000406e
- movs r1, 0
- bl VarSet
- ldr r0, _08054D60 @ =0x00000805
- bl FlagClear
- ldr r0, _08054D64 @ =0x00000806
- bl FlagClear
- ldr r0, _08054D68 @ =0x00000808
- bl FlagClear
- ldr r0, _08054D6C @ =0x0000404d
- movs r1, 0
- bl VarSet
- pop {r0}
- bx r0
- .align 2, 0
-_08054D54: .4byte 0x0000405e
-_08054D58: .4byte 0x00000802
-_08054D5C: .4byte 0x0000406e
-_08054D60: .4byte 0x00000805
-_08054D64: .4byte 0x00000806
-_08054D68: .4byte 0x00000808
-_08054D6C: .4byte 0x0000404d
- thumb_func_end Overworld_ResetStateAfterTeleport
-
- thumb_func_start Overworld_ResetStateAfterDigEscRope
-Overworld_ResetStateAfterDigEscRope: @ 8054D70
- push {lr}
- bl ResetInitialPlayerAvatarState
- movs r0, 0x83
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054DBC @ =0x0000405e
- movs r1, 0
- bl VarSet
- ldr r0, _08054DC0 @ =0x00000802
- bl FlagClear
- movs r0, 0x80
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054DC4 @ =0x0000406e
- movs r1, 0
- bl VarSet
- ldr r0, _08054DC8 @ =0x00000805
- bl FlagClear
- ldr r0, _08054DCC @ =0x00000806
- bl FlagClear
- ldr r0, _08054DD0 @ =0x00000808
- bl FlagClear
- ldr r0, _08054DD4 @ =0x0000404d
- movs r1, 0
- bl VarSet
- pop {r0}
- bx r0
- .align 2, 0
-_08054DBC: .4byte 0x0000405e
-_08054DC0: .4byte 0x00000802
-_08054DC4: .4byte 0x0000406e
-_08054DC8: .4byte 0x00000805
-_08054DCC: .4byte 0x00000806
-_08054DD0: .4byte 0x00000808
-_08054DD4: .4byte 0x0000404d
- thumb_func_end Overworld_ResetStateAfterDigEscRope
-
- thumb_func_start sub_8054DD8
-sub_8054DD8: @ 8054DD8
- push {lr}
- bl ResetInitialPlayerAvatarState
- movs r0, 0x83
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054E24 @ =0x0000405e
- movs r1, 0
- bl VarSet
- ldr r0, _08054E28 @ =0x00000802
- bl FlagClear
- movs r0, 0x80
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054E2C @ =0x0000406e
- movs r1, 0
- bl VarSet
- ldr r0, _08054E30 @ =0x00000805
- bl FlagClear
- ldr r0, _08054E34 @ =0x00000806
- bl FlagClear
- ldr r0, _08054E38 @ =0x00000808
- bl FlagClear
- ldr r0, _08054E3C @ =0x0000404d
- movs r1, 0
- bl VarSet
- pop {r0}
- bx r0
- .align 2, 0
-_08054E24: .4byte 0x0000405e
-_08054E28: .4byte 0x00000802
-_08054E2C: .4byte 0x0000406e
-_08054E30: .4byte 0x00000805
-_08054E34: .4byte 0x00000806
-_08054E38: .4byte 0x00000808
-_08054E3C: .4byte 0x0000404d
- thumb_func_end sub_8054DD8
-
- thumb_func_start sub_8054E40
-sub_8054E40: @ 8054E40
- push {lr}
- movs r0, 0x80
- lsls r0, 4
- bl FlagClear
- ldr r0, _08054E64 @ =0x0000406e
- movs r1, 0
- bl VarSet
- bl sub_805610C
- bl UpdateLocationHistoryForRoamer
- bl RoamerMoveToOtherLocationSet
- pop {r0}
- bx r0
- .align 2, 0
-_08054E64: .4byte 0x0000406e
- thumb_func_end sub_8054E40
-
- thumb_func_start ResetGameStats
-ResetGameStats: @ 8054E68
- push {r4,r5,lr}
- movs r2, 0
- ldr r5, _08054E8C @ =gSaveBlock1Ptr
- movs r4, 0x90
- lsls r4, 5
- movs r3, 0
-_08054E74:
- ldr r0, [r5]
- lsls r1, r2, 2
- adds r0, r4
- adds r0, r1
- str r3, [r0]
- adds r2, 0x1
- cmp r2, 0x3F
- ble _08054E74
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08054E8C: .4byte gSaveBlock1Ptr
- thumb_func_end ResetGameStats
-
- thumb_func_start IncrementGameStat
-IncrementGameStat: @ 8054E90
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x33
- bhi _08054EB8
- adds r0, r4, 0
- bl GetGameStat
- adds r1, r0, 0
- ldr r0, _08054EAC @ =0x00fffffe
- cmp r1, r0
- bhi _08054EB0
- adds r1, 0x1
- b _08054EB2
- .align 2, 0
-_08054EAC: .4byte 0x00fffffe
-_08054EB0:
- ldr r1, _08054EC0 @ =0x00ffffff
-_08054EB2:
- adds r0, r4, 0
- bl SetGameStat
-_08054EB8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08054EC0: .4byte 0x00ffffff
- thumb_func_end IncrementGameStat
-
- thumb_func_start GetGameStat
-GetGameStat: @ 8054EC4
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x33
- bhi _08054EF8
- ldr r0, _08054EF0 @ =gSaveBlock1Ptr
- ldr r2, [r0]
- lsls r0, r1, 2
- movs r1, 0x90
- lsls r1, 5
- adds r2, r1
- adds r2, r0
- ldr r0, _08054EF4 @ =gSaveBlock2Ptr
- ldr r1, [r0]
- movs r0, 0xF2
- lsls r0, 4
- adds r1, r0
- ldr r0, [r2]
- ldr r1, [r1]
- eors r0, r1
- b _08054EFA
- .align 2, 0
-_08054EF0: .4byte gSaveBlock1Ptr
-_08054EF4: .4byte gSaveBlock2Ptr
-_08054EF8:
- movs r0, 0
-_08054EFA:
- pop {r1}
- bx r1
- thumb_func_end GetGameStat
-
- thumb_func_start SetGameStat
-SetGameStat: @ 8054F00
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x33
- bhi _08054F2A
- ldr r0, _08054F30 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- lsls r0, r2, 2
- movs r2, 0x90
- lsls r2, 5
- adds r1, r2
- adds r1, r0
- ldr r0, _08054F34 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- movs r2, 0xF2
- lsls r2, 4
- adds r0, r2
- ldr r0, [r0]
- eors r0, r3
- str r0, [r1]
-_08054F2A:
- pop {r0}
- bx r0
- .align 2, 0
-_08054F30: .4byte gSaveBlock1Ptr
-_08054F34: .4byte gSaveBlock2Ptr
- thumb_func_end SetGameStat
-
- thumb_func_start sub_8054F38
-sub_8054F38: @ 8054F38
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r4, 0
- ldr r6, _08054F64 @ =gSaveBlock1Ptr
-_08054F40:
- lsls r1, r4, 2
- movs r0, 0x90
- lsls r0, 5
- adds r1, r0
- ldr r0, [r6]
- adds r0, r1
- adds r1, r5, 0
- bl ApplyNewEncryptionKeyToWord
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3F
- bls _08054F40
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08054F64: .4byte gSaveBlock1Ptr
- thumb_func_end sub_8054F38
-
- thumb_func_start sub_8054F68
-sub_8054F68: @ 8054F68
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- movs r0, 0
- mov r9, r0
- mov r8, r0
- ldr r1, _08055040 @ =gMapHeader
- ldr r0, [r1, 0x4]
- ldrb r0, [r0]
- cmp r9, r0
- bcc _08054F86
- b _08055092
-_08054F86:
- ldr r2, _08055044 @ =gSaveBlock1Ptr
- mov r10, r2
-_08054F8A:
- ldr r3, _08055040 @ =gMapHeader
- ldr r0, [r3, 0x4]
- ldr r1, [r0, 0x4]
- mov r4, r9
- lsls r0, r4, 1
- add r0, r9
- lsls r7, r0, 3
- adds r2, r7, r1
- ldrb r0, [r2, 0x2]
- cmp r0, 0xFF
- bne _08055054
- ldrb r4, [r2, 0x8]
- ldrb r5, [r2, 0xC]
- str r5, [sp]
- ldrb r2, [r2, 0xE]
- str r2, [sp, 0x4]
- adds r0, r2, 0
- adds r1, r5, 0
- bl Overworld_GetMapHeaderByGroupAndId
- mov r6, r10
- ldr r1, [r6]
- mov r2, r8
- lsls r3, r2, 1
- add r3, r8
- lsls r3, 3
- adds r1, r3
- ldr r0, [r0, 0x4]
- ldr r2, [r0, 0x4]
- lsls r0, r4, 1
- adds r0, r4
- lsls r0, 3
- adds r0, r2
- movs r5, 0x8E
- lsls r5, 4
- adds r1, r5
- subs r0, 0x18
- ldm r0!, {r2,r5,r6}
- stm r1!, {r2,r5,r6}
- ldm r0!, {r2,r5,r6}
- stm r1!, {r2,r5,r6}
- mov r6, r10
- ldr r1, [r6]
- adds r1, r3
- ldr r2, _08055040 @ =gMapHeader
- ldr r0, [r2, 0x4]
- ldr r0, [r0, 0x4]
- adds r0, r7, r0
- ldrb r0, [r0]
- movs r5, 0x8E
- lsls r5, 4
- adds r1, r5
- strb r0, [r1]
- ldr r1, [r6]
- adds r1, r3
- ldr r0, [r2, 0x4]
- ldr r0, [r0, 0x4]
- adds r0, r7, r0
- ldrh r2, [r0, 0x4]
- ldr r6, _08055048 @ =0x000008e4
- adds r0, r1, r6
- strh r2, [r0]
- ldr r2, _08055040 @ =gMapHeader
- ldr r0, [r2, 0x4]
- ldr r0, [r0, 0x4]
- adds r0, r7, r0
- ldrh r2, [r0, 0x6]
- adds r5, 0x6
- adds r0, r1, r5
- strh r2, [r0]
- adds r6, 0x4
- adds r1, r6
- strb r4, [r1]
- mov r1, r10
- ldr r0, [r1]
- adds r0, r3
- ldr r2, _0805504C @ =0x000008ec
- adds r1, r0, r2
- mov r3, sp
- ldrh r3, [r3]
- strh r3, [r1]
- ldr r4, _08055050 @ =0x000008ee
- adds r1, r0, r4
- mov r5, sp
- ldrh r5, [r5, 0x4]
- strh r5, [r1]
- subs r6, 0x6
- adds r0, r6
- movs r1, 0xFF
- strb r1, [r0]
- b _08055072
- .align 2, 0
-_08055040: .4byte gMapHeader
-_08055044: .4byte gSaveBlock1Ptr
-_08055048: .4byte 0x000008e4
-_0805504C: .4byte 0x000008ec
-_08055050: .4byte 0x000008ee
-_08055054:
- mov r0, r10
- ldr r1, [r0]
- mov r3, r8
- lsls r0, r3, 1
- add r0, r8
- lsls r0, 3
- adds r1, r0
- movs r4, 0x8E
- lsls r4, 4
- adds r1, r4
- adds r0, r2, 0
- ldm r0!, {r2,r5,r6}
- stm r1!, {r2,r5,r6}
- ldm r0!, {r3-r5}
- stm r1!, {r3-r5}
-_08055072:
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r6, _080550A4 @ =gMapHeader
- ldr r0, [r6, 0x4]
- ldrb r0, [r0]
- cmp r9, r0
- bcs _08055092
- b _08054F8A
-_08055092:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080550A4: .4byte gMapHeader
- thumb_func_end sub_8054F68
-
- thumb_func_start sub_80550A8
-sub_80550A8: @ 80550A8
- push {lr}
- ldr r0, _080550D0 @ =gMapHeader
- ldr r1, [r0, 0x4]
- ldr r0, _080550D4 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r2, [r1, 0x4]
- movs r3, 0x8E
- lsls r3, 4
- adds r1, r0, r3
- movs r3, 0x3F
-_080550BC:
- ldr r0, [r2, 0x10]
- str r0, [r1, 0x10]
- adds r2, 0x18
- adds r1, 0x18
- subs r3, 0x1
- cmp r3, 0
- bge _080550BC
- pop {r0}
- bx r0
- .align 2, 0
-_080550D0: .4byte gMapHeader
-_080550D4: .4byte gSaveBlock1Ptr
- thumb_func_end sub_80550A8
-
- thumb_func_start Overworld_SetMapObjTemplateCoords
-Overworld_SetMapObjTemplateCoords: @ 80550D8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 16
- lsrs r2, 16
- ldr r0, _08055100 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0
- movs r6, 0x8E
- lsls r6, 4
- adds r3, r0, r6
-_080550F2:
- ldrb r0, [r3]
- cmp r0, r5
- bne _08055104
- strh r4, [r3, 0x4]
- strh r2, [r3, 0x6]
- b _0805510C
- .align 2, 0
-_08055100: .4byte gSaveBlock1Ptr
-_08055104:
- adds r3, 0x18
- adds r1, 0x1
- cmp r1, 0x3F
- ble _080550F2
-_0805510C:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end Overworld_SetMapObjTemplateCoords
-
- thumb_func_start Overworld_SetMapObjTemplateMovementType
-Overworld_SetMapObjTemplateMovementType: @ 8055114
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _08055134 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r3, 0
- movs r5, 0x8E
- lsls r5, 4
- adds r2, r0, r5
-_0805512A:
- ldrb r0, [r2]
- cmp r0, r4
- bne _08055138
- strb r1, [r2, 0x9]
- b _08055140
- .align 2, 0
-_08055134: .4byte gSaveBlock1Ptr
-_08055138:
- adds r2, 0x18
- adds r3, 0x1
- cmp r3, 0x3F
- ble _0805512A
-_08055140:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end Overworld_SetMapObjTemplateMovementType
-
- thumb_func_start mapdata_load_assets_to_gpu_and_full_redraw
-mapdata_load_assets_to_gpu_and_full_redraw: @ 8055148
- push {r4,lr}
- bl move_tilemap_camera_to_upper_left_corner
- ldr r4, _0805516C @ =gMapHeader
- ldr r0, [r4]
- bl copy_map_tileset1_tileset2_to_vram
- ldr r0, [r4]
- bl apply_map_tileset1_tileset2_palette
- bl DrawWholeMapView
- bl InitTilesetAnimations
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805516C: .4byte gMapHeader
- thumb_func_end mapdata_load_assets_to_gpu_and_full_redraw
-
- thumb_func_start get_mapdata_header
-get_mapdata_header: @ 8055170
- push {lr}
- ldr r0, _08055180 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x32]
- cmp r1, 0
- bne _08055184
- movs r0, 0
- b _0805518E
- .align 2, 0
-_08055180: .4byte gSaveBlock1Ptr
-_08055184:
- ldr r0, _08055194 @ =gMapLayouts
- subs r1, 0x1
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
-_0805518E:
- pop {r1}
- bx r1
- .align 2, 0
-_08055194: .4byte gMapLayouts
- thumb_func_end get_mapdata_header
-
- thumb_func_start warp_shift
-warp_shift: @ 8055198
- ldr r3, _080551C4 @ =gUnknown_2031DB4
- ldr r0, _080551C8 @ =gSaveBlock1Ptr
- ldr r2, [r0]
- ldr r0, [r2, 0x4]
- ldr r1, [r2, 0x8]
- str r0, [r3]
- str r1, [r3, 0x4]
- ldr r0, _080551CC @ =gUnknown_2031DBC
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r2, 0x4]
- str r1, [r2, 0x8]
- ldr r2, _080551D0 @ =gUnknown_2031DC4
- ldr r0, _080551D4 @ =sDummyWarpData
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r2]
- str r1, [r2, 0x4]
- ldr r2, _080551D8 @ =gUnknown_2031DCC
- str r0, [r2]
- str r1, [r2, 0x4]
- bx lr
- .align 2, 0
-_080551C4: .4byte gUnknown_2031DB4
-_080551C8: .4byte gSaveBlock1Ptr
-_080551CC: .4byte gUnknown_2031DBC
-_080551D0: .4byte gUnknown_2031DC4
-_080551D4: .4byte sDummyWarpData
-_080551D8: .4byte gUnknown_2031DCC
- thumb_func_end warp_shift
-
- thumb_func_start warp_set
-warp_set: @ 80551DC
- push {r4,r5,lr}
- ldr r4, [sp, 0xC]
- ldr r5, [sp, 0x10]
- strb r1, [r0]
- strb r2, [r0, 0x1]
- strb r3, [r0, 0x2]
- lsls r4, 24
- asrs r4, 24
- strh r4, [r0, 0x4]
- lsls r5, 24
- asrs r5, 24
- strh r5, [r0, 0x6]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end warp_set
-
- thumb_func_start warp_data_is_not_neg_1
-warp_data_is_not_neg_1: @ 80551FC
- push {lr}
- adds r1, r0, 0
- movs r2, 0
- ldrsb r2, [r1, r2]
- movs r0, 0x1
- negs r0, r0
- cmp r2, r0
- bne _08055230
- movs r0, 0x1
- ldrsb r0, [r1, r0]
- cmp r0, r2
- bne _08055230
- movs r2, 0x2
- ldrsb r2, [r1, r2]
- cmp r2, r0
- bne _08055230
- movs r0, 0x4
- ldrsh r3, [r1, r0]
- cmp r3, r2
- bne _08055230
- movs r2, 0x6
- ldrsh r0, [r1, r2]
- cmp r0, r3
- bne _08055230
- movs r0, 0x1
- b _08055232
-_08055230:
- movs r0, 0
-_08055232:
- pop {r1}
- bx r1
- thumb_func_end warp_data_is_not_neg_1
-
- thumb_func_start Overworld_GetMapHeaderByGroupAndId
-Overworld_GetMapHeaderByGroupAndId: @ 8055238
- lsls r0, 16
- lsls r1, 16
- ldr r2, _0805524C @ =gMapGroups
- lsrs r0, 14
- adds r0, r2
- ldr r0, [r0]
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- bx lr
- .align 2, 0
-_0805524C: .4byte gMapGroups
- thumb_func_end Overworld_GetMapHeaderByGroupAndId
-
- thumb_func_start warp1_get_mapheader
-warp1_get_mapheader: @ 8055250
- push {lr}
- ldr r1, _08055270 @ =gUnknown_2031DBC
- movs r0, 0
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x1]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl Overworld_GetMapHeaderByGroupAndId
- pop {r1}
- bx r1
- .align 2, 0
-_08055270: .4byte gUnknown_2031DBC
- thumb_func_end warp1_get_mapheader
-
- thumb_func_start set_current_map_header_from_sav1_save_old_name
-set_current_map_header_from_sav1_save_old_name: @ 8055274
- push {r4-r6,lr}
- ldr r4, _080552B4 @ =gMapHeader
- ldr r5, _080552B8 @ =gSaveBlock1Ptr
- ldr r1, [r5]
- 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
- adds r1, r4, 0
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldr r0, [r0]
- str r0, [r1]
- ldr r1, [r5]
- ldrh r0, [r4, 0x12]
- strh r0, [r1, 0x32]
- bl get_mapdata_header
- str r0, [r4]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080552B4: .4byte gMapHeader
-_080552B8: .4byte gSaveBlock1Ptr
- thumb_func_end set_current_map_header_from_sav1_save_old_name
-
- thumb_func_start set_current_map_header_from_sav1
-set_current_map_header_from_sav1: @ 80552BC
- push {r4,r5,lr}
- ldr r4, _080552F4 @ =gMapHeader
- ldr r0, _080552F8 @ =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
- adds r1, r4, 0
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldr r0, [r0]
- str r0, [r1]
- bl get_mapdata_header
- str r0, [r4]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080552F4: .4byte gMapHeader
-_080552F8: .4byte gSaveBlock1Ptr
- thumb_func_end set_current_map_header_from_sav1
-
- thumb_func_start update_camera_pos_from_warpid
-update_camera_pos_from_warpid: @ 80552FC
- push {r4,r5,lr}
- ldr r0, _0805532C @ =gSaveBlock1Ptr
- ldr r2, [r0]
- movs r1, 0x6
- ldrsb r1, [r2, r1]
- adds r4, r0, 0
- cmp r1, 0
- blt _08055334
- ldr r3, _08055330 @ =gMapHeader
- ldr r0, [r3, 0x4]
- ldrb r5, [r0, 0x1]
- cmp r1, r5
- bge _08055334
- ldr r0, [r0, 0x8]
- lsls r1, 3
- adds r0, r1, r0
- ldrh r0, [r0]
- strh r0, [r2]
- ldr r0, [r3, 0x4]
- ldr r0, [r0, 0x8]
- adds r1, r0
- ldrh r0, [r1, 0x2]
- strh r0, [r2, 0x2]
- b _0805536C
- .align 2, 0
-_0805532C: .4byte gSaveBlock1Ptr
-_08055330: .4byte gMapHeader
-_08055334:
- ldr r1, [r4]
- ldrh r3, [r1, 0x8]
- movs r2, 0x8
- ldrsh r0, [r1, r2]
- cmp r0, 0
- blt _08055350
- ldrh r2, [r1, 0xA]
- movs r5, 0xA
- ldrsh r0, [r1, r5]
- cmp r0, 0
- blt _08055350
- strh r3, [r1]
- strh r2, [r1, 0x2]
- b _0805536C
-_08055350:
- ldr r3, [r4]
- ldr r2, _08055374 @ =gMapHeader
- ldr r0, [r2]
- ldr r0, [r0]
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- strh r0, [r3]
- ldr r0, [r2]
- ldr r0, [r0, 0x4]
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- strh r0, [r3, 0x2]
-_0805536C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08055374: .4byte gMapHeader
- thumb_func_end update_camera_pos_from_warpid
-
- thumb_func_start WarpIntoMap
-WarpIntoMap: @ 8055378
- push {lr}
- bl warp_shift
- bl set_current_map_header_from_sav1_save_old_name
- bl update_camera_pos_from_warpid
- pop {r0}
- bx r0
- thumb_func_end WarpIntoMap
-
- thumb_func_start SetWarpDestination
-SetWarpDestination: @ 805538C
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r1, [sp, 0x18]
- ldr r0, _080553C4 @ =gUnknown_2031DBC
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- lsls r6, 24
- asrs r6, 24
- lsls r3, 24
- asrs r3, 24
- str r3, [sp]
- lsls r1, 24
- asrs r1, 24
- str r1, [sp, 0x4]
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl warp_set
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080553C4: .4byte gUnknown_2031DBC
- thumb_func_end SetWarpDestination
-
- thumb_func_start SetWarpDestinationToMapWarp
-SetWarpDestinationToMapWarp: @ 80553C8
- push {lr}
- sub sp, 0x4
- lsls r0, 24
- asrs r0, 24
- lsls r1, 24
- asrs r1, 24
- lsls r2, 24
- asrs r2, 24
- movs r3, 0x1
- negs r3, r3
- str r3, [sp]
- bl SetWarpDestination
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end SetWarpDestinationToMapWarp
-
- thumb_func_start SetDynamicWarp
-SetDynamicWarp: @ 80553E8
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, _08055418 @ =gSaveBlock1Ptr
- ldr r5, [r0]
- adds r0, r5, 0
- adds r0, 0x14
- lsls r1, 24
- asrs r1, 24
- lsls r2, 24
- asrs r2, 24
- lsls r3, 24
- asrs r3, 24
- movs r4, 0
- ldrsb r4, [r5, r4]
- str r4, [sp]
- movs r4, 0x2
- ldrsb r4, [r5, r4]
- str r4, [sp, 0x4]
- bl warp_set
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08055418: .4byte gSaveBlock1Ptr
- thumb_func_end SetDynamicWarp
-
- thumb_func_start SetDynamicWarpWithCoords
-SetDynamicWarpWithCoords: @ 805541C
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r4, [sp, 0x14]
- ldr r5, [sp, 0x18]
- ldr r0, _08055450 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x14
- lsls r1, 24
- asrs r1, 24
- lsls r2, 24
- asrs r2, 24
- lsls r3, 24
- asrs r3, 24
- lsls r4, 24
- asrs r4, 24
- str r4, [sp]
- lsls r5, 24
- asrs r5, 24
- str r5, [sp, 0x4]
- bl warp_set
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08055450: .4byte gSaveBlock1Ptr
- thumb_func_end SetDynamicWarpWithCoords
-
- thumb_func_start SetWarpDestinationToDynamicWarp
-SetWarpDestinationToDynamicWarp: @ 8055454
- ldr r2, _08055464 @ =gUnknown_2031DBC
- ldr r0, _08055468 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, [r0, 0x18]
- ldr r0, [r0, 0x14]
- str r0, [r2]
- str r1, [r2, 0x4]
- bx lr
- .align 2, 0
-_08055464: .4byte gUnknown_2031DBC
-_08055468: .4byte gSaveBlock1Ptr
- thumb_func_end SetWarpDestinationToDynamicWarp
-
- thumb_func_start sub_805546C
-sub_805546C: @ 805546C
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- bl GetHealLocationPointer
- adds r4, r0, 0
- cmp r4, 0
- beq _0805549A
- movs r0, 0
- ldrsb r0, [r4, r0]
- movs r1, 0x1
- ldrsb r1, [r4, r1]
- movs r2, 0x1
- negs r2, r2
- movs r3, 0x2
- ldrsb r3, [r4, r3]
- ldrb r4, [r4, 0x4]
- lsls r4, 24
- asrs r4, 24
- str r4, [sp]
- bl SetWarpDestination
-_0805549A:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_805546C
-
- thumb_func_start copy_saved_warp3_bank_and_enter_x_to_warp1
-copy_saved_warp3_bank_and_enter_x_to_warp1: @ 80554A4
- ldr r2, _080554B4 @ =gUnknown_2031DBC
- ldr r0, _080554B8 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, [r0, 0x20]
- ldr r0, [r0, 0x1C]
- str r0, [r2]
- str r1, [r2, 0x4]
- bx lr
- .align 2, 0
-_080554B4: .4byte gUnknown_2031DBC
-_080554B8: .4byte gSaveBlock1Ptr
- thumb_func_end copy_saved_warp3_bank_and_enter_x_to_warp1
-
- thumb_func_start sub_80554BC
-sub_80554BC: @ 80554BC
- push {lr}
- ldr r0, _080554C8 @ =gUnknown_2031DBC
- bl SetWhiteoutRespawnWarpAndHealerNpc
- pop {r0}
- bx r0
- .align 2, 0
-_080554C8: .4byte gUnknown_2031DBC
- thumb_func_end sub_80554BC
-
- thumb_func_start SetLastHealLocationWarp
-SetLastHealLocationWarp: @ 80554CC
- push {r4,r5,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- bl GetHealLocationPointer
- adds r5, r0, 0
- cmp r5, 0
- beq _08055500
- ldr r0, _08055508 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x1C
- movs r1, 0
- ldrsb r1, [r5, r1]
- movs r2, 0x1
- ldrsb r2, [r5, r2]
- movs r3, 0x1
- negs r3, r3
- movs r4, 0x2
- ldrsb r4, [r5, r4]
- str r4, [sp]
- movs r4, 0x4
- ldrsb r4, [r5, r4]
- str r4, [sp, 0x4]
- bl warp_set
-_08055500:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08055508: .4byte gSaveBlock1Ptr
- thumb_func_end SetLastHealLocationWarp
-
- thumb_func_start UpdateEscapeWarp
-UpdateEscapeWarp: @ 805550C
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 16
- lsrs r7, r1, 16
- bl GetCurrentMapType
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, _08055598 @ =gUnknown_2031DBC
- movs r0, 0
- ldrsb r0, [r1, r0]
- ldrb r1, [r1, 0x1]
- lsls r1, 24
- asrs r1, 24
- bl get_map_light_level_by_bank_and_number
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0
- bl IsMapTypeOutdoors
- lsls r0, 24
- cmp r0, 0
- beq _08055590
- adds r0, r5, 0
- bl IsMapTypeOutdoors
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055590
- ldr r5, _0805559C @ =gSaveBlock1Ptr
- ldr r0, [r5]
- ldrh r0, [r0, 0x4]
- cmp r0, 0x1
- beq _08055590
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1
- eors r0, r1
- negs r4, r0
- orrs r4, r0
- ldr r1, [r5]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- ldrb r1, [r1, 0x5]
- lsls r1, 24
- asrs r1, 24
- movs r2, 0x1
- negs r2, r2
- subs r3, r6, 0x7
- lsls r3, 24
- asrs r3, 24
- lsrs r4, 31
- subs r4, 0x7
- adds r4, r7, r4
- lsls r4, 24
- asrs r4, 24
- str r4, [sp]
- bl SetEscapeWarp
-_08055590:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08055598: .4byte gUnknown_2031DBC
-_0805559C: .4byte gSaveBlock1Ptr
- thumb_func_end UpdateEscapeWarp
-
- thumb_func_start SetEscapeWarp
-SetEscapeWarp: @ 80555A0
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r1, [sp, 0x18]
- ldr r0, _080555DC @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x24
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- lsls r6, 24
- asrs r6, 24
- lsls r3, 24
- asrs r3, 24
- str r3, [sp]
- lsls r1, 24
- asrs r1, 24
- str r1, [sp, 0x4]
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl warp_set
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080555DC: .4byte gSaveBlock1Ptr
- thumb_func_end SetEscapeWarp
-
- thumb_func_start sub_80555E0
-sub_80555E0: @ 80555E0
- ldr r2, _080555F0 @ =gUnknown_2031DBC
- ldr r0, _080555F4 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, [r0, 0x28]
- ldr r0, [r0, 0x24]
- str r0, [r2]
- str r1, [r2, 0x4]
- bx lr
- .align 2, 0
-_080555F0: .4byte gUnknown_2031DBC
-_080555F4: .4byte gSaveBlock1Ptr
- thumb_func_end sub_80555E0
-
- thumb_func_start SetFixedDiveWarp
-SetFixedDiveWarp: @ 80555F8
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r1, [sp, 0x18]
- ldr r0, _08055630 @ =gUnknown_2031DC4
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- lsls r6, 24
- asrs r6, 24
- lsls r3, 24
- asrs r3, 24
- str r3, [sp]
- lsls r1, 24
- asrs r1, 24
- str r1, [sp, 0x4]
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl warp_set
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08055630: .4byte gUnknown_2031DC4
- thumb_func_end SetFixedDiveWarp
-
- thumb_func_start warp1_set_to_warp2
-warp1_set_to_warp2: @ 8055634
- ldr r2, _08055644 @ =gUnknown_2031DBC
- ldr r0, _08055648 @ =gUnknown_2031DC4
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r2]
- str r1, [r2, 0x4]
- bx lr
- .align 2, 0
-_08055644: .4byte gUnknown_2031DBC
-_08055648: .4byte gUnknown_2031DC4
- thumb_func_end warp1_set_to_warp2
-
- thumb_func_start SetFixedHoleWarp
-SetFixedHoleWarp: @ 805564C
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r1, [sp, 0x18]
- ldr r0, _08055684 @ =gUnknown_2031DCC
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- lsls r6, 24
- asrs r6, 24
- lsls r3, 24
- asrs r3, 24
- str r3, [sp]
- lsls r1, 24
- asrs r1, 24
- str r1, [sp, 0x4]
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl warp_set
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08055684: .4byte gUnknown_2031DCC
- thumb_func_end SetFixedHoleWarp
-
- thumb_func_start SetWarpDestinationToFixedHoleWarp
-SetWarpDestinationToFixedHoleWarp: @ 8055688
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 16
- lsrs r6, r1, 16
- ldr r4, _080556B0 @ =gUnknown_2031DCC
- adds r0, r4, 0
- bl warp_data_is_not_neg_1
- cmp r0, 0x1
- bne _080556BC
- ldr r2, _080556B4 @ =gUnknown_2031DBC
- ldr r0, _080556B8 @ =gUnknown_2031DB4
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r2]
- str r1, [r2, 0x4]
- b _080556D6
- .align 2, 0
-_080556B0: .4byte gUnknown_2031DCC
-_080556B4: .4byte gUnknown_2031DBC
-_080556B8: .4byte gUnknown_2031DB4
-_080556BC:
- movs r0, 0
- ldrsb r0, [r4, r0]
- movs r1, 0x1
- ldrsb r1, [r4, r1]
- movs r2, 0x1
- negs r2, r2
- lsls r3, r5, 24
- asrs r3, 24
- lsls r4, r6, 24
- asrs r4, 24
- str r4, [sp]
- bl SetWarpDestination
-_080556D6:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end SetWarpDestinationToFixedHoleWarp
-
- thumb_func_start warp1_set_to_sav1w
-warp1_set_to_sav1w: @ 80556E0
- ldr r2, _080556F0 @ =gUnknown_2031DBC
- ldr r0, _080556F4 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, [r0, 0x10]
- ldr r0, [r0, 0xC]
- str r0, [r2]
- str r1, [r2, 0x4]
- bx lr
- .align 2, 0
-_080556F0: .4byte gUnknown_2031DBC
-_080556F4: .4byte gSaveBlock1Ptr
- thumb_func_end warp1_set_to_sav1w
-
- thumb_func_start sub_80556F8
-sub_80556F8: @ 80556F8
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r1, [sp, 0x18]
- ldr r0, _08055734 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0xC
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- lsls r6, 24
- asrs r6, 24
- lsls r3, 24
- asrs r3, 24
- str r3, [sp]
- lsls r1, 24
- asrs r1, 24
- str r1, [sp, 0x4]
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl warp_set
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08055734: .4byte gSaveBlock1Ptr
- thumb_func_end sub_80556F8
-
- thumb_func_start sub_8055738
-sub_8055738: @ 8055738
- push {r4,r5,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- bl GetHealLocationPointer
- adds r5, r0, 0
- cmp r5, 0
- beq _0805576C
- ldr r0, _08055774 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0xC
- movs r1, 0
- ldrsb r1, [r5, r1]
- movs r2, 0x1
- ldrsb r2, [r5, r2]
- movs r3, 0x1
- negs r3, r3
- movs r4, 0x2
- ldrsb r4, [r5, r4]
- str r4, [sp]
- movs r4, 0x4
- ldrsb r4, [r5, r4]
- str r4, [sp, 0x4]
- bl warp_set
-_0805576C:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08055774: .4byte gSaveBlock1Ptr
- thumb_func_end sub_8055738
-
- thumb_func_start sub_8055778
-sub_8055778: @ 8055778
- ldr r0, _08055788 @ =gSaveBlock1Ptr
- ldr r2, [r0]
- ldr r0, [r2, 0x14]
- ldr r1, [r2, 0x18]
- str r0, [r2, 0xC]
- str r1, [r2, 0x10]
- bx lr
- .align 2, 0
-_08055788: .4byte gSaveBlock1Ptr
- thumb_func_end sub_8055778
-
- thumb_func_start GetMapConnection
-GetMapConnection: @ 805578C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080557A0 @ =gMapHeader
- ldr r0, [r0, 0xC]
- ldr r3, [r0]
- ldr r1, [r0, 0x4]
- cmp r1, 0
- bne _080557A8
- b _080557BC
- .align 2, 0
-_080557A0: .4byte gMapHeader
-_080557A4:
- adds r0, r1, 0
- b _080557BE
-_080557A8:
- movs r2, 0
- cmp r2, r3
- bge _080557BC
-_080557AE:
- ldrb r0, [r1]
- cmp r0, r4
- beq _080557A4
- adds r2, 0x1
- adds r1, 0xC
- cmp r2, r3
- blt _080557AE
-_080557BC:
- movs r0, 0
-_080557BE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetMapConnection
-
- thumb_func_start sub_80557C4
-sub_80557C4: @ 80557C4
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 16
- lsrs r5, r2, 16
- bl GetMapConnection
- adds r1, r0, 0
- cmp r1, 0
- beq _080557FC
- movs r0, 0x8
- ldrsb r0, [r1, r0]
- ldrb r1, [r1, 0x9]
- lsls r1, 24
- asrs r1, 24
- movs r2, 0x1
- negs r2, r2
- lsls r3, r4, 24
- asrs r3, 24
- lsls r4, r5, 24
- asrs r4, 24
- str r4, [sp]
- bl SetWarpDestination
- b _08055818
-_080557FC:
- bl mapheader_run_script_with_tag_x6
- ldr r0, _08055810 @ =gUnknown_2031DC4
- bl warp_data_is_not_neg_1
- cmp r0, 0
- beq _08055814
- movs r0, 0
- b _0805581A
- .align 2, 0
-_08055810: .4byte gUnknown_2031DC4
-_08055814:
- bl warp1_set_to_warp2
-_08055818:
- movs r0, 0x1
-_0805581A:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80557C4
-
- thumb_func_start SetDiveWarpEmerge
-SetDiveWarpEmerge: @ 8055824
- push {lr}
- adds r3, r0, 0
- adds r2, r1, 0
- lsls r3, 16
- lsrs r3, 16
- lsls r2, 16
- lsrs r2, 16
- movs r0, 0x6
- adds r1, r3, 0
- bl sub_80557C4
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end SetDiveWarpEmerge
-
- thumb_func_start SetDiveWarpDive
-SetDiveWarpDive: @ 8055844
- push {lr}
- adds r3, r0, 0
- adds r2, r1, 0
- lsls r3, 16
- lsrs r3, 16
- lsls r2, 16
- lsrs r2, 16
- movs r0, 0x5
- adds r1, r3, 0
- bl sub_80557C4
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end SetDiveWarpDive
-
- thumb_func_start sub_8055864
-sub_8055864: @ 8055864
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsls r1, 24
- lsrs r5, r0, 24
- asrs r0, 24
- lsrs r4, r1, 24
- asrs r1, 24
- movs r3, 0x1
- negs r3, r3
- str r3, [sp]
- adds r2, r3, 0
- bl SetWarpDestination
- bl sub_8055E94
- bl warp_shift
- bl set_current_map_header_from_sav1_save_old_name
- bl sub_8054F68
- bl TrySetMapSaveWarpStatus
- bl sub_806E110
- bl nullsub_74
- bl RestartWildEncounterImmunitySteps
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_810C578
- bl SetSav1WeatherFromCurrMapHeader
- bl sub_805610C
- bl sub_8055CB8
- bl Overworld_ClearSavedMusic
- bl mapheader_run_script_with_tag_x3
- bl TryRegenerateRenewableHiddenItems
- bl InitMap
- ldr r4, _0805591C @ =gMapHeader
- ldr r0, [r4]
- bl copy_map_tileset2_to_vram_2
- ldr r0, [r4]
- bl apply_map_tileset2_palette
- movs r4, 0x7
-_080558D4:
- lsls r0, r4, 24
- lsrs r0, 24
- bl ApplyWeatherGammaShiftToPal
- adds r4, 0x1
- cmp r4, 0xC
- ble _080558D4
- bl InitSecondaryTilesetAnimation
- bl UpdateLocationHistoryForRoamer
- bl RoamerMove
- bl sub_8110920
- bl DoCurrentWeather
- bl ResetFieldTasksArgs
- bl mapheader_run_script_with_tag_x5
- bl GetLastUsedWarpMapSectionId
- ldr r1, _0805591C @ =gMapHeader
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1, 0x14]
- cmp r0, r1
- beq _08055914
- movs r0, 0x1
- bl CreateMapNamePopupIfNotAlreadyRunning
-_08055914:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805591C: .4byte gMapHeader
- thumb_func_end sub_8055864
-
- thumb_func_start sub_8055920
-sub_8055920: @ 8055920
- push {r4,lr}
- bl set_current_map_header_from_sav1_save_old_name
- bl sub_8054F68
- ldr r0, _0805599C @ =gMapHeader
- ldrb r0, [r0, 0x17]
- bl IsMapTypeOutdoors
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl TrySetMapSaveWarpStatus
- bl sub_806E110
- bl nullsub_74
- bl RestartWildEncounterImmunitySteps
- ldr r0, _080559A0 @ =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 sub_810C578
- bl SetSav1WeatherFromCurrMapHeader
- bl sub_805610C
- cmp r4, 0
- beq _08055974
- ldr r0, _080559A4 @ =0x00000806
- bl FlagClear
-_08055974:
- bl sub_8055CB8
- bl Overworld_ClearSavedMusic
- bl mapheader_run_script_with_tag_x3
- bl TryRegenerateRenewableHiddenItems
- bl UpdateLocationHistoryForRoamer
- bl RoamerMoveToOtherLocationSet
- bl sub_8110920
- bl InitMap
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805599C: .4byte gMapHeader
-_080559A0: .4byte gSaveBlock1Ptr
-_080559A4: .4byte 0x00000806
- thumb_func_end sub_8055920
-
- thumb_func_start sub_80559A8
-sub_80559A8: @ 80559A8
- push {lr}
- bl set_current_map_header_from_sav1_save_old_name
- bl sub_8054F68
- ldr r0, _080559E0 @ =gMapHeader
- ldrb r0, [r0, 0x17]
- bl IsMapTypeOutdoors
- bl TrySetMapSaveWarpStatus
- bl SetSav1WeatherFromCurrMapHeader
- bl sub_805610C
- bl sub_8055CB8
- bl sub_8110920
- bl sub_8111708
- bl set_current_map_header_from_sav1
- bl InitMap
- pop {r0}
- bx r0
- .align 2, 0
-_080559E0: .4byte gMapHeader
- thumb_func_end sub_80559A8
-
- thumb_func_start ResetInitialPlayerAvatarState
-ResetInitialPlayerAvatarState: @ 80559E4
- ldr r0, _080559F4 @ =gUnknown_2031DD4
- movs r2, 0
- movs r1, 0x1
- strb r1, [r0, 0x1]
- strb r1, [r0]
- strb r2, [r0, 0x2]
- bx lr
- .align 2, 0
-_080559F4: .4byte gUnknown_2031DD4
- thumb_func_end ResetInitialPlayerAvatarState
-
- thumb_func_start sub_80559F8
-sub_80559F8: @ 80559F8
- ldr r1, _08055A04 @ =gUnknown_2031DD4
- strb r0, [r1, 0x1]
- movs r0, 0x1
- strb r0, [r1]
- strb r0, [r1, 0x2]
- bx lr
- .align 2, 0
-_08055A04: .4byte gUnknown_2031DD4
- thumb_func_end sub_80559F8
-
- thumb_func_start StoreInitialPlayerAvatarState
-StoreInitialPlayerAvatarState: @ 8055A08
- push {r4,lr}
- bl GetPlayerFacingDirection
- ldr r4, _08055A24 @ =gUnknown_2031DD4
- strb r0, [r4, 0x1]
- movs r0, 0x2
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08055A28
- movs r0, 0x2
- b _08055A5A
- .align 2, 0
-_08055A24: .4byte gUnknown_2031DD4
-_08055A28:
- movs r0, 0x4
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08055A38
- movs r0, 0x4
- b _08055A5A
-_08055A38:
- movs r0, 0x8
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08055A48
- movs r0, 0x8
- b _08055A5A
-_08055A48:
- movs r0, 0x10
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08055A58
- movs r0, 0x10
- b _08055A5A
-_08055A58:
- movs r0, 0x1
-_08055A5A:
- strb r0, [r4]
- ldr r1, _08055A68 @ =gUnknown_2031DD4
- movs r0, 0
- strb r0, [r1, 0x2]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08055A68: .4byte gUnknown_2031DD4
- thumb_func_end StoreInitialPlayerAvatarState
-
- thumb_func_start sub_8055A6C
-sub_8055A6C: @ 8055A6C
- push {r4-r7,lr}
- bl GetCurrentMapType
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- bl sub_8055C74
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r6, _08055ABC @ =gUnknown_2031DD4
- adds r0, r6, 0
- adds r1, r4, 0
- adds r2, r5, 0
- bl sub_8055ACC
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _08055AC0 @ =0xffffff00
- ands r7, r0
- orrs r7, r1
- adds r0, r6, 0
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_8055B74
- lsls r0, 24
- lsrs r0, 16
- ldr r1, _08055AC4 @ =0xffff00ff
- ands r7, r1
- orrs r7, r0
- ldr r0, _08055AC8 @ =0xff00ffff
- ands r7, r0
- str r7, [r6]
- adds r0, r6, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08055ABC: .4byte gUnknown_2031DD4
-_08055AC0: .4byte 0xffffff00
-_08055AC4: .4byte 0xffff00ff
-_08055AC8: .4byte 0xff00ffff
- thumb_func_end sub_8055A6C
-
- thumb_func_start sub_8055ACC
-sub_8055ACC: @ 8055ACC
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r1, 16
- lsrs r5, r1, 16
- lsls r2, 24
- lsrs r4, r2, 24
- cmp r4, 0x8
- beq _08055AE8
- ldr r0, _08055AF0 @ =0x00000802
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08055B30
-_08055AE8:
- cmp r4, 0x5
- bne _08055AF4
- movs r0, 0x10
- b _08055B32
- .align 2, 0
-_08055AF0: .4byte 0x00000802
-_08055AF4:
- adds r0, r5, 0
- bl sub_8055B38
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055B30
- lsls r0, r5, 24
- lsrs r0, 24
- bl MetatileBehavior_IsSurfable
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08055B16
- movs r0, 0x8
- b _08055B32
-_08055B16:
- bl sub_8055C9C
- cmp r0, 0x1
- bne _08055B30
- ldrb r0, [r6]
- cmp r0, 0x2
- bne _08055B28
- movs r0, 0x2
- b _08055B32
-_08055B28:
- cmp r0, 0x4
- bne _08055B30
- movs r0, 0x4
- b _08055B32
-_08055B30:
- movs r0, 0x1
-_08055B32:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8055ACC
-
- thumb_func_start sub_8055B38
-sub_8055B38: @ 8055B38
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsSurfable
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08055B6C
- ldr r0, _08055B60 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldr r0, _08055B64 @ =0x00005601
- cmp r1, r0
- beq _08055B5C
- ldr r0, _08055B68 @ =0x00005701
- cmp r1, r0
- bne _08055B6C
-_08055B5C:
- movs r0, 0x1
- b _08055B6E
- .align 2, 0
-_08055B60: .4byte gSaveBlock1Ptr
-_08055B64: .4byte 0x00005601
-_08055B68: .4byte 0x00005701
-_08055B6C:
- movs r0, 0
-_08055B6E:
- pop {r1}
- bx r1
- thumb_func_end sub_8055B38
-
- thumb_func_start sub_8055B74
-sub_8055B74: @ 8055B74
- push {r4-r7,lr}
- adds r6, r0, 0
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 16
- lsrs r4, r2, 16
- lsls r3, 24
- lsrs r5, r3, 24
- ldr r0, _08055BD4 @ =0x00000802
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08055B94
- cmp r5, 0x6
- beq _08055C3E
-_08055B94:
- lsls r4, 24
- lsrs r5, r4, 24
- adds r0, r5, 0
- bl MetatileBehavior_ReturnFalse_2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055BD0
- adds r0, r5, 0
- bl MetatileBehavior_IsNonAnimDoor
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055C68
- adds r0, r5, 0
- bl MetatileBehavior_IsWarpDoor_2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055C68
- adds r0, r5, 0
- bl MetatileBehavior_IsSouthArrowWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08055BD8
-_08055BD0:
- movs r0, 0x2
- b _08055C6E
- .align 2, 0
-_08055BD4: .4byte 0x00000802
-_08055BD8:
- adds r0, r5, 0
- bl MetatileBehavior_IsNorthArrowWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055C68
- adds r0, r5, 0
- bl MetatileBehavior_IsWestArrowWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055C3E
- adds r0, r5, 0
- bl MetatileBehavior_IsEastArrowWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055C1E
- adds r0, r5, 0
- bl MetatileBehavior_IsUnknownWarp6C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055C1E
- adds r0, r5, 0
- bl MetatileBehavior_IsUnknownWarp6E
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08055C22
-_08055C1E:
- movs r0, 0x3
- b _08055C6E
-_08055C22:
- adds r0, r5, 0
- bl MetatileBehavior_IsUnknownWarp6D
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055C3E
- adds r0, r5, 0
- bl MetatileBehavior_IsUnknownWarp6F
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08055C42
-_08055C3E:
- movs r0, 0x4
- b _08055C6E
-_08055C42:
- ldrb r0, [r6]
- cmp r0, 0x10
- bne _08055C4C
- cmp r7, 0x8
- beq _08055C6C
-_08055C4C:
- cmp r0, 0x8
- bne _08055C54
- cmp r7, 0x10
- beq _08055C6C
-_08055C54:
- lsrs r0, r4, 24
- bl MetatileBehavior_IsLadder
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055C6C
- ldrb r0, [r6, 0x2]
- cmp r0, 0
- bne _08055C6C
-_08055C68:
- movs r0, 0x1
- b _08055C6E
-_08055C6C:
- ldrb r0, [r6, 0x1]
-_08055C6E:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8055B74
-
- thumb_func_start sub_8055C74
-sub_8055C74: @ 8055C74
- push {lr}
- ldr r0, _08055C98 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x7
- lsls r0, 16
- asrs r0, 16
- ldrh r1, [r1, 0x2]
- adds r1, 0x7
- lsls r1, 16
- asrs r1, 16
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .align 2, 0
-_08055C98: .4byte gSaveBlock1Ptr
- thumb_func_end sub_8055C74
-
- thumb_func_start sub_8055C9C
-sub_8055C9C: @ 8055C9C
- push {lr}
- ldr r0, _08055CAC @ =gMapHeader
- ldrb r0, [r0, 0x18]
- cmp r0, 0
- beq _08055CB0
- movs r0, 0x1
- b _08055CB2
- .align 2, 0
-_08055CAC: .4byte gMapHeader
-_08055CB0:
- movs r0, 0
-_08055CB2:
- pop {r1}
- bx r1
- thumb_func_end sub_8055C9C
-
- thumb_func_start sub_8055CB8
-sub_8055CB8: @ 8055CB8
- push {lr}
- ldr r0, _08055CC8 @ =gMapHeader
- ldrb r1, [r0, 0x15]
- cmp r1, 0
- bne _08055CD0
- ldr r0, _08055CCC @ =gSaveBlock1Ptr
- ldr r0, [r0]
- b _08055CF8
- .align 2, 0
-_08055CC8: .4byte gMapHeader
-_08055CCC: .4byte gSaveBlock1Ptr
-_08055CD0:
- ldr r0, _08055CE8 @ =0x00000806
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08055CF0
- ldr r0, _08055CEC @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x30
- movs r1, 0
- b _08055CFA
- .align 2, 0
-_08055CE8: .4byte 0x00000806
-_08055CEC: .4byte gSaveBlock1Ptr
-_08055CF0:
- ldr r0, _08055D00 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _08055D04 @ =gMaxFlashLevel
- ldr r1, [r1]
-_08055CF8:
- adds r0, 0x30
-_08055CFA:
- strb r1, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_08055D00: .4byte gSaveBlock1Ptr
-_08055D04: .4byte gMaxFlashLevel
- thumb_func_end sub_8055CB8
-
- thumb_func_start Overworld_SetFlashLevel
-Overworld_SetFlashLevel: @ 8055D08
- push {lr}
- adds r1, r0, 0
- cmp r1, 0
- blt _08055D18
- ldr r0, _08055D28 @ =gMaxFlashLevel
- ldr r0, [r0]
- cmp r1, r0
- ble _08055D1A
-_08055D18:
- movs r1, 0
-_08055D1A:
- ldr r0, _08055D2C @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x30
- strb r1, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_08055D28: .4byte gMaxFlashLevel
-_08055D2C: .4byte gSaveBlock1Ptr
- thumb_func_end Overworld_SetFlashLevel
-
- thumb_func_start Overworld_GetFlashLevel
-Overworld_GetFlashLevel: @ 8055D30
- ldr r0, _08055D3C @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x30
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_08055D3C: .4byte gSaveBlock1Ptr
- thumb_func_end Overworld_GetFlashLevel
-
- thumb_func_start SetCurrentMapLayout
-SetCurrentMapLayout: @ 8055D40
- push {lr}
- ldr r1, _08055D54 @ =gSaveBlock1Ptr
- ldr r1, [r1]
- strh r0, [r1, 0x32]
- bl get_mapdata_header
- ldr r1, _08055D58 @ =gMapHeader
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08055D54: .4byte gSaveBlock1Ptr
-_08055D58: .4byte gMapHeader
- thumb_func_end SetCurrentMapLayout
-
- thumb_func_start sub_8055D5C
-sub_8055D5C: @ 8055D5C
- ldr r2, _08055D68 @ =gUnknown_2031DBC
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [r2]
- str r1, [r2, 0x4]
- bx lr
- .align 2, 0
-_08055D68: .4byte gUnknown_2031DBC
- thumb_func_end sub_8055D5C
-
- thumb_func_start sub_8055D6C
-sub_8055D6C: @ 8055D6C
- push {lr}
- adds r1, r0, 0
- movs r0, 0
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x1]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl Overworld_GetMapHeaderByGroupAndId
- ldrh r0, [r0, 0x10]
- pop {r1}
- bx r1
- thumb_func_end sub_8055D6C
-
- thumb_func_start sub_8055D8C
-sub_8055D8C: @ 8055D8C
- push {lr}
- ldr r0, _08055DA0 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x4
- bl sub_8055D6C
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .align 2, 0
-_08055DA0: .4byte gSaveBlock1Ptr
- thumb_func_end sub_8055D8C
-
- thumb_func_start sub_8055DA4
-sub_8055DA4: @ 8055DA4
- push {lr}
- ldr r0, _08055DB4 @ =gUnknown_2031DBC
- bl sub_8055D6C
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .align 2, 0
-_08055DB4: .4byte gUnknown_2031DBC
- thumb_func_end sub_8055DA4
-
- thumb_func_start sub_8055DB8
-sub_8055DB8: @ 8055DB8
- push {lr}
- bl ResetMapMusic
- pop {r0}
- bx r0
- thumb_func_end sub_8055DB8
-
- thumb_func_start Overworld_PlaySpecialMapMusic
-Overworld_PlaySpecialMapMusic: @ 8055DC4
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r0, _08055DD8 @ =gDisableMapMusicChangeOnMapLoad
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08055DDC
- bl StopMapMusic
- b _08055E6C
- .align 2, 0
-_08055DD8: .4byte gDisableMapMusicChangeOnMapLoad
-_08055DDC:
- cmp r0, 0x2
- beq _08055E6C
- ldr r0, _08055E14 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- ldr r0, _08055E18 @ =0x00004f01
- cmp r1, r0
- bne _08055E24
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- movs r1, 0
- ldrsh r0, [r4, r1]
- subs r0, 0x7
- cmp r0, 0xA
- bgt _08055E24
- ldr r0, _08055E1C @ =gMPlayInfo_BGM
- ldr r1, [r0]
- ldr r0, _08055E20 @ =mus_win_gym
- cmp r1, r0
- bne _08055E24
- movs r0, 0x4
- bl FadeInBGM
- b _08055E6C
- .align 2, 0
-_08055E14: .4byte gSaveBlock1Ptr
-_08055E18: .4byte 0x00004f01
-_08055E1C: .4byte gMPlayInfo_BGM
-_08055E20: .4byte mus_win_gym
-_08055E24:
- bl sub_8055D8C
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, _08055E3C @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldrh r0, [r1, 0x2C]
- cmp r0, 0
- beq _08055E40
- adds r4, r0, 0
- b _08055E5A
- .align 2, 0
-_08055E3C: .4byte gSaveBlock1Ptr
-_08055E40:
- movs r0, 0x8
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08055E5A
- ldr r5, _08055E74 @ =0x00000131 @ MUS_NAMINORI
- adds r0, r5, 0
- bl sub_8056124
- cmp r0, 0
- beq _08055E5A
- adds r4, r5, 0
-_08055E5A:
- bl GetCurrentMapMusic
- lsls r0, 16
- lsrs r0, 16
- cmp r4, r0
- beq _08055E6C
- adds r0, r4, 0
- bl PlayNewMapMusic
-_08055E6C:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08055E74: .4byte 0x00000131
- thumb_func_end Overworld_PlaySpecialMapMusic
-
- thumb_func_start Overworld_SetSavedMusic
-Overworld_SetSavedMusic: @ 8055E78
- ldr r1, _08055E80 @ =gSaveBlock1Ptr
- ldr r1, [r1]
- strh r0, [r1, 0x2C]
- bx lr
- .align 2, 0
-_08055E80: .4byte gSaveBlock1Ptr
- thumb_func_end Overworld_SetSavedMusic
-
- thumb_func_start Overworld_ClearSavedMusic
-Overworld_ClearSavedMusic: @ 8055E84
- ldr r0, _08055E90 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0
- strh r0, [r1, 0x2C]
- bx lr
- .align 2, 0
-_08055E90: .4byte gSaveBlock1Ptr
- thumb_func_end Overworld_ClearSavedMusic
-
- thumb_func_start sub_8055E94
-sub_8055E94: @ 8055E94
- push {r4-r6,lr}
- ldr r0, _08055EA4 @ =gDisableMapMusicChangeOnMapLoad
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08055EA8
- bl StopMapMusic
- b _08055F14
- .align 2, 0
-_08055EA4: .4byte gDisableMapMusicChangeOnMapLoad
-_08055EA8:
- cmp r0, 0x2
- beq _08055F14
- ldr r0, _08055F04 @ =0x00004001
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055F14
- bl sub_8055DA4
- lsls r0, 16
- lsrs r4, r0, 16
- bl GetCurrentMapMusic
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r5, _08055F08 @ =0x00000131 @ MUS_NAMINORI
- cmp r6, r5
- beq _08055F14
- movs r0, 0x8
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08055EE8
- adds r0, r5, 0
- bl sub_8056124
- cmp r0, 0
- beq _08055EE8
- adds r4, r5, 0
-_08055EE8:
- cmp r4, r6
- beq _08055F14
- movs r0, 0x6
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08055F0C
- adds r0, r4, 0
- movs r1, 0x4
- movs r2, 0x4
- bl FadeOutAndFadeInNewMapMusic
- b _08055F14
- .align 2, 0
-_08055F04: .4byte 0x00004001
-_08055F08: .4byte 0x00000131
-_08055F0C:
- adds r0, r4, 0
- movs r1, 0x8
- bl FadeOutAndPlayNewMapMusic
-_08055F14:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8055E94
-
- thumb_func_start Overworld_ChangeMusicToDefault
-Overworld_ChangeMusicToDefault: @ 8055F1C
- push {r4,lr}
- bl GetCurrentMapMusic
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- bl sub_8055D8C
- lsls r0, 16
- lsrs r0, 16
- cmp r4, r0
- beq _08055F42
- bl sub_8055D8C
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x8
- bl FadeOutAndPlayNewMapMusic
-_08055F42:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end Overworld_ChangeMusicToDefault
-
- thumb_func_start Overworld_ChangeMusicTo
-Overworld_ChangeMusicTo: @ 8055F48
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- bl GetCurrentMapMusic
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r4
- beq _08055F62
- adds r0, r4, 0
- movs r1, 0x8
- bl FadeOutAndPlayNewMapMusic
-_08055F62:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end Overworld_ChangeMusicTo
-
- thumb_func_start GetMapMusicFadeoutSpeed
-GetMapMusicFadeoutSpeed: @ 8055F68
- push {lr}
- bl warp1_get_mapheader
- ldrb r0, [r0, 0x17]
- bl IsMapTypeIndoors
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055F80
- movs r0, 0x4
- b _08055F82
-_08055F80:
- movs r0, 0x2
-_08055F82:
- pop {r1}
- bx r1
- thumb_func_end GetMapMusicFadeoutSpeed
-
- thumb_func_start TryFadeOutOldMapMusic
-TryFadeOutOldMapMusic: @ 8055F88
- push {r4,lr}
- bl sub_8055DA4
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, _08055FC0 @ =0x00004001
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08055FB8
- bl GetCurrentMapMusic
- lsls r0, 16
- lsrs r0, 16
- cmp r4, r0
- beq _08055FB8
- bl GetMapMusicFadeoutSpeed
- lsls r0, 24
- lsrs r0, 24
- bl FadeOutMapMusic
-_08055FB8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08055FC0: .4byte 0x00004001
- thumb_func_end TryFadeOutOldMapMusic
-
- thumb_func_start BGMusicStopped
-BGMusicStopped: @ 8055FC4
- push {lr}
- bl IsNotWaitingForBGMStop
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end BGMusicStopped
-
- thumb_func_start Overworld_FadeOutMapMusic
-Overworld_FadeOutMapMusic: @ 8055FD4
- push {lr}
- movs r0, 0x4
- bl FadeOutMapMusic
- pop {r0}
- bx r0
- thumb_func_end Overworld_FadeOutMapMusic
-
- thumb_func_start sub_8055FE0
-sub_8055FE0: @ 8055FE0
- push {r4,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- ldr r0, _0805604C @ =gUnknown_2031DDC
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08056014
- 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_IsSurfable
- lsls r0, 24
- cmp r0, 0
- beq _0805606A
-_08056014:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x58
- bl __umodsi3
- adds r0, 0xD4
- lsls r0, 24
- lsrs r4, r0, 24
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1E
- bl __umodsi3
- adds r0, 0x32
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _08056050 @ =gDisableMapMusicChangeOnMapLoad
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08056054
- bl StopMapMusic
- b _0805606A
- .align 2, 0
-_0805604C: .4byte gUnknown_2031DDC
-_08056050: .4byte gDisableMapMusicChangeOnMapLoad
-_08056054:
- cmp r0, 0x2
- beq _0805606A
- ldr r0, _08056074 @ =gUnknown_2031DDA
- ldrh r0, [r0]
- lsls r1, r4, 24
- asrs r1, 24
- lsls r2, 24
- asrs r2, 24
- movs r3, 0x1
- bl PlayCry2
-_0805606A:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08056074: .4byte gUnknown_2031DDA
- thumb_func_end sub_8055FE0
-
- thumb_func_start sub_8056078
-sub_8056078: @ 8056078
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r5, r1, 0
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0x4
- bhi _08056106
- lsls r0, 2
- ldr r1, _08056090 @ =_08056094
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08056090: .4byte _08056094
- .align 2, 0
-_08056094:
- .4byte _080560A8
- .4byte _080560BC
- .4byte _080560D8
- .4byte _080560F2
- .4byte _08056106
-_080560A8:
- ldr r0, _080560B4 @ =gUnknown_2031DDA
- ldrh r0, [r0]
- cmp r0, 0
- bne _080560B8
- movs r0, 0x4
- b _08056104
- .align 2, 0
-_080560B4: .4byte gUnknown_2031DDA
-_080560B8:
- movs r0, 0x1
- b _08056104
-_080560BC:
- 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, [r5]
- movs r0, 0x3
- b _08056104
-_080560D8:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r4, 0x96
- lsls r4, 3
- adds r1, r4, 0
- bl __umodsi3
- adds r0, r4
- strh r0, [r5]
- movs r0, 0x3
- b _08056104
-_080560F2:
- ldrh r0, [r5]
- subs r0, 0x1
- strh r0, [r5]
- lsls r0, 16
- cmp r0, 0
- bne _08056106
- bl sub_8055FE0
- movs r0, 0x2
-_08056104:
- strh r0, [r6]
-_08056106:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8056078
-
- thumb_func_start sub_805610C
-sub_805610C: @ 805610C
- push {lr}
- ldr r0, _0805611C @ =gUnknown_2031DDC
- bl GetLocalWildMon
- ldr r1, _08056120 @ =gUnknown_2031DDA
- strh r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_0805611C: .4byte gUnknown_2031DDC
-_08056120: .4byte gUnknown_2031DDA
- thumb_func_end sub_805610C
-
- thumb_func_start sub_8056124
-sub_8056124: @ 8056124
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- movs r0, 0x8D
- lsls r0, 1
- cmp r1, r0
- beq _08056138
- adds r0, 0x17
- cmp r1, r0
- bne _08056150
-_08056138:
- ldr r0, _0805614C @ =gMapHeader
- ldrb r0, [r0, 0x14]
- cmp r0, 0x84
- beq _08056148
- cmp r0, 0x7B
- beq _08056148
- cmp r0, 0x61
- bne _08056150
-_08056148:
- movs r0, 0
- b _08056152
- .align 2, 0
-_0805614C: .4byte gMapHeader
-_08056150:
- movs r0, 0x1
-_08056152:
- pop {r1}
- bx r1
- thumb_func_end sub_8056124
-
- thumb_func_start get_map_light_level_by_bank_and_number
-get_map_light_level_by_bank_and_number: @ 8056158
- 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 get_map_light_level_by_bank_and_number
-
- thumb_func_start get_map_light_level_from_warp
-get_map_light_level_from_warp: @ 8056170
- push {lr}
- movs r2, 0
- ldrsb r2, [r0, r2]
- movs r1, 0x1
- ldrsb r1, [r0, r1]
- adds r0, r2, 0
- bl get_map_light_level_by_bank_and_number
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end get_map_light_level_from_warp
-
- thumb_func_start GetCurrentMapType
-GetCurrentMapType: @ 8056188
- push {lr}
- ldr r0, _0805619C @ =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x4
- bl get_map_light_level_from_warp
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_0805619C: .4byte gSaveBlock1Ptr
- thumb_func_end GetCurrentMapType
-
- thumb_func_start GetLastUsedWarpMapType
-GetLastUsedWarpMapType: @ 80561A0
- push {lr}
- ldr r0, _080561B0 @ =gUnknown_2031DB4
- bl get_map_light_level_from_warp
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_080561B0: .4byte gUnknown_2031DB4
- thumb_func_end GetLastUsedWarpMapType
-
- thumb_func_start GetLastUsedWarpMapSectionId
-GetLastUsedWarpMapSectionId: @ 80561B4
- push {lr}
- ldr r1, _080561D4 @ =gUnknown_2031DB4
- movs r0, 0
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x1]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl Overworld_GetMapHeaderByGroupAndId
- ldrb r0, [r0, 0x14]
- pop {r1}
- bx r1
- .align 2, 0
-_080561D4: .4byte gUnknown_2031DB4
- thumb_func_end GetLastUsedWarpMapSectionId
-
- thumb_func_start IsMapTypeOutdoors
-IsMapTypeOutdoors: @ 80561D8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _080561F2
- cmp r0, 0x1
- beq _080561F2
- cmp r0, 0x5
- beq _080561F2
- cmp r0, 0x2
- beq _080561F2
- cmp r0, 0x6
- bne _080561F6
-_080561F2:
- movs r0, 0x1
- b _080561F8
-_080561F6:
- movs r0, 0
-_080561F8:
- pop {r1}
- bx r1
- thumb_func_end IsMapTypeOutdoors
-
- thumb_func_start Overworld_MapTypeAllowsTeleportAndFly
-Overworld_MapTypeAllowsTeleportAndFly: @ 80561FC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _08056212
- cmp r0, 0x1
- beq _08056212
- cmp r0, 0x6
- beq _08056212
- cmp r0, 0x2
- bne _08056216
-_08056212:
- movs r0, 0x1
- b _08056218
-_08056216:
- movs r0, 0
-_08056218:
- pop {r1}
- bx r1
- thumb_func_end Overworld_MapTypeAllowsTeleportAndFly
-
- thumb_func_start IsMapTypeIndoors
-IsMapTypeIndoors: @ 805621C
- push {lr}
- lsls r0, 24
- movs r1, 0xF8
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08056230
- movs r0, 0
- b _08056232
-_08056230:
- movs r0, 0x1
-_08056232:
- pop {r1}
- bx r1
- thumb_func_end IsMapTypeIndoors
-
- thumb_func_start GetSavedWarpRegionMapSectionId
-GetSavedWarpRegionMapSectionId: @ 8056238
- push {lr}
- ldr r0, _0805625C @ =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
- .align 2, 0
-_0805625C: .4byte gSaveBlock1Ptr
- thumb_func_end GetSavedWarpRegionMapSectionId
-
- thumb_func_start GetCurrentRegionMapSectionId
-GetCurrentRegionMapSectionId: @ 8056260
- push {lr}
- ldr r0, _08056284 @ =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
- .align 2, 0
-_08056284: .4byte gSaveBlock1Ptr
- thumb_func_end GetCurrentRegionMapSectionId
-
- thumb_func_start GetCurrentMapBattleScene
-GetCurrentMapBattleScene: @ 8056288
- push {lr}
- ldr r0, _080562AC @ =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
- .align 2, 0
-_080562AC: .4byte gSaveBlock1Ptr
- thumb_func_end GetCurrentMapBattleScene
-
- thumb_func_start InitOverworldBgs
-InitOverworldBgs: @ 80562B0
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- bl MoveSaveBlocks_ResetHeap_
- bl sub_8056E80
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, _08056344 @ =gUnknown_826D320
- 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, _08056348 @ =gBGTilemapBuffers2
- mov r8, r0
- movs r4, 0x80
- lsls r4, 4
- adds r0, r4, 0
- bl AllocZeroed
- mov r1, r8
- str r0, [r1]
- ldr r6, _0805634C @ =gBGTilemapBuffers1
- adds r0, r4, 0
- bl AllocZeroed
- str r0, [r6]
- ldr r5, _08056350 @ =gBGTilemapBuffers3
- 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 InitStandardTextBoxWindows
- bl ResetBg0
- bl sub_8069348
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08056344: .4byte gUnknown_826D320
-_08056348: .4byte gBGTilemapBuffers2
-_0805634C: .4byte gBGTilemapBuffers1
-_08056350: .4byte gBGTilemapBuffers3
- thumb_func_end InitOverworldBgs
-
- thumb_func_start sub_8056354
-sub_8056354: @ 8056354
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, _080563E0 @ =gUnknown_826D320
- 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, _080563E4 @ =gBGTilemapBuffers2
- mov r8, r0
- movs r4, 0x80
- lsls r4, 4
- adds r0, r4, 0
- bl AllocZeroed
- mov r1, r8
- str r0, [r1]
- ldr r6, _080563E8 @ =gBGTilemapBuffers1
- adds r0, r4, 0
- bl AllocZeroed
- str r0, [r6]
- ldr r5, _080563EC @ =gBGTilemapBuffers3
- 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 InitStandardTextBoxWindows
- bl ResetBg0
- bl sub_8069348
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080563E0: .4byte gUnknown_826D320
-_080563E4: .4byte gBGTilemapBuffers2
-_080563E8: .4byte gBGTilemapBuffers1
-_080563EC: .4byte gBGTilemapBuffers3
- thumb_func_end sub_8056354
-
- thumb_func_start CleanupOverworldWindowsAndTilemaps
-CleanupOverworldWindowsAndTilemaps: @ 80563F0
- push {lr}
- bl FreeAllOverworldWindowBuffers
- ldr r0, _08056414 @ =gBGTilemapBuffers3
- ldr r0, [r0]
- bl Free
- ldr r0, _08056418 @ =gBGTilemapBuffers1
- ldr r0, [r0]
- bl Free
- ldr r0, _0805641C @ =gBGTilemapBuffers2
- ldr r0, [r0]
- bl Free
- pop {r0}
- bx r0
- .align 2, 0
-_08056414: .4byte gBGTilemapBuffers3
-_08056418: .4byte gBGTilemapBuffers1
-_0805641C: .4byte gBGTilemapBuffers2
- thumb_func_end CleanupOverworldWindowsAndTilemaps
-
- thumb_func_start sub_8056420
-sub_8056420: @ 8056420
- push {lr}
- bl ResetSafariZoneFlag
- pop {r0}
- bx r0
- thumb_func_end sub_8056420
-
- thumb_func_start IsUpdateLinkStateCBActive
-IsUpdateLinkStateCBActive: @ 805642C
- push {lr}
- ldr r0, _0805643C @ =gMain
- ldr r1, [r0]
- ldr r0, _08056440 @ =c1_link_related
- cmp r1, r0
- beq _08056444
- movs r0, 0
- b _08056446
- .align 2, 0
-_0805643C: .4byte gMain
-_08056440: .4byte c1_link_related
-_08056444:
- movs r0, 0x1
-_08056446:
- pop {r1}
- bx r1
- thumb_func_end IsUpdateLinkStateCBActive
-
- thumb_func_start sub_805644C
-sub_805644C: @ 805644C
- 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_8112B3C
- bl sub_805BEB8
- mov r6, sp
- mov r0, sp
- bl FieldClearPlayerInput
- mov r0, sp
- adds r1, r5, 0
- adds r2, r4, 0
- bl FieldGetPlayerInput
- mov r0, sp
- bl FieldInput_HandleCancelSignpost
- bl ScriptContext2_IsEnabled
- lsls r0, 24
- cmp r0, 0
- bne _080564BA
- mov r0, sp
- bl ProcessPlayerFieldInput
- cmp r0, 0x1
- bne _080564B0
- ldr r0, _080564A8 @ =gUnknown_3005E88
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0805649E
- ldr r0, _080564AC @ =gInputToStoreInQuestLogMaybe
- bl sub_81127F8
-_0805649E:
- bl ScriptContext2_Enable
- bl DismissMapNamePopup
- b _080564BA
- .align 2, 0
-_080564A8: .4byte gUnknown_3005E88
-_080564AC: .4byte gInputToStoreInQuestLogMaybe
-_080564B0:
- ldrb r0, [r6, 0x2]
- adds r1, r5, 0
- adds r2, r4, 0
- bl player_step
-_080564BA:
- bl RunQuestLogCB
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_805644C
-
thumb_func_start sub_80564C8
sub_80564C8: @ 80564C8
push {lr}
@@ -3492,7 +197,7 @@ CB2_NewGame: @ 8056644
push {lr}
bl FieldClearVBlankHBlankCallbacks
bl StopMapMusic
- bl sub_8056420
+ bl ResetSafariZoneFlag_
bl NewGameInitData
bl ResetInitialPlayerAvatarState
bl PlayTimeCounter_Start
@@ -3539,7 +244,7 @@ CB2_WhiteOut: @ 80566A4
bls _08056702
bl FieldClearVBlankHBlankCallbacks
bl StopMapMusic
- bl sub_8056420
+ bl ResetSafariZoneFlag_
bl sub_8054BC8
movs r0, 0x2
bl sub_80559F8
@@ -3645,7 +350,7 @@ c2_80567AC: @ 80567AC
cmp r0, 0
beq _080567CC
bl SetFieldVBlankCallback
- ldr r0, _080567D4 @ =c1_link_related
+ ldr r0, _080567D4 @ =CB1_UpdateLinkState
bl SetMainCallback1
bl sub_80578D8
ldr r0, _080567D8 @ =sub_80565B4
@@ -3655,7 +360,7 @@ _080567CC:
bx r0
.align 2, 0
_080567D0: .4byte gMain + 0x438
-_080567D4: .4byte c1_link_related
+_080567D4: .4byte CB1_UpdateLinkState
_080567D8: .4byte sub_80565B4
thumb_func_end c2_80567AC
@@ -3724,7 +429,7 @@ c2_8056854: @ 8056854
push {lr}
bl FieldClearVBlankHBlankCallbacks
bl StopMapMusic
- ldr r0, _08056878 @ =c1_link_related
+ ldr r0, _08056878 @ =CB1_UpdateLinkState
bl SetMainCallback1
bl sub_80578D8
ldr r0, _0805687C @ =gWirelessCommType
@@ -3735,7 +440,7 @@ c2_8056854: @ 8056854
ldr r0, _08056884 @ =FieldCB_ReturnToFieldWirelessLink
b _0805688C
.align 2, 0
-_08056878: .4byte c1_link_related
+_08056878: .4byte CB1_UpdateLinkState
_0805687C: .4byte gWirelessCommType
_08056880: .4byte gFieldCallback
_08056884: .4byte FieldCB_ReturnToFieldWirelessLink
@@ -3838,8 +543,8 @@ CB2_ContinueSavedGame: @ 8056938
push {lr}
bl FieldClearVBlankHBlankCallbacks
bl StopMapMusic
- bl sub_8056420
- bl set_current_map_header_from_sav1
+ bl ResetSafariZoneFlag_
+ bl LoadSaveblockMapHeader
bl sub_80550A8
bl UnfreezeObjectEvents
bl sub_8054E40
@@ -3857,7 +562,7 @@ CB2_ContinueSavedGame: @ 8056938
cmp r0, 0x1
bne _0805699C
bl sav2_x9_clear_bit1
- bl warp1_set_to_sav1w
+ bl SetWarpDestinationToContinueGameWarp
bl WarpIntoMap
ldr r0, _08056998 @ =CB2_LoadMap
bl SetMainCallback2
@@ -4001,7 +706,7 @@ _08056AB0:
b _08056B62
_08056ABE:
movs r0, 0x1
- bl sub_8055920
+ bl mli0_load_map
b _08056B62
_08056AC6:
movs r0, 0x1
@@ -4124,7 +829,7 @@ _08056BD0:
bl InitOverworldBgs
bl FieldClearVBlankHBlankCallbacks
adds r0, r5, 0
- bl sub_8055920
+ bl mli0_load_map
b _08056CCA
_08056BE0:
bl sub_8111F14
@@ -4691,7 +1396,7 @@ mli4_mapscripts_and_other: @ 805709C
mov r0, sp
adds r1, r4, 0
bl GetCameraFocusCoords
- bl sub_8055A6C
+ bl GetInitialPlayerAvatarState
adds r5, r0, 0
mov r0, sp
movs r1, 0
@@ -4943,7 +1648,7 @@ sub_80572A8: @ 80572A8
ldr r0, _080572D0 @ =gUnknown_2036E28
movs r1, 0x1
strb r1, [r0]
- bl set_current_map_header_from_sav1
+ bl LoadSaveblockMapHeader
bl ScriptContext1_Init
bl ScriptContext2_Disable
movs r0, 0
@@ -5033,7 +1738,7 @@ _0805735C:
movs r0, 0
strb r0, [r1]
movs r0, 0
- bl sub_8055920
+ bl mli0_load_map
b _08057412
.align 2, 0
_0805738C: .4byte gUnknown_2031DE0
@@ -5123,8 +1828,8 @@ sub_8057430: @ 8057430
ldr r1, _08057484 @ =gUnknown_2036E28
movs r0, 0x3
strb r0, [r1]
- bl sub_8056420
- bl set_current_map_header_from_sav1
+ bl ResetSafariZoneFlag_
+ bl LoadSaveblockMapHeader
bl sub_80550A8
bl UnfreezeObjectEvents
bl sub_8054E40
@@ -5138,7 +1843,7 @@ sub_8057430: @ 8057430
cmp r0, 0x1
bne _08057490
bl sav2_x9_clear_bit1
- bl warp1_set_to_sav1w
+ bl SetWarpDestinationToContinueGameWarp
bl WarpIntoMap
ldr r0, _0805748C @ =CB2_LoadMap
bl SetMainCallback2
@@ -5294,7 +1999,7 @@ _08057560:
ands r0, r2
adds r6, r0, 0
orrs r6, r1
- ldr r0, _08057608 @ =gUnknown_2031DBC
+ ldr r0, _08057608 @ =sWarpDestination
str r5, [r0]
str r6, [r0, 0x4]
ldr r1, _0805760C @ =gUnknown_2031DE8
@@ -5331,7 +2036,7 @@ _080575F8: .4byte 0xffffff00
_080575FC: .4byte 0xffff00ff
_08057600: .4byte 0xffff0000
_08057604: .4byte 0x0000ffff
-_08057608: .4byte gUnknown_2031DBC
+_08057608: .4byte sWarpDestination
_0805760C: .4byte gUnknown_2031DE8
_08057610: .4byte gPaletteFade
_08057614: .4byte gFieldCallback2
@@ -5390,9 +2095,9 @@ _0805766C:
.4byte _0805770C
.4byte _08057712
_08057690:
- bl sub_8056354
+ bl InitOverworldBgs_NoResetHeap
movs r0, 0
- bl sub_8055920
+ bl mli0_load_map
b _0805772A
_0805769C:
bl ScanlineEffect_Clear
@@ -5633,8 +2338,8 @@ _0805787C: .4byte gPaletteFade
_08057880: .4byte CB2_LoadMap
thumb_func_end sub_8057854
- thumb_func_start c1_link_related
-c1_link_related: @ 8057884
+ thumb_func_start CB1_UpdateLinkState
+CB1_UpdateLinkState: @ 8057884
push {r4,lr}
ldr r0, _080578C8 @ =gWirelessCommType
ldrb r0, [r0]
@@ -5669,7 +2374,7 @@ _080578C8: .4byte gWirelessCommType
_080578CC: .4byte gLocalLinkPlayerId
_080578D0: .4byte gLinkPartnersHeldKeys
_080578D4: .4byte gUnknown_3000E84
- thumb_func_end c1_link_related
+ thumb_func_end CB1_UpdateLinkState
thumb_func_start sub_80578D8
sub_80578D8: @ 80578D8