diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/overworld.s | 545 |
1 files changed, 6 insertions, 539 deletions
diff --git a/asm/overworld.s b/asm/overworld.s index f17e829e7..0e201e8ea 100644 --- a/asm/overworld.s +++ b/asm/overworld.s @@ -5,539 +5,6 @@ .text - thumb_func_start sub_80564C8 -sub_80564C8: @ 80564C8 - push {lr} - sub sp, 0x4 - bl sub_8112B3C - bl sub_805BEB8 - bl sub_8111C68 - mov r0, sp - bl FieldClearPlayerInput - ldr r0, _08056508 @ =gUnknown_3005E90 - ldr r0, [r0] - str r0, [sp] - mov r0, sp - bl FieldInput_HandleCancelSignpost - bl ScriptContext2_IsEnabled - lsls r0, 24 - cmp r0, 0 - bne _08056512 - mov r0, sp - bl ProcessPlayerFieldInput - cmp r0, 0x1 - bne _0805650C - bl ScriptContext2_Enable - bl DismissMapNamePopup - b _08056522 - .align 2, 0 -_08056508: .4byte gUnknown_3005E90 -_0805650C: - bl RunQuestLogCB - b _08056522 -_08056512: - bl sub_8111CD0 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08056522 - bl RunQuestLogCB -_08056522: - ldr r0, _08056530 @ =gUnknown_3005E90 - bl FieldClearPlayerInput - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08056530: .4byte gUnknown_3005E90 - thumb_func_end sub_80564C8 - - thumb_func_start CB1_Overworld -CB1_Overworld: @ 8056534 - push {r4,lr} - ldr r4, _0805655C @ =gMain - ldr r1, [r4, 0x4] - ldr r0, _08056560 @ =sub_80565B4 - cmp r1, r0 - bne _08056570 - bl sub_8112CAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08056554 - ldr r0, _08056564 @ =gQuestLogState - ldrb r0, [r0] - cmp r0, 0x2 - bne _08056568 -_08056554: - bl sub_80564C8 - b _08056570 - .align 2, 0 -_0805655C: .4byte gMain -_08056560: .4byte sub_80565B4 -_08056564: .4byte gQuestLogState -_08056568: - ldrh r0, [r4, 0x2E] - ldrh r1, [r4, 0x2C] - bl sub_805644C -_08056570: - pop {r4} - pop {r0} - bx r0 - thumb_func_end CB1_Overworld - - thumb_func_start sub_8056578 -sub_8056578: @ 8056578 - push {lr} - bl ScriptContext2_RunScript - bl RunTasks - bl AnimateSprites - bl CameraUpdate - bl sub_8115798 - bl UpdateCameraPanning - bl BuildOamBuffer - bl UpdatePaletteFade - bl UpdateTilesetAnimations - bl DoScheduledBgTilemapCopiesToVram - pop {r0} - bx r0 - thumb_func_end sub_8056578 - - thumb_func_start CB2_OverworldBasic -CB2_OverworldBasic: @ 80565A8 - push {lr} - bl sub_8056578 - pop {r0} - bx r0 - thumb_func_end CB2_OverworldBasic - - thumb_func_start sub_80565B4 -sub_80565B4: @ 80565B4 - push {r4,lr} - ldr r0, _080565DC @ =gPaletteFade - ldrb r0, [r0, 0x7] - lsrs r0, 7 - adds r4, r0, 0 - cmp r4, 0 - beq _080565C8 - movs r0, 0 - bl SetVBlankCallback -_080565C8: - bl sub_8056578 - cmp r4, 0 - beq _080565D4 - bl SetFieldVBlankCallback -_080565D4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080565DC: .4byte gPaletteFade - thumb_func_end sub_80565B4 - - thumb_func_start SetMainCallback1 -SetMainCallback1: @ 80565E0 - ldr r1, _080565E8 @ =gMain - str r0, [r1] - bx lr - .align 2, 0 -_080565E8: .4byte gMain - thumb_func_end SetMainCallback1 - - thumb_func_start map_post_load_hook_exec -map_post_load_hook_exec: @ 80565EC - push {r4,lr} - ldr r4, _08056604 @ =gFieldCallback2 - ldr r0, [r4] - cmp r0, 0 - beq _08056618 - bl _call_via_r0 - lsls r0, 24 - cmp r0, 0 - bne _08056608 - movs r0, 0 - b _08056638 - .align 2, 0 -_08056604: .4byte gFieldCallback2 -_08056608: - movs r1, 0 - str r1, [r4] - ldr r0, _08056614 @ =gFieldCallback - str r1, [r0] - b _08056636 - .align 2, 0 -_08056614: .4byte gFieldCallback -_08056618: - ldr r0, _08056628 @ =gFieldCallback - ldr r0, [r0] - cmp r0, 0 - beq _0805662C - bl _call_via_r0 - b _08056630 - .align 2, 0 -_08056628: .4byte gFieldCallback -_0805662C: - bl FieldCB_UnionRoomWarp -_08056630: - ldr r1, _08056640 @ =gFieldCallback - movs r0, 0 - str r0, [r1] -_08056636: - movs r0, 0x1 -_08056638: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08056640: .4byte gFieldCallback - thumb_func_end map_post_load_hook_exec - - thumb_func_start CB2_NewGame -CB2_NewGame: @ 8056644 - push {lr} - bl FieldClearVBlankHBlankCallbacks - bl StopMapMusic - bl ResetSafariZoneFlag_ - bl NewGameInitData - bl ResetInitialPlayerAvatarState - bl PlayTimeCounter_Start - bl ScriptContext1_Init - bl ScriptContext2_Disable - ldr r1, _0805668C @ =gFieldCallback - ldr r0, _08056690 @ =sub_807DF7C - str r0, [r1] - ldr r1, _08056694 @ =gFieldCallback2 - movs r0, 0 - str r0, [r1] - ldr r0, _08056698 @ =gMain + 0x438 - bl do_load_map_stuff_loop - bl SetFieldVBlankCallback - ldr r0, _0805669C @ =CB1_Overworld - bl SetMainCallback1 - ldr r0, _080566A0 @ =sub_80565B4 - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0805668C: .4byte gFieldCallback -_08056690: .4byte sub_807DF7C -_08056694: .4byte gFieldCallback2 -_08056698: .4byte gMain + 0x438 -_0805669C: .4byte CB1_Overworld -_080566A0: .4byte sub_80565B4 - thumb_func_end CB2_NewGame - - thumb_func_start CB2_WhiteOut -CB2_WhiteOut: @ 80566A4 - push {lr} - sub sp, 0x4 - ldr r1, _08056708 @ =gMain - movs r0, 0x87 - lsls r0, 3 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x77 - bls _08056702 - bl FieldClearVBlankHBlankCallbacks - bl StopMapMusic - bl ResetSafariZoneFlag_ - bl sub_8054BC8 - movs r0, 0x2 - bl sub_80559F8 - bl ScriptContext1_Init - bl ScriptContext2_Disable - ldr r1, _0805670C @ =gFieldCallback - ldr r0, _08056710 @ =sub_807F5F0 - str r0, [r1] - mov r1, sp - movs r0, 0 - strb r0, [r1] - mov r0, sp - bl do_load_map_stuff_loop - bl sub_8112364 - bl SetFieldVBlankCallback - ldr r0, _08056714 @ =CB1_Overworld - bl SetMainCallback1 - ldr r0, _08056718 @ =sub_80565B4 - bl SetMainCallback2 -_08056702: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08056708: .4byte gMain -_0805670C: .4byte gFieldCallback -_08056710: .4byte sub_807F5F0 -_08056714: .4byte CB1_Overworld -_08056718: .4byte sub_80565B4 - thumb_func_end CB2_WhiteOut - - thumb_func_start CB2_LoadMap -CB2_LoadMap: @ 805671C - push {lr} - bl FieldClearVBlankHBlankCallbacks - bl ScriptContext1_Init - bl ScriptContext2_Disable - movs r0, 0 - bl SetMainCallback1 - ldr r0, _08056740 @ =CB2_DoChangeMap - bl SetMainCallback2 - ldr r1, _08056744 @ =gMain - ldr r0, _08056748 @ =sub_805674C - str r0, [r1, 0x8] - pop {r0} - bx r0 - .align 2, 0 -_08056740: .4byte CB2_DoChangeMap -_08056744: .4byte gMain -_08056748: .4byte sub_805674C - thumb_func_end CB2_LoadMap - - thumb_func_start sub_805674C -sub_805674C: @ 805674C - push {lr} - ldr r0, _08056768 @ =gMain + 0x438 - bl do_load_map_stuff_loop - bl sub_8113748 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0805676C - bl sub_81119C8 - b _0805677C - .align 2, 0 -_08056768: .4byte gMain + 0x438 -_0805676C: - bl SetFieldVBlankCallback - ldr r0, _08056780 @ =CB1_Overworld - bl SetMainCallback1 - ldr r0, _08056784 @ =sub_80565B4 - bl SetMainCallback2 -_0805677C: - pop {r0} - bx r0 - .align 2, 0 -_08056780: .4byte CB1_Overworld -_08056784: .4byte sub_80565B4 - thumb_func_end sub_805674C - - thumb_func_start CB2_ReturnToFieldCableClub -CB2_ReturnToFieldCableClub: @ 8056788 - push {lr} - bl FieldClearVBlankHBlankCallbacks - ldr r0, _080567A0 @ =gFieldCallback - ldr r1, _080567A4 @ =FieldCB_ReturnToFieldWirelessLink - str r1, [r0] - ldr r0, _080567A8 @ =c2_80567AC - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_080567A0: .4byte gFieldCallback -_080567A4: .4byte FieldCB_ReturnToFieldWirelessLink -_080567A8: .4byte c2_80567AC - thumb_func_end CB2_ReturnToFieldCableClub - - thumb_func_start c2_80567AC -c2_80567AC: @ 80567AC - push {lr} - ldr r0, _080567D0 @ =gMain + 0x438 - bl map_loading_iteration_3 - cmp r0, 0 - beq _080567CC - bl SetFieldVBlankCallback - ldr r0, _080567D4 @ =CB1_UpdateLinkState - bl SetMainCallback1 - bl sub_80578D8 - ldr r0, _080567D8 @ =sub_80565B4 - bl SetMainCallback2 -_080567CC: - pop {r0} - bx r0 - .align 2, 0 -_080567D0: .4byte gMain + 0x438 -_080567D4: .4byte CB1_UpdateLinkState -_080567D8: .4byte sub_80565B4 - thumb_func_end c2_80567AC - - thumb_func_start CB2_ReturnToField -CB2_ReturnToField: @ 80567DC - push {lr} - bl IsUpdateLinkStateCBActive - cmp r0, 0x1 - bne _080567F4 - ldr r0, _080567F0 @ =c2_exit_to_overworld_2_link - bl SetMainCallback2 - b _080567FE - .align 2, 0 -_080567F0: .4byte c2_exit_to_overworld_2_link -_080567F4: - bl FieldClearVBlankHBlankCallbacks - ldr r0, _08056804 @ =c2_exit_to_overworld_2_local - bl SetMainCallback2 -_080567FE: - pop {r0} - bx r0 - .align 2, 0 -_08056804: .4byte c2_exit_to_overworld_2_local - thumb_func_end CB2_ReturnToField - - thumb_func_start c2_exit_to_overworld_2_local -c2_exit_to_overworld_2_local: @ 8056808 - push {lr} - ldr r0, _08056824 @ =gMain + 0x438 - bl sub_8056CD8 - cmp r0, 0 - beq _0805681E - bl SetFieldVBlankCallback - ldr r0, _08056828 @ =sub_80565B4 - bl SetMainCallback2 -_0805681E: - pop {r0} - bx r0 - .align 2, 0 -_08056824: .4byte gMain + 0x438 -_08056828: .4byte sub_80565B4 - thumb_func_end c2_exit_to_overworld_2_local - - thumb_func_start c2_exit_to_overworld_2_link -c2_exit_to_overworld_2_link: @ 805682C - push {lr} - bl sub_8058244 - cmp r0, 0 - bne _08056846 - ldr r0, _0805684C @ =gMain + 0x438 - bl map_loading_iteration_2_link - cmp r0, 0 - beq _08056846 - ldr r0, _08056850 @ =sub_80565B4 - bl SetMainCallback2 -_08056846: - pop {r0} - bx r0 - .align 2, 0 -_0805684C: .4byte gMain + 0x438 -_08056850: .4byte sub_80565B4 - thumb_func_end c2_exit_to_overworld_2_link - - thumb_func_start c2_8056854 -c2_8056854: @ 8056854 - push {lr} - bl FieldClearVBlankHBlankCallbacks - bl StopMapMusic - ldr r0, _08056878 @ =CB1_UpdateLinkState - bl SetMainCallback1 - bl sub_80578D8 - ldr r0, _0805687C @ =gWirelessCommType - ldrb r0, [r0] - cmp r0, 0 - beq _08056888 - ldr r1, _08056880 @ =gFieldCallback - ldr r0, _08056884 @ =FieldCB_ReturnToFieldWirelessLink - b _0805688C - .align 2, 0 -_08056878: .4byte CB1_UpdateLinkState -_0805687C: .4byte gWirelessCommType -_08056880: .4byte gFieldCallback -_08056884: .4byte FieldCB_ReturnToFieldWirelessLink -_08056888: - ldr r1, _080568A0 @ =gFieldCallback - ldr r0, _080568A4 @ =FieldCB_ReturnToFieldWiredLink -_0805688C: - str r0, [r1] - bl ScriptContext1_Init - bl ScriptContext2_Disable - bl CB2_ReturnToField - pop {r0} - bx r0 - .align 2, 0 -_080568A0: .4byte gFieldCallback -_080568A4: .4byte FieldCB_ReturnToFieldWiredLink - thumb_func_end c2_8056854 - - thumb_func_start CB2_ReturnToFieldWithOpenMenu -CB2_ReturnToFieldWithOpenMenu: @ 80568A8 - push {lr} - bl FieldClearVBlankHBlankCallbacks - ldr r1, _080568BC @ =gFieldCallback2 - ldr r0, _080568C0 @ =FieldCB2_ReturnToStartMenuInit - str r0, [r1] - bl CB2_ReturnToField - pop {r0} - bx r0 - .align 2, 0 -_080568BC: .4byte gFieldCallback2 -_080568C0: .4byte FieldCB2_ReturnToStartMenuInit - thumb_func_end CB2_ReturnToFieldWithOpenMenu - - thumb_func_start sub_80568C4 -sub_80568C4: @ 80568C4 - push {lr} - bl FieldClearVBlankHBlankCallbacks - ldr r1, _080568D8 @ =gFieldCallback - ldr r0, _080568DC @ =sub_807DD44 - str r0, [r1] - bl CB2_ReturnToField - pop {r0} - bx r0 - .align 2, 0 -_080568D8: .4byte gFieldCallback -_080568DC: .4byte sub_807DD44 - thumb_func_end sub_80568C4 - - thumb_func_start CB2_ReturnToFieldContinueScriptPlayMapMusic -CB2_ReturnToFieldContinueScriptPlayMapMusic: @ 80568E0 - push {lr} - bl FieldClearVBlankHBlankCallbacks - ldr r1, _080568F4 @ =gFieldCallback - ldr r0, _080568F8 @ =FieldCallback_ReturnToEventScript2 - str r0, [r1] - bl CB2_ReturnToField - pop {r0} - bx r0 - .align 2, 0 -_080568F4: .4byte gFieldCallback -_080568F8: .4byte FieldCallback_ReturnToEventScript2 - thumb_func_end CB2_ReturnToFieldContinueScriptPlayMapMusic - - thumb_func_start CB2_Overworld -CB2_Overworld: @ 80568FC - push {lr} - bl FieldClearVBlankHBlankCallbacks - ldr r1, _08056910 @ =gFieldCallback - ldr r0, _08056914 @ =sub_807DF7C - str r0, [r1] - bl CB2_ReturnToField - pop {r0} - bx r0 - .align 2, 0 -_08056910: .4byte gFieldCallback -_08056914: .4byte sub_807DF7C - thumb_func_end CB2_Overworld - - thumb_func_start sub_8056918 -sub_8056918: @ 8056918 - push {lr} - ldr r0, _08056934 @ =gMapHeader - ldrb r1, [r0, 0x19] - movs r0, 0xFC - ands r0, r1 - cmp r0, 0x4 - bne _0805692C - movs r0, 0 - bl CreateMapNamePopupIfNotAlreadyRunning -_0805692C: - bl sub_807DF7C - pop {r0} - bx r0 - .align 2, 0 -_08056934: .4byte gMapHeader - thumb_func_end sub_8056918 - thumb_func_start CB2_ContinueSavedGame CB2_ContinueSavedGame: @ 8056938 push {lr} @@ -928,7 +395,7 @@ _08056CA8: cmp r0, 0x4 bne _08056CCA movs r0, 0 - bl CreateMapNamePopupIfNotAlreadyRunning + bl ShowMapNamePopup b _08056CCA .align 2, 0 _08056CBC: .4byte gMapHeader @@ -1670,14 +1137,14 @@ sub_80572D8: @ 80572D8 bl SetFieldVBlankCallback ldr r0, _080572F8 @ =CB1_Overworld bl SetMainCallback1 - ldr r0, _080572FC @ =sub_80565B4 + ldr r0, _080572FC @ =CB2_Overworld bl SetMainCallback2 pop {r0} bx r0 .align 2, 0 _080572F4: .4byte gMain + 0x438 _080572F8: .4byte CB1_Overworld -_080572FC: .4byte sub_80565B4 +_080572FC: .4byte CB2_Overworld thumb_func_end sub_80572D8 thumb_func_start sub_8057300 @@ -2376,8 +1843,8 @@ _080578D0: .4byte gLinkPartnersHeldKeys _080578D4: .4byte gUnknown_3000E84 thumb_func_end CB1_UpdateLinkState - thumb_func_start sub_80578D8 -sub_80578D8: @ 80578D8 + thumb_func_start ResetAllMultiplayerState +ResetAllMultiplayerState: @ 80578D8 push {lr} bl sub_805793C ldr r0, _080578E8 @ =sub_8057D5C @@ -2386,7 +1853,7 @@ sub_80578D8: @ 80578D8 bx r0 .align 2, 0 _080578E8: .4byte sub_8057D5C - thumb_func_end sub_80578D8 + thumb_func_end ResetAllMultiplayerState thumb_func_start sub_80578EC sub_80578EC: @ 80578EC |