summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/field_doortransition.s1221
-rw-r--r--asm/rom_8080874.s1212
-rw-r--r--ld_script.txt3
-rw-r--r--src/field_doortransition.c (renamed from src/rom_8080874.c)0
4 files changed, 1223 insertions, 1213 deletions
diff --git a/asm/field_doortransition.s b/asm/field_doortransition.s
new file mode 100644
index 000000000..798285a45
--- /dev/null
+++ b/asm/field_doortransition.s
@@ -0,0 +1,1221 @@
+ .include "constants/gba_constants.inc"
+ .include "constants/species_constants.inc"
+ .include "asm/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start task_mpl_807DD60
+task_mpl_807DD60: @ 80809CC
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r5, r0, 24
+ lsls r0, r5, 2
+ adds r0, r5
+ lsls r0, 3
+ ldr r2, _080809F0 @ =gTasks
+ adds r4, r0, r2
+ movs r1, 0x8
+ ldrsh r0, [r4, r1]
+ cmp r0, 0x1
+ beq _08080A06
+ cmp r0, 0x1
+ bgt _080809F4
+ cmp r0, 0
+ beq _080809FA
+ b _08080A36
+ .align 2, 0
+_080809F0: .4byte gTasks
+_080809F4:
+ cmp r0, 0x2
+ beq _08080A24
+ b _08080A36
+_080809FA:
+ bl sub_8083664
+ lsls r0, 24
+ lsrs r0, 24
+ strh r0, [r4, 0xA]
+ b _08080A1C
+_08080A06:
+ movs r1, 0xA
+ ldrsh r0, [r4, r1]
+ lsls r1, r0, 2
+ adds r1, r0
+ lsls r1, 3
+ adds r1, r2
+ ldrb r0, [r1, 0x4]
+ cmp r0, 0x1
+ beq _08080A36
+ bl pal_fill_for_map_transition
+_08080A1C:
+ ldrh r0, [r4, 0x8]
+ adds r0, 0x1
+ strh r0, [r4, 0x8]
+ b _08080A36
+_08080A24:
+ bl sub_8080E70
+ cmp r0, 0x1
+ bne _08080A36
+ bl ScriptContext2_Disable
+ adds r0, r5, 0
+ bl DestroyTask
+_08080A36:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end task_mpl_807DD60
+
+ thumb_func_start sub_8080A3C
+sub_8080A3C: @ 8080A3C
+ push {lr}
+ bl ScriptContext2_Enable
+ bl sub_8053E90
+ bl palette_bg_fill_black
+ ldr r0, _08080A58 @ =task_mpl_807DD60
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080A58: .4byte task_mpl_807DD60
+ thumb_func_end sub_8080A3C
+
+ thumb_func_start sub_8080A5C
+sub_8080A5C: @ 8080A5C
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r5, r0, 24
+ lsls r0, r5, 2
+ adds r0, r5
+ lsls r0, 3
+ ldr r1, _08080A80 @ =gTasks
+ adds r4, r0, r1
+ movs r1, 0x8
+ ldrsh r0, [r4, r1]
+ cmp r0, 0x1
+ beq _08080A90
+ cmp r0, 0x1
+ bgt _08080A84
+ cmp r0, 0
+ beq _08080A8A
+ b _08080ABC
+ .align 2, 0
+_08080A80: .4byte gTasks
+_08080A84:
+ cmp r0, 0x2
+ beq _08080AA6
+ b _08080ABC
+_08080A8A:
+ bl sub_80084A4
+ b _08080A9E
+_08080A90:
+ bl sub_8007ECC
+ lsls r0, 24
+ cmp r0, 0
+ beq _08080ABC
+ bl pal_fill_for_map_transition
+_08080A9E:
+ ldrh r0, [r4, 0x8]
+ adds r0, 0x1
+ strh r0, [r4, 0x8]
+ b _08080ABC
+_08080AA6:
+ bl sub_8080E70
+ cmp r0, 0x1
+ bne _08080ABC
+ bl sub_8007B14
+ bl ScriptContext2_Disable
+ adds r0, r5, 0
+ bl DestroyTask
+_08080ABC:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8080A5C
+
+ thumb_func_start sub_8080AC4
+sub_8080AC4: @ 8080AC4
+ push {lr}
+ bl ScriptContext2_Enable
+ bl sub_8053E90
+ bl palette_bg_fill_black
+ ldr r0, _08080AE0 @ =sub_8080A5C
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080AE0: .4byte sub_8080A5C
+ thumb_func_end sub_8080AC4
+
+ thumb_func_start sub_8080AE4
+sub_8080AE4: @ 8080AE4
+ push {r4,lr}
+ sub sp, 0x4
+ mov r4, sp
+ adds r4, 0x2
+ mov r0, sp
+ adds r1, r4, 0
+ bl PlayerGetDestCoords
+ mov r0, sp
+ movs r1, 0
+ ldrsh r0, [r0, r1]
+ movs r2, 0
+ ldrsh r1, [r4, r2]
+ bl MapGridGetMetatileBehaviorAt
+ lsls r0, 24
+ lsrs r4, r0, 24
+ adds r0, r4, 0
+ bl MetatileBehavior_IsDoor
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r0, 0x1
+ bne _08080B1C
+ ldr r1, _08080B18 @ =sub_8080B9C
+ b _08080B2E
+ .align 2, 0
+_08080B18: .4byte sub_8080B9C
+_08080B1C:
+ adds r0, r4, 0
+ bl MetatileBehavior_IsNonAnimDoor
+ lsls r0, 24
+ lsrs r0, 24
+ ldr r1, _08080B40 @ =task_map_chg_seq_0807E2CC
+ cmp r0, 0x1
+ bne _08080B2E
+ ldr r1, _08080B44 @ =task_map_chg_seq_0807E20C
+_08080B2E:
+ adds r0, r1, 0
+ movs r1, 0xA
+ bl CreateTask
+ add sp, 0x4
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080B40: .4byte task_map_chg_seq_0807E2CC
+_08080B44: .4byte task_map_chg_seq_0807E20C
+ thumb_func_end sub_8080AE4
+
+ thumb_func_start mapldr_default
+mapldr_default: @ 8080B48
+ push {lr}
+ bl sub_8053E90
+ bl pal_fill_for_map_transition
+ bl sub_8080AE4
+ bl ScriptContext2_Enable
+ pop {r0}
+ bx r0
+ thumb_func_end mapldr_default
+
+ thumb_func_start sub_8080B60
+sub_8080B60: @ 8080B60
+ push {lr}
+ bl sub_8053E90
+ bl pal_fill_black
+ bl sub_8080AE4
+ bl ScriptContext2_Enable
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8080B60
+
+ thumb_func_start sub_8080B78
+sub_8080B78: @ 8080B78
+ push {lr}
+ bl sub_8053E90
+ bl pal_fill_for_map_transition
+ movs r0, 0x2E
+ bl PlaySE
+ ldr r0, _08080B98 @ =task_map_chg_seq_0807E2CC
+ movs r1, 0xA
+ bl CreateTask
+ bl ScriptContext2_Enable
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080B98: .4byte task_map_chg_seq_0807E2CC
+ thumb_func_end sub_8080B78
+
+ thumb_func_start sub_8080B9C
+sub_8080B9C: @ 8080B9C
+ push {r4-r7,lr}
+ lsls r0, 24
+ lsrs r4, r0, 24
+ lsls r0, r4, 2
+ adds r0, r4
+ lsls r0, 3
+ ldr r1, _08080BC8 @ =gTasks
+ adds r5, r0, r1
+ adds r6, r5, 0
+ adds r6, 0xC
+ adds r7, r5, 0
+ adds r7, 0xE
+ movs r2, 0x8
+ ldrsh r0, [r5, r2]
+ adds r2, r1, 0
+ cmp r0, 0x4
+ bhi _08080CAE
+ lsls r0, 2
+ ldr r1, _08080BCC @ =_08080BD0
+ adds r0, r1
+ ldr r0, [r0]
+ mov pc, r0
+ .align 2, 0
+_08080BC8: .4byte gTasks
+_08080BCC: .4byte _08080BD0
+ .align 2, 0
+_08080BD0:
+ .4byte _08080BE4
+ .4byte _08080C08
+ .4byte _08080C40
+ .4byte _08080C84
+ .4byte _08080CA4
+_08080BE4:
+ movs r0, 0
+ bl sub_8080958
+ bl FreezeMapObjects
+ adds r0, r6, 0
+ adds r1, r7, 0
+ bl PlayerGetDestCoords
+ movs r1, 0
+ ldrsh r0, [r6, r1]
+ movs r2, 0
+ ldrsh r1, [r7, r2]
+ bl FieldSetDoorOpened
+ movs r0, 0x1
+ strh r0, [r5, 0x8]
+ b _08080CAE
+_08080C08:
+ bl sub_8080E70
+ cmp r0, 0
+ beq _08080CAE
+ movs r0, 0x1
+ bl sub_8080958
+ movs r0, 0xFF
+ movs r1, 0
+ movs r2, 0
+ bl GetFieldObjectIdByLocalIdAndMap
+ adds r1, r0, 0
+ lsls r1, 24
+ lsrs r1, 24
+ lsls r0, r1, 3
+ adds r0, r1
+ lsls r0, 2
+ ldr r1, _08080C3C @ =gMapObjects
+ adds r0, r1
+ movs r1, 0x8
+ bl FieldObjectSetSpecialAnim
+ movs r0, 0x2
+ strh r0, [r5, 0x8]
+ b _08080CAE
+ .align 2, 0
+_08080C3C: .4byte gMapObjects
+_08080C40:
+ bl walkrun_is_standing_still
+ lsls r0, 24
+ cmp r0, 0
+ beq _08080CAE
+ movs r1, 0
+ ldrsh r0, [r6, r1]
+ movs r2, 0
+ ldrsh r1, [r7, r2]
+ bl FieldAnimateDoorClose
+ lsls r0, 24
+ asrs r0, 24
+ strh r0, [r5, 0xA]
+ movs r0, 0xFF
+ movs r1, 0
+ movs r2, 0
+ bl GetFieldObjectIdByLocalIdAndMap
+ adds r1, r0, 0
+ lsls r1, 24
+ lsrs r1, 24
+ lsls r0, r1, 3
+ adds r0, r1
+ lsls r0, 2
+ ldr r1, _08080C80 @ =gMapObjects
+ adds r0, r1
+ bl FieldObjectClearAnimIfSpecialAnimFinished
+ movs r0, 0x3
+ strh r0, [r5, 0x8]
+ b _08080CAE
+ .align 2, 0
+_08080C80: .4byte gMapObjects
+_08080C84:
+ movs r1, 0xA
+ ldrsh r0, [r5, r1]
+ cmp r0, 0
+ blt _08080C9A
+ lsls r1, r0, 2
+ adds r1, r0
+ lsls r1, 3
+ adds r1, r2
+ ldrb r0, [r1, 0x4]
+ cmp r0, 0x1
+ beq _08080CAE
+_08080C9A:
+ bl UnfreezeMapObjects
+ movs r0, 0x4
+ strh r0, [r5, 0x8]
+ b _08080CAE
+_08080CA4:
+ bl ScriptContext2_Disable
+ adds r0, r4, 0
+ bl DestroyTask
+_08080CAE:
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8080B9C
+
+ thumb_func_start task_map_chg_seq_0807E20C
+task_map_chg_seq_0807E20C: @ 8080CB4
+ push {r4-r7,lr}
+ lsls r0, 24
+ lsrs r4, r0, 24
+ lsls r0, r4, 2
+ adds r0, r4
+ lsls r0, 3
+ ldr r1, _08080CE0 @ =gTasks
+ adds r5, r0, r1
+ adds r6, r5, 0
+ adds r6, 0xC
+ adds r7, r5, 0
+ adds r7, 0xE
+ movs r1, 0x8
+ ldrsh r0, [r5, r1]
+ cmp r0, 0x1
+ beq _08080D06
+ cmp r0, 0x1
+ bgt _08080CE4
+ cmp r0, 0
+ beq _08080CEE
+ b _08080D6E
+ .align 2, 0
+_08080CE0: .4byte gTasks
+_08080CE4:
+ cmp r0, 0x2
+ beq _08080D50
+ cmp r0, 0x3
+ beq _08080D64
+ b _08080D6E
+_08080CEE:
+ movs r0, 0
+ bl sub_8080958
+ bl FreezeMapObjects
+ adds r0, r6, 0
+ adds r1, r7, 0
+ bl PlayerGetDestCoords
+ movs r0, 0x1
+ strh r0, [r5, 0x8]
+ b _08080D6E
+_08080D06:
+ bl sub_8080E70
+ cmp r0, 0
+ beq _08080D6E
+ movs r0, 0x1
+ bl sub_8080958
+ movs r0, 0xFF
+ movs r1, 0
+ movs r2, 0
+ bl GetFieldObjectIdByLocalIdAndMap
+ lsls r0, 24
+ lsrs r0, 24
+ lsls r4, r0, 3
+ adds r4, r0
+ lsls r4, 2
+ ldr r0, _08080D4C @ =gMapObjects
+ adds r4, r0
+ bl player_get_direction_lower_nybble
+ lsls r0, 24
+ lsrs r0, 24
+ bl GetGoSpeed0AnimId
+ adds r1, r0, 0
+ lsls r1, 24
+ lsrs r1, 24
+ adds r0, r4, 0
+ bl FieldObjectSetSpecialAnim
+ movs r0, 0x2
+ strh r0, [r5, 0x8]
+ b _08080D6E
+ .align 2, 0
+_08080D4C: .4byte gMapObjects
+_08080D50:
+ bl walkrun_is_standing_still
+ lsls r0, 24
+ cmp r0, 0
+ beq _08080D6E
+ bl UnfreezeMapObjects
+ movs r0, 0x3
+ strh r0, [r5, 0x8]
+ b _08080D6E
+_08080D64:
+ bl ScriptContext2_Disable
+ adds r0, r4, 0
+ bl DestroyTask
+_08080D6E:
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ thumb_func_end task_map_chg_seq_0807E20C
+
+ thumb_func_start task_map_chg_seq_0807E2CC
+task_map_chg_seq_0807E2CC: @ 8080D74
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r5, r0, 24
+ ldr r1, _08080D94 @ =gTasks
+ lsls r0, r5, 2
+ adds r0, r5
+ lsls r0, 3
+ adds r4, r0, r1
+ movs r1, 0x8
+ ldrsh r0, [r4, r1]
+ cmp r0, 0
+ beq _08080D98
+ cmp r0, 0x1
+ beq _08080DA8
+ b _08080DBE
+ .align 2, 0
+_08080D94: .4byte gTasks
+_08080D98:
+ bl FreezeMapObjects
+ bl ScriptContext2_Enable
+ ldrh r0, [r4, 0x8]
+ adds r0, 0x1
+ strh r0, [r4, 0x8]
+ b _08080DBE
+_08080DA8:
+ bl sub_8080E70
+ cmp r0, 0
+ beq _08080DBE
+ bl UnfreezeMapObjects
+ bl ScriptContext2_Disable
+ adds r0, r5, 0
+ bl DestroyTask
+_08080DBE:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end task_map_chg_seq_0807E2CC
+
+ thumb_func_start sub_8080DC4
+sub_8080DC4: @ 8080DC4
+ push {r4,lr}
+ lsls r0, 24
+ lsrs r4, r0, 24
+ bl sub_8080E70
+ cmp r0, 0x1
+ bne _08080DE0
+ adds r0, r4, 0
+ bl DestroyTask
+ ldr r0, _08080DE8 @ =sub_80712B4
+ movs r1, 0x50
+ bl CreateTask
+_08080DE0:
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080DE8: .4byte sub_80712B4
+ thumb_func_end sub_8080DC4
+
+ thumb_func_start atk17_seteffectuser
+atk17_seteffectuser: @ 8080DEC
+ push {lr}
+ bl pal_fill_black
+ ldr r0, _08080E00 @ =sub_8080DC4
+ bl CreateStartMenuTask
+ bl ScriptContext2_Enable
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080E00: .4byte sub_8080DC4
+ thumb_func_end atk17_seteffectuser
+
+ thumb_func_start task_mpl_807E3C8
+task_mpl_807E3C8: @ 8080E04
+ push {r4,lr}
+ lsls r0, 24
+ lsrs r4, r0, 24
+ bl sub_8080E70
+ cmp r0, 0x1
+ bne _08080E20
+ bl ScriptContext2_Disable
+ adds r0, r4, 0
+ bl DestroyTask
+ bl sub_8064E2C
+_08080E20:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end task_mpl_807E3C8
+
+ thumb_func_start sub_8080E28
+sub_8080E28: @ 8080E28
+ push {lr}
+ bl ScriptContext2_Enable
+ bl pal_fill_black
+ ldr r0, _08080E40 @ =task_mpl_807E3C8
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080E40: .4byte task_mpl_807E3C8
+ thumb_func_end sub_8080E28
+
+ thumb_func_start sub_8080E44
+sub_8080E44: @ 8080E44
+ push {lr}
+ bl ScriptContext2_Enable
+ bl sub_8053E90
+ bl pal_fill_black
+ ldr r0, _08080E60 @ =task_mpl_807E3C8
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080E60: .4byte task_mpl_807E3C8
+ thumb_func_end sub_8080E44
+
+ thumb_func_start sub_8080E64
+sub_8080E64: @ 8080E64
+ ldr r0, _08080E6C @ =gPaletteFade
+ ldrb r0, [r0, 0x7]
+ lsrs r0, 7
+ bx lr
+ .align 2, 0
+_08080E6C: .4byte gPaletteFade
+ thumb_func_end sub_8080E64
+
+ thumb_func_start sub_8080E70
+sub_8080E70: @ 8080E70
+ push {lr}
+ bl sub_807D770
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r0, 0x1
+ beq _08080E82
+ movs r0, 0
+ b _08080E84
+_08080E82:
+ movs r0, 0x1
+_08080E84:
+ pop {r1}
+ bx r1
+ thumb_func_end sub_8080E70
+
+ thumb_func_start sub_8080E88
+sub_8080E88: @ 8080E88
+ push {lr}
+ bl ScriptContext2_Enable
+ bl sub_8053FF8
+ bl fade_8080918
+ bl PlayRainSoundEffect
+ movs r0, 0x9
+ bl PlaySE
+ ldr r0, _08080EB4 @ =gUnknown_0300485C
+ ldr r1, _08080EB8 @ =mapldr_default
+ str r1, [r0]
+ ldr r0, _08080EBC @ =task0A_fade_n_map_maybe
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080EB4: .4byte gUnknown_0300485C
+_08080EB8: .4byte mapldr_default
+_08080EBC: .4byte task0A_fade_n_map_maybe
+ thumb_func_end sub_8080E88
+
+ thumb_func_start sp13E_warp_to_last_warp
+sp13E_warp_to_last_warp: @ 8080EC0
+ push {lr}
+ bl ScriptContext2_Enable
+ bl sub_8053FF8
+ bl fade_8080918
+ bl PlayRainSoundEffect
+ ldr r0, _08080EE4 @ =gUnknown_0300485C
+ ldr r1, _08080EE8 @ =mapldr_default
+ str r1, [r0]
+ ldr r0, _08080EEC @ =task0A_fade_n_map_maybe
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080EE4: .4byte gUnknown_0300485C
+_08080EE8: .4byte mapldr_default
+_08080EEC: .4byte task0A_fade_n_map_maybe
+ thumb_func_end sp13E_warp_to_last_warp
+
+ thumb_func_start sub_8080EF0
+sub_8080EF0: @ 8080EF0
+ push {lr}
+ bl ScriptContext2_Enable
+ ldr r0, _08080F08 @ =gUnknown_0300485C
+ ldr r1, _08080F0C @ =mapldr_default
+ str r1, [r0]
+ ldr r0, _08080F10 @ =sub_808115C
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080F08: .4byte gUnknown_0300485C
+_08080F0C: .4byte mapldr_default
+_08080F10: .4byte sub_808115C
+ thumb_func_end sub_8080EF0
+
+ thumb_func_start sp13F_fall_to_last_warp
+sp13F_fall_to_last_warp: @ 8080F14
+ push {lr}
+ bl sp13E_warp_to_last_warp
+ ldr r1, _08080F24 @ =gUnknown_0300485C
+ ldr r0, _08080F28 @ =sub_8086748
+ str r0, [r1]
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080F24: .4byte gUnknown_0300485C
+_08080F28: .4byte sub_8086748
+ thumb_func_end sp13F_fall_to_last_warp
+
+ thumb_func_start sub_8080F2C
+sub_8080F2C: @ 8080F2C
+ push {r4,lr}
+ adds r4, r0, 0
+ lsls r4, 24
+ lsrs r4, 24
+ bl ScriptContext2_Enable
+ adds r0, r4, 0
+ movs r1, 0xA
+ bl sub_8086A2C
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8080F2C
+
+ thumb_func_start sub_8080F48
+sub_8080F48: @ 8080F48
+ push {lr}
+ bl ScriptContext2_Enable
+ movs r0, 0xA
+ bl sub_80871B8
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8080F48
+
+ thumb_func_start sub_8080F58
+sub_8080F58: @ 8080F58
+ push {lr}
+ bl ScriptContext2_Enable
+ movs r0, 0xA
+ bl sub_8087654
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8080F58
+
+ thumb_func_start sub_8080F68
+sub_8080F68: @ 8080F68
+ push {lr}
+ bl ScriptContext2_Enable
+ bl sub_8053FF8
+ bl fade_8080918
+ movs r0, 0x2D
+ bl PlaySE
+ ldr r0, _08080F90 @ =task0A_fade_n_map_maybe
+ movs r1, 0xA
+ bl CreateTask
+ ldr r1, _08080F94 @ =gUnknown_0300485C
+ ldr r0, _08080F98 @ =sub_8080B78
+ str r0, [r1]
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080F90: .4byte task0A_fade_n_map_maybe
+_08080F94: .4byte gUnknown_0300485C
+_08080F98: .4byte sub_8080B78
+ thumb_func_end sub_8080F68
+
+ thumb_func_start sub_8080F9C
+sub_8080F9C: @ 8080F9C
+ push {lr}
+ bl ScriptContext2_Enable
+ bl fade_8080918
+ ldr r0, _08080FB8 @ =task0A_fade_n_map_maybe
+ movs r1, 0xA
+ bl CreateTask
+ ldr r1, _08080FBC @ =gUnknown_0300485C
+ ldr r0, _08080FC0 @ =sub_80C791C
+ str r0, [r1]
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08080FB8: .4byte task0A_fade_n_map_maybe
+_08080FBC: .4byte gUnknown_0300485C
+_08080FC0: .4byte sub_80C791C
+ thumb_func_end sub_8080F9C
+
+ thumb_func_start sub_8080FC4
+sub_8080FC4: @ 8080FC4
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r5, r0, 24
+ lsls r0, r5, 2
+ adds r0, r5
+ lsls r0, 3
+ ldr r1, _08080FE8 @ =gTasks
+ adds r4, r0, r1
+ movs r1, 0x8
+ ldrsh r0, [r4, r1]
+ cmp r0, 0x1
+ beq _08080FF8
+ cmp r0, 0x1
+ bgt _08080FEC
+ cmp r0, 0
+ beq _08080FF2
+ b _08081022
+ .align 2, 0
+_08080FE8: .4byte gTasks
+_08080FEC:
+ cmp r0, 0x2
+ beq _08081012
+ b _08081022
+_08080FF2:
+ bl ScriptContext2_Enable
+ b _0808100A
+_08080FF8:
+ bl sub_8080E64
+ cmp r0, 0
+ bne _08081022
+ bl sub_8054034
+ lsls r0, 24
+ cmp r0, 0
+ beq _08081022
+_0808100A:
+ ldrh r0, [r4, 0x8]
+ adds r0, 0x1
+ strh r0, [r4, 0x8]
+ b _08081022
+_08081012:
+ bl warp_in
+ ldr r0, _08081028 @ =sub_8054588
+ bl SetMainCallback2
+ adds r0, r5, 0
+ bl DestroyTask
+_08081022:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08081028: .4byte sub_8054588
+ thumb_func_end sub_8080FC4
+
+ thumb_func_start sub_808102C
+sub_808102C: @ 808102C
+ push {lr}
+ bl ScriptContext2_Enable
+ bl sub_8053FF8
+ bl fade_8080918
+ movs r0, 0x9
+ bl PlaySE
+ ldr r0, _0808104C @ =sub_8080FC4
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_0808104C: .4byte sub_8080FC4
+ thumb_func_end sub_808102C
+
+ thumb_func_start sub_8081050
+sub_8081050: @ 8081050
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r5, r0, 24
+ lsls r0, r5, 2
+ adds r0, r5
+ lsls r0, 3
+ ldr r1, _08081074 @ =gTasks + 0x8
+ adds r4, r0, r1
+ movs r1, 0
+ ldrsh r0, [r4, r1]
+ cmp r0, 0x1
+ beq _08081096
+ cmp r0, 0x1
+ bgt _08081078
+ cmp r0, 0
+ beq _0808107E
+ b _080810CC
+ .align 2, 0
+_08081074: .4byte gTasks + 0x8
+_08081078:
+ cmp r0, 0x2
+ beq _080810B4
+ b _080810CC
+_0808107E:
+ bl ClearLinkCallback_2
+ movs r0, 0x1
+ movs r1, 0
+ bl fade_screen
+ bl sub_8053FF8
+ movs r0, 0x9
+ bl PlaySE
+ b _080810AC
+_08081096:
+ bl sub_8080E64
+ cmp r0, 0
+ bne _080810CC
+ bl sub_8054034
+ lsls r0, 24
+ cmp r0, 0
+ beq _080810CC
+ bl sub_800832C
+_080810AC:
+ ldrh r0, [r4]
+ adds r0, 0x1
+ strh r0, [r4]
+ b _080810CC
+_080810B4:
+ ldr r0, _080810D4 @ =gReceivedRemoteLinkPlayers
+ ldrb r0, [r0]
+ cmp r0, 0
+ bne _080810CC
+ bl warp_in
+ ldr r0, _080810D8 @ =CB2_LoadMap
+ bl SetMainCallback2
+ adds r0, r5, 0
+ bl DestroyTask
+_080810CC:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080810D4: .4byte gReceivedRemoteLinkPlayers
+_080810D8: .4byte CB2_LoadMap
+ thumb_func_end sub_8081050
+
+ thumb_func_start sub_80810DC
+sub_80810DC: @ 80810DC
+ push {lr}
+ ldr r0, _080810EC @ =sub_8081050
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080810EC: .4byte sub_8081050
+ thumb_func_end sub_80810DC
+
+ thumb_func_start task0A_fade_n_map_maybe
+task0A_fade_n_map_maybe: @ 80810F0
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r5, r0, 24
+ lsls r0, r5, 2
+ adds r0, r5
+ lsls r0, 3
+ ldr r1, _08081114 @ =gTasks
+ adds r4, r0, r1
+ movs r1, 0x8
+ ldrsh r0, [r4, r1]
+ cmp r0, 0x1
+ beq _08081128
+ cmp r0, 0x1
+ bgt _08081118
+ cmp r0, 0
+ beq _0808111E
+ b _08081152
+ .align 2, 0
+_08081114: .4byte gTasks
+_08081118:
+ cmp r0, 0x2
+ beq _08081142
+ b _08081152
+_0808111E:
+ bl FreezeMapObjects
+ bl ScriptContext2_Enable
+ b _0808113A
+_08081128:
+ bl sub_8080E64
+ cmp r0, 0
+ bne _08081152
+ bl sub_8054034
+ lsls r0, 24
+ cmp r0, 0
+ beq _08081152
+_0808113A:
+ ldrh r0, [r4, 0x8]
+ adds r0, 0x1
+ strh r0, [r4, 0x8]
+ b _08081152
+_08081142:
+ bl warp_in
+ ldr r0, _08081158 @ =CB2_LoadMap
+ bl SetMainCallback2
+ adds r0, r5, 0
+ bl DestroyTask
+_08081152:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08081158: .4byte CB2_LoadMap
+ thumb_func_end task0A_fade_n_map_maybe
+
+ thumb_func_start sub_808115C
+sub_808115C: @ 808115C
+ push {r4-r6,lr}
+ lsls r0, 24
+ lsrs r0, 24
+ lsls r1, r0, 2
+ adds r1, r0
+ lsls r1, 3
+ ldr r0, _0808118C @ =gTasks
+ adds r5, r1, r0
+ adds r4, r5, 0
+ adds r4, 0xC
+ adds r6, r5, 0
+ adds r6, 0xE
+ movs r2, 0x8
+ ldrsh r1, [r5, r2]
+ adds r2, r0, 0
+ cmp r1, 0x4
+ bls _08081180
+ b _080812BC
+_08081180:
+ lsls r0, r1, 2
+ ldr r1, _08081190 @ =_08081194
+ adds r0, r1
+ ldr r0, [r0]
+ mov pc, r0
+ .align 2, 0
+_0808118C: .4byte gTasks
+_08081190: .4byte _08081194
+ .align 2, 0
+_08081194:
+ .4byte _080811A8
+ .4byte _080811E4
+ .4byte _08081240
+ .4byte _0808128C
+ .4byte _080812A8
+_080811A8:
+ bl FreezeMapObjects
+ adds r0, r4, 0
+ adds r1, r6, 0
+ bl PlayerGetDestCoords
+ movs r1, 0
+ ldrsh r0, [r4, r1]
+ movs r2, 0
+ ldrsh r1, [r6, r2]
+ subs r1, 0x1
+ bl sub_8058790
+ lsls r0, 16
+ lsrs r0, 16
+ bl PlaySE
+ movs r1, 0
+ ldrsh r0, [r4, r1]
+ movs r2, 0
+ ldrsh r1, [r6, r2]
+ subs r1, 0x1
+ bl FieldAnimateDoorOpen
+ lsls r0, 24
+ asrs r0, 24
+ strh r0, [r5, 0xA]
+ movs r0, 0x1
+ strh r0, [r5, 0x8]
+ b _080812BC
+_080811E4:
+ movs r1, 0xA
+ ldrsh r0, [r5, r1]
+ cmp r0, 0
+ blt _080811FA
+ lsls r1, r0, 2
+ adds r1, r0
+ lsls r1, 3
+ adds r1, r2
+ ldrb r0, [r1, 0x4]
+ cmp r0, 0x1
+ beq _080812BC
+_080811FA:
+ movs r0, 0xFF
+ movs r1, 0
+ movs r2, 0
+ bl GetFieldObjectIdByLocalIdAndMap
+ adds r1, r0, 0
+ lsls r1, 24
+ lsrs r1, 24
+ lsls r0, r1, 3
+ adds r0, r1
+ lsls r0, 2
+ ldr r4, _0808123C @ =gMapObjects
+ adds r0, r4
+ bl FieldObjectClearAnimIfSpecialAnimActive
+ movs r0, 0xFF
+ movs r1, 0
+ movs r2, 0
+ bl GetFieldObjectIdByLocalIdAndMap
+ adds r1, r0, 0
+ lsls r1, 24
+ lsrs r1, 24
+ lsls r0, r1, 3
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r4
+ movs r1, 0x9
+ bl FieldObjectSetSpecialAnim
+ movs r0, 0x2
+ strh r0, [r5, 0x8]
+ b _080812BC
+ .align 2, 0
+_0808123C: .4byte gMapObjects
+_08081240:
+ bl walkrun_is_standing_still
+ lsls r0, 24
+ cmp r0, 0
+ beq _080812BC
+ movs r2, 0
+ ldrsh r0, [r4, r2]
+ movs r2, 0
+ ldrsh r1, [r6, r2]
+ subs r1, 0x1
+ bl FieldAnimateDoorClose
+ lsls r0, 24
+ asrs r0, 24
+ strh r0, [r5, 0xA]
+ movs r0, 0xFF
+ movs r1, 0
+ movs r2, 0
+ bl GetFieldObjectIdByLocalIdAndMap
+ adds r1, r0, 0
+ lsls r1, 24
+ lsrs r1, 24
+ lsls r0, r1, 3
+ adds r0, r1
+ lsls r0, 2
+ ldr r1, _08081288 @ =gMapObjects
+ adds r0, r1
+ bl FieldObjectClearAnimIfSpecialAnimFinished
+ movs r0, 0
+ bl sub_8080958
+ movs r0, 0x3
+ strh r0, [r5, 0x8]
+ b _080812BC
+ .align 2, 0
+_08081288: .4byte gMapObjects
+_0808128C:
+ movs r1, 0xA
+ ldrsh r0, [r5, r1]
+ cmp r0, 0
+ blt _080812A2
+ lsls r1, r0, 2
+ adds r1, r0
+ lsls r1, 3
+ adds r1, r2
+ ldrb r0, [r1, 0x4]
+ cmp r0, 0x1
+ beq _080812BC
+_080812A2:
+ movs r0, 0x4
+ strh r0, [r5, 0x8]
+ b _080812BC
+_080812A8:
+ bl sub_8053FF8
+ bl fade_8080918
+ bl PlayRainSoundEffect
+ movs r0, 0
+ strh r0, [r5, 0x8]
+ ldr r0, _080812C4 @ =task0A_fade_n_map_maybe
+ str r0, [r5]
+_080812BC:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080812C4: .4byte task0A_fade_n_map_maybe
+ thumb_func_end sub_808115C
+
+ thumb_func_start sub_80812C8
+sub_80812C8: @ 80812C8
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r5, r0, 24
+ lsls r0, r5, 2
+ adds r0, r5
+ lsls r0, 3
+ ldr r1, _080812EC @ =gTasks
+ adds r4, r0, r1
+ movs r1, 0x8
+ ldrsh r0, [r4, r1]
+ cmp r0, 0x1
+ beq _08081300
+ cmp r0, 0x1
+ bgt _080812F0
+ cmp r0, 0
+ beq _080812F6
+ b _0808132A
+ .align 2, 0
+_080812EC: .4byte gTasks
+_080812F0:
+ cmp r0, 0x2
+ beq _0808131A
+ b _0808132A
+_080812F6:
+ bl FreezeMapObjects
+ bl ScriptContext2_Enable
+ b _08081312
+_08081300:
+ bl sub_8080E64
+ cmp r0, 0
+ bne _0808132A
+ bl sub_8054034
+ lsls r0, 24
+ cmp r0, 0
+ beq _0808132A
+_08081312:
+ ldrh r0, [r4, 0x8]
+ adds r0, 0x1
+ strh r0, [r4, 0x8]
+ b _0808132A
+_0808131A:
+ bl warp_in
+ ldr r0, _08081330 @ =sub_8054534
+ bl SetMainCallback2
+ adds r0, r5, 0
+ bl DestroyTask
+_0808132A:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08081330: .4byte sub_8054534
+ thumb_func_end sub_80812C8
+
+ thumb_func_start sub_8081334
+sub_8081334: @ 8081334
+ push {lr}
+ bl ScriptContext2_Enable
+ bl sub_8053FF8
+ bl fade_8080918
+ bl PlayRainSoundEffect
+ movs r0, 0x9
+ bl PlaySE
+ ldr r0, _08081360 @ =gUnknown_0300485C
+ ldr r1, _08081364 @ =sub_8080B60
+ str r1, [r0]
+ ldr r0, _08081368 @ =sub_80812C8
+ movs r1, 0xA
+ bl CreateTask
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08081360: .4byte gUnknown_0300485C
+_08081364: .4byte sub_8080B60
+_08081368: .4byte sub_80812C8
+ thumb_func_end sub_8081334
+
+ .align 2, 0 @ Don't pad with nop.
diff --git a/asm/rom_8080874.s b/asm/rom_8080874.s
index 28ea3a69f..4fbfae1a2 100644
--- a/asm/rom_8080874.s
+++ b/asm/rom_8080874.s
@@ -6,1218 +6,6 @@
.text
- thumb_func_start task_mpl_807DD60
-task_mpl_807DD60: @ 80809CC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r2, _080809F0 @ =gTasks
- adds r4, r0, r2
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08080A06
- cmp r0, 0x1
- bgt _080809F4
- cmp r0, 0
- beq _080809FA
- b _08080A36
- .align 2, 0
-_080809F0: .4byte gTasks
-_080809F4:
- cmp r0, 0x2
- beq _08080A24
- b _08080A36
-_080809FA:
- bl sub_8083664
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xA]
- b _08080A1C
-_08080A06:
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0x4]
- cmp r0, 0x1
- beq _08080A36
- bl pal_fill_for_map_transition
-_08080A1C:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _08080A36
-_08080A24:
- bl sub_8080E70
- cmp r0, 0x1
- bne _08080A36
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_08080A36:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end task_mpl_807DD60
-
- thumb_func_start sub_8080A3C
-sub_8080A3C: @ 8080A3C
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053E90
- bl palette_bg_fill_black
- ldr r0, _08080A58 @ =task_mpl_807DD60
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08080A58: .4byte task_mpl_807DD60
- thumb_func_end sub_8080A3C
-
- thumb_func_start sub_8080A5C
-sub_8080A5C: @ 8080A5C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08080A80 @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08080A90
- cmp r0, 0x1
- bgt _08080A84
- cmp r0, 0
- beq _08080A8A
- b _08080ABC
- .align 2, 0
-_08080A80: .4byte gTasks
-_08080A84:
- cmp r0, 0x2
- beq _08080AA6
- b _08080ABC
-_08080A8A:
- bl sub_80084A4
- b _08080A9E
-_08080A90:
- bl sub_8007ECC
- lsls r0, 24
- cmp r0, 0
- beq _08080ABC
- bl pal_fill_for_map_transition
-_08080A9E:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _08080ABC
-_08080AA6:
- bl sub_8080E70
- cmp r0, 0x1
- bne _08080ABC
- bl sub_8007B14
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_08080ABC:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8080A5C
-
- thumb_func_start sub_8080AC4
-sub_8080AC4: @ 8080AC4
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053E90
- bl palette_bg_fill_black
- ldr r0, _08080AE0 @ =sub_8080A5C
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08080AE0: .4byte sub_8080A5C
- thumb_func_end sub_8080AC4
-
- thumb_func_start sub_8080AE4
-sub_8080AE4: @ 8080AE4
- push {r4,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl MetatileBehavior_IsDoor
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08080B1C
- ldr r1, _08080B18 @ =sub_8080B9C
- b _08080B2E
- .align 2, 0
-_08080B18: .4byte sub_8080B9C
-_08080B1C:
- adds r0, r4, 0
- bl MetatileBehavior_IsNonAnimDoor
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08080B40 @ =task_map_chg_seq_0807E2CC
- cmp r0, 0x1
- bne _08080B2E
- ldr r1, _08080B44 @ =task_map_chg_seq_0807E20C
-_08080B2E:
- adds r0, r1, 0
- movs r1, 0xA
- bl CreateTask
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08080B40: .4byte task_map_chg_seq_0807E2CC
-_08080B44: .4byte task_map_chg_seq_0807E20C
- thumb_func_end sub_8080AE4
-
- thumb_func_start mapldr_default
-mapldr_default: @ 8080B48
- push {lr}
- bl sub_8053E90
- bl pal_fill_for_map_transition
- bl sub_8080AE4
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- thumb_func_end mapldr_default
-
- thumb_func_start sub_8080B60
-sub_8080B60: @ 8080B60
- push {lr}
- bl sub_8053E90
- bl pal_fill_black
- bl sub_8080AE4
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- thumb_func_end sub_8080B60
-
- thumb_func_start sub_8080B78
-sub_8080B78: @ 8080B78
- push {lr}
- bl sub_8053E90
- bl pal_fill_for_map_transition
- movs r0, 0x2E
- bl PlaySE
- ldr r0, _08080B98 @ =task_map_chg_seq_0807E2CC
- movs r1, 0xA
- bl CreateTask
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- .align 2, 0
-_08080B98: .4byte task_map_chg_seq_0807E2CC
- thumb_func_end sub_8080B78
-
- thumb_func_start sub_8080B9C
-sub_8080B9C: @ 8080B9C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _08080BC8 @ =gTasks
- adds r5, r0, r1
- adds r6, r5, 0
- adds r6, 0xC
- adds r7, r5, 0
- adds r7, 0xE
- movs r2, 0x8
- ldrsh r0, [r5, r2]
- adds r2, r1, 0
- cmp r0, 0x4
- bhi _08080CAE
- lsls r0, 2
- ldr r1, _08080BCC @ =_08080BD0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08080BC8: .4byte gTasks
-_08080BCC: .4byte _08080BD0
- .align 2, 0
-_08080BD0:
- .4byte _08080BE4
- .4byte _08080C08
- .4byte _08080C40
- .4byte _08080C84
- .4byte _08080CA4
-_08080BE4:
- movs r0, 0
- bl sub_8080958
- bl FreezeMapObjects
- adds r0, r6, 0
- adds r1, r7, 0
- bl PlayerGetDestCoords
- movs r1, 0
- ldrsh r0, [r6, r1]
- movs r2, 0
- ldrsh r1, [r7, r2]
- bl FieldSetDoorOpened
- movs r0, 0x1
- strh r0, [r5, 0x8]
- b _08080CAE
-_08080C08:
- bl sub_8080E70
- cmp r0, 0
- beq _08080CAE
- movs r0, 0x1
- bl sub_8080958
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08080C3C @ =gMapObjects
- adds r0, r1
- movs r1, 0x8
- bl FieldObjectSetSpecialAnim
- movs r0, 0x2
- strh r0, [r5, 0x8]
- b _08080CAE
- .align 2, 0
-_08080C3C: .4byte gMapObjects
-_08080C40:
- bl walkrun_is_standing_still
- lsls r0, 24
- cmp r0, 0
- beq _08080CAE
- movs r1, 0
- ldrsh r0, [r6, r1]
- movs r2, 0
- ldrsh r1, [r7, r2]
- bl FieldAnimateDoorClose
- lsls r0, 24
- asrs r0, 24
- strh r0, [r5, 0xA]
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08080C80 @ =gMapObjects
- adds r0, r1
- bl FieldObjectClearAnimIfSpecialAnimFinished
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _08080CAE
- .align 2, 0
-_08080C80: .4byte gMapObjects
-_08080C84:
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- cmp r0, 0
- blt _08080C9A
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0x4]
- cmp r0, 0x1
- beq _08080CAE
-_08080C9A:
- bl UnfreezeMapObjects
- movs r0, 0x4
- strh r0, [r5, 0x8]
- b _08080CAE
-_08080CA4:
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
-_08080CAE:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8080B9C
-
- thumb_func_start task_map_chg_seq_0807E20C
-task_map_chg_seq_0807E20C: @ 8080CB4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _08080CE0 @ =gTasks
- adds r5, r0, r1
- adds r6, r5, 0
- adds r6, 0xC
- adds r7, r5, 0
- adds r7, 0xE
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _08080D06
- cmp r0, 0x1
- bgt _08080CE4
- cmp r0, 0
- beq _08080CEE
- b _08080D6E
- .align 2, 0
-_08080CE0: .4byte gTasks
-_08080CE4:
- cmp r0, 0x2
- beq _08080D50
- cmp r0, 0x3
- beq _08080D64
- b _08080D6E
-_08080CEE:
- movs r0, 0
- bl sub_8080958
- bl FreezeMapObjects
- adds r0, r6, 0
- adds r1, r7, 0
- bl PlayerGetDestCoords
- movs r0, 0x1
- strh r0, [r5, 0x8]
- b _08080D6E
-_08080D06:
- bl sub_8080E70
- cmp r0, 0
- beq _08080D6E
- movs r0, 0x1
- bl sub_8080958
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _08080D4C @ =gMapObjects
- adds r4, r0
- bl player_get_direction_lower_nybble
- lsls r0, 24
- lsrs r0, 24
- bl GetGoSpeed0AnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl FieldObjectSetSpecialAnim
- movs r0, 0x2
- strh r0, [r5, 0x8]
- b _08080D6E
- .align 2, 0
-_08080D4C: .4byte gMapObjects
-_08080D50:
- bl walkrun_is_standing_still
- lsls r0, 24
- cmp r0, 0
- beq _08080D6E
- bl UnfreezeMapObjects
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _08080D6E
-_08080D64:
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
-_08080D6E:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end task_map_chg_seq_0807E20C
-
- thumb_func_start task_map_chg_seq_0807E2CC
-task_map_chg_seq_0807E2CC: @ 8080D74
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, _08080D94 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _08080D98
- cmp r0, 0x1
- beq _08080DA8
- b _08080DBE
- .align 2, 0
-_08080D94: .4byte gTasks
-_08080D98:
- bl FreezeMapObjects
- bl ScriptContext2_Enable
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _08080DBE
-_08080DA8:
- bl sub_8080E70
- cmp r0, 0
- beq _08080DBE
- bl UnfreezeMapObjects
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_08080DBE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end task_map_chg_seq_0807E2CC
-
- thumb_func_start sub_8080DC4
-sub_8080DC4: @ 8080DC4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8080E70
- cmp r0, 0x1
- bne _08080DE0
- adds r0, r4, 0
- bl DestroyTask
- ldr r0, _08080DE8 @ =sub_80712B4
- movs r1, 0x50
- bl CreateTask
-_08080DE0:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08080DE8: .4byte sub_80712B4
- thumb_func_end sub_8080DC4
-
- thumb_func_start atk17_seteffectuser
-atk17_seteffectuser: @ 8080DEC
- push {lr}
- bl pal_fill_black
- ldr r0, _08080E00 @ =sub_8080DC4
- bl CreateStartMenuTask
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- .align 2, 0
-_08080E00: .4byte sub_8080DC4
- thumb_func_end atk17_seteffectuser
-
- thumb_func_start task_mpl_807E3C8
-task_mpl_807E3C8: @ 8080E04
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8080E70
- cmp r0, 0x1
- bne _08080E20
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
- bl sub_8064E2C
-_08080E20:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task_mpl_807E3C8
-
- thumb_func_start sub_8080E28
-sub_8080E28: @ 8080E28
- push {lr}
- bl ScriptContext2_Enable
- bl pal_fill_black
- ldr r0, _08080E40 @ =task_mpl_807E3C8
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08080E40: .4byte task_mpl_807E3C8
- thumb_func_end sub_8080E28
-
- thumb_func_start sub_8080E44
-sub_8080E44: @ 8080E44
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053E90
- bl pal_fill_black
- ldr r0, _08080E60 @ =task_mpl_807E3C8
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08080E60: .4byte task_mpl_807E3C8
- thumb_func_end sub_8080E44
-
- thumb_func_start sub_8080E64
-sub_8080E64: @ 8080E64
- ldr r0, _08080E6C @ =gPaletteFade
- ldrb r0, [r0, 0x7]
- lsrs r0, 7
- bx lr
- .align 2, 0
-_08080E6C: .4byte gPaletteFade
- thumb_func_end sub_8080E64
-
- thumb_func_start sub_8080E70
-sub_8080E70: @ 8080E70
- push {lr}
- bl sub_807D770
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08080E82
- movs r0, 0
- b _08080E84
-_08080E82:
- movs r0, 0x1
-_08080E84:
- pop {r1}
- bx r1
- thumb_func_end sub_8080E70
-
- thumb_func_start sub_8080E88
-sub_8080E88: @ 8080E88
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053FF8
- bl fade_8080918
- bl PlayRainSoundEffect
- movs r0, 0x9
- bl PlaySE
- ldr r0, _08080EB4 @ =gUnknown_0300485C
- ldr r1, _08080EB8 @ =mapldr_default
- str r1, [r0]
- ldr r0, _08080EBC @ =task0A_fade_n_map_maybe
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08080EB4: .4byte gUnknown_0300485C
-_08080EB8: .4byte mapldr_default
-_08080EBC: .4byte task0A_fade_n_map_maybe
- thumb_func_end sub_8080E88
-
- thumb_func_start sp13E_warp_to_last_warp
-sp13E_warp_to_last_warp: @ 8080EC0
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053FF8
- bl fade_8080918
- bl PlayRainSoundEffect
- ldr r0, _08080EE4 @ =gUnknown_0300485C
- ldr r1, _08080EE8 @ =mapldr_default
- str r1, [r0]
- ldr r0, _08080EEC @ =task0A_fade_n_map_maybe
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08080EE4: .4byte gUnknown_0300485C
-_08080EE8: .4byte mapldr_default
-_08080EEC: .4byte task0A_fade_n_map_maybe
- thumb_func_end sp13E_warp_to_last_warp
-
- thumb_func_start sub_8080EF0
-sub_8080EF0: @ 8080EF0
- push {lr}
- bl ScriptContext2_Enable
- ldr r0, _08080F08 @ =gUnknown_0300485C
- ldr r1, _08080F0C @ =mapldr_default
- str r1, [r0]
- ldr r0, _08080F10 @ =sub_808115C
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08080F08: .4byte gUnknown_0300485C
-_08080F0C: .4byte mapldr_default
-_08080F10: .4byte sub_808115C
- thumb_func_end sub_8080EF0
-
- thumb_func_start sp13F_fall_to_last_warp
-sp13F_fall_to_last_warp: @ 8080F14
- push {lr}
- bl sp13E_warp_to_last_warp
- ldr r1, _08080F24 @ =gUnknown_0300485C
- ldr r0, _08080F28 @ =sub_8086748
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08080F24: .4byte gUnknown_0300485C
-_08080F28: .4byte sub_8086748
- thumb_func_end sp13F_fall_to_last_warp
-
- thumb_func_start sub_8080F2C
-sub_8080F2C: @ 8080F2C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ScriptContext2_Enable
- adds r0, r4, 0
- movs r1, 0xA
- bl sub_8086A2C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8080F2C
-
- thumb_func_start sub_8080F48
-sub_8080F48: @ 8080F48
- push {lr}
- bl ScriptContext2_Enable
- movs r0, 0xA
- bl sub_80871B8
- pop {r0}
- bx r0
- thumb_func_end sub_8080F48
-
- thumb_func_start sub_8080F58
-sub_8080F58: @ 8080F58
- push {lr}
- bl ScriptContext2_Enable
- movs r0, 0xA
- bl sub_8087654
- pop {r0}
- bx r0
- thumb_func_end sub_8080F58
-
- thumb_func_start sub_8080F68
-sub_8080F68: @ 8080F68
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053FF8
- bl fade_8080918
- movs r0, 0x2D
- bl PlaySE
- ldr r0, _08080F90 @ =task0A_fade_n_map_maybe
- movs r1, 0xA
- bl CreateTask
- ldr r1, _08080F94 @ =gUnknown_0300485C
- ldr r0, _08080F98 @ =sub_8080B78
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08080F90: .4byte task0A_fade_n_map_maybe
-_08080F94: .4byte gUnknown_0300485C
-_08080F98: .4byte sub_8080B78
- thumb_func_end sub_8080F68
-
- thumb_func_start sub_8080F9C
-sub_8080F9C: @ 8080F9C
- push {lr}
- bl ScriptContext2_Enable
- bl fade_8080918
- ldr r0, _08080FB8 @ =task0A_fade_n_map_maybe
- movs r1, 0xA
- bl CreateTask
- ldr r1, _08080FBC @ =gUnknown_0300485C
- ldr r0, _08080FC0 @ =sub_80C791C
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08080FB8: .4byte task0A_fade_n_map_maybe
-_08080FBC: .4byte gUnknown_0300485C
-_08080FC0: .4byte sub_80C791C
- thumb_func_end sub_8080F9C
-
- thumb_func_start sub_8080FC4
-sub_8080FC4: @ 8080FC4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08080FE8 @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08080FF8
- cmp r0, 0x1
- bgt _08080FEC
- cmp r0, 0
- beq _08080FF2
- b _08081022
- .align 2, 0
-_08080FE8: .4byte gTasks
-_08080FEC:
- cmp r0, 0x2
- beq _08081012
- b _08081022
-_08080FF2:
- bl ScriptContext2_Enable
- b _0808100A
-_08080FF8:
- bl sub_8080E64
- cmp r0, 0
- bne _08081022
- bl sub_8054034
- lsls r0, 24
- cmp r0, 0
- beq _08081022
-_0808100A:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _08081022
-_08081012:
- bl warp_in
- ldr r0, _08081028 @ =sub_8054588
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_08081022:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08081028: .4byte sub_8054588
- thumb_func_end sub_8080FC4
-
- thumb_func_start sub_808102C
-sub_808102C: @ 808102C
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053FF8
- bl fade_8080918
- movs r0, 0x9
- bl PlaySE
- ldr r0, _0808104C @ =sub_8080FC4
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_0808104C: .4byte sub_8080FC4
- thumb_func_end sub_808102C
-
- thumb_func_start sub_8081050
-sub_8081050: @ 8081050
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08081074 @ =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08081096
- cmp r0, 0x1
- bgt _08081078
- cmp r0, 0
- beq _0808107E
- b _080810CC
- .align 2, 0
-_08081074: .4byte gTasks + 0x8
-_08081078:
- cmp r0, 0x2
- beq _080810B4
- b _080810CC
-_0808107E:
- bl ClearLinkCallback_2
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- bl sub_8053FF8
- movs r0, 0x9
- bl PlaySE
- b _080810AC
-_08081096:
- bl sub_8080E64
- cmp r0, 0
- bne _080810CC
- bl sub_8054034
- lsls r0, 24
- cmp r0, 0
- beq _080810CC
- bl sub_800832C
-_080810AC:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _080810CC
-_080810B4:
- ldr r0, _080810D4 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _080810CC
- bl warp_in
- ldr r0, _080810D8 @ =CB2_LoadMap
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_080810CC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080810D4: .4byte gReceivedRemoteLinkPlayers
-_080810D8: .4byte CB2_LoadMap
- thumb_func_end sub_8081050
-
- thumb_func_start sub_80810DC
-sub_80810DC: @ 80810DC
- push {lr}
- ldr r0, _080810EC @ =sub_8081050
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080810EC: .4byte sub_8081050
- thumb_func_end sub_80810DC
-
- thumb_func_start task0A_fade_n_map_maybe
-task0A_fade_n_map_maybe: @ 80810F0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08081114 @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08081128
- cmp r0, 0x1
- bgt _08081118
- cmp r0, 0
- beq _0808111E
- b _08081152
- .align 2, 0
-_08081114: .4byte gTasks
-_08081118:
- cmp r0, 0x2
- beq _08081142
- b _08081152
-_0808111E:
- bl FreezeMapObjects
- bl ScriptContext2_Enable
- b _0808113A
-_08081128:
- bl sub_8080E64
- cmp r0, 0
- bne _08081152
- bl sub_8054034
- lsls r0, 24
- cmp r0, 0
- beq _08081152
-_0808113A:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _08081152
-_08081142:
- bl warp_in
- ldr r0, _08081158 @ =CB2_LoadMap
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_08081152:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08081158: .4byte CB2_LoadMap
- thumb_func_end task0A_fade_n_map_maybe
-
- thumb_func_start sub_808115C
-sub_808115C: @ 808115C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _0808118C @ =gTasks
- adds r5, r1, r0
- adds r4, r5, 0
- adds r4, 0xC
- adds r6, r5, 0
- adds r6, 0xE
- movs r2, 0x8
- ldrsh r1, [r5, r2]
- adds r2, r0, 0
- cmp r1, 0x4
- bls _08081180
- b _080812BC
-_08081180:
- lsls r0, r1, 2
- ldr r1, _08081190 @ =_08081194
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0808118C: .4byte gTasks
-_08081190: .4byte _08081194
- .align 2, 0
-_08081194:
- .4byte _080811A8
- .4byte _080811E4
- .4byte _08081240
- .4byte _0808128C
- .4byte _080812A8
-_080811A8:
- bl FreezeMapObjects
- adds r0, r4, 0
- adds r1, r6, 0
- bl PlayerGetDestCoords
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r2, 0
- ldrsh r1, [r6, r2]
- subs r1, 0x1
- bl sub_8058790
- lsls r0, 16
- lsrs r0, 16
- bl PlaySE
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r2, 0
- ldrsh r1, [r6, r2]
- subs r1, 0x1
- bl FieldAnimateDoorOpen
- lsls r0, 24
- asrs r0, 24
- strh r0, [r5, 0xA]
- movs r0, 0x1
- strh r0, [r5, 0x8]
- b _080812BC
-_080811E4:
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- cmp r0, 0
- blt _080811FA
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0x4]
- cmp r0, 0x1
- beq _080812BC
-_080811FA:
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r4, _0808123C @ =gMapObjects
- adds r0, r4
- bl FieldObjectClearAnimIfSpecialAnimActive
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x9
- bl FieldObjectSetSpecialAnim
- movs r0, 0x2
- strh r0, [r5, 0x8]
- b _080812BC
- .align 2, 0
-_0808123C: .4byte gMapObjects
-_08081240:
- bl walkrun_is_standing_still
- lsls r0, 24
- cmp r0, 0
- beq _080812BC
- movs r2, 0
- ldrsh r0, [r4, r2]
- movs r2, 0
- ldrsh r1, [r6, r2]
- subs r1, 0x1
- bl FieldAnimateDoorClose
- lsls r0, 24
- asrs r0, 24
- strh r0, [r5, 0xA]
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08081288 @ =gMapObjects
- adds r0, r1
- bl FieldObjectClearAnimIfSpecialAnimFinished
- movs r0, 0
- bl sub_8080958
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _080812BC
- .align 2, 0
-_08081288: .4byte gMapObjects
-_0808128C:
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- cmp r0, 0
- blt _080812A2
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0x4]
- cmp r0, 0x1
- beq _080812BC
-_080812A2:
- movs r0, 0x4
- strh r0, [r5, 0x8]
- b _080812BC
-_080812A8:
- bl sub_8053FF8
- bl fade_8080918
- bl PlayRainSoundEffect
- movs r0, 0
- strh r0, [r5, 0x8]
- ldr r0, _080812C4 @ =task0A_fade_n_map_maybe
- str r0, [r5]
-_080812BC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080812C4: .4byte task0A_fade_n_map_maybe
- thumb_func_end sub_808115C
-
- thumb_func_start sub_80812C8
-sub_80812C8: @ 80812C8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080812EC @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08081300
- cmp r0, 0x1
- bgt _080812F0
- cmp r0, 0
- beq _080812F6
- b _0808132A
- .align 2, 0
-_080812EC: .4byte gTasks
-_080812F0:
- cmp r0, 0x2
- beq _0808131A
- b _0808132A
-_080812F6:
- bl FreezeMapObjects
- bl ScriptContext2_Enable
- b _08081312
-_08081300:
- bl sub_8080E64
- cmp r0, 0
- bne _0808132A
- bl sub_8054034
- lsls r0, 24
- cmp r0, 0
- beq _0808132A
-_08081312:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0808132A
-_0808131A:
- bl warp_in
- ldr r0, _08081330 @ =sub_8054534
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_0808132A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08081330: .4byte sub_8054534
- thumb_func_end sub_80812C8
-
- thumb_func_start sub_8081334
-sub_8081334: @ 8081334
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053FF8
- bl fade_8080918
- bl PlayRainSoundEffect
- movs r0, 0x9
- bl PlaySE
- ldr r0, _08081360 @ =gUnknown_0300485C
- ldr r1, _08081364 @ =sub_8080B60
- str r1, [r0]
- ldr r0, _08081368 @ =sub_80812C8
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_08081360: .4byte gUnknown_0300485C
-_08081364: .4byte sub_8080B60
-_08081368: .4byte sub_80812C8
- thumb_func_end sub_8081334
-
thumb_func_start sub_808136C
sub_808136C: @ 808136C
push {lr}
diff --git a/ld_script.txt b/ld_script.txt
index 65c9d9d78..13a562737 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -123,7 +123,8 @@ SECTIONS {
src/title_screen.o(.text);
src/weather.o(.text);
asm/weather.o(.text);
- src/rom_8080874.o(.text);
+ src/field_doortransition.o(.text);
+ asm/field_doortransition.o(.text);
asm/rom_8080874.o(.text);
src/battle_setup.o(.text);
asm/cable_club.o(.text);
diff --git a/src/rom_8080874.c b/src/field_doortransition.c
index 261ed46c9..261ed46c9 100644
--- a/src/rom_8080874.c
+++ b/src/field_doortransition.c