diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf index 5ada5dd59..7f0a54c82 100644 --- a/arm9/arm9.lsf +++ b/arm9/arm9.lsf @@ -4,1340 +4,1341 @@ Static arm9 { - Address 0x02000000 - Object main.o - Object list_menu.o - Object unk_02001B80.o - Object string_util.o - Object render_text.o - Object font.o - Object palette.o - Object sound.o - Object unk_020040F4.o - Object unk_020051F4.o - Object sound_chatot.o - Object poke_overlay.o - Object unk_020061E8.o - Object overlay_manager.o - Object filesystem.o - Object gf_gfx_loader.o - Object unk_02006D98.o - Object unk_02008AA4.o - Object unk_02008DEC.o - Object oam.o - Object brightness.o - Object msgdata.o - Object message_format.o - Object unk_0200BA78.o - Object unk_0200BB14.o - Object unk_0200CA44.o - Object render_window.o - Object unk_0200E1D0_s.o - Object unk_0200E1D0.o - Object unk_0200E850.o - Object unk_0201137C.o - Object unk_02011744.o - Object unk_02012004.o - Object gf_rtc.o - Object list_menu_items.o - Object unk_02012944.o - Object unk_02012CC8.o - Object mail_message.o - Object easy_chat.o - Object unk_02013CD4.o - Object unk_020142EC.o - Object unk_020144FC.o - Object unk_02014590.o - Object unk_02014BF4.o - Object unk_02015CC0.o - Object rs_migrate_string.o - Object play_timer.o - Object game_init.o - Object heap.o - Object bg_window.o - Object unk_0201B1A8.o - Object unk_0201B4E8.o - Object unk_0201B6D0.o - Object string_control_code.o - Object math_util.o - Object text.o - Object unk_0201C24C.o - Object unk_0201C360.o - Object unk_0201C620.o - Object ascii_util.o - Object unk_0201C7A0.o - Object unk_0201CBEC.o - Object unk_0201CC08.o - Object unk_0201D040.o - Object unk_0201E00C.o - Object gf_gfx_planes.o - Object camera.o - Object unk_0201F06C.o - Object unk_020208B8.o - Object timer3.o - Object error_handling.o - Object unk_02020C44.o - Object unk_0202134C.o - Object unk_02021590.o - Object unk_02021934.o - Object unk_02021FF8.o - Object unk_02022244.o - Object unk_02022294.o - Object unk_020222E8.o - Object unk_02022318.o - Object unk_02022450.o - Object unk_02022504.o - Object save.o - Object save_arrays.o - Object save_system_info.o - Object player_data.o - Object unk_02023AC4.o - Object daycare.o - Object pokedex.o - Object unk_02024E64.o - Object options.o - Object unk_020250A4.o - Object unk_02025484.o - Object unk_020254B8.o - Object mail.o - Object unk_02025954.o - Object unk_02026CD0.o - Object unk_02027E30.o - Object unk_020281E0.o - Object unk_020286F8.o - Object coins.o - Object unk_02028980.o - Object unk_02029A84.o - Object unk_02029AE0.o - Object seal_case.o - Object unk_02029CEC.o - Object igt.o - Object sav_chatot.o - Object unk_02029FB0.o - Object unk_0202A1E0.o - Object unk_0202A8F4.o - Object unk_0202A924.o - Object unk_0202ABBC.o - Object unk_0202AC20.o - Object hall_of_fame.o - Object unk_0202B374.o - Object unk_0202B870.o - Object unk_0202BE98.o - Object unk_0202C0E0.o - Object unk_0202C144.o - Object unk_0202C198.o - Object unk_0202D394.o - Object unk_0202D4C4.o - Object unk_0202D858.o - Object unk_0202D8D0.o - Object unk_0202DB14.o - Object unk_0202E29C.o - Object unk_0202F150.o - Object unk_02031480.o - Object unk_02031734.o - Object unk_020336C0.o - Object unk_02033778.o - Object unk_020337E8.o - Object unk_02033874.o - Object unk_02033B68.o - Object communication_error.o - Object wfc_user_info_warning.o - Object map_matrix.o - Object map_header.o - Object unk_02034A28.o - Object unk_02034D7C.o - Object unk_02034E84.o - Object field_system_rtc_weather.o - Object unk_02035068.o - Object unk_02036FA4.o - Object unk_02037024.o - Object unk_020372D4.o - Object unk_020377B0.o - Object unk_020377F0.o - Object script.o - Object unk_02038C78.o - Object scrcmd.o - Object scrcmd_mart.o - Object scrcmd_3.o - Object scrcmd_names.o - Object scrcmd_5.o - Object scrcmd_sound.o - Object scrcmd_7.o - Object scrcmd_union.o - Object scrcmd_9.o - Object scrcmd_10.o - Object scrcmd_berry_trees.o - Object scrcmd_12.o - Object scrcmd_13.o - Object scrcmd_coins.o - Object scrcmd_money.o - Object scrcmd_daycare.o - Object scrcmd_amity_square.o - Object scrcmd_party.o - Object scrcmd_fossils.o - Object scrcmd_prizes.o - Object scrcmd_flags.o - Object scrcmd_items.o - Object scrcmd_underground.o - Object scrcmd_move_relearner.o - Object scrcmd_25.o - Object unk_02046030.o - Object save_vars_flags.o - Object task.o - Object encounter.o - Object unk_02047500.o - Object unk_020476CC.o - Object blackout.o - Object unk_020484A8.o - Object unk_02048904.o - Object script_pokemon_util.o - Object unk_0204A368.o - Object unk_0204A498.o - Object unk_0204AB0C.o - Object unk_0204ADE0.o - Object unk_0204AEA8.o - Object unk_0204AF24.o - Object unk_0204B0A0.o - Object unk_0204B34C.o - Object unk_0204B9EC.o - Object poketch.o - Object unk_0204C1B4.o - Object unk_0204CA80.o - Object unk_0204CB20.o - Object unk_0204FBA8.o - Object unk_02050E48.o - Object unk_020520AC.o - Object unk_02052EE8.o - Object unk_0205363C.o - Object unk_02053750.o - Object text_02054590.o - Object unk_0205478C.o - Object unk_02054C14.o - Object unk_02055068.o - Object unk_020557F4.o - Object unk_02057380.o - Object unk_02058EE8.o - Object unk_02059F04.o - Object unk_0205AD98.o - Object unk_0205BEF8.o - Object unk_0205C334.o - Object unk_0205C598.o - Object unk_0205CDB4.o - Object unk_0205CE48.o - Object unk_0205DD18.o - Object unk_0205E4EC.o - Object unk_0205EB38.o - Object unk_0205EC84.o - Object unk_0205F314.o - Object unk_0205F7A0.o - Object unk_0205FA2C.o - Object unk_0206015C.o - Object unk_02060344.o - Object unk_020603B0.o - Object unk_020606B0.o - Object unk_020607D4.o - Object unk_02060CCC.o - Object unk_020625EC.o - Object unk_0206367C.o - Object unk_02063888.o - Object unk_02063948.o - Object unk_0206439C.o - Object unk_020643C0.o - Object unk_020647A4.o - Object unk_02064CA8.o - Object unk_02064E20.o - Object unk_02064E4C.o - Object unk_02064E90.o - Object unk_020653EC.o - Object unk_02066840.o + Address 0x02000000 + Object main.o + Object list_menu.o + Object unk_02001B80.o + Object string_util.o + Object render_text.o + Object font.o + Object palette.o + Object sound.o + Object unk_020040F4.o + Object unk_020051F4.o + Object sound_chatot.o + Object poke_overlay.o + Object unk_020061E8.o + Object overlay_manager.o + Object filesystem.o + Object gf_gfx_loader.o + Object unk_02006D98.o + Object unk_02008AA4.o + Object unk_02008DEC.o + Object oam.o + Object brightness.o + Object msgdata.o + Object message_format.o + Object unk_0200BA78.o + Object unk_0200BB14.o + Object unk_0200CA44.o + Object render_window.o + Object unk_0200E1D0_s.o + Object unk_0200E1D0.o + Object unk_0200E850.o + Object unk_0201137C.o + Object unk_02011744.o + Object unk_02012004.o + Object gf_rtc.o + Object list_menu_items.o + Object unk_02012944.o + Object unk_02012CC8.o + Object mail_message.o + Object easy_chat.o + Object unk_02013CD4.o + Object unk_020142EC.o + Object unk_020144FC.o + Object unk_02014590.o + Object unk_02014BF4.o + Object unk_02015CC0.o + Object rs_migrate_string.o + Object play_timer.o + Object game_init.o + Object heap.o + Object bg_window.o + Object unk_0201B1A8.o + Object unk_0201B4E8.o + Object unk_0201B6D0.o + Object string_control_code.o + Object math_util.o + Object text.o + Object unk_0201C24C.o + Object unk_0201C360.o + Object unk_0201C620.o + Object ascii_util.o + Object unk_0201C7A0.o + Object unk_0201CBEC.o + Object unk_0201CC08.o + Object unk_0201D040.o + Object unk_0201E00C.o + Object gf_gfx_planes.o + Object camera.o + Object unk_0201F06C.o + Object unk_020208B8.o + Object timer3.o + Object error_handling.o + Object unk_02020C44.o + Object unk_0202134C.o + Object unk_02021590.o + Object unk_02021934.o + Object unk_02021FF8.o + Object unk_02022244.o + Object unk_02022294.o + Object unk_020222E8.o + Object unk_02022318.o + Object unk_02022450.o + Object unk_02022504.o + Object save.o + Object save_arrays.o + Object save_system_info.o + Object player_data.o + Object unk_02023AC4.o + Object daycare.o + Object pokedex.o + Object unk_02024E64.o + Object options.o + Object unk_020250A4.o + Object unk_02025484.o + Object unk_020254B8.o + Object mail.o + Object unk_02025954.o + Object unk_02026CD0.o + Object unk_02027E30.o + Object unk_020281E0.o + Object unk_020286F8.o + Object coins.o + Object unk_02028980.o + Object unk_02029A84.o + Object unk_02029AE0.o + Object seal_case.o + Object unk_02029CEC.o + Object igt.o + Object sav_chatot.o + Object unk_02029FB0.o + Object unk_0202A1E0.o + Object unk_0202A8F4.o + Object unk_0202A924.o + Object unk_0202ABBC.o + Object unk_0202AC20.o + Object hall_of_fame.o + Object unk_0202B374.o + Object unk_0202B870.o + Object unk_0202BE98.o + Object unk_0202C0E0.o + Object unk_0202C144.o + Object unk_0202C198.o + Object unk_0202D394.o + Object unk_0202D4C4.o + Object unk_0202D858.o + Object unk_0202D8D0.o + Object unk_0202DB14.o + Object unk_0202E29C.o + Object unk_0202F150.o + Object unk_02031480.o + Object unk_02031734.o + Object unk_020336C0.o + Object unk_02033778.o + Object unk_020337E8.o + Object unk_02033874.o + Object unk_02033B68.o + Object communication_error.o + Object wfc_user_info_warning.o + Object map_matrix.o + Object map_header.o + Object unk_02034A28.o + Object unk_02034D7C.o + Object unk_02034E84.o + Object field_system_rtc_weather.o + Object unk_02035068.o + Object unk_02036FA4.o + Object unk_02037024.o + Object unk_020372D4.o + Object unk_020377B0.o + Object unk_020377F0.o + Object script.o + Object unk_02038C78.o + Object scrcmd.o + Object scrcmd_mart.o + Object scrcmd_3.o + Object scrcmd_names.o + Object scrcmd_5.o + Object scrcmd_sound.o + Object scrcmd_7.o + Object scrcmd_union.o + Object scrcmd_9.o + Object scrcmd_10.o + Object scrcmd_berry_trees.o + Object scrcmd_12.o + Object scrcmd_13.o + Object scrcmd_coins.o + Object scrcmd_money.o + Object scrcmd_daycare.o + Object scrcmd_amity_square.o + Object scrcmd_party.o + Object scrcmd_fossils.o + Object scrcmd_prizes.o + Object scrcmd_flags.o + Object scrcmd_items.o + Object scrcmd_underground.o + Object scrcmd_move_relearner.o + Object scrcmd_25.o + Object unk_02046030.o + Object save_vars_flags.o + Object task.o + Object encounter.o + Object unk_02047500.o + Object unk_020476CC.o + Object blackout.o + Object unk_020484A8.o + Object unk_02048904.o + Object script_pokemon_util.o + Object unk_0204A368.o + Object unk_0204A498.o + Object unk_0204AB0C.o + Object unk_0204ADE0.o + Object unk_0204AEA8.o + Object unk_0204AF24.o + Object unk_0204B0A0.o + Object unk_0204B34C.o + Object unk_0204B9EC.o + Object poketch.o + Object unk_0204C1B4.o + Object unk_0204CA80.o + Object unk_0204CB20.o + Object unk_0204FBA8.o + Object unk_02050E48.o + Object unk_020520AC.o + Object unk_02052EE8.o + Object unk_0205363C.o + Object unk_02053750.o + Object text_02054590.o + Object unk_0205478C.o + Object unk_02054C14.o + Object unk_02055068.o + Object unk_020557F4.o + Object map_object.o + Object map_object_s.o + Object unk_02058EE8.o + Object unk_02059F04.o + Object unk_0205AD98.o + Object unk_0205BEF8.o + Object unk_0205C334.o + Object unk_0205C598.o + Object unk_0205CDB4.o + Object unk_0205CE48.o + Object unk_0205DD18.o + Object unk_0205E4EC.o + Object unk_0205EB38.o + Object unk_0205EC84.o + Object unk_0205F314.o + Object unk_0205F7A0.o + Object unk_0205FA2C.o + Object unk_0206015C.o + Object unk_02060344.o + Object unk_020603B0.o + Object unk_020606B0.o + Object unk_020607D4.o + Object unk_02060CCC.o + Object unk_020625EC.o + Object unk_0206367C.o + Object unk_02063888.o + Object unk_02063948.o + Object unk_0206439C.o + Object unk_020643C0.o + Object unk_020647A4.o + Object unk_02064CA8.o + Object unk_02064E20.o + Object unk_02064E4C.o + Object unk_02064E90.o + Object unk_020653EC.o + Object unk_02066840.o - ##poketool## - Object pokemon.o - Object waza.o - Object trainer_data.o - Object pokemon_storage_system.o - Object unk_0206B688.o - Object party.o - Object unk_0206BB28.o - Object unk_0206BB5C.o - Object unk_0206BF90.o - Object unk_0206C700.o - Object unk_0206DE24.o - Object unk_0206E0F0.o - Object bag_view.o + ##poketool## + Object pokemon.o + Object waza.o + Object trainer_data.o + Object pokemon_storage_system.o + Object unk_0206B688.o + Object party.o + Object unk_0206BB28.o + Object unk_0206BB5C.o + Object unk_0206BF90.o + Object unk_0206C700.o + Object unk_0206DE24.o + Object unk_0206E0F0.o + Object bag_view.o - ##itemtool## - Object itemtool.o - Object bag.o - Object unk_0206F1F0.o - Object unk_0206F3FC.o - Object unk_02072548.o - Object unk_02073710.o - Object unk_02073DA8.o - Object unk_0207550C.o - Object unk_020772F0.o - Object unk_020799E8.o - Object unk_02079C70.o - Object unk_0207C328.o - Object unk_0207D5BC.o - Object unk_0207EF6C.o - Object unk_0207F95C.o - Object unk_0207FC5C.o - Object unk_0207FD00.o - Object unk_02080C38.o - Object unk_020828BC.o - Object unk_020834D0.o - Object unk_02083B84.o - Object unk_02083D48.o - Object unk_02084098.o - Object unk_020842D0.o - Object use_item_on_mon.o - Object unk_020851B8.o - Object nutdata.o - Object unk_02085338.o - Object unk_020854E0.o - Object unk_020859C0.o - Object unk_02086084.o - Object unk_02086414.o - Object unk_02086FA8.o - Object unk_02087A1C.o - Object unk_02087A6C.o - Object unk_02087D00.o - Object unk_02088320.o - Object unk_02088814.o - Object unk_02088858.o - Object unk_0208890C.o - Object unk_0208898C.o - Object unk_02088AAC.o - Object unk_02088D1C.o - Object move_relearner.o - Object unk_02088F0C.o - Object unk_020893E0.o - Object unk_02089498.o - Object unk_02089960.o - Object save_data_read_error.o - Object save_data_write_error.o - Object unk_0208A258.o - Object unk_0208A300.o - Object unk_0208A338.o - Object error_message_reset.o - ### Third-party libraries ### - Object unk_0208AC14.o - Object custom_allocator.o - Object unk_020910EC.o - Object DWC_backup.o - Object DWC_bm_init.o - Object DWC_util_wifiidtool.o - Object DWC_init.o - Object DWC_account.o - Object SOC_socl_startup.o - Object SOC_socl_command.o - Object SOC_socl_create.o - Object SOC_socl_bind.o - Object SOC_socl_read.o - Object SOC_socl_shutdown.o - Object SOC_socl_close.o - Object SOC_socl_cleanup.o - Object SOC_socl_poll.o - Object SOC_socl_misc.o - Object SOC_socl_list.o - Object SOC_soc.o - Object SOC_socl_ssl.o - Object CPS_network.o - Object SSL_ssl.o - Object SSL_md5.o - Object SSL_sha1.o - Object SSL_rca4.o - Object SSL_biginteger.o - Object WCM_system.o - Object WCM_aplist.o - Object WCM_cpsif.o - Object WCM_util.o - Object WIFI_stubsmd5_dummy.o - Object libVCT.o - ### Nitro System SDK ### - Object NNS_FND_list.o - Object NNS_FND_heapcommon.o - Object NNS_FND_expheap_s.o - Object NNS_FND_expheap.o - Object NNS_FND_frameheap.o - Object NNS_FND_allocator.o - Object NNS_GFD_gfd_texvramman.o - Object NNS_GFD_gfd_plttvramman.o - Object NNS_GFD_gfd_frametexvra.o - Object NNS_GFD_gfd_frameplttvr.o - Object NNS_GFD_gfd_vramtransfe.o - Object NNS_GFD_gfdi_linkedlist.o - Object NNS_GFD_gfd_linkedlistt.o - Object NNS_GFD_gfd_linkedlistp.o - Object NNS_G2D_g2d_nan_load.o - Object NNS_G2D_g2d_nob_load.o - Object NNS_G2D_g2d_nmc_load.o - Object NNS_G2D_g2d_ncg_load.o - Object NNS_G2D_g2d_ncl_load.o - Object NNS_G2D_g2d_nsc_load.o - Object NNS_G2D_g2d_load.o - Object NNS_G2D_g2d_softsprite.o - Object NNS_G2D_g2d_animation.o - Object NNS_G2D_g2d_oam.o - Object NNS_G2D_g2d_palettetabl.o - Object NNS_G2D_g2d_image.o - Object NNS_G2D_g2d_srtcontrol.o - Object NNS_G2D_g2d_node.o - Object NNS_G2D_g2d_cellanimati.o - Object NNS_G2D_g2d_multicellan.o - Object NNS_G2D_g2d_renderer.o - Object NNS_G2D_g2di_mtx32.o - Object NNS_G2D_g2d_celltransfe.o - Object NNS_G2D_g2d_oamsoftware.o - Object NNS_G2D_g2d_renderercor.o - Object NNS_G2D_g2d_font.o - Object NNS_G2D_g2d_charcanvas.o - Object NNS_G2D_g2d_textcanvas.o - Object NNS_G2D_g2d_nft_load.o - Object NNS_G2D_g2di_bitreader.o - Object NNS_G2D_g2di_splitchar.o - Object NNS_G3D_kernel.o - Object NNS_G3D_glbstate.o - Object NNS_G3D_anm.o - Object NNS_G3D_cgtool.o - Object NNS_G3D_sbc.o - Object NNS_G3D_1mat1shp.o - Object NNS_G3D_gecom.o - Object NNS_G3D_util.o - Object NNS_G3D_mem.o - Object NNS_G3D_model.o - Object NNS_G3D_res_struct_acce.o - Object NNS_G3D_nsbca.o - Object NNS_G3D_nsbma.o - Object NNS_G3D_nsbta.o - Object NNS_G3D_nsbtp.o - Object NNS_G3D_nsbva.o - Object NNS_G3D_basic.o - Object NNS_G3D_maya.o - Object NNS_G3D_si3d.o - Object NNS_G3D_3dsmax.o - Object NNS_G3D_xsi.o - Object NNS_SND_main.o - Object NNS_SND_resource_mgr.o - Object NNS_SND_waveout.o - Object NNS_SND_player.o - Object NNS_SND_stream.o - Object NNS_SND_capture.o - Object NNS_SND_sndarc.o - Object NNS_SND_heap.o - Object NNS_SND_sndarc_loader.o - Object NNS_SND_sndarc_player.o - Object NNS_SND_sndarc_stream.o - Object NNS_SND_seqdata.o - Object NNS_SND_fader.o - ### Nitro SDK ### - Object FX_mtx22.o - Object FX_mtx33.o - Object FX_mtx43.o - Object FX_mtx44.o - Object FX_cp.o - Object FX_vec.o - Object FX_sincos.o - Object FX_atan.o - Object FX.o - Object GX.o - Object GX_state.o - Object GX_vramcnt.o - Object GX_bgcnt.o - Object GX_g2.o - Object GX_g3b.o - Object GX_g3imm.o - Object GX_g3x.o - Object GX_g3_util.o - Object GX_load2d.o - Object GX_load3d.o - Object GX_g3.o - Object GX_asm.o - Object OS_irqHandler.o (.text) - Object OS_irqTable.o - Object OS_interrupt.o - Object OS_spinLock.o - Object OS_printf.o - Object OS_thread.o - Object OS_context.o - Object OS_emulator.o - Object OS_message.o - Object OS_mutex.o - Object OS_cache.o - Object OS_init.o - Object OS_arena.o - Object OS_alloc.o - Object OS_tcm.o - Object OS_protectionUnit.o - Object OS_protectionRegion.o - Object OS_exception.o - Object OS_timer.o - Object OS_tick.o - Object OS_alarm.o - Object OS_valarm.o - Object OS_system.o - Object OS_reset.o - Object OS_ownerInfo.o - Object OS_vramExclusive.o - Object OS_entropy.o - Object OS_terminate_proc.o - Object MI_wram.o - Object MI_dma.o - Object MI_dma_hblank.o - Object MI_dma_gxcommand.o - Object MI_memory.o - Object MI_swap.o - Object MI_uncompress.o - Object MI_dma_card.o - Object MI_init.o - Object SND_interface.o - Object SND_main.o - Object SND_command.o - Object SND_alarm.o - Object SND_work.o - Object SND_util.o - Object SND_bank.o - Object PXI_init.o - Object PXI_fifo.o - Object FS_command.o - Object FS_command_default.o - Object FS_archive.o - Object FS_file.o - Object FS_rom.o - Object FS_overlay.o - Object DGT_hash1.o - Object DGT_hash2.o - Object DGT_sha1s_arm4cw.o - Object CP_context.o - Object SPI_tp.o - Object SPI_mic.o - Object SPI_pm.o - Object RTC_external.o - Object RTC_internal.o - Object RTC_convert.o - Object CARD_common.o - Object CARD_spi.o - Object CARD_backup.o - Object CARD_rom.o - Object CARD_request.o - Object CARD_pullOut.o - Object WM_system.o - Object WM_sync.o - Object WM_standard.o - Object WM_mp.o - Object WM_dcf.o - Object WM_ds.o - Object WM_ks.o - Object WM_etc.o - Object CTRDG_common.o - Object CTRDG_proc.o - Object CTRDG_backup.o - Object CTRDG_flash_common.o - Object CTRDG_flash_AT29LV512.o - Object CTRDG_flash_LE26FV10N1TS-10.o - Object CTRDG_flash_LE39FW512.o - Object CTRDG_flash_MX29L010.o - Object CTRDG_flash_MX29L512.o - Object CTRDG_task.o - Object MATH_pop.o - Object MATH_dgt.o - Object MATH_crc.o - Object STD_string.o - ### Standard libraries ### - ### Bundled with CodeWarrior, so probably compiled with 2.0sp1 ### - Object MSL_ARM_abort_exit.o - Object MSL_ARM_critical_regions_NITRO.o - Object MSL_ARM_math.o - Object MSL_Common_ansi_files.o - Object arith.o - Object MSL_Common_assert.o - Object MSL_Common_buffer_io.o - Object MSL_Common_ctype.o - Object MSL_Common_direct_io.o - Object MSL_Common_errno.o - Object MSL_Common_file_io.o - Object MSL_Common_file_pos.o - Object MSL_Common_float.o - Object MSL_Common_mbstring.o - Object MSL_Common_mem.o - Object MSL_Common_mem_funcs.o - Object MSL_Common_printf.o - Object MSL_Common_qsort.o - Object rand.o - Object MSL_Common_scanf.o - Object MSL_Common_signal.o - Object MSL_Common_string.o - Object MSL_Common_strtold.o - Object MSL_Common_strtoul.o - Object MSL_Common_wchar_io.o - Object MSL_Common_wctype.o - Object MSL_Common_wmem.o - Object MSL_Common_wprintf.o - Object MSL_Common_wstring.o - Object MSL_DPMath_e_pow.o - Object MSL_DPMath_s_copysign.o - Object MSL_DPMath_s_fabs.o - Object MSL_DPMath_s_frexp.o - Object MSL_DPMath_s_ldexp.o - Object MSL_DPMath_w_pow.o - Object MSL_fp_ansi.o - Object MSL_math.o - Object MSL_string_extras.o - Object RUNTIME_d_add.o - Object RUNTIME_d_dtof.o - Object RUNTIME_d_dtoi.o - Object RUNTIME_d_dtoull.o - Object RUNTIME_d_itod.o - Object RUNTIME_d_mul.o - Object RUNTIME_d_sqrt.o - Object RUNTIME_d_sub.o - Object RUNTIME_f_add.o - Object RUNTIME_f_cmp.o - Object RUNTIME_f_div.o - Object RUNTIME_f_ftod.o - Object RUNTIME_f_ftoi.o - Object RUNTIME_f_ftou.o - Object RUNTIME_f_itof.o - Object RUNTIME_f_mul.o - Object RUNTIME_f_sub.o - Object RUNTIME_ll_div.o - Object RUNTIME_ll_mul.o - Object RUNTIME_ll_sll.o - Object RUNTIME_s32_div_f.o - Object RUNTIME_u32_div_f.o - Object RUNTIME_d_div.o - Object RUNTIME_ieee_status.o - Object RUNTIME_ARM_semihosted_console_io.o - Object RUNTIME_CPLUS_StaticInitializers.o - Object RUNTIME_NITRO_eabi_init.o + ##itemtool## + Object itemtool.o + Object bag.o + Object unk_0206F1F0.o + Object unk_0206F3FC.o + Object unk_02072548.o + Object unk_02073710.o + Object unk_02073DA8.o + Object unk_0207550C.o + Object unk_020772F0.o + Object unk_020799E8.o + Object unk_02079C70.o + Object unk_0207C328.o + Object unk_0207D5BC.o + Object unk_0207EF6C.o + Object unk_0207F95C.o + Object unk_0207FC5C.o + Object unk_0207FD00.o + Object unk_02080C38.o + Object unk_020828BC.o + Object unk_020834D0.o + Object unk_02083B84.o + Object unk_02083D48.o + Object unk_02084098.o + Object unk_020842D0.o + Object use_item_on_mon.o + Object unk_020851B8.o + Object nutdata.o + Object unk_02085338.o + Object unk_020854E0.o + Object unk_020859C0.o + Object unk_02086084.o + Object unk_02086414.o + Object unk_02086FA8.o + Object unk_02087A1C.o + Object unk_02087A6C.o + Object unk_02087D00.o + Object unk_02088320.o + Object unk_02088814.o + Object unk_02088858.o + Object unk_0208890C.o + Object unk_0208898C.o + Object unk_02088AAC.o + Object unk_02088D1C.o + Object move_relearner.o + Object unk_02088F0C.o + Object unk_020893E0.o + Object unk_02089498.o + Object unk_02089960.o + Object save_data_read_error.o + Object save_data_write_error.o + Object unk_0208A258.o + Object unk_0208A300.o + Object unk_0208A338.o + Object error_message_reset.o + ### Third-party libraries ### + Object unk_0208AC14.o + Object custom_allocator.o + Object unk_020910EC.o + Object DWC_backup.o + Object DWC_bm_init.o + Object DWC_util_wifiidtool.o + Object DWC_init.o + Object DWC_account.o + Object SOC_socl_startup.o + Object SOC_socl_command.o + Object SOC_socl_create.o + Object SOC_socl_bind.o + Object SOC_socl_read.o + Object SOC_socl_shutdown.o + Object SOC_socl_close.o + Object SOC_socl_cleanup.o + Object SOC_socl_poll.o + Object SOC_socl_misc.o + Object SOC_socl_list.o + Object SOC_soc.o + Object SOC_socl_ssl.o + Object CPS_network.o + Object SSL_ssl.o + Object SSL_md5.o + Object SSL_sha1.o + Object SSL_rca4.o + Object SSL_biginteger.o + Object WCM_system.o + Object WCM_aplist.o + Object WCM_cpsif.o + Object WCM_util.o + Object WIFI_stubsmd5_dummy.o + Object libVCT.o + ### Nitro System SDK ### + Object NNS_FND_list.o + Object NNS_FND_heapcommon.o + Object NNS_FND_expheap_s.o + Object NNS_FND_expheap.o + Object NNS_FND_frameheap.o + Object NNS_FND_allocator.o + Object NNS_GFD_gfd_texvramman.o + Object NNS_GFD_gfd_plttvramman.o + Object NNS_GFD_gfd_frametexvra.o + Object NNS_GFD_gfd_frameplttvr.o + Object NNS_GFD_gfd_vramtransfe.o + Object NNS_GFD_gfdi_linkedlist.o + Object NNS_GFD_gfd_linkedlistt.o + Object NNS_GFD_gfd_linkedlistp.o + Object NNS_G2D_g2d_nan_load.o + Object NNS_G2D_g2d_nob_load.o + Object NNS_G2D_g2d_nmc_load.o + Object NNS_G2D_g2d_ncg_load.o + Object NNS_G2D_g2d_ncl_load.o + Object NNS_G2D_g2d_nsc_load.o + Object NNS_G2D_g2d_load.o + Object NNS_G2D_g2d_softsprite.o + Object NNS_G2D_g2d_animation.o + Object NNS_G2D_g2d_oam.o + Object NNS_G2D_g2d_palettetabl.o + Object NNS_G2D_g2d_image.o + Object NNS_G2D_g2d_srtcontrol.o + Object NNS_G2D_g2d_node.o + Object NNS_G2D_g2d_cellanimati.o + Object NNS_G2D_g2d_multicellan.o + Object NNS_G2D_g2d_renderer.o + Object NNS_G2D_g2di_mtx32.o + Object NNS_G2D_g2d_celltransfe.o + Object NNS_G2D_g2d_oamsoftware.o + Object NNS_G2D_g2d_renderercor.o + Object NNS_G2D_g2d_font.o + Object NNS_G2D_g2d_charcanvas.o + Object NNS_G2D_g2d_textcanvas.o + Object NNS_G2D_g2d_nft_load.o + Object NNS_G2D_g2di_bitreader.o + Object NNS_G2D_g2di_splitchar.o + Object NNS_G3D_kernel.o + Object NNS_G3D_glbstate.o + Object NNS_G3D_anm.o + Object NNS_G3D_cgtool.o + Object NNS_G3D_sbc.o + Object NNS_G3D_1mat1shp.o + Object NNS_G3D_gecom.o + Object NNS_G3D_util.o + Object NNS_G3D_mem.o + Object NNS_G3D_model.o + Object NNS_G3D_res_struct_acce.o + Object NNS_G3D_nsbca.o + Object NNS_G3D_nsbma.o + Object NNS_G3D_nsbta.o + Object NNS_G3D_nsbtp.o + Object NNS_G3D_nsbva.o + Object NNS_G3D_basic.o + Object NNS_G3D_maya.o + Object NNS_G3D_si3d.o + Object NNS_G3D_3dsmax.o + Object NNS_G3D_xsi.o + Object NNS_SND_main.o + Object NNS_SND_resource_mgr.o + Object NNS_SND_waveout.o + Object NNS_SND_player.o + Object NNS_SND_stream.o + Object NNS_SND_capture.o + Object NNS_SND_sndarc.o + Object NNS_SND_heap.o + Object NNS_SND_sndarc_loader.o + Object NNS_SND_sndarc_player.o + Object NNS_SND_sndarc_stream.o + Object NNS_SND_seqdata.o + Object NNS_SND_fader.o + ### Nitro SDK ### + Object FX_mtx22.o + Object FX_mtx33.o + Object FX_mtx43.o + Object FX_mtx44.o + Object FX_cp.o + Object FX_vec.o + Object FX_sincos.o + Object FX_atan.o + Object FX.o + Object GX.o + Object GX_state.o + Object GX_vramcnt.o + Object GX_bgcnt.o + Object GX_g2.o + Object GX_g3b.o + Object GX_g3imm.o + Object GX_g3x.o + Object GX_g3_util.o + Object GX_load2d.o + Object GX_load3d.o + Object GX_g3.o + Object GX_asm.o + Object OS_irqHandler.o (.text) + Object OS_irqTable.o + Object OS_interrupt.o + Object OS_spinLock.o + Object OS_printf.o + Object OS_thread.o + Object OS_context.o + Object OS_emulator.o + Object OS_message.o + Object OS_mutex.o + Object OS_cache.o + Object OS_init.o + Object OS_arena.o + Object OS_alloc.o + Object OS_tcm.o + Object OS_protectionUnit.o + Object OS_protectionRegion.o + Object OS_exception.o + Object OS_timer.o + Object OS_tick.o + Object OS_alarm.o + Object OS_valarm.o + Object OS_system.o + Object OS_reset.o + Object OS_ownerInfo.o + Object OS_vramExclusive.o + Object OS_entropy.o + Object OS_terminate_proc.o + Object MI_wram.o + Object MI_dma.o + Object MI_dma_hblank.o + Object MI_dma_gxcommand.o + Object MI_memory.o + Object MI_swap.o + Object MI_uncompress.o + Object MI_dma_card.o + Object MI_init.o + Object SND_interface.o + Object SND_main.o + Object SND_command.o + Object SND_alarm.o + Object SND_work.o + Object SND_util.o + Object SND_bank.o + Object PXI_init.o + Object PXI_fifo.o + Object FS_command.o + Object FS_command_default.o + Object FS_archive.o + Object FS_file.o + Object FS_rom.o + Object FS_overlay.o + Object DGT_hash1.o + Object DGT_hash2.o + Object DGT_sha1s_arm4cw.o + Object CP_context.o + Object SPI_tp.o + Object SPI_mic.o + Object SPI_pm.o + Object RTC_external.o + Object RTC_internal.o + Object RTC_convert.o + Object CARD_common.o + Object CARD_spi.o + Object CARD_backup.o + Object CARD_rom.o + Object CARD_request.o + Object CARD_pullOut.o + Object WM_system.o + Object WM_sync.o + Object WM_standard.o + Object WM_mp.o + Object WM_dcf.o + Object WM_ds.o + Object WM_ks.o + Object WM_etc.o + Object CTRDG_common.o + Object CTRDG_proc.o + Object CTRDG_backup.o + Object CTRDG_flash_common.o + Object CTRDG_flash_AT29LV512.o + Object CTRDG_flash_LE26FV10N1TS-10.o + Object CTRDG_flash_LE39FW512.o + Object CTRDG_flash_MX29L010.o + Object CTRDG_flash_MX29L512.o + Object CTRDG_task.o + Object MATH_pop.o + Object MATH_dgt.o + Object MATH_crc.o + Object STD_string.o + ### Standard libraries ### + ### Bundled with CodeWarrior, so probably compiled with 2.0sp1 ### + Object MSL_ARM_abort_exit.o + Object MSL_ARM_critical_regions_NITRO.o + Object MSL_ARM_math.o + Object MSL_Common_ansi_files.o + Object arith.o + Object MSL_Common_assert.o + Object MSL_Common_buffer_io.o + Object MSL_Common_ctype.o + Object MSL_Common_direct_io.o + Object MSL_Common_errno.o + Object MSL_Common_file_io.o + Object MSL_Common_file_pos.o + Object MSL_Common_float.o + Object MSL_Common_mbstring.o + Object MSL_Common_mem.o + Object MSL_Common_mem_funcs.o + Object MSL_Common_printf.o + Object MSL_Common_qsort.o + Object rand.o + Object MSL_Common_scanf.o + Object MSL_Common_signal.o + Object MSL_Common_string.o + Object MSL_Common_strtold.o + Object MSL_Common_strtoul.o + Object MSL_Common_wchar_io.o + Object MSL_Common_wctype.o + Object MSL_Common_wmem.o + Object MSL_Common_wprintf.o + Object MSL_Common_wstring.o + Object MSL_DPMath_e_pow.o + Object MSL_DPMath_s_copysign.o + Object MSL_DPMath_s_fabs.o + Object MSL_DPMath_s_frexp.o + Object MSL_DPMath_s_ldexp.o + Object MSL_DPMath_w_pow.o + Object MSL_fp_ansi.o + Object MSL_math.o + Object MSL_string_extras.o + Object RUNTIME_d_add.o + Object RUNTIME_d_dtof.o + Object RUNTIME_d_dtoi.o + Object RUNTIME_d_dtoull.o + Object RUNTIME_d_itod.o + Object RUNTIME_d_mul.o + Object RUNTIME_d_sqrt.o + Object RUNTIME_d_sub.o + Object RUNTIME_f_add.o + Object RUNTIME_f_cmp.o + Object RUNTIME_f_div.o + Object RUNTIME_f_ftod.o + Object RUNTIME_f_ftoi.o + Object RUNTIME_f_ftou.o + Object RUNTIME_f_itof.o + Object RUNTIME_f_mul.o + Object RUNTIME_f_sub.o + Object RUNTIME_ll_div.o + Object RUNTIME_ll_mul.o + Object RUNTIME_ll_sll.o + Object RUNTIME_s32_div_f.o + Object RUNTIME_u32_div_f.o + Object RUNTIME_d_div.o + Object RUNTIME_ieee_status.o + Object RUNTIME_ARM_semihosted_console_io.o + Object RUNTIME_CPLUS_StaticInitializers.o + Object RUNTIME_NITRO_eabi_init.o } Autoload ITCM { - Address 0x01FF8000 - Object OS_irqHandler.o (.itcm) - Object OS_reset.o (.itcm) - Object MI_dma.o (.itcm) - Object MI_dma_gxcommand.o (.itcm) + Address 0x01FF8000 + Object OS_irqHandler.o (.itcm) + Object OS_reset.o (.itcm) + Object MI_dma.o (.itcm) + Object MI_dma_gxcommand.o (.itcm) } Autoload DTCM { - Address 0x027E0000 - Object OS_irqHandler.o (.bss) - Object OS_irqTable.o (.dtcm) + Address 0x027E0000 + Object OS_irqHandler.o (.bss) + Object OS_irqTable.o (.dtcm) } Autoload EXT { - Address 0x02400000 + Address 0x02400000 } Overlay OVERLAY_00 { - After arm9 + After arm9 } Overlay OVERLAY_01 { - After arm9 - Object overlay_01.o + After arm9 + Object overlay_01.o } Overlay OVERLAY_02 { - After OVERLAY_01 + After OVERLAY_01 } Overlay OVERLAY_03 { - After ITCM + After ITCM } Overlay OVERLAY_04 { - After arm9 - Object ov04_021D74E0.o - Object ov04_021D868C.o - Object ov04_021D8D18.o - Object ov04_021D9C2C.o - Object ov04_021DA260.o - Object ov04_021DB730.o - Object ov04_021DC8A4.o - Object ov04_021DCCC8.o - Object ov04_021DD36C.o - Object ov04_0220C680_certs.o - Object ov04_021DD6B0.o - Object ov04_021DD82C.o - Object ov04_021DD984.o - Object ov04_021DDF40.o - Object ov04_021DE2D0.o - Object ov04_021DE89C.o - Object ov04_021DEB90.o - Object ov04_021E05FC.o - Object ov04_021E10F8.o - Object ov04_021E26D0.o - Object arm_04.o + After arm9 + Object ov04_021D74E0.o + Object ov04_021D868C.o + Object ov04_021D8D18.o + Object ov04_021D9C2C.o + Object ov04_021DA260.o + Object ov04_021DB730.o + Object ov04_021DC8A4.o + Object ov04_021DCCC8.o + Object ov04_021DD36C.o + Object ov04_0220C680_certs.o + Object ov04_021DD6B0.o + Object ov04_021DD82C.o + Object ov04_021DD984.o + Object ov04_021DDF40.o + Object ov04_021DE2D0.o + Object ov04_021DE89C.o + Object ov04_021DEB90.o + Object ov04_021E05FC.o + Object ov04_021E10F8.o + Object ov04_021E26D0.o + Object arm_04.o } Overlay OVERLAY_05 { - ##Overworld## - After arm9 - Object ov05_021D74E0.o - Object ov05_021D7F4C.o - Object ov05_021D80E8.o - Object ov05_021D9320.o - Object ov05_021D9A48.o - Object ov05_021DA5B8.o - Object ov05_021DB44C.o - Object ov05_021DB900.o - Object ov05_021DBA00.o - Object ov05_021DBABC.o - Object ov05_021DBD84.o - Object ov05_021DBE04.o - Object ov05_021DBEF4.o - Object ov05_021DC0B8.o - Object ov05_021E1374.o - Object ov05_021E1AD8.o - Object ov05_021E2B80.o - Object ov05_021E2E88.o - Object ov05_021E3340.o - Object ov05_021E3444.o - Object ov05_021E4AE4.o - Object ov05_021E52A8.o - Object ov05_021E5300.o - Object ov05_021E5564.o - Object ov05_021E55BC.o - Object ov05_021E577C.o - Object ov05_021E5918.o - Object ov05_021E5AB4.o - Object ov05_021E5C8C.o - Object ov05_021E5E10.o - Object ov05_021E5FD8.o - Object ov05_021E72FC.o - Object ov05_021E7504.o - Object ov05_021E779C.o - Object ov05_021E7C00.o - Object ov05_021E80F8.o - Object ov05_021E8310.o - Object ov05_021E8648.o - Object ov05_021E8860.o - Object ov05_021E88E8.o - Object ov05_021EC458.o - Object ov05_021ED9C0.o - Object ov05_021EDB70.o - Object ov05_021EDE34.o - Object ov05_021EFA9C.o - Object ov05_021EFBF8.o - Object ov05_021F0318.o - Object ov05_021F0514.o - Object ov05_021F1B0C.o - Object ov05_021F1CB8.o - Object ov05_021F1F04.o - Object ov05_021F3780.o - Object ov05_021F3854.o - Object ov05_021F38CC.o - Object ov05_021F3BC0.o - Object ov05_021F3C98.o - Object ov05_021F3FE0.o - Object ov05_021F445C.o - Object ov05_021F45B4.o - Object ov05_021F46C8.o - Object ov05_021F4968.o - Object ov05_021F4CF8.o - Object ov05_021F5268.o - Object ov05_021F5518.o - Object ov05_021F5990.o - Object ov05_021F5B9C.o - Object ov05_021F5C44.o - Object ov05_021F61DC.o - Object ov05_021F61F4.o - Object ov05_021F6360.o + ##Overworld## + After arm9 + Object ov05_021D74E0.o + Object ov05_021D7F4C.o + Object ov05_021D80E8.o + Object ov05_021D9320.o + Object ov05_021D9A48.o + Object ov05_021DA5B8.o + Object ov05_021DB44C.o + Object ov05_021DB900.o + Object ov05_021DBA00.o + Object ov05_021DBABC.o + Object ov05_021DBD84.o + Object ov05_021DBE04.o + Object ov05_021DBEF4.o + Object ov05_021DC0B8.o + Object ov05_021E1374.o + Object ov05_021E1AD8.o + Object ov05_021E2B80.o + Object ov05_021E2E88.o + Object ov05_021E3340.o + Object ov05_021E3444.o + Object ov05_021E4AE4.o + Object ov05_021E52A8.o + Object ov05_021E5300.o + Object ov05_021E5564.o + Object ov05_021E55BC.o + Object ov05_021E577C.o + Object ov05_021E5918.o + Object ov05_021E5AB4.o + Object ov05_021E5C8C.o + Object ov05_021E5E10.o + Object ov05_021E5FD8.o + Object ov05_021E72FC.o + Object ov05_021E7504.o + Object ov05_021E779C.o + Object ov05_021E7C00.o + Object ov05_021E80F8.o + Object ov05_021E8310.o + Object ov05_021E8648.o + Object ov05_021E8860.o + Object ov05_021E88E8.o + Object ov05_021EC458.o + Object ov05_021ED9C0.o + Object ov05_021EDB70.o + Object ov05_021EDE34.o + Object ov05_021EFA9C.o + Object ov05_021EFBF8.o + Object ov05_021F0318.o + Object ov05_021F0514.o + Object ov05_021F1B0C.o + Object ov05_021F1CB8.o + Object ov05_021F1F04.o + Object ov05_021F3780.o + Object ov05_021F3854.o + Object ov05_021F38CC.o + Object ov05_021F3BC0.o + Object ov05_021F3C98.o + Object ov05_021F3FE0.o + Object ov05_021F445C.o + Object ov05_021F45B4.o + Object ov05_021F46C8.o + Object ov05_021F4968.o + Object ov05_021F4CF8.o + Object ov05_021F5268.o + Object ov05_021F5518.o + Object ov05_021F5990.o + Object ov05_021F5B9C.o + Object ov05_021F5C44.o + Object ov05_021F61DC.o + Object ov05_021F61F4.o + Object ov05_021F6360.o } Overlay OVERLAY_06 { - ##Overworld## - After OVERLAY_05 - Object overlay_06.o + ##Overworld## + After OVERLAY_05 + Object overlay_06.o } Overlay OVERLAY_07 { - After OVERLAY_04 - Object overlay_07.o + After OVERLAY_04 + Object overlay_07.o } Overlay OVERLAY_08 { - After OVERLAY_04 - Object overlay_08.o + After OVERLAY_04 + Object overlay_08.o } Overlay OVERLAY_09 { - After OVERLAY_04 - Object overlay_09.o + After OVERLAY_04 + Object overlay_09.o } Overlay OVERLAY_10 { - After arm9 + After arm9 } Overlay OVERLAY_11 { - ##Battles## - After OVERLAY_08 - Object ov11_0222D5C0_1.o - Object ov11_0222D5C0_2.o - Object ov11_0222D5C0_3.o - Object ov11_0222FF68.o - Object ov11_02232264.o - Object ov11_0223D1DC.o - Object ov11_02242B78.o - Object ov11_0224CA64.o - Object ov11_0224D550.o - Object ov11_0225464C.o - Object ov11_02254710.o - Object ov11_02256C08.o - Object ov11_02258238.o - Object ov11_02258428.o - Object ov11_0225C91C.o - Object ov11_0225D3EC.o - Object ov11_0225D6A4.o + ##Battles## + After OVERLAY_08 + Object ov11_0222D5C0_1.o + Object ov11_0222D5C0_2.o + Object ov11_0222D5C0_3.o + Object ov11_0222FF68.o + Object ov11_02232264.o + Object ov11_0223D1DC.o + Object ov11_02242B78.o + Object ov11_0224CA64.o + Object ov11_0224D550.o + Object ov11_0225464C.o + Object ov11_02254710.o + Object ov11_02256C08.o + Object ov11_02258238.o + Object ov11_02258428.o + Object ov11_0225C91C.o + Object ov11_0225D3EC.o + Object ov11_0225D6A4.o } Overlay OVERLAY_12 { - After OVERLAY_08 - Object overlay_12.o + After OVERLAY_08 + Object overlay_12.o } Overlay OVERLAY_13 { - After OVERLAY_04 - Object overlay_13_init.o - Object overlay_13_arm1.o - Object overlay_13_thumb.o - Object overlay_13_arm2.o + After OVERLAY_04 + Object overlay_13_init.o + Object overlay_13_arm1.o + Object overlay_13_thumb.o + Object overlay_13_arm2.o } Overlay OVERLAY_14 { - ##PC## - After arm9 - Object overlay_14.o + ##PC## + After arm9 + Object overlay_14.o } Overlay OVERLAY_15 { - After arm9 - Object overlay_15.o + After arm9 + Object overlay_15.o } Overlay OVERLAY_16 { - ##Pokedex/Battle Sprites## - After arm9 - Object overlay_16.o + ##Pokedex/Battle Sprites## + After arm9 + Object overlay_16.o } Overlay OVERLAY_17 { - After arm9 - Object overlay_17.o + After arm9 + Object overlay_17.o } Overlay OVERLAY_18 { - After OVERLAY_05 - Object overlay_18.o + After OVERLAY_05 + Object overlay_18.o } Overlay OVERLAY_19 { - ##Bottom screen before Pokétch## - After OVERLAY_06 - Object overlay_19.o + ##Bottom screen before Pokétch## + After OVERLAY_06 + Object overlay_19.o } Overlay OVERLAY_20 { - ##Pokétch## - After OVERLAY_06 - Object ov20_02252440.o - Object ov20_02252C5C.o - Object ov20_022536F4.o - Object ov20_02253BA4.o - Object ov20_02254130.o - Object ov20_02254420.o + ##Pokétch## + After OVERLAY_06 + Object ov20_02252440.o + Object ov20_02252C5C.o + Object ov20_022536F4.o + Object ov20_02253BA4.o + Object ov20_02254130.o + Object ov20_02254420.o } Overlay OVERLAY_21 { - ##Pokétch Clock## - After OVERLAY_20 - Object ov21_02254854.o - Object ov21_02254A6C.o + ##Pokétch Clock## + After OVERLAY_20 + Object ov21_02254854.o + Object ov21_02254A6C.o } Overlay OVERLAY_22 { - After OVERLAY_20 - Object overlay_22_sinit.o - Object overlay_22.o + After OVERLAY_20 + Object overlay_22_sinit.o + Object overlay_22.o } Overlay OVERLAY_23 { - ##Pokétch Calculator## - After OVERLAY_20 - Object overlay_23_sinit.o - Object overlay_23.o + ##Pokétch Calculator## + After OVERLAY_20 + Object overlay_23_sinit.o + Object overlay_23.o } Overlay OVERLAY_24 { - ##Memo Pad## - After OVERLAY_20 - Object overlay_24_sinit.o - Object overlay_24.o + ##Memo Pad## + After OVERLAY_20 + Object overlay_24_sinit.o + Object overlay_24.o } Overlay OVERLAY_25 { - ##Analogue Watch## - After OVERLAY_20 - Object overlay_25_sinit.o - Object overlay_25.o + ##Analogue Watch## + After OVERLAY_20 + Object overlay_25_sinit.o + Object overlay_25.o } Overlay OVERLAY_26 { - ##Dot Artist## - After OVERLAY_20 - Object overlay_26_sinit.o - Object ov26_02254854.o - Object ov26_02254BD4.o + ##Dot Artist## + After OVERLAY_20 + Object overlay_26_sinit.o + Object ov26_02254854.o + Object ov26_02254BD4.o } Overlay OVERLAY_27 { - ##Pokétch Party## - After OVERLAY_20 - Object overlay_27_sinit.o - Object overlay_27.o + ##Pokétch Party## + After OVERLAY_20 + Object overlay_27_sinit.o + Object overlay_27.o } Overlay OVERLAY_28 { - ##Friendship Checker## - After OVERLAY_20 - Object overlay_28_sinit.o - Object overlay_28.o + ##Friendship Checker## + After OVERLAY_20 + Object overlay_28_sinit.o + Object overlay_28.o } Overlay OVERLAY_29 { - ##Dowsing Machine## - After OVERLAY_20 - Object overlay_29_sinit.o - Object overlay_29.o + ##Dowsing Machine## + After OVERLAY_20 + Object overlay_29_sinit.o + Object overlay_29.o } Overlay OVERLAY_30 { - After OVERLAY_20 - Object overlay_30_sinit.o - Object overlay_30.o + After OVERLAY_20 + Object overlay_30_sinit.o + Object overlay_30.o } Overlay OVERLAY_31 { - ##Pokétch Counter## - After OVERLAY_20 - Object overlay_31_sinit.o - Object overlay_31.o + ##Pokétch Counter## + After OVERLAY_20 + Object overlay_31_sinit.o + Object overlay_31.o } Overlay OVERLAY_32 { - After OVERLAY_20 - Object overlay_32_sinit.o - Object overlay_32.o + After OVERLAY_20 + Object overlay_32_sinit.o + Object overlay_32.o } Overlay OVERLAY_33 { - After OVERLAY_20 - Object overlay_33_sinit.o - Object ov33_02254854.o - Object ov33_022549AC.o + After OVERLAY_20 + Object overlay_33_sinit.o + Object ov33_02254854.o + Object ov33_022549AC.o } Overlay OVERLAY_34 { - After OVERLAY_20 - Object overlay_34_sinit.o - Object overlay_34.o + After OVERLAY_20 + Object overlay_34_sinit.o + Object overlay_34.o } Overlay OVERLAY_35 { - ##Daycare Checker## - After OVERLAY_20 - Object overlay_35_sinit.o - Object overlay_35.o + ##Daycare Checker## + After OVERLAY_20 + Object overlay_35_sinit.o + Object overlay_35.o } Overlay OVERLAY_36 { - After OVERLAY_20 - Object overlay_36_sinit.o - Object overlay_36.o + After OVERLAY_20 + Object overlay_36_sinit.o + Object overlay_36.o } Overlay OVERLAY_37 { - ##Coin Toss## - After OVERLAY_20 - Object overlay_37_sinit.o - Object overlay_37.o + ##Coin Toss## + After OVERLAY_20 + Object overlay_37_sinit.o + Object overlay_37.o } Overlay OVERLAY_38 { - ##Move Checker## - After OVERLAY_20 - Object overlay_38_sinit.o - Object overlay_38.o + ##Move Checker## + After OVERLAY_20 + Object overlay_38_sinit.o + Object overlay_38.o } Overlay OVERLAY_39 { - After OVERLAY_20 - Object overlay_39_sinit.o - Object overlay_39.o + After OVERLAY_20 + Object overlay_39_sinit.o + Object overlay_39.o } Overlay OVERLAY_40 { - After OVERLAY_20 - Object overlay_40_sinit.o - Object overlay_40.o + After OVERLAY_20 + Object overlay_40_sinit.o + Object overlay_40.o } Overlay OVERLAY_41 { - After OVERLAY_20 - Object overlay_41_sinit.o - Object overlay_41.o + After OVERLAY_20 + Object overlay_41_sinit.o + Object overlay_41.o } Overlay OVERLAY_42 { - ##Marking Map## - After OVERLAY_20 - Object overlay_42_sinit.o - Object overlay_42.o + ##Marking Map## + After OVERLAY_20 + Object overlay_42_sinit.o + Object overlay_42.o } Overlay OVERLAY_43 { - ##Berry Searcher## - After OVERLAY_20 - Object overlay_43_sinit.o - Object overlay_43.o + ##Berry Searcher## + After OVERLAY_20 + Object overlay_43_sinit.o + Object overlay_43.o } Overlay OVERLAY_44 { - After OVERLAY_20 - Object overlay_44_sinit.o - Object ov44_02254854.o - Object ov44_02254A54.o + After OVERLAY_20 + Object overlay_44_sinit.o + Object ov44_02254854.o + Object ov44_02254A54.o } Overlay OVERLAY_45 { - After OVERLAY_20 - Object overlay_45_sinit.o - Object overlay_45.o + After OVERLAY_20 + Object overlay_45_sinit.o + Object overlay_45.o } Overlay OVERLAY_46 { - After OVERLAY_20 - Object overlay_46_sinit.o - Object ov46_02254854.o - Object ov46_022549AC.o + After OVERLAY_20 + Object overlay_46_sinit.o + Object ov46_02254854.o + Object ov46_022549AC.o } Overlay OVERLAY_47 { - ##Link Searcher## - After OVERLAY_20 - Object overlay_47_sinit.o - Object overlay_47.o + ##Link Searcher## + After OVERLAY_20 + Object overlay_47_sinit.o + Object overlay_47.o } Overlay OVERLAY_48 { - After OVERLAY_20 - Object overlay_48_sinit.o - Object overlay_48.o + After OVERLAY_20 + Object overlay_48_sinit.o + Object overlay_48.o } Overlay OVERLAY_49 { - ##Pokemon History## - After OVERLAY_20 - Object overlay_49_sinit.o - Object overlay_49.o + ##Pokemon History## + After OVERLAY_20 + Object overlay_49_sinit.o + Object overlay_49.o } Overlay OVERLAY_50 { - After OVERLAY_20 - Object overlay_50_sinit.o - Object ov50_02254854.o - Object ov50_022549AC.o + After OVERLAY_20 + Object overlay_50_sinit.o + Object ov50_02254854.o + Object ov50_022549AC.o } Overlay OVERLAY_51 { - After OVERLAY_20 - Object overlay_51.o + After OVERLAY_20 + Object overlay_51.o } Overlay OVERLAY_52 { - ##Some kind of transition overlay for intro## - After arm9 - Object overlay_52.o + ##Some kind of transition overlay for intro## + After arm9 + Object overlay_52.o } Overlay OVERLAY_53 { - After arm9 - Object overlay_53.o + After arm9 + Object overlay_53.o } Overlay OVERLAY_54 { - After arm9 - Object overlay_54.o + After arm9 + Object overlay_54.o } Overlay OVERLAY_55 { - After arm9 - Object overlay_55.o + After arm9 + Object overlay_55.o } Overlay OVERLAY_56 { - After OVERLAY_04 - Object overlay_56.o + After OVERLAY_04 + Object overlay_56.o } Overlay OVERLAY_57 { - ##Trainer card## - After arm9 - Object overlay_57.o + ##Trainer card## + After arm9 + Object overlay_57.o } Overlay OVERLAY_58 { - After OVERLAY_57 - Object overlay_58.o + After OVERLAY_57 + Object overlay_58.o } Overlay OVERLAY_59 { - ##Rowan's intro + TV intro## - After arm9 - Object ov59_Intro.o - Object ov59_TV.o + ##Rowan's intro + TV intro## + After arm9 + Object ov59_Intro.o + Object ov59_TV.o } Overlay OVERLAY_60 { - ##Options## - After arm9 - Object overlay_60.o + ##Options## + After arm9 + Object overlay_60.o } Overlay OVERLAY_61 { - After arm9 - Object overlay_61.o + After arm9 + Object overlay_61.o } Overlay OVERLAY_62 { - After OVERLAY_08 - Object overlay_62_sinit.o - Object overlay_62.o + After OVERLAY_08 + Object overlay_62_sinit.o + Object overlay_62.o } Overlay OVERLAY_63 { - ### Title Demo ### - After arm9 - Object ov63_021D74E0.o - Object ov63_021D8890.o - Object ov63_021DA640.o - Object ov63_021DAE5C.o - Object ov63_021DB450.o + ### Title Demo ### + After arm9 + Object ov63_021D74E0.o + Object ov63_021D8890.o + Object ov63_021DA640.o + Object ov63_021DAE5C.o + Object ov63_021DB450.o } Overlay OVERLAY_64 { - ##Pokemon Selection## - After arm9 - Object overlay_64.o + ##Pokemon Selection## + After arm9 + Object overlay_64.o } Overlay OVERLAY_65 { - After arm9 - Object overlay_65.o + After arm9 + Object overlay_65.o } Overlay OVERLAY_66 { - ##Fly Map## - After arm9 - Object overlay_66.o + ##Fly Map## + After arm9 + Object overlay_66.o } Overlay OVERLAY_67 { - After arm9 - Object overlay_67.o + After arm9 + Object overlay_67.o } Overlay OVERLAY_68 { - After arm9 - Object overlay_68.o + After arm9 + Object overlay_68.o } Overlay OVERLAY_69 { - ##Hall of Fame## - After OVERLAY_08 - Object overlay_69.o + ##Hall of Fame## + After OVERLAY_08 + Object overlay_69.o } Overlay OVERLAY_70 { - After arm9 - Object overlay_70.o + After arm9 + Object overlay_70.o } Overlay OVERLAY_71 { - After OVERLAY_08 - Object overlay_71.o + After OVERLAY_08 + Object overlay_71.o } Overlay OVERLAY_72 { - After arm9 + After arm9 } Overlay OVERLAY_73 { - After arm9 - Object overlay_73.o + After arm9 + Object overlay_73.o } Overlay OVERLAY_74 { - After arm9 - Object overlay_74.o + After arm9 + Object overlay_74.o } Overlay OVERLAY_75 { - ### Player's bag ### - After OVERLAY_14 - Object overlay_75.o + ### Player's bag ### + After OVERLAY_14 + Object overlay_75.o } Overlay OVERLAY_76 { - After arm9 - Object overlay_76.o + After arm9 + Object overlay_76.o } Overlay OVERLAY_77 { - After arm9 - Object overlay_77.o + After arm9 + Object overlay_77.o } Overlay OVERLAY_78 { - After arm9 - Object overlay_78.o + After arm9 + Object overlay_78.o } Overlay OVERLAY_79 { - After OVERLAY_04 - Object overlay_79_thumb.o - Object overlay_79_arm.o + After OVERLAY_04 + Object overlay_79_thumb.o + Object overlay_79_arm.o } Overlay OVERLAY_80 { - After OVERLAY_08 - Object overlay_80.o + After OVERLAY_08 + Object overlay_80.o } Overlay OVERLAY_81 { - After OVERLAY_80 - Object overlay_81.o + After OVERLAY_80 + Object overlay_81.o } Overlay OVERLAY_82 { - After OVERLAY_08 - Object overlay_82.o + After OVERLAY_08 + Object overlay_82.o } Overlay OVERLAY_83 { - ##Load Screen## - After OVERLAY_08 - Object overlay_83.o + ##Load Screen## + After OVERLAY_08 + Object overlay_83.o } Overlay OVERLAY_84 { - ##Credits## - After arm9 - Object overlay_84_thumb1.o - Object overlay_84_arm.o - Object overlay_84_thumb2.o + ##Credits## + After arm9 + Object overlay_84_thumb1.o + Object overlay_84_arm.o + Object overlay_84_thumb2.o } Overlay OVERLAY_85 { - After arm9 - Object overlay_85.o + After arm9 + Object overlay_85.o } Overlay OVERLAY_86 { - After arm9 - Object overlay_86.o + After arm9 + Object overlay_86.o } diff --git a/arm9/asm/map_object_s.s b/arm9/asm/map_object_s.s new file mode 100644 index 000000000..d24b50ca6 --- /dev/null +++ b/arm9/asm/map_object_s.s @@ -0,0 +1,2319 @@ + .include "asm/macros.inc" + .include "global.inc" + + .extern UNK_020F6364 + .extern sub_02057EE0 + .extern sub_02057F18 + .extern sub_0205815C + .extern sub_0205818C + + .text + + thumb_func_start sub_020581B4 +sub_020581B4: ; 0x020581B4 + push {r4, lr} + add r4, r0, #0x0 + bl MapObject_GetManager + bl sub_020587E0 + cmp r0, #0x0 + beq _020581F6 + add r0, r4, #0x0 + bl sub_0205818C + add r0, r4, #0x0 + mov r1, #0x0 + bl sub_02058544 + add r0, r4, #0x0 + mov r1, #0x0 + bl ov05_021F2E0C + add r0, r4, #0x0 + bl MapObject_CheckFlag14 + cmp r0, #0x0 + bne _020581F6 + add r0, r4, #0x0 + bl sub_02057F18 + add r0, r4, #0x0 + bl sub_0205868C + add r0, r4, #0x0 + bl sub_02058878 +_020581F6: + pop {r4, pc} + + thumb_func_start MapObject_ScriptIdIsFFFF +MapObject_ScriptIdIsFFFF: ; 0x020581F8 + push {r3, lr} + bl MapObject_GetScript + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + ldr r0, _02058210 ; =0x0000FFFF + cmp r1, r0 + bne _0205820C + mov r0, #0x1 + pop {r3, pc} +_0205820C: + mov r0, #0x0 + pop {r3, pc} + .balign 4 +_02058210: .word 0x0000FFFF + + thumb_func_start sub_02058214 +sub_02058214: ; 0x02058214 + push {r4-r6, lr} + add r5, r0, #0x0 + add r4, r1, #0x0 + add r6, r2, #0x0 + bl MapObject_CheckFlag25 + cmp r0, #0x1 + beq _02058228 + bl GF_AssertFail +_02058228: + add r0, r5, #0x0 + mov r1, #0x0 + bl MapObject_SetFlag25 + add r0, r5, #0x0 + add r1, r6, #0x0 + bl sub_0205844C + add r0, r4, #0x0 + bl ObjectEvent_GetScript + add r1, r0, #0x0 + add r0, r5, #0x0 + bl MapObject_SetScript + add r0, r4, #0x0 + bl ObjectEvent_GetFlagID + add r1, r0, #0x0 + add r0, r5, #0x0 + bl MapObject_SetFlagID + pop {r4-r6, pc} + .balign 4 + + thumb_func_start sub_02058258 +sub_02058258: ; 0x02058258 + push {r4-r6, lr} + add r6, r2, #0x0 + add r5, r0, #0x0 + add r0, r6, #0x0 + add r4, r1, #0x0 + bl ObjectEvent_ScriptIDIsUnset + cmp r0, #0x1 + beq _0205826E + bl GF_AssertFail +_0205826E: + add r0, r5, #0x0 + mov r1, #0x1 + bl MapObject_SetFlag25 + add r0, r6, #0x0 + bl ObjectEvent_GetScript + add r1, r0, #0x0 + add r0, r5, #0x0 + bl MapObject_SetScript + add r0, r6, #0x0 + bl ObjectEvent_GetFlagID_AssertScriptIDIsUnset + add r1, r0, #0x0 + add r0, r5, #0x0 + bl MapObject_SetFlagID + add r0, r5, #0x0 + add r1, r4, #0x0 + bl sub_0205844C + pop {r4-r6, pc} + + thumb_func_start sub_0205829C +sub_0205829C: ; 0x0205829C + push {r4, lr} + add r4, r1, #0x0 + bl sub_02058744 + add r0, r0, r4 + pop {r4, pc} + + thumb_func_start sub_020582A8 +sub_020582A8: ; 0x020582A8 + push {r4-r6, lr} + add r6, r1, #0x0 + mov r1, #0x1 + add r5, r0, #0x0 + add r4, r2, #0x0 + bl MapObject_TestFlagsBits + cmp r0, #0x0 + bne _020582BE + mov r0, #0x0 + pop {r4-r6, pc} +_020582BE: + add r0, r5, #0x0 + bl MapObject_GetID + cmp r6, r0 + beq _020582CC + mov r0, #0x0 + pop {r4-r6, pc} +_020582CC: + add r0, r5, #0x0 + bl sub_02058450 + cmp r4, r0 + beq _020582F2 + add r0, r5, #0x0 + bl MapObject_CheckFlag25 + cmp r0, #0x0 + bne _020582E4 + mov r0, #0x0 + pop {r4-r6, pc} +_020582E4: + add r0, r5, #0x0 + bl sub_02058750 + cmp r4, r0 + beq _020582F2 + mov r0, #0x0 + pop {r4-r6, pc} +_020582F2: + mov r0, #0x1 + pop {r4-r6, pc} + .balign 4 + + thumb_func_start sub_020582F8 +sub_020582F8: ; 0x020582F8 + push {r3-r7, lr} + add r4, r1, #0x0 + mov r1, #0x1 + add r5, r0, #0x0 + add r6, r2, #0x0 + add r7, r3, #0x0 + bl MapObject_TestFlagsBits + cmp r0, #0x0 + bne _02058310 + mov r0, #0x0 + pop {r3-r7, pc} +_02058310: + add r0, r5, #0x0 + bl sub_0205845C + cmp r0, r4 + beq _0205831E + mov r0, #0x0 + pop {r3-r7, pc} +_0205831E: + add r0, r5, #0x0 + add r1, r6, #0x0 + add r2, r7, #0x0 + bl sub_020582A8 + pop {r3-r7, pc} + .balign 4 + + thumb_func_start sub_0205832C +sub_0205832C: ; 0x0205832C + push {r4, lr} + add r4, r1, #0x0 + add r0, r4, #0x0 + bl sub_02058EF8 + add r0, r4, #0x0 + bl MapObject_IsInUse + cmp r0, #0x0 + beq _02058346 + add r0, r4, #0x0 + bl sub_02058348 +_02058346: + pop {r4, pc} + + thumb_func_start sub_02058348 +sub_02058348: ; 0x02058348 + push {r4, lr} + add r4, r0, #0x0 + bl MapObject_GetManager + bl sub_020587E0 + cmp r0, #0x1 + bne _0205835E + add r0, r4, #0x0 + bl ov05_021F1D8C +_0205835E: + pop {r4, pc} + + thumb_func_start MapObjectManager_Get +MapObjectManager_Get: ; 0x02058360 + bx lr + .balign 4 + + thumb_func_start MapObjectManager_SetObjectCount +MapObjectManager_SetObjectCount: ; 0x02058364 + str r1, [r0, #0x4] + bx lr + + thumb_func_start MapObjectManager_GetObjectCount +MapObjectManager_GetObjectCount: ; 0x02058368 + ldr r0, [r0, #0x4] + bx lr + + thumb_func_start sub_0205836C +sub_0205836C: ; 0x0205836C + ldr r1, [r0, #0x8] + add r1, r1, #0x1 + str r1, [r0, #0x8] + bx lr + + thumb_func_start sub_02058374 +sub_02058374: ; 0x02058374 + ldr r1, [r0, #0x8] + sub r1, r1, #0x1 + str r1, [r0, #0x8] + bx lr + + thumb_func_start sub_0205837C +sub_0205837C: ; 0x0205837C + ldr r2, [r0, #0x0] + orr r1, r2 + str r1, [r0, #0x0] + bx lr + + thumb_func_start sub_02058384 +sub_02058384: ; 0x02058384 + ldr r2, [r0, #0x0] + mvn r1, r1 + and r1, r2 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058390 +sub_02058390: ; 0x02058390 + ldr r0, [r0, #0x0] + and r0, r1 + bx lr + .balign 4 + + thumb_func_start MapObjectManager_SetPriority +MapObjectManager_SetPriority: ; 0x02058398 + str r1, [r0, #0xc] + bx lr + + thumb_func_start MapObjectManager_GetPriority +MapObjectManager_GetPriority: ; 0x0205839C + ldr r0, [r0, #0xc] + bx lr + + thumb_func_start sub_020583A0 +sub_020583A0: ; 0x020583A0 + add r0, #0x18 + bx lr + + thumb_func_start sub_020583A4 +sub_020583A4: ; 0x020583A4 + mov r2, #0x12 + lsl r2, r2, #0x4 + str r1, [r0, r2] + bx lr + + thumb_func_start sub_020583AC +sub_020583AC: ; 0x020583AC + mov r1, #0x12 + lsl r1, r1, #0x4 + ldr r0, [r0, r1] + bx lr + + thumb_func_start MapObjectManager_SetObjects +MapObjectManager_SetObjects: ; 0x020583B4 + mov r2, #0x49 + lsl r2, r2, #0x2 + str r1, [r0, r2] + bx lr + + thumb_func_start sub_020583BC +sub_020583BC: ; 0x020583BC + mov r1, #0x49 + lsl r1, r1, #0x2 + ldr r0, [r0, r1] + bx lr + + thumb_func_start MapObjectManager_GetConstObjects +MapObjectManager_GetConstObjects: ; 0x020583C4 + mov r1, #0x49 + lsl r1, r1, #0x2 + ldr r0, [r0, r1] + bx lr + + thumb_func_start MapObjectManager_GetObjects +MapObjectManager_GetObjects: ; 0x020583CC + mov r1, #0x49 + lsl r1, r1, #0x2 + ldr r0, [r0, r1] + bx lr + + thumb_func_start sub_020583D4 +sub_020583D4: ; 0x020583D4 + mov r1, #0x4a + ldr r2, [r0, #0x0] + lsl r1, r1, #0x2 + add r1, r2, r1 + str r1, [r0, #0x0] + bx lr + + thumb_func_start MapObjectManager_SetFieldSystemPtr +MapObjectManager_SetFieldSystemPtr: ; 0x020583E0 + mov r2, #0x4a + lsl r2, r2, #0x2 + str r1, [r0, r2] + bx lr + + thumb_func_start MapObjectManager_GetFieldSystemPtr +MapObjectManager_GetFieldSystemPtr: ; 0x020583E8 + mov r1, #0x4a + lsl r1, r1, #0x2 + ldr r0, [r0, r1] + bx lr + + thumb_func_start sub_020583F0 +sub_020583F0: ; 0x020583F0 + str r1, [r0, #0x14] + bx lr + + thumb_func_start sub_020583F4 +sub_020583F4: ; 0x020583F4 + push {r4, lr} + add r4, r0, #0x0 + ldr r0, [r4, #0x14] + cmp r0, #0x0 + bne _02058402 + bl GF_AssertFail +_02058402: + ldr r0, [r4, #0x14] + pop {r4, pc} + .balign 4 + + thumb_func_start MapObject_SetFlagsWord +MapObject_SetFlagsWord: ; 0x02058408 + str r1, [r0, #0x0] + bx lr + + thumb_func_start MapObject_GetFlagsWord +MapObject_GetFlagsWord: ; 0x0205840C + ldr r0, [r0, #0x0] + bx lr + + thumb_func_start MapObject_SetFlagsBits +MapObject_SetFlagsBits: ; 0x02058410 + ldr r2, [r0, #0x0] + orr r1, r2 + str r1, [r0, #0x0] + bx lr + + thumb_func_start MapObject_ClearFlagsBits +MapObject_ClearFlagsBits: ; 0x02058418 + ldr r2, [r0, #0x0] + mvn r1, r1 + and r1, r2 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start MapObject_GetFlagsBits +MapObject_GetFlagsBits: ; 0x02058424 + ldr r0, [r0, #0x0] + and r0, r1 + bx lr + .balign 4 + + thumb_func_start MapObject_TestFlagsBits +MapObject_TestFlagsBits: ; 0x0205842C + ldr r0, [r0, #0x0] + tst r0, r1 + beq _02058436 + mov r0, #0x1 + bx lr +_02058436: + mov r0, #0x0 + bx lr + .balign 4 + + thumb_func_start MapObject_SetFlags2Word +MapObject_SetFlags2Word: ; 0x0205843C + str r1, [r0, #0x4] + bx lr + + thumb_func_start MapObject_GetFlags2Word +MapObject_GetFlags2Word: ; 0x02058440 + ldr r0, [r0, #0x4] + bx lr + + thumb_func_start MapObject_SetID +MapObject_SetID: ; 0x02058444 + str r1, [r0, #0x8] + bx lr + + thumb_func_start MapObject_GetID +MapObject_GetID: ; 0x02058448 + ldr r0, [r0, #0x8] + bx lr + + thumb_func_start sub_0205844C +sub_0205844C: ; 0x0205844C + str r1, [r0, #0xc] + bx lr + + thumb_func_start sub_02058450 +sub_02058450: ; 0x02058450 + ldr r0, [r0, #0xc] + bx lr + + thumb_func_start MapObject_SetSpriteID +MapObject_SetSpriteID: ; 0x02058454 + str r1, [r0, #0x10] + bx lr + + thumb_func_start MapObject_GetSpriteID +MapObject_GetSpriteID: ; 0x02058458 + ldr r0, [r0, #0x10] + bx lr + + thumb_func_start sub_0205845C +sub_0205845C: ; 0x0205845C + push {r3-r5, lr} + add r5, r0, #0x0 + bl MapObject_GetSpriteID + add r4, r0, #0x0 + bl sub_0205C334 + cmp r0, #0x1 + bne _02058476 + add r0, r5, #0x0 + bl sub_0205C340 + add r4, r0, #0x0 +_02058476: + add r0, r4, #0x0 + pop {r3-r5, pc} + .balign 4 + + thumb_func_start MapObject_SetMovement +MapObject_SetMovement: ; 0x0205847C + str r1, [r0, #0x14] + bx lr + + thumb_func_start MapObject_GetMovement +MapObject_GetMovement: ; 0x02058480 + ldr r0, [r0, #0x14] + bx lr + + thumb_func_start MapObject_SetType +MapObject_SetType: ; 0x02058484 + str r1, [r0, #0x18] + bx lr + + thumb_func_start MapObject_GetType +MapObject_GetType: ; 0x02058488 + ldr r0, [r0, #0x18] + bx lr + + thumb_func_start MapObject_SetFlagID +MapObject_SetFlagID: ; 0x0205848C + str r1, [r0, #0x1c] + bx lr + + thumb_func_start MapObject_GetFlagID +MapObject_GetFlagID: ; 0x02058490 + ldr r0, [r0, #0x1c] + bx lr + + thumb_func_start MapObject_SetScript +MapObject_SetScript: ; 0x02058494 + str r1, [r0, #0x20] + bx lr + + thumb_func_start MapObject_GetScript +MapObject_GetScript: ; 0x02058498 + ldr r0, [r0, #0x20] + bx lr + + thumb_func_start MapObject_SetInitialFacingDirection +MapObject_SetInitialFacingDirection: ; 0x0205849C + str r1, [r0, #0x24] + bx lr + + thumb_func_start MapObject_GetInitialFacingDirection +MapObject_GetInitialFacingDirection: ; 0x020584A0 + ldr r0, [r0, #0x24] + bx lr + + thumb_func_start MapObject_SetFacingDirectionDirect +MapObject_SetFacingDirectionDirect: ; 0x020584A4 + ldr r2, [r0, #0x28] + str r2, [r0, #0x30] + str r1, [r0, #0x28] + bx lr + + thumb_func_start sub_020584AC +sub_020584AC: ; 0x020584AC + push {r3-r5, lr} + add r4, r1, #0x0 + mov r1, #0x80 + add r5, r0, #0x0 + bl MapObject_GetFlagsBits + cmp r0, #0x0 + bne _020584C2 + ldr r0, [r5, #0x28] + str r0, [r5, #0x30] + str r4, [r5, #0x28] +_020584C2: + pop {r3-r5, pc} + + thumb_func_start MapObject_GetFacingDirection +MapObject_GetFacingDirection: ; 0x020584C4 + ldr r0, [r0, #0x28] + bx lr + + thumb_func_start sub_020584C8 +sub_020584C8: ; 0x020584C8 + ldr r0, [r0, #0x30] + bx lr + + thumb_func_start MapObject_SetNextFacingDirection +MapObject_SetNextFacingDirection: ; 0x020584CC + ldr r2, [r0, #0x2c] + str r2, [r0, #0x34] + str r1, [r0, #0x2c] + bx lr + + thumb_func_start MapObject_GetNextFacingDirection +MapObject_GetNextFacingDirection: ; 0x020584D4 + ldr r0, [r0, #0x2c] + bx lr + + thumb_func_start sub_020584D8 +sub_020584D8: ; 0x020584D8 + push {r3-r5, lr} + add r5, r0, #0x0 + add r4, r1, #0x0 + bl sub_020584AC + add r0, r5, #0x0 + add r1, r4, #0x0 + bl MapObject_SetNextFacingDirection + pop {r3-r5, pc} + + thumb_func_start MapObject_SetParam +MapObject_SetParam: ; 0x020584EC + push {r3, lr} + cmp r2, #0x0 + beq _020584FC + cmp r2, #0x1 + beq _02058500 + cmp r2, #0x2 + beq _02058504 + b _02058508 +_020584FC: + str r1, [r0, #0x38] + pop {r3, pc} +_02058500: + str r1, [r0, #0x3c] + pop {r3, pc} +_02058504: + str r1, [r0, #0x40] + pop {r3, pc} +_02058508: + bl GF_AssertFail + pop {r3, pc} + .balign 4 + + thumb_func_start MapObject_GetParam +MapObject_GetParam: ; 0x02058510 + push {r3, lr} + cmp r1, #0x0 + beq _02058520 + cmp r1, #0x1 + beq _02058524 + cmp r1, #0x2 + beq _02058528 + b _0205852C +_02058520: + ldr r0, [r0, #0x38] + pop {r3, pc} +_02058524: + ldr r0, [r0, #0x3c] + pop {r3, pc} +_02058528: + ldr r0, [r0, #0x40] + pop {r3, pc} +_0205852C: + bl GF_AssertFail + mov r0, #0x0 + pop {r3, pc} + + thumb_func_start MapObject_SetXRange +MapObject_SetXRange: ; 0x02058534 + str r1, [r0, #0x44] + bx lr + + thumb_func_start MapObject_GetXRange +MapObject_GetXRange: ; 0x02058538 + ldr r0, [r0, #0x44] + bx lr + + thumb_func_start MapObject_SetYRange +MapObject_SetYRange: ; 0x0205853C + str r1, [r0, #0x48] + bx lr + + thumb_func_start MapObject_GetYRange +MapObject_GetYRange: ; 0x02058540 + ldr r0, [r0, #0x48] + bx lr + + thumb_func_start sub_02058544 +sub_02058544: ; 0x02058544 + add r0, #0xa0 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_0205854C +sub_0205854C: ; 0x0205854C + add r0, #0xa0 + ldr r0, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058554 +sub_02058554: ; 0x02058554 + add r0, #0xb0 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_0205855C +sub_0205855C: ; 0x0205855C + add r0, #0xb0 + ldr r0, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058564 +sub_02058564: ; 0x02058564 + push {r3, lr} + bl sub_0205855C + bl sub_0200CAB4 + pop {r3, pc} + + thumb_func_start MapObject_SetManager +MapObject_SetManager: ; 0x02058570 + add r0, #0xb4 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start MapObject_GetManager +MapObject_GetManager: ; 0x02058578 + add r0, #0xb4 + ldr r0, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058580 +sub_02058580: ; 0x02058580 + ldr r3, _02058588 ; =MapObjectManager_Get + add r0, #0xb4 + ldr r0, [r0, #0x0] + bx r3 + .balign 4 +_02058588: .word MapObjectManager_Get + + thumb_func_start sub_0205858C +sub_0205858C: ; 0x0205858C + push {r3-r5, lr} + add r5, r1, #0x0 + add r4, r0, #0x0 + cmp r5, #0x10 + ble _0205859A + bl GF_AssertFail +_0205859A: + add r0, r4, #0x0 + bl sub_020585B0 + mov r1, #0x0 + add r2, r5, #0x0 + add r4, r0, #0x0 + bl memset + add r0, r4, #0x0 + pop {r3-r5, pc} + .balign 4 + + thumb_func_start sub_020585B0 +sub_020585B0: ; 0x020585B0 + add r0, #0xd8 + bx lr + + thumb_func_start sub_020585B4 +sub_020585B4: ; 0x020585B4 + push {r3-r5, lr} + add r5, r1, #0x0 + add r4, r0, #0x0 + cmp r5, #0x10 + ble _020585C2 + bl GF_AssertFail +_020585C2: + add r0, r4, #0x0 + bl sub_020585D8 + mov r1, #0x0 + add r2, r5, #0x0 + add r4, r0, #0x0 + bl memset + add r0, r4, #0x0 + pop {r3-r5, pc} + .balign 4 + + thumb_func_start sub_020585D8 +sub_020585D8: ; 0x020585D8 + add r0, #0xe8 + bx lr + + thumb_func_start sub_020585DC +sub_020585DC: ; 0x020585DC + push {r3-r5, lr} + add r5, r1, #0x0 + add r4, r0, #0x0 + cmp r5, #0x10 + ble _020585EA + bl GF_AssertFail +_020585EA: + add r0, r4, #0x0 + bl sub_02058600 + mov r1, #0x0 + add r2, r5, #0x0 + add r4, r0, #0x0 + bl memset + add r0, r4, #0x0 + pop {r3-r5, pc} + .balign 4 + + thumb_func_start sub_02058600 +sub_02058600: ; 0x02058600 + add r0, #0xf8 + bx lr + + thumb_func_start sub_02058604 +sub_02058604: ; 0x02058604 + push {r3-r5, lr} + add r5, r1, #0x0 + add r4, r0, #0x0 + cmp r5, #0x20 + ble _02058612 + bl GF_AssertFail +_02058612: + add r0, r4, #0x0 + bl sub_02058628 + mov r1, #0x0 + add r2, r5, #0x0 + add r4, r0, #0x0 + bl memset + add r0, r4, #0x0 + pop {r3-r5, pc} + .balign 4 + + thumb_func_start sub_02058628 +sub_02058628: ; 0x02058628 + mov r1, #0x42 + lsl r1, r1, #0x2 + add r0, r0, r1 + bx lr + + thumb_func_start sub_02058630 +sub_02058630: ; 0x02058630 + add r0, #0xb8 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058638 +sub_02058638: ; 0x02058638 + push {r3, lr} + add r1, r0, #0x0 + add r1, #0xb8 + ldr r1, [r1, #0x0] + blx r1 + pop {r3, pc} + + thumb_func_start sub_02058644 +sub_02058644: ; 0x02058644 + add r0, #0xbc + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_0205864C +sub_0205864C: ; 0x0205864C + push {r3, lr} + add r1, r0, #0x0 + add r1, #0xbc + ldr r1, [r1, #0x0] + blx r1 + pop {r3, pc} + + thumb_func_start sub_02058658 +sub_02058658: ; 0x02058658 + add r0, #0xc0 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058660 +sub_02058660: ; 0x02058660 + push {r3, lr} + add r1, r0, #0x0 + add r1, #0xc0 + ldr r1, [r1, #0x0] + blx r1 + pop {r3, pc} + + thumb_func_start sub_0205866C +sub_0205866C: ; 0x0205866C + push {r4, lr} + add r4, r0, #0x0 + bl MapObject_GetMovement + bl sub_02058D14 + add r1, r0, #0x0 + ldr r1, [r1, #0x10] + add r0, r4, #0x0 + blx r1 + pop {r4, pc} + .balign 4 + + thumb_func_start sub_02058684 +sub_02058684: ; 0x02058684 + add r0, #0xc4 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_0205868C +sub_0205868C: ; 0x0205868C + push {r3, lr} + add r1, r0, #0x0 + add r1, #0xc4 + ldr r1, [r1, #0x0] + blx r1 + pop {r3, pc} + + thumb_func_start sub_02058698 +sub_02058698: ; 0x02058698 + add r0, #0xc8 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_020586A0 +sub_020586A0: ; 0x020586A0 + push {r3, lr} + add r1, r0, #0x0 + add r1, #0xc8 + ldr r1, [r1, #0x0] + blx r1 + pop {r3, pc} + + thumb_func_start sub_020586AC +sub_020586AC: ; 0x020586AC + add r0, #0xcc + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_020586B4 +sub_020586B4: ; 0x020586B4 + push {r3, lr} + add r1, r0, #0x0 + add r1, #0xcc + ldr r1, [r1, #0x0] + blx r1 + pop {r3, pc} + + thumb_func_start sub_020586C0 +sub_020586C0: ; 0x020586C0 + add r0, #0xd0 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_020586C8 +sub_020586C8: ; 0x020586C8 + push {r3, lr} + add r1, r0, #0x0 + add r1, #0xd0 + ldr r1, [r1, #0x0] + blx r1 + pop {r3, pc} + + thumb_func_start sub_020586D4 +sub_020586D4: ; 0x020586D4 + add r0, #0xd4 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_020586DC +sub_020586DC: ; 0x020586DC + push {r3, lr} + add r1, r0, #0x0 + add r1, #0xd4 + ldr r1, [r1, #0x0] + blx r1 + pop {r3, pc} + + thumb_func_start sub_020586E8 +sub_020586E8: ; 0x020586E8 + add r0, #0xa4 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_020586F0 +sub_020586F0: ; 0x020586F0 + add r0, #0xa4 + ldr r0, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_020586F8 +sub_020586F8: ; 0x020586F8 + add r0, #0xa8 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058700 +sub_02058700: ; 0x02058700 + add r1, r0, #0x0 + add r1, #0xa8 + ldr r1, [r1, #0x0] + add r0, #0xa8 + add r1, r1, #0x1 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058710 +sub_02058710: ; 0x02058710 + add r0, #0xa8 + ldr r0, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058718 +sub_02058718: ; 0x02058718 + add r0, #0xac + strh r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058720 +sub_02058720: ; 0x02058720 + add r0, #0xac + ldrh r0, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058728 +sub_02058728: ; 0x02058728 + add r0, #0xae + strh r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start sub_02058730 +sub_02058730: ; 0x02058730 + add r0, #0xae + ldrh r0, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start MapObject_GetFieldSystem +MapObject_GetFieldSystem: ; 0x02058738 + push {r3, lr} + bl sub_02058580 + bl MapObjectManager_GetFieldSystemPtr + pop {r3, pc} + + thumb_func_start sub_02058744 +sub_02058744: ; 0x02058744 + push {r3, lr} + bl MapObject_GetManager + bl MapObjectManager_GetPriority + pop {r3, pc} + + thumb_func_start sub_02058750 +sub_02058750: ; 0x02058750 + push {r4, lr} + add r4, r0, #0x0 + bl MapObject_CheckFlag25 + cmp r0, #0x1 + beq _02058760 + bl GF_AssertFail +_02058760: + add r0, r4, #0x0 + bl MapObject_GetFlagID + pop {r4, pc} + + thumb_func_start sub_02058768 +sub_02058768: ; 0x02058768 + ldr r3, _02058770 ; =sub_0205837C + mov r1, #0x6 + bx r3 + nop +_02058770: .word sub_0205837C + + thumb_func_start sub_02058774 +sub_02058774: ; 0x02058774 + ldr r3, _0205877C ; =sub_02058384 + mov r1, #0x6 + bx r3 + nop +_0205877C: .word sub_02058384 + + thumb_func_start MapObjectManager_PauseAllMovement +MapObjectManager_PauseAllMovement: ; 0x02058780 + push {r4-r6, lr} + add r5, r0, #0x0 + bl MapObjectManager_GetObjectCount + add r4, r0, #0x0 + add r0, r5, #0x0 + bl MapObjectManager_GetObjects + mov r6, #0x4a + add r5, r0, #0x0 + lsl r6, r6, #0x2 +_02058796: + add r0, r5, #0x0 + bl MapObject_IsInUse + cmp r0, #0x0 + beq _020587A6 + add r0, r5, #0x0 + bl sub_02058908 +_020587A6: + add r5, r5, r6 + sub r4, r4, #0x1 + bne _02058796 + pop {r4-r6, pc} + .balign 4 + + thumb_func_start MapObjectManager_UnpauseAllMovement +MapObjectManager_UnpauseAllMovement: ; 0x020587B0 + push {r4-r6, lr} + add r5, r0, #0x0 + bl MapObjectManager_GetObjectCount + add r4, r0, #0x0 + add r0, r5, #0x0 + bl MapObjectManager_GetObjects + mov r6, #0x4a + add r5, r0, #0x0 + lsl r6, r6, #0x2 +_020587C6: + add r0, r5, #0x0 + bl MapObject_IsInUse + cmp r0, #0x0 + beq _020587D6 + add r0, r5, #0x0 + bl sub_02058914 +_020587D6: + add r5, r5, r6 + sub r4, r4, #0x1 + bne _020587C6 + pop {r4-r6, pc} + .balign 4 + + thumb_func_start sub_020587E0 +sub_020587E0: ; 0x020587E0 + push {r3, lr} + mov r1, #0x1 + bl sub_02058390 + cmp r0, #0x0 + beq _020587F0 + mov r0, #0x1 + pop {r3, pc} +_020587F0: + mov r0, #0x0 + pop {r3, pc} + + thumb_func_start sub_020587F4 +sub_020587F4: ; 0x020587F4 + push {r4, lr} + add r4, r1, #0x0 + bl MapObject_GetManager + add r1, r4, #0x0 + bl sub_02058390 + pop {r4, pc} + + thumb_func_start sub_02058804 +sub_02058804: ; 0x02058804 + push {r3, lr} + cmp r1, #0x0 + bne _02058812 + mov r1, #0x8 + bl sub_0205837C + pop {r3, pc} +_02058812: + mov r1, #0x8 + bl sub_02058384 + pop {r3, pc} + .balign 4 + + thumb_func_start sub_0205881C +sub_0205881C: ; 0x0205881C + push {r3, lr} + mov r1, #0x8 + bl sub_02058390 + cmp r0, #0x0 + bne _0205882C + mov r0, #0x1 + pop {r3, pc} +_0205882C: + mov r0, #0x0 + pop {r3, pc} + + thumb_func_start MapObject_IsInUse +MapObject_IsInUse: ; 0x02058830 + ldr r3, _02058838 ; =MapObject_TestFlagsBits + mov r1, #0x1 + bx r3 + nop +_02058838: .word MapObject_TestFlagsBits + + thumb_func_start sub_0205883C +sub_0205883C: ; 0x0205883C + ldr r3, _02058844 ; =MapObject_SetFlagsBits + mov r1, #0x2 + bx r3 + nop +_02058844: .word MapObject_SetFlagsBits + + thumb_func_start sub_02058848 +sub_02058848: ; 0x02058848 + ldr r3, _02058850 ; =MapObject_ClearFlagsBits + mov r1, #0x2 + bx r3 + nop +_02058850: .word MapObject_ClearFlagsBits + + thumb_func_start sub_02058854 +sub_02058854: ; 0x02058854 + ldr r3, _0205885C ; =MapObject_TestFlagsBits + mov r1, #0x2 + bx r3 + nop +_0205885C: .word MapObject_TestFlagsBits + + thumb_func_start sub_02058860 +sub_02058860: ; 0x02058860 + ldr r3, _02058868 ; =MapObject_SetFlagsBits + mov r1, #0x4 + bx r3 + nop +_02058868: .word MapObject_SetFlagsBits + + thumb_func_start sub_0205886C +sub_0205886C: ; 0x0205886C + ldr r3, _02058874 ; =MapObject_ClearFlagsBits + mov r1, #0x8 + bx r3 + nop +_02058874: .word MapObject_ClearFlagsBits + + thumb_func_start sub_02058878 +sub_02058878: ; 0x02058878 + ldr r3, _02058880 ; =MapObject_SetFlagsBits + mov r1, #0x1 + lsl r1, r1, #0xe + bx r3 + .balign 4 +_02058880: .word MapObject_SetFlagsBits + + thumb_func_start MapObject_CheckFlag14 +MapObject_CheckFlag14: ; 0x02058884 + ldr r3, _0205888C ; =MapObject_TestFlagsBits + mov r1, #0x1 + lsl r1, r1, #0xe + bx r3 + .balign 4 +_0205888C: .word MapObject_TestFlagsBits + + thumb_func_start sub_02058890 +sub_02058890: ; 0x02058890 + ldr r3, _02058898 ; =MapObject_TestFlagsBits + mov r1, #0x2 + lsl r1, r1, #0x8 + bx r3 + .balign 4 +_02058898: .word MapObject_TestFlagsBits + + thumb_func_start MapObject_SetVisible +MapObject_SetVisible: ; 0x0205889C + push {r3, lr} + cmp r1, #0x1 + bne _020588AC + mov r1, #0x2 + lsl r1, r1, #0x8 + bl MapObject_SetFlagsBits + pop {r3, pc} +_020588AC: + mov r1, #0x2 + lsl r1, r1, #0x8 + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start sub_020588B8 +sub_020588B8: ; 0x020588B8 + push {r3, lr} + cmp r1, #0x1 + bne _020588C8 + mov r1, #0x1 + lsl r1, r1, #0x12 + bl MapObject_ClearFlagsBits + pop {r3, pc} +_020588C8: + mov r1, #0x1 + lsl r1, r1, #0x12 + bl MapObject_SetFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start sub_020588D4 +sub_020588D4: ; 0x020588D4 + push {r3, lr} + mov r1, #0x2 + lsl r1, r1, #0x12 + bl MapObject_TestFlagsBits + cmp r0, #0x1 + beq _020588E6 + mov r0, #0x1 + pop {r3, pc} +_020588E6: + mov r0, #0x0 + pop {r3, pc} + .balign 4 + + thumb_func_start sub_020588EC +sub_020588EC: ; 0x020588EC + push {r3, lr} + cmp r1, #0x1 + bne _020588FC + mov r1, #0x2 + lsl r1, r1, #0x12 + bl MapObject_SetFlagsBits + pop {r3, pc} +_020588FC: + mov r1, #0x2 + lsl r1, r1, #0x12 + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058908 +sub_02058908: ; 0x02058908 + ldr r3, _02058910 ; =MapObject_SetFlagsBits + mov r1, #0x40 + bx r3 + nop +_02058910: .word MapObject_SetFlagsBits + + thumb_func_start sub_02058914 +sub_02058914: ; 0x02058914 + ldr r3, _0205891C ; =MapObject_ClearFlagsBits + mov r1, #0x40 + bx r3 + nop +_0205891C: .word MapObject_ClearFlagsBits + + thumb_func_start sub_02058920 +sub_02058920: ; 0x02058920 + push {r3, lr} + mov r1, #0x40 + bl MapObject_TestFlagsBits + cmp r0, #0x1 + bne _02058930 + mov r0, #0x1 + pop {r3, pc} +_02058930: + mov r0, #0x0 + pop {r3, pc} + + thumb_func_start sub_02058934 +sub_02058934: ; 0x02058934 + push {r4, lr} + add r4, r0, #0x0 + bl MapObject_GetManager + bl sub_020587E0 + cmp r0, #0x0 + bne _02058948 + mov r0, #0x0 + pop {r4, pc} +_02058948: + mov r1, #0x1 + add r0, r4, #0x0 + lsl r1, r1, #0xe + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _0205895A + mov r0, #0x1 + pop {r4, pc} +_0205895A: + mov r0, #0x0 + pop {r4, pc} + .balign 4 + + thumb_func_start sub_02058960 +sub_02058960: ; 0x02058960 + push {r3, lr} + cmp r1, #0x1 + bne _02058970 + mov r1, #0x2 + lsl r1, r1, #0x16 + bl MapObject_SetFlagsBits + pop {r3, pc} +_02058970: + mov r1, #0x2 + lsl r1, r1, #0x16 + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start sub_0205897C +sub_0205897C: ; 0x0205897C + push {r3, lr} + mov r1, #0x2 + lsl r1, r1, #0x16 + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _0205898E + mov r0, #0x1 + pop {r3, pc} +_0205898E: + mov r0, #0x0 + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058994 +sub_02058994: ; 0x02058994 + push {r3, lr} + cmp r1, #0x1 + bne _020589A4 + mov r1, #0x1 + lsl r1, r1, #0xa + bl MapObject_SetFlagsBits + pop {r3, pc} +_020589A4: + mov r1, #0x1 + lsl r1, r1, #0xa + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start MapObject_SetFlag25 +MapObject_SetFlag25: ; 0x020589B0 + push {r3, lr} + cmp r1, #0x1 + bne _020589C0 + mov r1, #0x2 + lsl r1, r1, #0x18 + bl MapObject_SetFlagsBits + pop {r3, pc} +_020589C0: + mov r1, #0x2 + lsl r1, r1, #0x18 + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start MapObject_CheckFlag25 +MapObject_CheckFlag25: ; 0x020589CC + push {r3, lr} + mov r1, #0x2 + lsl r1, r1, #0x18 + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _020589DE + mov r0, #0x1 + pop {r3, pc} +_020589DE: + mov r0, #0x0 + pop {r3, pc} + .balign 4 + + thumb_func_start sub_020589E4 +sub_020589E4: ; 0x020589E4 + push {r3, lr} + cmp r1, #0x1 + bne _020589F4 + mov r1, #0x1 + lsl r1, r1, #0x1a + bl MapObject_SetFlagsBits + pop {r3, pc} +_020589F4: + mov r1, #0x1 + lsl r1, r1, #0x1a + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058A00 +sub_02058A00: ; 0x02058A00 + push {r3, lr} + mov r1, #0x1 + lsl r1, r1, #0x1a + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _02058A12 + mov r0, #0x1 + pop {r3, pc} +_02058A12: + mov r0, #0x0 + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058A18 +sub_02058A18: ; 0x02058A18 + push {r3, lr} + cmp r1, #0x1 + bne _02058A28 + mov r1, #0x2 + lsl r1, r1, #0x1a + bl MapObject_SetFlagsBits + pop {r3, pc} +_02058A28: + mov r1, #0x2 + lsl r1, r1, #0x1a + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058A34 +sub_02058A34: ; 0x02058A34 + push {r3, lr} + mov r1, #0x2 + lsl r1, r1, #0x1a + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _02058A46 + mov r0, #0x1 + pop {r3, pc} +_02058A46: + mov r0, #0x0 + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058A4C +sub_02058A4C: ; 0x02058A4C + push {r3, lr} + cmp r1, #0x1 + bne _02058A5C + mov r1, #0x1 + lsl r1, r1, #0x1c + bl MapObject_SetFlagsBits + pop {r3, pc} +_02058A5C: + mov r1, #0x1 + lsl r1, r1, #0x1c + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058A68 +sub_02058A68: ; 0x02058A68 + push {r3, lr} + mov r1, #0x1 + lsl r1, r1, #0x1c + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _02058A7A + mov r0, #0x1 + pop {r3, pc} +_02058A7A: + mov r0, #0x0 + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058A80 +sub_02058A80: ; 0x02058A80 + push {r3, lr} + cmp r1, #0x1 + bne _02058A90 + mov r1, #0x1 + lsl r1, r1, #0x18 + bl MapObject_SetFlagsBits + pop {r3, pc} +_02058A90: + mov r1, #0x1 + lsl r1, r1, #0x18 + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058A9C +sub_02058A9C: ; 0x02058A9C + push {r3, lr} + mov r1, #0x1 + lsl r1, r1, #0x18 + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _02058AAE + mov r0, #0x1 + pop {r3, pc} +_02058AAE: + mov r0, #0x0 + pop {r3, pc} + .balign 4 + + thumb_func_start sub_02058AB4 +sub_02058AB4: ; 0x02058AB4 + push {r3, lr} + mov r1, #0x10 + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _02058AC4 + mov r0, #0x1 + pop {r3, pc} +_02058AC4: + mov r0, #0x0 + pop {r3, pc} + + thumb_func_start sub_02058AC8 +sub_02058AC8: ; 0x02058AC8 + push {r3, lr} + cmp r1, #0x1 + bne _02058AD8 + mov r1, #0x2 + lsl r1, r1, #0x1c + bl MapObject_SetFlagsBits + pop {r3, pc} +_02058AD8: + mov r1, #0x2 + lsl r1, r1, #0x1c + bl MapObject_ClearFlagsBits + pop {r3, pc} + .balign 4 + + thumb_func_start MapObject_CheckFlag29 +MapObject_CheckFlag29: ; 0x02058AE4 + push {r3, lr} + mov r1, #0x2 + lsl r1, r1, #0x1c + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _02058AF6 + mov r0, #0x1 + pop {r3, pc} +_02058AF6: + mov r0, #0x0 + pop {r3, pc} + .balign 4 + + thumb_func_start MapObject_GetInitialX +MapObject_GetInitialX: ; 0x02058AFC + ldr r0, [r0, #0x4c] + bx lr + + thumb_func_start MapObject_SetInitialX +MapObject_SetInitialX: ; 0x02058B00 + str r1, [r0, #0x4c] + bx lr + + thumb_func_start MapObject_GetInitialHeight +MapObject_GetInitialHeight: ; 0x02058B04 + ldr r0, [r0, #0x50] + bx lr + + thumb_func_start MapObject_SetInitialHeight +MapObject_SetInitialHeight: ; 0x02058B08 + str r1, [r0, #0x50] + bx lr + + thumb_func_start MapObject_GetInitialY +MapObject_GetInitialY: ; 0x02058B0C + ldr r0, [r0, #0x54] + bx lr + + thumb_func_start MapObject_SetInitialY +MapObject_SetInitialY: ; 0x02058B10 + str r1, [r0, #0x54] + bx lr + + thumb_func_start sub_02058B14 +sub_02058B14: ; 0x02058B14 + ldr r0, [r0, #0x58] + bx lr + + thumb_func_start MapObject_SetPreviousX +MapObject_SetPreviousX: ; 0x02058B18 + str r1, [r0, #0x58] + bx lr + + thumb_func_start sub_02058B1C +sub_02058B1C: ; 0x02058B1C + ldr r0, [r0, #0x5c] + bx lr + + thumb_func_start MapObject_SetPreviousHeight +MapObject_SetPreviousHeight: ; 0x02058B20 + str r1, [r0, #0x5c] + bx lr + + thumb_func_start sub_02058B24 +sub_02058B24: ; 0x02058B24 + ldr r0, [r0, #0x60] + bx lr + + thumb_func_start MapObject_SetPreviousY +MapObject_SetPreviousY: ; 0x02058B28 + str r1, [r0, #0x60] + bx lr + + thumb_func_start MapObject_GetCurrentX +MapObject_GetCurrentX: ; 0x02058B2C + ldr r0, [r0, #0x64] + bx lr + + thumb_func_start MapObject_SetCurrentX +MapObject_SetCurrentX: ; 0x02058B30 + str r1, [r0, #0x64] + bx lr + + thumb_func_start sub_02058B34 +sub_02058B34: ; 0x02058B34 + ldr r2, [r0, #0x64] + add r1, r2, r1 + str r1, [r0, #0x64] + bx lr + + thumb_func_start MapObject_GetCurrentHeight +MapObject_GetCurrentHeight: ; 0x02058B3C + ldr r0, [r0, #0x68] + bx lr + + thumb_func_start MapObject_SetCurrentHeight +MapObject_SetCurrentHeight: ; 0x02058B40 + str r1, [r0, #0x68] + bx lr + + thumb_func_start sub_02058B44 +sub_02058B44: ; 0x02058B44 + ldr r2, [r0, #0x68] + add r1, r2, r1 + str r1, [r0, #0x68] + bx lr + + thumb_func_start MapObject_GetCurrentY +MapObject_GetCurrentY: ; 0x02058B4C + ldr r0, [r0, #0x6c] + bx lr + + thumb_func_start MapObject_SetCurrentY +MapObject_SetCurrentY: ; 0x02058B50 + str r1, [r0, #0x6c] + bx lr + + thumb_func_start sub_02058B54 +sub_02058B54: ; 0x02058B54 + ldr r2, [r0, #0x6c] + add r1, r2, r1 + str r1, [r0, #0x6c] + bx lr + + thumb_func_start MapObject_GetPositionVec +MapObject_GetPositionVec: ; 0x02058B5C + add r2, r0, #0x0 + add r2, #0x70 + add r3, r1, #0x0 + ldmia r2!, {r0-r1} + stmia r3!, {r0-r1} + ldr r0, [r2, #0x0] + str r0, [r3, #0x0] + bx lr + + thumb_func_start MapObject_SetPositionVec +MapObject_SetPositionVec: ; 0x02058B6C + add r3, r1, #0x0 + add r2, r0, #0x0 + ldmia r3!, {r0-r1} + add r2, #0x70 + stmia r2!, {r0-r1} + ldr r0, [r3, #0x0] + str r0, [r2, #0x0] + bx lr + + thumb_func_start sub_02058B7C +sub_02058B7C: ; 0x02058B7C + add r0, #0x70 + bx lr + + thumb_func_start MapObject_GetPosVecYCoord +MapObject_GetPosVecYCoord: ; 0x02058B80 + ldr r0, [r0, #0x74] + bx lr + + thumb_func_start sub_02058B84 +sub_02058B84: ; 0x02058B84 + add r2, r0, #0x0 + add r2, #0x7c + add r3, r1, #0x0 + ldmia r2!, {r0-r1} + stmia r3!, {r0-r1} + ldr r0, [r2, #0x0] + str r0, [r3, #0x0] + bx lr + + thumb_func_start sub_02058B94 +sub_02058B94: ; 0x02058B94 + add r3, r1, #0x0 + add r2, r0, #0x0 + ldmia r3!, {r0-r1} + add r2, #0x7c + stmia r2!, {r0-r1} + ldr r0, [r3, #0x0] + str r0, [r2, #0x0] + bx lr + + thumb_func_start sub_02058BA4 +sub_02058BA4: ; 0x02058BA4 + add r2, r0, #0x0 + add r2, #0x88 + add r3, r1, #0x0 + ldmia r2!, {r0-r1} + stmia r3!, {r0-r1} + ldr r0, [r2, #0x0] + str r0, [r3, #0x0] + bx lr + + thumb_func_start sub_02058BB4 +sub_02058BB4: ; 0x02058BB4 + add r3, r1, #0x0 + add r2, r0, #0x0 + ldmia r3!, {r0-r1} + add r2, #0x88 + stmia r2!, {r0-r1} + ldr r0, [r3, #0x0] + str r0, [r2, #0x0] + bx lr + + thumb_func_start sub_02058BC4 +sub_02058BC4: ; 0x02058BC4 + add r2, r0, #0x0 + add r2, #0x94 + add r3, r1, #0x0 + ldmia r2!, {r0-r1} + stmia r3!, {r0-r1} + ldr r0, [r2, #0x0] + str r0, [r3, #0x0] + bx lr + + thumb_func_start sub_02058BD4 +sub_02058BD4: ; 0x02058BD4 + add r3, r1, #0x0 + add r2, r0, #0x0 + ldmia r3!, {r0-r1} + add r2, #0x94 + stmia r2!, {r0-r1} + ldr r0, [r3, #0x0] + str r0, [r2, #0x0] + bx lr + + thumb_func_start sub_02058BE4 +sub_02058BE4: ; 0x02058BE4 + push {r3, lr} + bl MapObject_GetPosVecYCoord + asr r1, r0, #0x3 + asr r0, r1, #0xb + lsr r0, r0, #0x14 + add r0, r1, r0 + asr r0, r0, #0xc + pop {r3, pc} + .balign 4 + + thumb_func_start ObjectEvent_SetId +ObjectEvent_SetId: ; 0x02058BF8 + strh r1, [r0, #0x0] + bx lr + + thumb_func_start ObjectEvent_GetID +ObjectEvent_GetID: ; 0x02058BFC + ldrh r0, [r0, #0x0] + bx lr + + thumb_func_start ObjectEvent_SetSprite +ObjectEvent_SetSprite: ; 0x02058C00 + strh r1, [r0, #0x2] + bx lr + + thumb_func_start ObjectEvent_GetSpriteID +ObjectEvent_GetSpriteID: ; 0x02058C04 + ldrh r0, [r0, #0x2] + bx lr + + thumb_func_start ObjectEvent_SetMovement +ObjectEvent_SetMovement: ; 0x02058C08 + strh r1, [r0, #0x4] + bx lr + + thumb_func_start ObjectEvent_GetMovement +ObjectEvent_GetMovement: ; 0x02058C0C + ldrh r0, [r0, #0x4] + bx lr + + thumb_func_start ObjectEvent_SetType +ObjectEvent_SetType: ; 0x02058C10 + strh r1, [r0, #0x6] + bx lr + + thumb_func_start ObjectEvent_GetType +ObjectEvent_GetType: ; 0x02058C14 + ldrh r0, [r0, #0x6] + bx lr + + thumb_func_start ObjectEvent_SetFlagId +ObjectEvent_SetFlagId: ; 0x02058C18 + strh r1, [r0, #0x8] + bx lr + + thumb_func_start ObjectEvent_GetFlagID +ObjectEvent_GetFlagID: ; 0x02058C1C + ldrh r0, [r0, #0x8] + bx lr + + thumb_func_start ObjectEvent_SetScript +ObjectEvent_SetScript: ; 0x02058C20 + strh r1, [r0, #0xa] + bx lr + + thumb_func_start ObjectEvent_GetScript +ObjectEvent_GetScript: ; 0x02058C24 + ldrh r0, [r0, #0xa] + bx lr + + thumb_func_start ObjectEvent_SetFacing +ObjectEvent_SetFacing: ; 0x02058C28 + strh r1, [r0, #0xc] + bx lr + + thumb_func_start ObjectEvent_GetInitialFacingDirection +ObjectEvent_GetInitialFacingDirection: ; 0x02058C2C + mov r1, #0xc + ldrsh r0, [r0, r1] + bx lr + .balign 4 + + thumb_func_start ObjectEvent_SetParam +ObjectEvent_SetParam: ; 0x02058C34 + push {r3, lr} + cmp r2, #0x0 + beq _02058C44 + cmp r2, #0x1 + beq _02058C48 + cmp r2, #0x2 + beq _02058C4C + b _02058C50 +_02058C44: + strh r1, [r0, #0xe] + pop {r3, pc} +_02058C48: + strh r1, [r0, #0x10] + pop {r3, pc} +_02058C4C: + strh r1, [r0, #0x12] + pop {r3, pc} +_02058C50: + bl GF_AssertFail + pop {r3, pc} + .balign 4 + + thumb_func_start ObjectEvent_GetParam +ObjectEvent_GetParam: ; 0x02058C58 + push {r3, lr} + cmp r1, #0x0 + beq _02058C68 + cmp r1, #0x1 + beq _02058C6C + cmp r1, #0x2 + beq _02058C70 + b _02058C74 +_02058C68: + ldrh r0, [r0, #0xe] + pop {r3, pc} +_02058C6C: + ldrh r0, [r0, #0x10] + pop {r3, pc} +_02058C70: + ldrh r0, [r0, #0x12] + pop {r3, pc} +_02058C74: + bl GF_AssertFail + mov r0, #0x0 + pop {r3, pc} + + thumb_func_start ObjectEvent_SetXRange +ObjectEvent_SetXRange: ; 0x02058C7C + strh r1, [r0, #0x14] + bx lr + + thumb_func_start ObjectEvent_GetXRange +ObjectEvent_GetXRange: ; 0x02058C80 + mov r1, #0x14 + ldrsh r0, [r0, r1] + bx lr + .balign 4 + + thumb_func_start ObjectEvent_SetYRange +ObjectEvent_SetYRange: ; 0x02058C88 + strh r1, [r0, #0x16] + bx lr + + thumb_func_start ObjectEvent_GetYRange +ObjectEvent_GetYRange: ; 0x02058C8C + mov r1, #0x16 + ldrsh r0, [r0, r1] + bx lr + .balign 4 + + thumb_func_start ObjectEvent_SetXCoord +ObjectEvent_SetXCoord: ; 0x02058C94 + strh r1, [r0, #0x18] + bx lr + + thumb_func_start ObjectEvent_GetXCoord +ObjectEvent_GetXCoord: ; 0x02058C98 + ldrh r0, [r0, #0x18] + bx lr + + thumb_func_start ObjectEvent_SetHeight +ObjectEvent_SetHeight: ; 0x02058C9C + str r1, [r0, #0x1c] + bx lr + + thumb_func_start ObjectEvent_GetHeight +ObjectEvent_GetHeight: ; 0x02058CA0 + ldr r0, [r0, #0x1c] + bx lr + + thumb_func_start ObjectEvent_SetYCoord +ObjectEvent_SetYCoord: ; 0x02058CA4 + strh r1, [r0, #0x1a] + bx lr + + thumb_func_start ObjectEvent_GetYCoord +ObjectEvent_GetYCoord: ; 0x02058CA8 + ldrh r0, [r0, #0x1a] + bx lr + + thumb_func_start ObjectEvent_GetById +ObjectEvent_GetById: ; 0x02058CAC + push {r3-r7, lr} + add r6, r0, #0x0 + add r7, r1, #0x0 + str r2, [sp, #0x0] + mov r4, #0x0 + add r5, r2, #0x0 +_02058CB8: + add r0, r5, #0x0 + bl ObjectEvent_ScriptIDIsUnset + cmp r0, #0x0 + bne _02058CD4 + add r0, r5, #0x0 + bl ObjectEvent_GetID + cmp r6, r0 + bne _02058CD4 + ldr r0, [sp, #0x0] + lsl r1, r4, #0x5 + add r0, r0, r1 + pop {r3-r7, pc} +_02058CD4: + add r4, r4, #0x1 + add r5, #0x20 + cmp r4, r7 + blt _02058CB8 + mov r0, #0x0 + pop {r3-r7, pc} + + thumb_func_start ObjectEvent_ScriptIDIsUnset +ObjectEvent_ScriptIDIsUnset: ; 0x02058CE0 + push {r3, lr} + bl ObjectEvent_GetScript + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + ldr r0, _02058CF8 ; =0x0000FFFF + cmp r1, r0 + bne _02058CF4 + mov r0, #0x1 + pop {r3, pc} +_02058CF4: + mov r0, #0x0 + pop {r3, pc} + .balign 4 +_02058CF8: .word 0x0000FFFF + + thumb_func_start ObjectEvent_GetFlagID_AssertScriptIDIsUnset +ObjectEvent_GetFlagID_AssertScriptIDIsUnset: ; 0x02058CFC + push {r4, lr} + add r4, r0, #0x0 + bl ObjectEvent_ScriptIDIsUnset + cmp r0, #0x1 + beq _02058D0C + bl GF_AssertFail +_02058D0C: + add r0, r4, #0x0 + bl ObjectEvent_GetFlagID + pop {r4, pc} + + thumb_func_start sub_02058D14 +sub_02058D14: ; 0x02058D14 + push {r4, lr} + add r4, r0, #0x0 + cmp r4, #0x37 + blo _02058D20 + bl GF_AssertFail +_02058D20: + ldr r0, _02058D28 ; =UNK_020F6364 + lsl r1, r4, #0x2 + ldr r0, [r0, r1] + pop {r4, pc} + .balign 4 +_02058D28: .word UNK_020F6364 + + thumb_func_start sub_02058D2C +sub_02058D2C: ; 0x02058D2C + ldr r0, [r0, #0x4] + bx lr + + thumb_func_start sub_02058D30 +sub_02058D30: ; 0x02058D30 + ldr r0, [r0, #0x8] + bx lr + + thumb_func_start sub_02058D34 +sub_02058D34: ; 0x02058D34 + ldr r0, [r0, #0xc] + bx lr + + thumb_func_start sub_02058D38 +sub_02058D38: ; 0x02058D38 + ldr r0, [r0, #0x0] + bx lr + + thumb_func_start sub_02058D3C +sub_02058D3C: ; 0x02058D3C + ldr r0, [r0, #0x4] + bx lr + + thumb_func_start sub_02058D40 +sub_02058D40: ; 0x02058D40 + ldr r0, [r0, #0x8] + bx lr + + thumb_func_start sub_02058D44 +sub_02058D44: ; 0x02058D44 + ldr r0, [r0, #0xc] + bx lr + + thumb_func_start sub_02058D48 +sub_02058D48: ; 0x02058D48 + ldr r0, [r0, #0x10] + bx lr + + thumb_func_start sub_02058D4C +sub_02058D4C: ; 0x02058D4C + push {r3, lr} + ldr r3, _02058D6C ; =ov05_021F9494 + ldr r1, _02058D70 ; =0x0000FFFF +_02058D52: + ldr r2, [r3, #0x0] + cmp r2, r0 + bne _02058D5C + ldr r0, [r3, #0x4] + pop {r3, pc} +_02058D5C: + add r3, #0x8 + ldr r2, [r3, #0x0] + cmp r2, r1 + bne _02058D52 + bl GF_AssertFail + mov r0, #0x0 + pop {r3, pc} + .balign 4 +_02058D6C: .word ov05_021F9494 +_02058D70: .word 0x0000FFFF + + thumb_func_start sub_02058D74 +sub_02058D74: ; 0x02058D74 + push {r3-r7, lr} + add r5, r0, #0x0 + add r6, r1, #0x0 + add r7, r2, #0x0 + bl MapObjectManager_GetObjectCount + add r4, r0, #0x0 + add r0, r5, #0x0 + bl MapObjectManager_GetObjects + add r5, r0, #0x0 +_02058D8A: + add r0, r5, #0x0 + mov r1, #0x1 + bl MapObject_GetFlagsBits + cmp r0, #0x0 + beq _02058DAE + add r0, r5, #0x0 + bl MapObject_GetCurrentX + cmp r6, r0 + bne _02058DAE + add r0, r5, #0x0 + bl MapObject_GetCurrentY + cmp r7, r0 + bne _02058DAE + add r0, r5, #0x0 + pop {r3-r7, pc} +_02058DAE: + mov r0, #0x4a + lsl r0, r0, #0x2 + add r5, r5, r0 + sub r4, r4, #0x1 + bne _02058D8A + mov r0, #0x0 + pop {r3-r7, pc} + + thumb_func_start sub_02058DBC +sub_02058DBC: ; 0x02058DBC + push {r4-r6, lr} + add r4, r1, #0x0 + ldr r1, [r4, #0x0] + add r6, r2, #0x0 + asr r2, r1, #0x4 + asr r1, r2, #0xb + lsr r1, r1, #0x14 + add r1, r2, r1 + asr r1, r1, #0xc + add r5, r0, #0x0 + bl MapObject_SetCurrentX + ldr r1, [r4, #0x4] + add r0, r5, #0x0 + asr r2, r1, #0x3 + asr r1, r2, #0xb + lsr r1, r1, #0x14 + add r1, r2, r1 + asr r1, r1, #0xc + bl MapObject_SetCurrentHeight + ldr r1, [r4, #0x8] + add r0, r5, #0x0 + asr r2, r1, #0x4 + asr r1, r2, #0xb + lsr r1, r1, #0x14 + add r1, r2, r1 + asr r1, r1, #0xc + bl MapObject_SetCurrentY + add r0, r5, #0x0 + add r1, r4, #0x0 + bl MapObject_SetPositionVec + add r0, r5, #0x0 + bl sub_02059C60 + add r0, r5, #0x0 + add r1, r6, #0x0 + bl MapObject_SetFacingDirectionDirect + add r0, r5, #0x0 + bl MapObject_ClearHeldMovement + add r0, r5, #0x0 + mov r1, #0x4 + bl MapObject_SetFlagsBits + add r0, r5, #0x0 + mov r1, #0xa + bl MapObject_ClearFlagsBits + pop {r4-r6, pc} + .balign 4 + + thumb_func_start sub_02058E28 +sub_02058E28: ; 0x02058E28 + push {r3-r6, lr} + sub sp, #0xc + add r4, r2, #0x0 + mov r2, #0x2 + add r6, r3, #0x0 + lsl r3, r1, #0x10 + lsl r2, r2, #0xe + add r2, r3, r2 + add r5, r0, #0x0 + str r2, [sp, #0x0] + bl MapObject_SetCurrentX + lsl r0, r4, #0xf + str r0, [sp, #0x4] + add r0, r5, #0x0 + add r1, r4, #0x0 + bl MapObject_SetCurrentHeight + mov r0, #0x2 + lsl r1, r6, #0x10 + lsl r0, r0, #0xe + add r0, r1, r0 + str r0, [sp, #0x8] + add r0, r5, #0x0 + add r1, r6, #0x0 + bl MapObject_SetCurrentY + add r0, r5, #0x0 + add r1, sp, #0x0 + bl MapObject_SetPositionVec + add r0, r5, #0x0 + bl sub_02059C60 + ldr r1, [sp, #0x20] + add r0, r5, #0x0 + bl MapObject_SetFacingDirectionDirect + add r0, r5, #0x0 + mov r1, #0x4 + bl MapObject_SetFlagsBits + add r0, r5, #0x0 + mov r1, #0xa + bl MapObject_ClearFlagsBits + add r0, r5, #0x0 + bl MapObject_ClearHeldMovement + add sp, #0xc + pop {r3-r6, pc} + .balign 4 + + thumb_func_start sub_02058E90 +sub_02058E90: ; 0x02058E90 + push {r3-r5, lr} + add r5, r0, #0x0 + add r4, r1, #0x0 + bl sub_02058660 + add r0, r5, #0x0 + add r1, r4, #0x0 + bl MapObject_SetMovement + add r0, r5, #0x0 + bl sub_02057EE0 + add r0, r5, #0x0 + bl sub_02058EE8 + pop {r3-r5, pc} + + thumb_func_start sub_02058EB0 +sub_02058EB0: ; 0x02058EB0 + push {r4, lr} + add r4, r0, #0x0 + bl MapObject_SetID + add r0, r4, #0x0 + bl sub_02058860 + add r0, r4, #0x0 + bl sub_0205815C + pop {r4, pc} + .balign 4 + + thumb_func_start sub_02058EC8 +sub_02058EC8: ; 0x02058EC8 + bx lr + .balign 4 + + thumb_func_start sub_02058ECC +sub_02058ECC: ; 0x02058ECC + bx lr + .balign 4 + + thumb_func_start sub_02058ED0 +sub_02058ED0: ; 0x02058ED0 + bx lr + .balign 4 + + thumb_func_start sub_02058ED4 +sub_02058ED4: ; 0x02058ED4 + bx lr + .balign 4 + + thumb_func_start sub_02058ED8 +sub_02058ED8: ; 0x02058ED8 + bx lr + .balign 4 + + thumb_func_start sub_02058EDC +sub_02058EDC: ; 0x02058EDC + bx lr + .balign 4 + + thumb_func_start sub_02058EE0 +sub_02058EE0: ; 0x02058EE0 + bx lr + .balign 4 + + thumb_func_start sub_02058EE4 +sub_02058EE4: ; 0x02058EE4 + bx lr + .balign 4 diff --git a/arm9/asm/scrcmd_7.s b/arm9/asm/scrcmd_7.s index 652bad947..4275c07bc 100644 --- a/arm9/asm/scrcmd_7.s +++ b/arm9/asm/scrcmd_7.s @@ -627,7 +627,7 @@ ScrCmd_Unk00F0: ; 0x02041BC4 bl FieldSysGetAttrAddr add r5, r0, #0x0 ldr r0, [r5, #0x0] - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r4, r0, #0x0 ldr r0, [r5, #0x0] bl MapObject_GetID @@ -652,7 +652,7 @@ ScrCmd_Unk00F1: ; 0x02041BF0 bl ScriptReadWord add r4, r0, #0x0 ldr r0, [r5, #0x0] - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r7, r0, #0x0 ldr r0, [r5, #0x0] bl MapObject_GetID @@ -660,7 +660,7 @@ ScrCmd_Unk00F1: ; 0x02041BF0 lsl r1, r1, #0x10 add r0, r7, #0x0 lsr r1, r1, #0x10 - bl TrainerFlagCheck + bl TrainerFieldSystem_FlagCheck cmp r0, #0x1 bne _02041C34 ldr r1, [r6, #0x8] diff --git a/arm9/asm/unk_02012944.s b/arm9/asm/unk_02012944.s index e424cca5f..b84b0ffe4 100644 --- a/arm9/asm/unk_02012944.s +++ b/arm9/asm/unk_02012944.s @@ -184,7 +184,7 @@ _02012A4E: ldr r0, _02012ABC ; =sub_02012BE4 ldr r2, [sp, #0x28] add r1, r5, #0x0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02012AB0 ; =0x00000604 mov r2, #0x3 str r0, [r5, r1] diff --git a/arm9/asm/unk_02014BF4.s b/arm9/asm/unk_02014BF4.s index 5eea054b3..422ea7312 100644 --- a/arm9/asm/unk_02014BF4.s +++ b/arm9/asm/unk_02014BF4.s @@ -224,7 +224,7 @@ _02014CC2: ldr r1, [r5, #0x0] ldr r0, _02014D78 ; =sub_02014DD8 add r1, r1, r4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [r5, #0x0] add r1, r1, r4 str r0, [r1, #0x4] diff --git a/arm9/asm/unk_02034A28.s b/arm9/asm/unk_02034A28.s index ac44557ec..a07392cd7 100644 --- a/arm9/asm/unk_02034A28.s +++ b/arm9/asm/unk_02034A28.s @@ -104,7 +104,7 @@ _02034AD8: ldr r1, [r1, #0x0] ldr r3, [r3, #0x14] add r2, r4, #0x0 - bl sub_02057BAC + bl MapObject_CreateFromMultipleObjectEvents _02034AEC: pop {r3-r5, pc} .balign 4 diff --git a/arm9/asm/unk_02034D7C.s b/arm9/asm/unk_02034D7C.s index c4863ca17..a56623798 100644 --- a/arm9/asm/unk_02034D7C.s +++ b/arm9/asm/unk_02034D7C.s @@ -163,25 +163,25 @@ Save_LocalFieldData_Get: ; 0x02034E30 nop _02034E38: .word SaveArray_Get - thumb_func_start sub_02034E3C -sub_02034E3C: ; 0x02034E3C + thumb_func_start Save_MapObjects_Get +Save_MapObjects_Get: ; 0x02034E3C ldr r3, _02034E44 ; =SaveArray_Get mov r1, #0xb bx r3 nop _02034E44: .word SaveArray_Get - thumb_func_start sub_02034E48 -sub_02034E48: ; 0x02034E48 + thumb_func_start FieldSystem_SyncMapObjectsToSave +FieldSystem_SyncMapObjectsToSave: ; 0x02034E48 push {r4, lr} add r4, r0, #0x0 ldr r0, [r4, #0xc] - bl sub_02034E3C + bl Save_MapObjects_Get add r2, r0, #0x0 ldr r1, [r4, #0x34] add r0, r4, #0x0 mov r3, #0x40 - bl sub_02057800 + bl FieldSystem_SyncMapObjectsToSaveEx pop {r4, pc} thumb_func_start sub_02034E60 @@ -189,10 +189,10 @@ sub_02034E60: ; 0x02034E60 push {r4, lr} add r4, r0, #0x0 ldr r0, [r4, #0xc] - bl sub_02034E3C + bl Save_MapObjects_Get add r1, r0, #0x0 ldr r0, [r4, #0x34] mov r2, #0x40 - bl sub_0205785C + bl MapObjectManager_RestoreFromSave pop {r4, pc} .balign 4 diff --git a/arm9/asm/unk_02037024.s b/arm9/asm/unk_02037024.s index 9f62a44e1..9aba10c86 100644 --- a/arm9/asm/unk_02037024.s +++ b/arm9/asm/unk_02037024.s @@ -166,7 +166,7 @@ _0203714A: bl sub_02039694 add r1, r0, #0x0 add r0, r4, #0x0 - bl FlagCheck + bl FieldSystem_FlagCheck cmp r0, #0x1 beq _02037160 mov r0, #0x1 @@ -313,7 +313,7 @@ _02037244: cmp r0, #0x1 bne _02037260 ldr r0, [r4, #0x0] - bl sub_02058458 + bl MapObject_GetSpriteID sub r0, #0x5b cmp r0, #0x5 bhi _02037260 diff --git a/arm9/asm/unk_02038C78.s b/arm9/asm/unk_02038C78.s index 0810254dc..4dff53c45 100644 --- a/arm9/asm/unk_02038C78.s +++ b/arm9/asm/unk_02038C78.s @@ -1982,8 +1982,8 @@ _020394FE: pop {r4, pc} .balign 4 - thumb_func_start sub_02039504 -sub_02039504: ; 0x02039504 + thumb_func_start FieldSystem_VarGetObjectEventGraphicsId +FieldSystem_VarGetObjectEventGraphicsId: ; 0x02039504 push {r3-r5, lr} add r4, r1, #0x0 add r5, r0, #0x0 @@ -2001,8 +2001,8 @@ _02039512: nop _02039524: .word 0x00004020 - thumb_func_start FlagCheck -FlagCheck: ; 0x02039528 + thumb_func_start FieldSystem_FlagCheck +FieldSystem_FlagCheck: ; 0x02039528 push {r4, lr} ldr r0, [r0, #0xc] add r4, r1, #0x0 @@ -2152,8 +2152,8 @@ _0203963C: mov r0, #0x0 pop {r3, pc} - thumb_func_start TrainerFlagCheck -TrainerFlagCheck: ; 0x02039640 + thumb_func_start TrainerFieldSystem_FlagCheck +TrainerFieldSystem_FlagCheck: ; 0x02039640 push {r4, lr} ldr r0, [r0, #0xc] add r4, r1, #0x0 @@ -2385,7 +2385,7 @@ _020397EC: bl sub_02039694 add r1, r0, #0x0 ldr r0, [sp, #0x0] - bl FlagCheck + bl FieldSystem_FlagCheck cmp r0, #0x0 bne _0203984C ldr r1, [r4, #0x4] diff --git a/arm9/asm/unk_02048904.s b/arm9/asm/unk_02048904.s index a75af32a3..c306a1528 100644 --- a/arm9/asm/unk_02048904.s +++ b/arm9/asm/unk_02048904.s @@ -265,7 +265,7 @@ sub_02048AE4: ; 0x02048AE4 add r5, r0, #0x0 mov r1, #0x40 mov r2, #0x5 - bl sub_02057380 + bl MapObjectManager_Init str r0, [r5, #0x34] ldr r0, [r5, #0xc] bl Save_PlayerData_GetProfileAddr @@ -301,9 +301,9 @@ sub_02048B34: ; 0x02048B34 ldr r0, [r4, #0x38] bl sub_02055160 ldr r0, [r4, #0x34] - bl sub_0205771C + bl MapObjectManager_RemoveAllActiveObjects ldr r0, [r4, #0x34] - bl sub_020573AC + bl MapObjectManager_Delete pop {r4, pc} thumb_func_start sub_02048B50 @@ -312,7 +312,7 @@ sub_02048B50: ; 0x02048B50 add r5, r0, #0x0 mov r1, #0x40 mov r2, #0x5 - bl sub_02057380 + bl MapObjectManager_Init str r0, [r5, #0x34] add r0, r5, #0x0 bl sub_02034E60 diff --git a/arm9/asm/unk_0204B34C.s b/arm9/asm/unk_0204B34C.s index daea45a21..8e49197a7 100644 --- a/arm9/asm/unk_0204B34C.s +++ b/arm9/asm/unk_0204B34C.s @@ -210,14 +210,14 @@ sub_0204B490: ; 0x0204B490 add r1, sp, #0x0 add r2, sp, #0x4 mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x1 bne _0204B4F8 mov r6, #0x0 mov r7, #0x1 _0204B4B6: ldr r0, [sp, #0x0] - bl sub_02058458 + bl MapObject_GetSpriteID bl sub_0205C334 cmp r0, #0x1 bne _0204B4E8 @@ -230,7 +230,7 @@ _0204B4B6: beq _0204B4E8 ldr r0, [sp, #0x0] add r1, r6, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r1, r0, #0x0 add r0, r4, #0x0 add r2, r7, #0x0 @@ -240,7 +240,7 @@ _0204B4E8: add r1, sp, #0x0 add r2, sp, #0x4 mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x1 beq _0204B4B6 _0204B4F8: @@ -258,7 +258,7 @@ sub_0204B4FC: ; 0x0204B4FC add r4, r0, #0x0 add r0, r7, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam str r0, [sp, #0x0] ldr r1, [sp, #0x0] add r0, r4, #0x0 @@ -312,7 +312,7 @@ sub_0204B57C: ; 0x0204B57C add r6, r0, #0x0 add r0, r4, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r4, r0, #0x0 add r0, r5, #0x0 bl sub_0204B37C @@ -334,7 +334,7 @@ sub_0204B5A8: ; 0x0204B5A8 add r7, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r5, r0, #0x0 add r0, r6, #0x0 bl sub_0204B35C @@ -357,7 +357,7 @@ sub_0204B5DC: ; 0x0204B5DC add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r1, r0, #0x0 add r0, r4, #0x0 bl sub_020252AC @@ -373,7 +373,7 @@ sub_0204B5FC: ; 0x0204B5FC add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r1, r0, #0x0 add r0, r4, #0x0 bl sub_02025238 @@ -389,7 +389,7 @@ sub_0204B61C: ; 0x0204B61C add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r1, r0, #0x0 add r0, r4, #0x0 bl sub_02025244 @@ -405,7 +405,7 @@ sub_0204B63C: ; 0x0204B63C add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r1, r0, #0x0 add r0, r4, #0x0 bl sub_02025244 @@ -422,7 +422,7 @@ sub_0204B660: ; 0x0204B660 add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r1, r0, #0x0 add r0, r4, #0x0 bl sub_020252D0 @@ -439,7 +439,7 @@ sub_0204B684: ; 0x0204B684 add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r1, r0, #0x0 add r0, r4, #0x0 bl sub_0202524C @@ -455,7 +455,7 @@ sub_0204B6A4: ; 0x0204B6A4 add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r1, r0, #0x0 add r0, r4, #0x0 bl sub_020252E8 @@ -470,7 +470,7 @@ sub_0204B6C4: ; 0x0204B6C4 ldr r4, _0204B708 ; =0x00000000 beq _0204B6D8 add r0, r5, #0x0 - bl sub_02058458 + bl MapObject_GetSpriteID cmp r0, #0x64 beq _0204B6DC _0204B6D8: @@ -615,7 +615,7 @@ _0204B7CC: thumb_func_start sub_0204B7D8 sub_0204B7D8: ; 0x0204B7D8 push {r3, lr} - bl sub_02058458 + bl MapObject_GetSpriteID cmp r0, #0x64 bne _0204B7E6 mov r0, #0x1 diff --git a/arm9/asm/unk_0204CB20.s b/arm9/asm/unk_0204CB20.s index f59713403..aec497b45 100644 --- a/arm9/asm/unk_0204CB20.s +++ b/arm9/asm/unk_0204CB20.s @@ -169,7 +169,7 @@ _0204CB7A: ldr r0, _0204CC44 ; =sub_0204D4F0 mov r1, #0x0 mov r2, #0xc8 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0204CC34 ; =UNK_021C5A68 ldr r1, [r1, #0x0] str r0, [r1, #0x50] @@ -510,7 +510,7 @@ _0204CDFA: ldr r0, _0204CEF4 ; =sub_0204D4F0 mov r1, #0x0 mov r2, #0xc8 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0204CED4 ; =UNK_021C5A68 ldr r1, [r1, #0x0] str r0, [r1, #0x50] @@ -1101,10 +1101,10 @@ sub_0204D328: ; 0x0204D328 ldr r0, [r0, #0x54] add r1, r5, r1 ldr r0, [r0, #0x34] - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID cmp r0, #0x0 beq _0204D37C - bl sub_02057654 + bl MapObject_Remove _0204D37C: ldr r0, _0204D430 ; =UNK_021C5A68 lsl r4, r5, #0x3 @@ -1140,7 +1140,7 @@ _0204D3B2: mov r1, #0x1 lsl r1, r1, #0x8 add r1, r5, r1 - bl sub_02058444 + bl MapObject_SetID ldr r0, _0204D430 ; =UNK_021C5A68 ldr r1, [r0, #0x0] ldr r0, _0204D438 ; =0x000002BE @@ -2412,7 +2412,7 @@ _0204DD5E: beq _0204DDB4 add r0, r4, #0x0 mov r1, #0x80 - bl sub_02058418 + bl MapObject_ClearFlagsBits ldr r0, _0204DE28 ; =UNK_021C5A68 ldr r0, [r0, #0x0] add r1, r0, r5 @@ -2427,7 +2427,7 @@ _0204DD5E: bl sub_02055304 add r0, r4, #0x0 mov r1, #0x80 - bl sub_02058410 + bl MapObject_SetFlagsBits _0204DDB4: add r0, r4, #0x0 bl sub_0205AE28 @@ -3018,11 +3018,11 @@ sub_0204E214: ; 0x0204E214 bl PlayerAvatar_GetMapObject mov r1, #0x80 add r6, r0, #0x0 - bl sub_02058410 + bl MapObject_SetFlagsBits mov r1, #0x1 add r0, r6, #0x0 lsl r1, r1, #0x8 - bl sub_02058410 + bl MapObject_SetFlagsBits ldr r0, _0204E24C ; =UNK_021C5A68 ldr r0, [r0, #0x0] add r1, r0, r5 @@ -3057,11 +3057,11 @@ sub_0204E254: ; 0x0204E254 bl sub_0205AE50 add r0, r5, #0x0 mov r1, #0x80 - bl sub_02058418 + bl MapObject_ClearFlagsBits mov r1, #0x1 add r0, r5, #0x0 lsl r1, r1, #0x8 - bl sub_02058418 + bl MapObject_ClearFlagsBits ldr r0, _0204E2A0 ; =UNK_021C5A68 mov r2, #0x0 ldr r0, [r0, #0x0] @@ -5074,7 +5074,7 @@ sub_0204F178: ; 0x0204F178 strb r2, [r0, #0x0] ldr r0, _0204F1AC ; =sub_0204F124 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r0, r4, #0x0 mov r1, #0x0 bl sub_0204EAD8 @@ -5967,10 +5967,10 @@ _0204F89E: ldrsb r1, [r1, r2] str r1, [sp, #0x4] ldr r1, [sp, #0x8] - bl sub_02058B30 + bl MapObject_SetCurrentX ldr r0, [sp, #0xc] add r1, r7, #0x0 - bl sub_02058B50 + bl MapObject_SetCurrentY ldr r0, [sp, #0x4] ldr r1, [sp, #0x8] str r0, [sp, #0x0] diff --git a/arm9/asm/unk_0204FBA8.s b/arm9/asm/unk_0204FBA8.s index 64f6b2f54..9edacfdb8 100644 --- a/arm9/asm/unk_0204FBA8.s +++ b/arm9/asm/unk_0204FBA8.s @@ -77,7 +77,7 @@ sub_0204FBB0: ; 0x0204FBB0 strh r1, [r0, #0x3c] ldr r0, _0204FC0C ; =sub_0205006C mov r1, #0x0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0204FC08 ; =UNK_021C5A6C ldr r2, [r1, #0x0] str r0, [r2, #0x38] diff --git a/arm9/asm/unk_020520AC.s b/arm9/asm/unk_020520AC.s index eff6043a0..c6fe8361f 100644 --- a/arm9/asm/unk_020520AC.s +++ b/arm9/asm/unk_020520AC.s @@ -200,7 +200,7 @@ _0205211E: ldr r0, _02052174 ; =sub_02052308 add r1, r4, #0x0 mov r2, #0xa - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0xc] str r5, [r4, #0x0] str r6, [r4, #0x4] diff --git a/arm9/asm/unk_02052EE8.s b/arm9/asm/unk_02052EE8.s index 3574c8dac..af3a2fba9 100644 --- a/arm9/asm/unk_02052EE8.s +++ b/arm9/asm/unk_02052EE8.s @@ -31,7 +31,7 @@ sub_02052EE8: ; 0x02052EE8 ldr r0, _02052F5C ; =sub_02052FC8 add r1, r4, #0x0 mov r2, #0xb - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x4] add r0, r5, #0x0 bl sub_020524BC @@ -423,7 +423,7 @@ sub_020531E4: ; 0x020531E4 _02053206: ldr r0, [sp, #0x4] add r1, r7, #0x1 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r5, r0, #0x0 bne _02053216 bl GF_AssertFail @@ -490,10 +490,10 @@ _02053272: bl sub_02058E90 add r0, r5, #0x0 mov r1, #0x1 - bl sub_02058534 + bl MapObject_SetXRange add r0, r5, #0x0 mov r1, #0x1 - bl sub_0205853C + bl MapObject_SetYRange mov r0, #0x1 strb r0, [r4, #0x15] _020532A8: @@ -630,13 +630,13 @@ sub_0205339C: ; 0x0205339C add r0, r4, #0x0 str r2, [sp, #0x4] str r3, [sp, #0x8] - bl sub_02058AFC + bl MapObject_GetInitialX add r7, r0, #0x0 add r0, r4, #0x0 - bl sub_02058B04 + bl MapObject_GetInitialHeight str r0, [sp, #0xc] add r0, r4, #0x0 - bl sub_02058B0C + bl MapObject_GetInitialY add r6, r0, #0x0 ldr r0, [sp, #0x4] cmp r7, r0 @@ -662,7 +662,7 @@ _020533CC: bl sub_02058E28 add r0, r4, #0x0 mov r1, #0x1 - bl sub_020584A4 + bl MapObject_SetFacingDirectionDirect add r0, r4, #0x0 mov r1, #0x44 bl sub_0205ADDC @@ -758,7 +758,7 @@ sub_020534A0: ; 0x020534A0 _020534AC: add r0, r7, #0x0 add r1, r5, #0x0 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r4, r0, #0x0 bne _020534BC bl GF_AssertFail @@ -784,7 +784,7 @@ sub_020534DC: ; 0x020534DC add r5, r1, #0x0 mov r1, #0x0 add r7, r0, #0x0 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r4, r0, #0x0 bne _020534F0 bl GF_AssertFail @@ -808,7 +808,7 @@ _0205350E: bne _02053578 add r0, r7, #0x0 add r1, r6, #0x1 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r4, r0, #0x0 bne _02053524 bl GF_AssertFail @@ -818,7 +818,7 @@ _02053524: bl sub_02057634 add r0, r4, #0x0 mov r1, #0x1 - bl sub_020584A4 + bl MapObject_SetFacingDirectionDirect add r0, r4, #0x0 mov r1, #0x44 bl sub_0205ADDC diff --git a/arm9/asm/unk_02055068.s b/arm9/asm/unk_02055068.s index ef0791cad..4c0ac6587 100644 --- a/arm9/asm/unk_02055068.s +++ b/arm9/asm/unk_02055068.s @@ -56,15 +56,15 @@ sub_020550A4: ; 0x020550A4 bl PlayerAvatar_GetSpriteByStateAndGender add r1, r0, #0x0 add r0, r4, #0x0 - bl sub_02058454 + bl MapObject_SetSpriteID mov r1, #0x9 add r0, r4, #0x0 lsl r1, r1, #0xa - bl sub_02058410 + bl MapObject_SetFlagsBits mov r1, #0x6 add r0, r4, #0x0 lsl r1, r1, #0x6 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r4, #0x0 mov r1, #0x1 bl sub_02058AC8 @@ -85,7 +85,7 @@ sub_02055108: ; 0x02055108 bl GF_AssertFail _02055118: add r0, r4, #0x0 - bl sub_02058578 + bl MapObject_GetManager add r0, r5, #0x0 bl ov05_021EDBC8 add r0, r5, #0x0 @@ -126,7 +126,7 @@ sub_02055168: ; 0x02055168 push {r4, lr} add r4, r0, #0x0 bl PlayerAvatar_GetMapObject - bl sub_02057654 + bl MapObject_Remove add r0, r4, #0x0 bl sub_02055160 pop {r4, pc} @@ -205,51 +205,51 @@ sub_02055208: ; 0x02055208 add r0, r1, #0x0 ldr r1, [sp, #0x18] ldr r2, [sp, #0x1c] - bl sub_0205753C + bl MapObject_Create add r5, r0, #0x0 bne _02055228 bl GF_AssertFail _02055228: add r0, r5, #0x0 mov r1, #0xff - bl sub_02058444 + bl MapObject_SetID add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058484 + bl MapObject_SetType add r0, r5, #0x0 mov r1, #0x0 - bl sub_0205848C + bl MapObject_SetFlagID add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058494 + bl MapObject_SetScript mov r1, #0x0 add r0, r5, #0x0 add r2, r1, #0x0 - bl sub_020584EC + bl MapObject_SetParam add r0, r5, #0x0 mov r1, #0x0 mov r2, #0x1 - bl sub_020584EC + bl MapObject_SetParam add r0, r5, #0x0 mov r1, #0x0 mov r2, #0x2 - bl sub_020584EC + bl MapObject_SetParam mov r1, #0x0 add r0, r5, #0x0 mvn r1, r1 - bl sub_02058534 + bl MapObject_SetXRange mov r1, #0x0 add r0, r5, #0x0 mvn r1, r1 - bl sub_0205853C + bl MapObject_SetYRange mov r1, #0x9 add r0, r5, #0x0 lsl r1, r1, #0xa - bl sub_02058410 + bl MapObject_SetFlagsBits mov r1, #0x6 add r0, r5, #0x0 lsl r1, r1, #0x6 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r5, #0x0 mov r1, #0x1 bl sub_02058AC8 @@ -271,7 +271,7 @@ sub_020552A4: ; 0x020552A4 add r2, sp, #0x4 mov r3, #0x1 add r5, r0, #0x0 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x0 beq _020552DE add r4, sp, #0x0 @@ -279,14 +279,14 @@ sub_020552A4: ; 0x020552A4 mov r7, #0x1 _020552C4: ldr r0, [sp, #0x0] - bl sub_02058480 + bl MapObject_GetMovement cmp r0, #0x1 beq _020552DE add r0, r5, #0x0 add r1, r4, #0x0 add r2, r6, #0x0 add r3, r7, #0x0 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x0 bne _020552C4 _020552DE: @@ -310,7 +310,7 @@ _020552F2: PlayerAvatar_GetFacingDirection: ; 0x020552F8 push {r3, lr} bl PlayerAvatar_GetMapObject - bl sub_020584C4 + bl MapObject_GetFacingDirection pop {r3, pc} thumb_func_start sub_02055304 @@ -326,21 +326,21 @@ sub_02055304: ; 0x02055304 sub_02055314: ; 0x02055314 push {r3, lr} bl PlayerAvatar_GetMapObject - bl sub_020584D4 + bl MapObject_GetNextFacingDirection pop {r3, pc} thumb_func_start GetPlayerXCoord GetPlayerXCoord: ; 0x02055320 push {r3, lr} bl PlayerAvatar_GetMapObject - bl sub_02058B2C + bl MapObject_GetCurrentX pop {r3, pc} thumb_func_start GetPlayerYCoord GetPlayerYCoord: ; 0x0205532C push {r3, lr} bl PlayerAvatar_GetMapObject - bl sub_02058B4C + bl MapObject_GetCurrentY pop {r3, pc} thumb_func_start sub_02055338 @@ -363,7 +363,7 @@ sub_02055350: ; 0x02055350 add r4, r1, #0x0 bl PlayerAvatar_GetMapObject add r1, r4, #0x0 - bl sub_02058B5C + bl MapObject_GetPositionVec pop {r4, pc} thumb_func_start sub_02055360 @@ -402,12 +402,12 @@ sub_0205537C: ; 0x0205537C bne _02055392 mov r1, #0x2 lsl r1, r1, #0x8 - bl sub_02058418 + bl MapObject_ClearFlagsBits pop {r4, pc} _02055392: mov r1, #0x2 lsl r1, r1, #0x8 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r4, pc} thumb_func_start sub_0205539C @@ -738,11 +738,11 @@ sub_02055540: ; 0x02055540 bl PlayerAvatar_GetMapObject add r4, r0, #0x0 add r1, sp, #0x0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r4, #0x0 add r1, sp, #0x0 str r5, [sp, #0x4] - bl sub_02058B6C + bl MapObject_SetPositionVec add sp, #0xc pop {r4-r5, pc} diff --git a/arm9/asm/unk_020557F4.s b/arm9/asm/unk_020557F4.s index 274d9a705..b51ea9c63 100644 --- a/arm9/asm/unk_020557F4.s +++ b/arm9/asm/unk_020557F4.s @@ -479,7 +479,7 @@ sub_02055B8C: ; 0x02055B8C add r0, r4, #0x0 bl sub_02059C60 add r0, r4, #0x0 - bl sub_0205AE80 + bl MapObject_ClearHeldMovement add r0, r5, #0x0 mov r1, #0x0 bl sub_0205AFDC @@ -584,7 +584,7 @@ sub_02055C78: ; 0x02055C78 add r5, r0, #0x0 bl PlayerAvatar_GetMapObject add r4, r0, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection add r6, r0, #0x0 add r0, r5, #0x0 add r1, r6, #0x0 @@ -629,7 +629,7 @@ _02055CE4: mov r1, #0x6 add r0, r4, #0x0 lsl r1, r1, #0x6 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r6, #0x0 mov r1, #0x8 bl sub_0205AFDC @@ -676,7 +676,7 @@ _02055D54: mov r1, #0x6 add r0, r4, #0x0 lsl r1, r1, #0x6 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r6, #0x0 mov r1, #0x8 bl sub_0205AFDC @@ -700,7 +700,7 @@ _02055D8E: mov r1, #0x6 add r0, r4, #0x0 lsl r1, r1, #0x6 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 add r1, r6, #0x0 bl sub_020560D0 @@ -718,7 +718,7 @@ sub_02055DAC: ; 0x02055DAC add r7, r1, #0x0 bl PlayerAvatar_GetMapObject add r6, r0, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection add r4, r0, #0x0 ldr r0, _02055EF4 ; =0x00000654 bl PlaySE @@ -762,7 +762,7 @@ _02055E18: mov r1, #0x6 add r0, r6, #0x0 lsl r1, r1, #0x6 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r4, #0x0 mov r1, #0x8 bl sub_0205AFDC @@ -824,7 +824,7 @@ _02055EAC: mov r1, #0x6 add r0, r6, #0x0 lsl r1, r1, #0x6 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r4, #0x0 mov r1, #0x8 bl sub_0205AFDC @@ -860,7 +860,7 @@ sub_02055EF8: ; 0x02055EF8 add r5, r0, #0x0 bl PlayerAvatar_GetMapObject add r4, r0, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection add r0, r5, #0x0 bl sub_020554BC cmp r0, #0x1 @@ -895,7 +895,7 @@ sub_02055F44: ; 0x02055F44 add r5, r0, #0x0 bl PlayerAvatar_GetMapObject add r4, r0, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection add r0, r5, #0x0 bl sub_020554BC cmp r0, #0x1 @@ -982,7 +982,7 @@ sub_02055FFC: ; 0x02055FFC bl PlayerAvatar_GetMapObject mov r1, #0x6 lsl r1, r1, #0x6 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r4, #0x0 bl sub_020557E8 cmp r0, #0x0 @@ -1009,11 +1009,11 @@ sub_02056040: ; 0x02056040 add r5, r1, #0x0 bl PlayerAvatar_GetMapObject add r4, r0, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r6, r0, #0x0 add r0, r4, #0x0 add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec add r4, sp, #0xc add r3, sp, #0x0 ldmia r4!, {r0-r1} @@ -1319,7 +1319,7 @@ sub_02056288: ; 0x02056288 add r4, r1, #0x0 add r5, r0, #0x0 add r0, r4, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r1, #0x0 bl sub_0205AFDC add r2, r0, #0x0 @@ -1358,7 +1358,7 @@ _020562CA: _020562DC: ldr r1, [sp, #0x0] add r0, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection b _0205636C _020562E6: add r0, r5, #0x0 @@ -1419,7 +1419,7 @@ _02056356: _02056364: ldr r1, [sp, #0x0] add r0, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection _0205636C: ldr r0, [sp, #0x0] add r1, r7, #0x0 @@ -1447,7 +1447,7 @@ sub_02056384: ; 0x02056384 bl sub_02056B5C add r0, r4, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection pop {r4-r6, pc} thumb_func_start sub_020563A8 @@ -1766,7 +1766,7 @@ sub_020565F0: ; 0x020565F0 add r4, r1, #0x0 add r5, r0, #0x0 add r0, r4, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r1, #0x0 bl sub_0205AFDC add r2, r0, #0x0 @@ -1813,11 +1813,11 @@ _02056656: beq _02056680 add r0, r6, #0x0 mov r7, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection str r0, [sp, #0x0] ldr r1, [sp, #0x0] add r0, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 sub r1, r7, #0x1 @@ -1843,18 +1843,18 @@ _02056680: _020566A0: ldr r1, [sp, #0x0] add r0, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 b _020566EA _020566B0: add r0, r6, #0x0 mov r7, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection str r0, [sp, #0x0] ldr r1, [sp, #0x0] add r0, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 sub r1, r7, #0x1 @@ -1905,7 +1905,7 @@ sub_02056704: ; 0x02056704 bl sub_02056B5C add r0, r4, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 _0205673E: @@ -1963,7 +1963,7 @@ _0205678C: _020567AA: add r0, r7, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 b _020567C4 @@ -2158,7 +2158,7 @@ sub_02056914: ; 0x02056914 add r4, r1, #0x0 add r5, r0, #0x0 add r0, r4, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r1, #0x0 bl sub_0205AFDC add r2, r0, #0x0 @@ -2222,7 +2222,7 @@ _02056994: _020569AA: add r0, r6, #0x0 add r1, r7, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 b _02056A6C @@ -2231,14 +2231,14 @@ _020569BA: tst r0, r4 beq _020569EC add r0, r6, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection add r4, r0, #0x0 mov r1, #0x0 bl sub_0205AFDC str r0, [sp, #0x0] add r0, r6, #0x0 add r1, r4, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 mov r1, #0x0 @@ -2268,20 +2268,20 @@ _020569EC: _02056A14: add r0, r6, #0x0 add r1, r7, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 b _02056A6C _02056A24: add r0, r6, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection add r4, r0, #0x0 mov r1, #0x0 bl sub_0205AFDC str r0, [sp, #0x0] add r0, r6, #0x0 add r1, r4, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 mov r1, #0x0 @@ -2332,7 +2332,7 @@ sub_02056A7C: ; 0x02056A7C bl sub_02056B5C add r0, r4, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 _02056AB6: @@ -2390,7 +2390,7 @@ _02056B04: _02056B22: add r0, r7, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_02055410 b _02056B3C @@ -2515,23 +2515,23 @@ sub_02056C0C: ; 0x02056C0C add r5, r1, #0x0 str r2, [sp, #0x4] add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r7, r0, #0x0 ldr r0, [sp, #0x4] bl sub_02059BF4 str r0, [sp, #0x14] add r0, r5, #0x0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight str r0, [sp, #0x8] add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0xc] ldr r0, [sp, #0x4] bl sub_02059C00 str r0, [sp, #0x10] add r0, r5, #0x0 add r1, sp, #0x1c - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r1, [sp, #0x14] ldr r6, [sp, #0xc] ldr r3, [sp, #0x10] @@ -2547,7 +2547,7 @@ sub_02056C0C: ; 0x02056C0C orr r4, r0 _02056C60: add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem ldr r2, [sp, #0x14] add r1, sp, #0x18 str r1, [sp, #0x0] @@ -2610,16 +2610,16 @@ sub_02056CCC: ; 0x02056CCC cmp r4, r0 beq _02056D54 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x0] add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r4, #0x0 bl sub_02059BF4 add r7, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r5, r0, #0x0 add r0, r4, #0x0 bl sub_02059C00 @@ -2679,13 +2679,13 @@ sub_02056D58: ; 0x02056D58 cmp r4, r0 beq _02056E00 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r7, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x0] ldr r2, [sp, #0x0] add r0, r7, #0x0 @@ -2763,16 +2763,16 @@ sub_02056E04: ; 0x02056E04 cmp r5, r0 beq _02056E68 add r0, r4, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x0] add r0, r4, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r5, #0x0 bl sub_02059BF4 add r7, r0, #0x0 add r0, r4, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r4, r0, #0x0 add r0, r5, #0x0 bl sub_02059C00 @@ -2813,16 +2813,16 @@ sub_02056E6C: ; 0x02056E6C cmp r4, r0 beq _02056EC2 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x0] add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r4, #0x0 bl sub_02059BF4 add r7, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x4] add r0, r4, #0x0 bl sub_02059C00 @@ -2857,16 +2857,16 @@ sub_02056EC8: ; 0x02056EC8 cmp r4, r0 beq _02056F72 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x4] add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r4, #0x0 bl sub_02059BF4 add r7, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x8] add r0, r4, #0x0 bl sub_02059C00 @@ -2945,16 +2945,16 @@ sub_02056F78: ; 0x02056F78 cmp r0, #0x1 bne _0205701A add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x0] add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r4, #0x0 bl sub_02059BF4 add r7, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x4] add r0, r4, #0x0 bl sub_02059C00 @@ -3404,7 +3404,7 @@ sub_020572B8: ; 0x020572B8 sub_020572D4: ; 0x020572D4 push {r3, lr} bl PlayerAvatar_GetMapObject - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem ldr r0, [r0, #0xc] bl Save_GameStats_Get mov r1, #0x5 diff --git a/arm9/asm/unk_02057380.s b/arm9/asm/unk_02057380.s deleted file mode 100644 index 2871ce831..000000000 --- a/arm9/asm/unk_02057380.s +++ /dev/null @@ -1,4000 +0,0 @@ - .include "asm/macros.inc" - .include "global.inc" - - .extern UNK_020F6364 - - .text - - thumb_func_start sub_02057380 -sub_02057380: ; 0x02057380 - push {r3-r7, lr} - add r5, r1, #0x0 - add r6, r0, #0x0 - add r0, r5, #0x0 - add r7, r2, #0x0 - bl sub_02057444 - add r4, r0, #0x0 - add r1, r6, #0x0 - bl sub_020583E0 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058364 - add r0, r4, #0x0 - add r1, r7, #0x0 - bl sub_02058398 - add r0, r4, #0x0 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_020573AC -sub_020573AC: ; 0x020573AC - push {r4, lr} - add r4, r0, #0x0 - bl sub_020583CC - add r1, r0, #0x0 - mov r0, #0xb - bl FreeToHeapExplicit - mov r0, #0xb - add r1, r4, #0x0 - bl FreeToHeapExplicit - pop {r4, pc} - .balign 4 - - thumb_func_start sub_020573C8 -sub_020573C8: ; 0x020573C8 - push {r3-r7, lr} - sub sp, #0x8 - str r0, [sp, #0x0] - add r5, r2, #0x0 - str r3, [sp, #0x4] - ldr r7, [sp, #0x20] - bl sub_02058368 - add r6, r0, #0x0 - ldr r0, [sp, #0x0] - bl sub_020583CC - add r4, r0, #0x0 - cmp r6, #0x0 - beq _02057430 -_020573E6: - add r0, r4, #0x0 - bl sub_02058830 - cmp r0, #0x1 - bne _02057426 - ldr r2, [sp, #0x4] - add r0, r4, #0x0 - add r1, r5, #0x0 - add r3, r7, #0x0 - bl sub_02057F90 - cmp r0, #0x0 - beq _02057408 - cmp r0, #0x1 - beq _02057426 - cmp r0, #0x2 - b _02057426 -_02057408: - add r0, r4, #0x0 - bl sub_02058450 - cmp r5, r0 - beq _02057426 - mov r1, #0x1 - add r0, r4, #0x0 - lsl r1, r1, #0xa - bl sub_0205842C - cmp r0, #0x0 - bne _02057426 - add r0, r4, #0x0 - bl sub_02057654 -_02057426: - mov r0, #0x4a - lsl r0, r0, #0x2 - add r4, r4, r0 - sub r6, r6, #0x1 - bne _020573E6 -_02057430: - ldr r0, [sp, #0x0] - bl sub_020583A0 - add r1, r0, #0x0 - ldr r0, [sp, #0x0] - bl ov05_021F2AF4 - add sp, #0x8 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_02057444 -sub_02057444: ; 0x02057444 - push {r4-r6, lr} - mov r1, #0x4b - add r4, r0, #0x0 - mov r0, #0xb - lsl r1, r1, #0x2 - bl AllocFromHeap - add r5, r0, #0x0 - bne _0205745A - bl GF_AssertFail -_0205745A: - mov r2, #0x4b - add r0, r5, #0x0 - mov r1, #0x0 - lsl r2, r2, #0x2 - bl memset - mov r0, #0x4a - lsl r0, r0, #0x2 - add r6, r4, #0x0 - mul r6, r0 - mov r0, #0xb - add r1, r6, #0x0 - bl AllocFromHeap - add r4, r0, #0x0 - bne _0205747E - bl GF_AssertFail -_0205747E: - add r0, r4, #0x0 - mov r1, #0x0 - add r2, r6, #0x0 - bl memset - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_020583B4 - add r0, r5, #0x0 - pop {r4-r6, pc} - - thumb_func_start sub_02057494 -sub_02057494: ; 0x02057494 - push {r3-r7, lr} - add r6, r1, #0x0 - add r5, r0, #0x0 - add r0, r6, #0x0 - add r7, r2, #0x0 - bl sub_02058BFC - add r4, r0, #0x0 - add r0, r6, #0x0 - bl sub_02058CE0 - cmp r0, #0x0 - bne _020574C8 - add r0, r5, #0x0 - add r1, r4, #0x0 - add r2, r7, #0x0 - bl sub_02057C98 - add r4, r0, #0x0 - beq _020574E8 - add r1, r6, #0x0 - add r2, r7, #0x0 - bl sub_02058214 - add r0, r4, #0x0 - pop {r3-r7, pc} -_020574C8: - add r0, r6, #0x0 - bl sub_02058CFC - add r2, r0, #0x0 - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_02058010 - add r4, r0, #0x0 - beq _020574E8 - add r1, r7, #0x0 - add r2, r6, #0x0 - bl sub_02058258 - add r0, r4, #0x0 - pop {r3-r7, pc} -_020574E8: - add r0, r5, #0x0 - bl sub_02057C64 - add r4, r0, #0x0 - beq _0205753A - add r0, r5, #0x0 - bl sub_020583E8 - add r2, r0, #0x0 - add r0, r4, #0x0 - add r1, r6, #0x0 - bl sub_02057D2C - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02057E90 - add r0, r4, #0x0 - add r1, r7, #0x0 - bl sub_0205844C - add r0, r4, #0x0 - bl sub_020581A4 - add r0, r4, #0x0 - bl sub_020581B4 - add r0, r4, #0x0 - mov r1, #0x4 - bl sub_02058410 - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_02057CF0 - add r0, r5, #0x0 - bl sub_02058360 - bl sub_0205836C - add r0, r4, #0x0 -_0205753A: - pop {r3-r7, pc} - - thumb_func_start sub_0205753C -sub_0205753C: ; 0x0205753C - push {r3-r7, lr} - sub sp, #0x20 - add r5, r0, #0x0 - add r4, r1, #0x0 - add r0, sp, #0x0 - mov r1, #0x0 - add r6, r2, #0x0 - add r7, r3, #0x0 - bl sub_02058BF8 - ldr r1, [sp, #0x38] - add r0, sp, #0x0 - bl sub_02058C00 - ldr r1, [sp, #0x3c] - add r0, sp, #0x0 - bl sub_02058C08 - add r0, sp, #0x0 - mov r1, #0x0 - bl sub_02058C10 - add r0, sp, #0x0 - mov r1, #0x0 - bl sub_02058C18 - add r0, sp, #0x0 - mov r1, #0x0 - bl sub_02058C20 - add r0, sp, #0x0 - add r1, r7, #0x0 - bl sub_02058C28 - mov r1, #0x0 - add r0, sp, #0x0 - add r2, r1, #0x0 - bl sub_02058C34 - add r0, sp, #0x0 - mov r1, #0x0 - mov r2, #0x1 - bl sub_02058C34 - add r0, sp, #0x0 - mov r1, #0x0 - mov r2, #0x2 - bl sub_02058C34 - add r0, sp, #0x0 - mov r1, #0x0 - bl sub_02058C7C - add r0, sp, #0x0 - mov r1, #0x0 - bl sub_02058C88 - add r0, sp, #0x0 - add r1, r4, #0x0 - bl sub_02058C94 - add r0, sp, #0x0 - add r1, r6, #0x0 - bl sub_02058CA4 - add r0, sp, #0x0 - mov r1, #0x0 - bl sub_02058C9C - ldr r2, [sp, #0x40] - add r0, r5, #0x0 - add r1, sp, #0x0 - bl sub_02057494 - add sp, #0x20 - pop {r3-r7, pc} - - thumb_func_start sub_020575D4 -sub_020575D4: ; 0x020575D4 - push {r3-r7, lr} - add r5, r0, #0x0 - add r0, r1, #0x0 - add r1, r2, #0x0 - ldr r2, [sp, #0x18] - add r7, r3, #0x0 - mov r4, #0x0 - bl sub_02058CAC - str r0, [sp, #0x0] - cmp r0, #0x0 - beq _02057610 - bl sub_02058C1C - add r6, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583E8 - lsl r1, r6, #0x10 - lsr r1, r1, #0x10 - bl FlagCheck - cmp r0, #0x0 - bne _02057610 - ldr r1, [sp, #0x0] - add r0, r5, #0x0 - add r2, r7, #0x0 - bl sub_02057494 - add r4, r0, #0x0 -_02057610: - add r0, r4, #0x0 - pop {r3-r7, pc} - - thumb_func_start sub_02057614 -sub_02057614: ; 0x02057614 - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058454 - add r0, r4, #0x0 - bl sub_02058148 - mov r1, #0x1 - add r0, r4, #0x0 - lsl r1, r1, #0xe - bl sub_02058418 - add r0, r4, #0x0 - bl sub_020581B4 - pop {r4, pc} - - thumb_func_start sub_02057634 -sub_02057634: ; 0x02057634 - push {r3-r5, lr} - add r5, r0, #0x0 - add r4, r1, #0x0 - bl sub_02058934 - cmp r0, #0x1 - bne _02057648 - add r0, r5, #0x0 - bl sub_020576A8 -_02057648: - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_02057614 - pop {r3-r5, pc} - .balign 4 - - thumb_func_start sub_02057654 -sub_02057654: ; 0x02057654 - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058578 - bl sub_020587E0 - cmp r0, #0x1 - bne _0205766A - add r0, r4, #0x0 - bl sub_020586B4 -_0205766A: - add r0, r4, #0x0 - bl sub_02058660 - add r0, r4, #0x0 - bl sub_02058564 - add r0, r4, #0x0 - bl sub_02058580 - bl sub_02058374 - add r0, r4, #0x0 - bl sub_02057F80 - pop {r4, pc} - - thumb_func_start sub_02057688 -sub_02057688: ; 0x02057688 - push {r3-r5, lr} - add r4, r0, #0x0 - bl sub_02058490 - add r5, r0, #0x0 - add r0, r4, #0x0 - bl MapObject_GetFieldSysPtr - lsl r1, r5, #0x10 - lsr r1, r1, #0x10 - bl FieldSystem_FlagSet - add r0, r4, #0x0 - bl sub_02057654 - pop {r3-r5, pc} - - thumb_func_start sub_020576A8 -sub_020576A8: ; 0x020576A8 - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058578 - bl sub_020587E0 - cmp r0, #0x1 - bne _020576D6 - mov r1, #0x1 - add r0, r4, #0x0 - lsl r1, r1, #0xe - bl sub_02058424 - cmp r0, #0x0 - beq _020576CC - add r0, r4, #0x0 - bl sub_020586B4 -_020576CC: - mov r1, #0x1 - add r0, r4, #0x0 - lsl r1, r1, #0xe - bl sub_02058418 -_020576D6: - ldr r1, _02057708 ; =0x0000FFFF - add r0, r4, #0x0 - bl sub_02058454 - ldr r1, _0205770C ; =sub_02058ED8 - add r0, r4, #0x0 - bl sub_02058684 - ldr r1, _02057710 ; =sub_02058EDC - add r0, r4, #0x0 - bl sub_02058698 - ldr r1, _02057710 ; =sub_02058EDC - add r0, r4, #0x0 - bl sub_020586AC - ldr r1, _02057714 ; =sub_02058EE0 - add r0, r4, #0x0 - bl sub_020586C0 - ldr r1, _02057718 ; =sub_02058EE4 - add r0, r4, #0x0 - bl sub_020586D4 - pop {r4, pc} - .balign 4 -_02057708: .word 0x0000FFFF -_0205770C: .word sub_02058ED8 -_02057710: .word sub_02058EDC -_02057714: .word sub_02058EE0 -_02057718: .word sub_02058EE4 - - thumb_func_start sub_0205771C -sub_0205771C: ; 0x0205771C - push {r3-r7, lr} - add r5, r0, #0x0 - mov r4, #0x0 - bl sub_02058368 - add r6, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583CC - mov r7, #0x4a - add r5, r0, #0x0 - lsl r7, r7, #0x2 -_02057734: - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_02058424 - cmp r0, #0x0 - beq _02057746 - add r0, r5, #0x0 - bl sub_02057654 -_02057746: - add r4, r4, #0x1 - add r5, r5, r7 - cmp r4, r6 - blt _02057734 - pop {r3-r7, pc} - - thumb_func_start sub_02057750 -sub_02057750: ; 0x02057750 - push {r3-r7, lr} - add r5, r0, #0x0 - bl sub_020587E0 - cmp r0, #0x1 - beq _02057760 - bl GF_AssertFail -_02057760: - add r0, r5, #0x0 - mov r4, #0x0 - bl sub_02058368 - add r6, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583CC - mov r7, #0x4a - add r5, r0, #0x0 - lsl r7, r7, #0x2 -_02057776: - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_02058424 - cmp r0, #0x0 - beq _0205779C - mov r1, #0x1 - add r0, r5, #0x0 - lsl r1, r1, #0xe - bl sub_02058424 - cmp r0, #0x0 - beq _0205779C - add r0, r5, #0x0 - bl sub_020586C8 - add r0, r5, #0x0 - bl sub_0205816C -_0205779C: - add r4, r4, #0x1 - add r5, r5, r7 - cmp r4, r6 - blt _02057776 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_020577A8 -sub_020577A8: ; 0x020577A8 - push {r3-r7, lr} - add r5, r0, #0x0 - bl sub_020587E0 - cmp r0, #0x1 - beq _020577B8 - bl GF_AssertFail -_020577B8: - add r0, r5, #0x0 - mov r4, #0x0 - bl sub_02058368 - add r6, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583CC - mov r7, #0x4a - add r5, r0, #0x0 - lsl r7, r7, #0x2 -_020577CE: - add r0, r5, #0x0 - bl sub_02058830 - cmp r0, #0x1 - bne _020577F6 - add r0, r5, #0x0 - bl sub_02058884 - cmp r0, #0x1 - bne _020577EA - add r0, r5, #0x0 - bl sub_020586DC - b _020577F0 -_020577EA: - add r0, r5, #0x0 - bl sub_020581B4 -_020577F0: - add r0, r5, #0x0 - bl sub_02058148 -_020577F6: - add r4, r4, #0x1 - add r5, r5, r7 - cmp r4, r6 - blt _020577CE - pop {r3-r7, pc} - - thumb_func_start sub_02057800 -sub_02057800: ; 0x02057800 - push {r3-r7, lr} - sub sp, #0x8 - add r7, r0, #0x0 - add r6, r1, #0x0 - mov r0, #0x0 - add r5, r2, #0x0 - add r4, r3, #0x0 - str r0, [sp, #0x4] - add r0, r6, #0x0 - add r1, sp, #0x0 - add r2, sp, #0x4 - mov r3, #0x1 - bl sub_020580F4 - cmp r0, #0x0 - beq _02057846 -_02057820: - ldr r1, [sp, #0x0] - add r0, r7, #0x0 - add r2, r5, #0x0 - bl sub_02057894 - sub r4, r4, #0x1 - add r5, #0x50 - cmp r4, #0x0 - bgt _02057836 - bl GF_AssertFail -_02057836: - add r0, r6, #0x0 - add r1, sp, #0x0 - add r2, sp, #0x4 - mov r3, #0x1 - bl sub_020580F4 - cmp r0, #0x0 - bne _02057820 -_02057846: - cmp r4, #0x0 - beq _02057856 - mov r2, #0x50 - add r0, r5, #0x0 - mov r1, #0x0 - mul r2, r4 - bl memset -_02057856: - add sp, #0x8 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_0205785C -sub_0205785C: ; 0x0205785C - push {r3-r7, lr} - add r6, r0, #0x0 - add r5, r1, #0x0 - add r7, r2, #0x0 - beq _02057892 -_02057866: - ldr r1, [r5, #0x0] - mov r0, #0x1 - tst r0, r1 - beq _0205788C - add r0, r6, #0x0 - bl sub_02057C64 - add r4, r0, #0x0 - bne _0205787C - bl GF_AssertFail -_0205787C: - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_020579C4 - add r0, r6, #0x0 - add r1, r4, #0x0 - bl sub_02057AEC -_0205788C: - add r5, #0x50 - sub r7, r7, #0x1 - bne _02057866 -_02057892: - pop {r3-r7, pc} - - thumb_func_start sub_02057894 -sub_02057894: ; 0x02057894 - push {r3-r6, lr} - sub sp, #0xc - add r5, r1, #0x0 - add r6, r0, #0x0 - add r4, r2, #0x0 - add r0, r5, #0x0 - bl sub_0205840C - str r0, [r4, #0x0] - add r0, r5, #0x0 - bl sub_02058440 - str r0, [r4, #0x4] - add r0, r5, #0x0 - bl MapObject_GetID - strb r0, [r4, #0x8] - add r0, r5, #0x0 - bl sub_02058450 - strh r0, [r4, #0x10] - add r0, r5, #0x0 - bl sub_02058458 - strh r0, [r4, #0x12] - add r0, r5, #0x0 - bl sub_02058480 - strb r0, [r4, #0x9] - add r0, r5, #0x0 - bl sub_02058488 - strh r0, [r4, #0x14] - add r0, r5, #0x0 - bl sub_02058490 - strh r0, [r4, #0x16] - add r0, r5, #0x0 - bl sub_02058498 - strh r0, [r4, #0x18] - add r0, r5, #0x0 - bl sub_020584A0 - strb r0, [r4, #0xc] - add r0, r5, #0x0 - bl sub_020584C4 - strb r0, [r4, #0xd] - add r0, r5, #0x0 - bl sub_020584D4 - strb r0, [r4, #0xe] - add r0, r5, #0x0 - mov r1, #0x0 - bl sub_02058510 - strh r0, [r4, #0x1a] - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_02058510 - strh r0, [r4, #0x1c] - add r0, r5, #0x0 - mov r1, #0x2 - bl sub_02058510 - strh r0, [r4, #0x1e] - add r0, r5, #0x0 - bl sub_02058538 - strb r0, [r4, #0xa] - add r0, r5, #0x0 - bl sub_02058540 - strb r0, [r4, #0xb] - add r0, r5, #0x0 - bl sub_02058AFC - strh r0, [r4, #0x20] - add r0, r5, #0x0 - bl sub_02058B04 - strh r0, [r4, #0x22] - add r0, r5, #0x0 - bl sub_02058B0C - strh r0, [r4, #0x24] - add r0, r5, #0x0 - bl sub_02058B2C - strh r0, [r4, #0x26] - add r0, r5, #0x0 - bl sub_02058B3C - strh r0, [r4, #0x28] - add r0, r5, #0x0 - bl sub_02058B4C - strh r0, [r4, #0x2a] - mov r0, #0x26 - mov r1, #0x2a - ldrsh r0, [r4, r0] - ldrsh r1, [r4, r1] - add r2, sp, #0x0 - bl sub_02059E60 - add r0, r5, #0x0 - bl sub_02058B80 - str r0, [sp, #0x4] - add r0, r5, #0x0 - bl sub_02058AE4 - add r2, r0, #0x0 - add r0, r6, #0x0 - add r1, sp, #0x0 - bl sub_02059EC8 - cmp r0, #0x0 - bne _0205798E - add r0, r5, #0x0 - bl sub_02058B80 - b _02057990 -_0205798E: - ldr r0, [sp, #0x4] -_02057990: - str r0, [r4, #0x2c] - add r0, r5, #0x0 - bl sub_020585B0 - add r3, r4, #0x0 - add r3, #0x30 - mov r2, #0x10 -_0205799E: - ldrb r1, [r0, #0x0] - add r0, r0, #0x1 - strb r1, [r3, #0x0] - add r3, r3, #0x1 - sub r2, r2, #0x1 - bne _0205799E - add r0, r5, #0x0 - bl sub_020585D8 - add r4, #0x40 - mov r2, #0x10 -_020579B4: - ldrb r1, [r0, #0x0] - add r0, r0, #0x1 - strb r1, [r4, #0x0] - add r4, r4, #0x1 - sub r2, r2, #0x1 - bne _020579B4 - add sp, #0xc - pop {r3-r6, pc} - - thumb_func_start sub_020579C4 -sub_020579C4: ; 0x020579C4 - push {r4-r5, lr} - sub sp, #0xc - add r4, r1, #0x0 - ldr r1, [r4, #0x0] - add r5, r0, #0x0 - bl sub_02058408 - ldr r1, [r4, #0x4] - add r0, r5, #0x0 - bl sub_0205843C - ldrb r1, [r4, #0x8] - add r0, r5, #0x0 - bl sub_02058444 - ldrh r1, [r4, #0x10] - add r0, r5, #0x0 - bl sub_0205844C - ldrh r1, [r4, #0x12] - add r0, r5, #0x0 - bl sub_02058454 - ldrb r1, [r4, #0x9] - add r0, r5, #0x0 - bl sub_0205847C - ldrh r1, [r4, #0x14] - add r0, r5, #0x0 - bl sub_02058484 - ldrh r1, [r4, #0x16] - add r0, r5, #0x0 - bl sub_0205848C - ldrh r1, [r4, #0x18] - add r0, r5, #0x0 - bl sub_02058494 - mov r1, #0xc - ldrsb r1, [r4, r1] - add r0, r5, #0x0 - bl sub_0205849C - mov r1, #0xd - ldrsb r1, [r4, r1] - add r0, r5, #0x0 - bl sub_020584A4 - mov r1, #0xe - ldrsb r1, [r4, r1] - add r0, r5, #0x0 - bl sub_020584CC - mov r1, #0x1a - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - mov r2, #0x0 - bl sub_020584EC - mov r1, #0x1c - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - mov r2, #0x1 - bl sub_020584EC - mov r1, #0x1e - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - mov r2, #0x2 - bl sub_020584EC - mov r1, #0xa - ldrsb r1, [r4, r1] - add r0, r5, #0x0 - bl sub_02058534 - mov r1, #0xb - ldrsb r1, [r4, r1] - add r0, r5, #0x0 - bl sub_0205853C - mov r1, #0x20 - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - bl sub_02058B00 - mov r1, #0x22 - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - bl sub_02058B08 - mov r1, #0x24 - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - bl sub_02058B10 - mov r1, #0x26 - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - bl sub_02058B30 - mov r1, #0x28 - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - bl sub_02058B40 - mov r1, #0x2a - ldrsh r1, [r4, r1] - add r0, r5, #0x0 - bl sub_02058B50 - add r1, sp, #0x0 - mov r0, #0x0 - str r0, [r1, #0x0] - str r0, [r1, #0x4] - str r0, [r1, #0x8] - ldr r0, [r4, #0x2c] - str r0, [sp, #0x4] - add r0, r5, #0x0 - bl sub_02058B6C - add r0, r5, #0x0 - bl sub_020585B0 - add r3, r4, #0x0 - add r3, #0x30 - mov r2, #0x10 -_02057AC4: - ldrb r1, [r3, #0x0] - add r3, r3, #0x1 - strb r1, [r0, #0x0] - add r0, r0, #0x1 - sub r2, r2, #0x1 - bne _02057AC4 - add r0, r5, #0x0 - bl sub_020585D8 - add r4, #0x40 - mov r2, #0x10 -_02057ADA: - ldrb r1, [r4, #0x0] - add r4, r4, #0x1 - strb r1, [r0, #0x0] - add r0, r0, #0x1 - sub r2, r2, #0x1 - bne _02057ADA - add sp, #0xc - pop {r4-r5, pc} - .balign 4 - - thumb_func_start sub_02057AEC -sub_02057AEC: ; 0x02057AEC - push {r3-r5, lr} - add r4, r1, #0x0 - add r5, r0, #0x0 - add r0, r4, #0x0 - bl sub_02057B34 - add r0, r4, #0x0 - bl sub_02057B54 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058570 - add r0, r4, #0x0 - bl sub_02057EE0 - add r0, r4, #0x0 - bl sub_0205AE80 - add r0, r4, #0x0 - bl sub_020581B4 - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_02057CF0 - add r0, r4, #0x0 - bl sub_0205866C - add r0, r5, #0x0 - bl sub_02058360 - bl sub_0205836C - pop {r3-r5, pc} - .balign 4 - - thumb_func_start sub_02057B34 -sub_02057B34: ; 0x02057B34 - push {r4, lr} - mov r1, #0x5 - add r4, r0, #0x0 - bl sub_02058410 - ldr r1, _02057B50 ; =0x00EF4248 - add r0, r4, #0x0 - bl sub_02058418 - add r0, r4, #0x0 - bl sub_0205815C - pop {r4, pc} - nop -_02057B50: .word 0x00EF4248 - - thumb_func_start sub_02057B54 -sub_02057B54: ; 0x02057B54 - push {r3-r4, lr} - sub sp, #0xc - add r4, r0, #0x0 - add r1, sp, #0x0 - bl sub_02058B5C - add r0, r4, #0x0 - bl sub_02058B2C - add r1, r0, #0x0 - mov r0, #0x2 - lsl r2, r1, #0x10 - lsl r0, r0, #0xe - add r0, r2, r0 - str r0, [sp, #0x0] - add r0, r4, #0x0 - bl sub_02058B18 - add r0, r4, #0x0 - bl sub_02058B3C - add r1, r0, #0x0 - add r0, r4, #0x0 - bl sub_02058B20 - add r0, r4, #0x0 - bl sub_02058B4C - add r1, r0, #0x0 - mov r0, #0x2 - lsl r2, r1, #0x10 - lsl r0, r0, #0xe - add r0, r2, r0 - str r0, [sp, #0x8] - add r0, r4, #0x0 - bl sub_02058B28 - add r0, r4, #0x0 - add r1, sp, #0x0 - bl sub_02058B6C - add sp, #0xc - pop {r3-r4, pc} - .balign 4 - - thumb_func_start sub_02057BAC -sub_02057BAC: ; 0x02057BAC - push {r3-r7, lr} - sub sp, #0x8 - add r5, r2, #0x0 - add r7, r0, #0x0 - add r4, r3, #0x0 - str r1, [sp, #0x0] - cmp r5, #0x0 - bne _02057BC0 - bl GF_AssertFail -_02057BC0: - lsl r0, r5, #0x5 - str r0, [sp, #0x4] - ldr r1, [sp, #0x4] - mov r0, #0xb - bl AllocFromHeapAtEnd - add r6, r0, #0x0 - bne _02057BD4 - bl GF_AssertFail -_02057BD4: - ldr r2, [sp, #0x4] - add r0, r6, #0x0 - add r1, r4, #0x0 - bl memcpy - mov r0, #0xb - mov r1, #0x14 - bl AllocFromHeapAtEnd - add r4, r0, #0x0 - bne _02057BEE - bl GF_AssertFail -_02057BEE: - ldr r0, [sp, #0x0] - str r0, [r4, #0x0] - str r5, [r4, #0x4] - mov r0, #0x0 - str r0, [r4, #0x8] - str r7, [r4, #0xc] - add r0, r4, #0x0 - str r6, [r4, #0x10] - bl sub_02057C08 - add sp, #0x8 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_02057C08 -sub_02057C08: ; 0x02057C08 - push {r3-r7, lr} - add r5, r0, #0x0 - ldr r0, [r5, #0xc] - bl sub_020583E8 - add r6, r5, #0x0 - ldr r4, [r5, #0x10] - add r7, r0, #0x0 - add r6, #0x8 -_02057C1A: - add r0, r4, #0x0 - bl sub_02058CE0 - cmp r0, #0x1 - beq _02057C30 - ldrh r1, [r4, #0x8] - add r0, r7, #0x0 - bl FlagCheck - cmp r0, #0x0 - bne _02057C42 -_02057C30: - ldr r0, [r5, #0xc] - ldr r2, [r5, #0x0] - add r1, r4, #0x0 - bl sub_02057494 - cmp r0, #0x0 - bne _02057C42 - bl GF_AssertFail -_02057C42: - ldr r0, [r6, #0x0] - add r4, #0x20 - add r0, r0, #0x1 - str r0, [r6, #0x0] - ldr r1, [r5, #0x8] - ldr r0, [r5, #0x4] - cmp r1, r0 - blt _02057C1A - ldr r1, [r5, #0x10] - mov r0, #0xb - bl FreeToHeapExplicit - mov r0, #0xb - add r1, r5, #0x0 - bl FreeToHeapExplicit - pop {r3-r7, pc} - - thumb_func_start sub_02057C64 -sub_02057C64: ; 0x02057C64 - push {r3-r7, lr} - add r5, r0, #0x0 - mov r4, #0x0 - bl sub_02058368 - add r6, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583CC - mov r7, #0x4a - add r5, r0, #0x0 - lsl r7, r7, #0x2 -_02057C7C: - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_02058424 - cmp r0, #0x0 - bne _02057C8C - add r0, r5, #0x0 - pop {r3-r7, pc} -_02057C8C: - add r4, r4, #0x1 - add r5, r5, r7 - cmp r4, r6 - blt _02057C7C - mov r0, #0x0 - pop {r3-r7, pc} - - thumb_func_start sub_02057C98 -sub_02057C98: ; 0x02057C98 - push {r3-r7, lr} - sub sp, #0x8 - add r5, r1, #0x0 - mov r1, #0x0 - add r4, r2, #0x0 - str r1, [sp, #0x4] - add r1, sp, #0x0 - add r2, sp, #0x4 - mov r3, #0x1 - add r6, r0, #0x0 - bl sub_020580F4 - cmp r0, #0x1 - bne _02057CEA - add r7, sp, #0x0 -_02057CB6: - ldr r0, [sp, #0x0] - bl sub_020589CC - cmp r0, #0x1 - bne _02057CDA - ldr r0, [sp, #0x0] - bl MapObject_GetID - cmp r5, r0 - bne _02057CDA - ldr r0, [sp, #0x0] - bl sub_02058750 - cmp r4, r0 - bne _02057CDA - ldr r0, [sp, #0x0] - add sp, #0x8 - pop {r3-r7, pc} -_02057CDA: - add r0, r6, #0x0 - add r1, r7, #0x0 - add r2, sp, #0x4 - mov r3, #0x1 - bl sub_020580F4 - cmp r0, #0x1 - beq _02057CB6 -_02057CEA: - mov r0, #0x0 - add sp, #0x8 - pop {r3-r7, pc} - - thumb_func_start sub_02057CF0 -sub_02057CF0: ; 0x02057CF0 - push {r3-r5, lr} - add r4, r1, #0x0 - bl sub_0205839C - add r5, r0, #0x0 - add r0, r4, #0x0 - bl sub_02058480 - cmp r0, #0x30 - beq _02057D08 - cmp r0, #0x32 - bne _02057D0A -_02057D08: - add r5, r5, #0x2 -_02057D0A: - ldr r0, _02057D28 ; =sub_0205832C - add r1, r4, #0x0 - add r2, r5, #0x0 - bl sub_0200CA44 - add r5, r0, #0x0 - bne _02057D1C - bl GF_AssertFail -_02057D1C: - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058554 - pop {r3-r5, pc} - nop -_02057D28: .word sub_0205832C - - thumb_func_start sub_02057D2C -sub_02057D2C: ; 0x02057D2C - push {r4-r6, lr} - add r4, r1, #0x0 - add r5, r0, #0x0 - add r0, r4, #0x0 - add r6, r2, #0x0 - bl sub_02058BFC - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058444 - add r0, r4, #0x0 - bl sub_02058C04 - add r1, r0, #0x0 - add r0, r6, #0x0 - bl sub_02058170 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058454 - add r0, r4, #0x0 - bl sub_02058C0C - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_0205847C - add r0, r4, #0x0 - bl sub_02058C14 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058484 - add r0, r4, #0x0 - bl sub_02058C1C - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_0205848C - add r0, r4, #0x0 - bl sub_02058C24 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058494 - add r0, r4, #0x0 - bl sub_02058C2C - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_0205849C - add r0, r4, #0x0 - mov r1, #0x0 - bl sub_02058C58 - add r1, r0, #0x0 - add r0, r5, #0x0 - mov r2, #0x0 - bl sub_020584EC - add r0, r4, #0x0 - mov r1, #0x1 - bl sub_02058C58 - add r1, r0, #0x0 - add r0, r5, #0x0 - mov r2, #0x1 - bl sub_020584EC - add r0, r4, #0x0 - mov r1, #0x2 - bl sub_02058C58 - add r1, r0, #0x0 - add r0, r5, #0x0 - mov r2, #0x2 - bl sub_020584EC - add r0, r4, #0x0 - bl sub_02058C80 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058534 - add r0, r4, #0x0 - bl sub_02058C8C - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_0205853C - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_02057DFC - pop {r4-r6, pc} - .balign 4 - - thumb_func_start sub_02057DFC -sub_02057DFC: ; 0x02057DFC - push {r3-r6, lr} - sub sp, #0xc - add r6, r1, #0x0 - add r4, r0, #0x0 - add r0, r6, #0x0 - bl sub_02058C98 - add r5, r0, #0x0 - mov r0, #0x2 - lsl r1, r5, #0x10 - lsl r0, r0, #0xe - add r0, r1, r0 - str r0, [sp, #0x0] - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B00 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B18 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B30 - add r0, r6, #0x0 - bl sub_02058CA0 - asr r1, r0, #0x3 - str r0, [sp, #0x4] - asr r0, r1, #0xb - lsr r0, r0, #0x14 - add r0, r1, r0 - asr r5, r0, #0xc - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B08 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B20 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B40 - add r0, r6, #0x0 - bl sub_02058CA8 - add r5, r0, #0x0 - mov r0, #0x2 - lsl r1, r5, #0x10 - lsl r0, r0, #0xe - add r0, r1, r0 - str r0, [sp, #0x8] - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B10 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B28 - add r0, r4, #0x0 - add r1, r5, #0x0 - bl sub_02058B50 - add r0, r4, #0x0 - add r1, sp, #0x0 - bl sub_02058B6C - add sp, #0xc - pop {r3-r6, pc} - .balign 4 - - thumb_func_start sub_02057E90 -sub_02057E90: ; 0x02057E90 - push {r3-r5, lr} - add r4, r1, #0x0 - ldr r1, _02057EDC ; =0x00001801 - add r5, r0, #0x0 - bl sub_02058410 - add r0, r5, #0x0 - bl sub_020581F8 - cmp r0, #0x1 - bne _02057EAE - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_020589B0 -_02057EAE: - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_02058570 - add r0, r5, #0x0 - bl sub_020584A0 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_020584A4 - add r0, r5, #0x0 - bl sub_020584A0 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_020584CC - add r0, r5, #0x0 - bl sub_0205AE80 - pop {r3-r5, pc} - nop -_02057EDC: .word 0x00001801 - - thumb_func_start sub_02057EE0 -sub_02057EE0: ; 0x02057EE0 - push {r3-r5, lr} - add r5, r0, #0x0 - bl sub_02058480 - bl sub_02058D14 - add r4, r0, #0x0 - bl sub_02058D2C - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058630 - add r0, r4, #0x0 - bl sub_02058D30 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058644 - add r0, r4, #0x0 - bl sub_02058D34 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058658 - pop {r3-r5, pc} - - thumb_func_start sub_02057F18 -sub_02057F18: ; 0x02057F18 - push {r3-r5, lr} - add r4, r0, #0x0 - bl sub_02058458 - mov r1, #0x2 - lsl r1, r1, #0xc - cmp r0, r1 - bne _02057F2C - ldr r5, _02057F7C ; =ov05_021F9080 - b _02057F32 -_02057F2C: - bl sub_02058D4C - add r5, r0, #0x0 -_02057F32: - add r0, r5, #0x0 - bl sub_02058D38 - add r1, r0, #0x0 - add r0, r4, #0x0 - bl sub_02058684 - add r0, r5, #0x0 - bl sub_02058D3C - add r1, r0, #0x0 - add r0, r4, #0x0 - bl sub_02058698 - add r0, r5, #0x0 - bl sub_02058D40 - add r1, r0, #0x0 - add r0, r4, #0x0 - bl sub_020586AC - add r0, r5, #0x0 - bl sub_02058D44 - add r1, r0, #0x0 - add r0, r4, #0x0 - bl sub_020586C0 - add r0, r5, #0x0 - bl sub_02058D48 - add r1, r0, #0x0 - add r0, r4, #0x0 - bl sub_020586D4 - pop {r3-r5, pc} - nop -_02057F7C: .word ov05_021F9080 - - thumb_func_start sub_02057F80 -sub_02057F80: ; 0x02057F80 - ldr r3, _02057F8C ; =memset - mov r2, #0x4a - mov r1, #0x0 - lsl r2, r2, #0x2 - bx r3 - nop -_02057F8C: .word memset - - thumb_func_start sub_02057F90 -sub_02057F90: ; 0x02057F90 - push {r3-r7, lr} - add r6, r2, #0x0 - add r5, r0, #0x0 - add r4, r3, #0x0 - str r1, [sp, #0x0] - cmp r6, #0x0 - beq _0205800A -_02057F9E: - add r0, r4, #0x0 - bl sub_02058BFC - add r7, r0, #0x0 - add r0, r5, #0x0 - bl MapObject_GetID - cmp r7, r0 - bne _02058002 - add r0, r4, #0x0 - bl sub_02058CE0 - cmp r0, #0x1 - bne _02057FE8 - add r0, r4, #0x0 - bl sub_02058CFC - add r7, r0, #0x0 - add r0, r5, #0x0 - bl sub_020589CC - cmp r0, #0x1 - bne _02057FDA - add r0, r5, #0x0 - bl sub_02058750 - cmp r7, r0 - bne _02058002 - mov r0, #0x1 - pop {r3-r7, pc} -_02057FDA: - add r0, r5, #0x0 - bl sub_02058450 - cmp r7, r0 - bne _02058002 - mov r0, #0x2 - pop {r3-r7, pc} -_02057FE8: - add r0, r5, #0x0 - bl sub_020589CC - cmp r0, #0x1 - bne _02058002 - add r0, r5, #0x0 - bl sub_02058750 - ldr r1, [sp, #0x0] - cmp r1, r0 - bne _02058002 - mov r0, #0x2 - pop {r3-r7, pc} -_02058002: - sub r6, r6, #0x1 - add r4, #0x20 - cmp r6, #0x0 - bne _02057F9E -_0205800A: - mov r0, #0x0 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_02058010 -sub_02058010: ; 0x02058010 - push {r3-r7, lr} - sub sp, #0x8 - add r5, r1, #0x0 - mov r1, #0x0 - add r4, r2, #0x0 - str r1, [sp, #0x4] - add r1, sp, #0x0 - add r2, sp, #0x4 - mov r3, #0x1 - add r6, r0, #0x0 - bl sub_020580F4 - cmp r0, #0x1 - bne _02058058 - add r7, sp, #0x0 -_0205802E: - ldr r0, [sp, #0x0] - bl MapObject_GetID - cmp r5, r0 - bne _02058048 - ldr r0, [sp, #0x0] - bl sub_02058450 - cmp r4, r0 - bne _02058048 - ldr r0, [sp, #0x0] - add sp, #0x8 - pop {r3-r7, pc} -_02058048: - add r0, r6, #0x0 - add r1, r7, #0x0 - add r2, sp, #0x4 - mov r3, #0x1 - bl sub_020580F4 - cmp r0, #0x1 - beq _0205802E -_02058058: - mov r0, #0x0 - add sp, #0x8 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start GetMapObjectByID -GetMapObjectByID: ; 0x02058060 - push {r3-r7, lr} - add r5, r0, #0x0 - add r6, r1, #0x0 - cmp r5, #0x0 - bne _0205806E - bl GF_AssertFail -_0205806E: - add r0, r5, #0x0 - bl sub_02058368 - add r4, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583C4 - mov r7, #0x4a - add r5, r0, #0x0 - lsl r7, r7, #0x2 -_02058082: - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_0205842C - cmp r0, #0x1 - bne _020580A6 - add r0, r5, #0x0 - bl sub_020589CC - cmp r0, #0x0 - bne _020580A6 - add r0, r5, #0x0 - bl MapObject_GetID - cmp r6, r0 - bne _020580A6 - add r0, r5, #0x0 - pop {r3-r7, pc} -_020580A6: - sub r4, r4, #0x1 - add r5, r5, r7 - cmp r4, #0x0 - bgt _02058082 - mov r0, #0x0 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_020580B4 -sub_020580B4: ; 0x020580B4 - push {r3-r7, lr} - add r5, r0, #0x0 - add r6, r1, #0x0 - bl sub_02058368 - add r4, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583C4 - mov r7, #0x4a - add r5, r0, #0x0 - lsl r7, r7, #0x2 -_020580CC: - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_0205842C - cmp r0, #0x1 - bne _020580E6 - add r0, r5, #0x0 - bl sub_02058480 - cmp r6, r0 - bne _020580E6 - add r0, r5, #0x0 - pop {r3-r7, pc} -_020580E6: - sub r4, r4, #0x1 - add r5, r5, r7 - cmp r4, #0x0 - bgt _020580CC - mov r0, #0x0 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_020580F4 -sub_020580F4: ; 0x020580F4 - push {r3-r7, lr} - add r5, r2, #0x0 - add r4, r0, #0x0 - str r1, [sp, #0x0] - add r6, r3, #0x0 - bl sub_02058368 - add r7, r0, #0x0 - ldr r0, [r5, #0x0] - cmp r0, r7 - blt _0205810E - mov r0, #0x0 - pop {r3-r7, pc} -_0205810E: - add r0, r4, #0x0 - bl sub_020583C4 - mov r1, #0x4a - ldr r2, [r5, #0x0] - lsl r1, r1, #0x2 - mul r1, r2 - add r4, r0, r1 -_0205811E: - ldr r0, [r5, #0x0] - add r1, r6, #0x0 - add r0, r0, #0x1 - str r0, [r5, #0x0] - add r0, r4, #0x0 - bl sub_02058424 - cmp r6, r0 - bne _02058138 - ldr r0, [sp, #0x0] - str r4, [r0, #0x0] - mov r0, #0x1 - pop {r3-r7, pc} -_02058138: - mov r0, #0x4a - lsl r0, r0, #0x2 - add r4, r4, r0 - ldr r0, [r5, #0x0] - cmp r0, r7 - blt _0205811E - mov r0, #0x0 - pop {r3-r7, pc} - - thumb_func_start sub_02058148 -sub_02058148: ; 0x02058148 - push {r4, lr} - add r4, r0, #0x0 - mov r1, #0x4 - bl sub_02058410 - add r0, r4, #0x0 - bl sub_0205815C - pop {r4, pc} - .balign 4 - - thumb_func_start sub_0205815C -sub_0205815C: ; 0x0205815C - ldr r3, _02058164 ; =sub_02058418 - ldr r1, _02058168 ; =0x05108000 - bx r3 - nop -_02058164: .word sub_02058418 -_02058168: .word 0x05108000 - - thumb_func_start sub_0205816C -sub_0205816C: ; 0x0205816C - bx lr - .balign 4 - - thumb_func_start sub_02058170 -sub_02058170: ; 0x02058170 - push {r3, lr} - cmp r1, #0x65 - blt _02058186 - cmp r1, #0x75 - bgt _02058186 - sub r1, #0x65 - lsl r1, r1, #0x10 - lsr r1, r1, #0x10 - bl sub_02039504 - add r1, r0, #0x0 -_02058186: - add r0, r1, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_0205818C -sub_0205818C: ; 0x0205818C - push {r4, lr} - mov r1, #0x1 - lsl r1, r1, #0xc - add r4, r0, #0x0 - bl sub_02058424 - cmp r0, #0x0 - beq _020581A2 - add r0, r4, #0x0 - bl sub_02059D1C -_020581A2: - pop {r4, pc} - - thumb_func_start sub_020581A4 -sub_020581A4: ; 0x020581A4 - push {r4, lr} - add r4, r0, #0x0 - bl sub_02057EE0 - add r0, r4, #0x0 - bl sub_02058EE8 - pop {r4, pc} - - thumb_func_start sub_020581B4 -sub_020581B4: ; 0x020581B4 - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058578 - bl sub_020587E0 - cmp r0, #0x0 - beq _020581F6 - add r0, r4, #0x0 - bl sub_0205818C - add r0, r4, #0x0 - mov r1, #0x0 - bl sub_02058544 - add r0, r4, #0x0 - mov r1, #0x0 - bl ov05_021F2E0C - add r0, r4, #0x0 - bl sub_02058884 - cmp r0, #0x0 - bne _020581F6 - add r0, r4, #0x0 - bl sub_02057F18 - add r0, r4, #0x0 - bl sub_0205868C - add r0, r4, #0x0 - bl sub_02058878 -_020581F6: - pop {r4, pc} - - thumb_func_start sub_020581F8 -sub_020581F8: ; 0x020581F8 - push {r3, lr} - bl sub_02058498 - lsl r0, r0, #0x10 - lsr r1, r0, #0x10 - ldr r0, _02058210 ; =0x0000FFFF - cmp r1, r0 - bne _0205820C - mov r0, #0x1 - pop {r3, pc} -_0205820C: - mov r0, #0x0 - pop {r3, pc} - .balign 4 -_02058210: .word 0x0000FFFF - - thumb_func_start sub_02058214 -sub_02058214: ; 0x02058214 - push {r4-r6, lr} - add r5, r0, #0x0 - add r4, r1, #0x0 - add r6, r2, #0x0 - bl sub_020589CC - cmp r0, #0x1 - beq _02058228 - bl GF_AssertFail -_02058228: - add r0, r5, #0x0 - mov r1, #0x0 - bl sub_020589B0 - add r0, r5, #0x0 - add r1, r6, #0x0 - bl sub_0205844C - add r0, r4, #0x0 - bl sub_02058C24 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058494 - add r0, r4, #0x0 - bl sub_02058C1C - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_0205848C - pop {r4-r6, pc} - .balign 4 - - thumb_func_start sub_02058258 -sub_02058258: ; 0x02058258 - push {r4-r6, lr} - add r6, r2, #0x0 - add r5, r0, #0x0 - add r0, r6, #0x0 - add r4, r1, #0x0 - bl sub_02058CE0 - cmp r0, #0x1 - beq _0205826E - bl GF_AssertFail -_0205826E: - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_020589B0 - add r0, r6, #0x0 - bl sub_02058C24 - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_02058494 - add r0, r6, #0x0 - bl sub_02058CFC - add r1, r0, #0x0 - add r0, r5, #0x0 - bl sub_0205848C - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_0205844C - pop {r4-r6, pc} - - thumb_func_start sub_0205829C -sub_0205829C: ; 0x0205829C - push {r4, lr} - add r4, r1, #0x0 - bl sub_02058744 - add r0, r0, r4 - pop {r4, pc} - - thumb_func_start sub_020582A8 -sub_020582A8: ; 0x020582A8 - push {r4-r6, lr} - add r6, r1, #0x0 - mov r1, #0x1 - add r5, r0, #0x0 - add r4, r2, #0x0 - bl sub_0205842C - cmp r0, #0x0 - bne _020582BE - mov r0, #0x0 - pop {r4-r6, pc} -_020582BE: - add r0, r5, #0x0 - bl MapObject_GetID - cmp r6, r0 - beq _020582CC - mov r0, #0x0 - pop {r4-r6, pc} -_020582CC: - add r0, r5, #0x0 - bl sub_02058450 - cmp r4, r0 - beq _020582F2 - add r0, r5, #0x0 - bl sub_020589CC - cmp r0, #0x0 - bne _020582E4 - mov r0, #0x0 - pop {r4-r6, pc} -_020582E4: - add r0, r5, #0x0 - bl sub_02058750 - cmp r4, r0 - beq _020582F2 - mov r0, #0x0 - pop {r4-r6, pc} -_020582F2: - mov r0, #0x1 - pop {r4-r6, pc} - .balign 4 - - thumb_func_start sub_020582F8 -sub_020582F8: ; 0x020582F8 - push {r3-r7, lr} - add r4, r1, #0x0 - mov r1, #0x1 - add r5, r0, #0x0 - add r6, r2, #0x0 - add r7, r3, #0x0 - bl sub_0205842C - cmp r0, #0x0 - bne _02058310 - mov r0, #0x0 - pop {r3-r7, pc} -_02058310: - add r0, r5, #0x0 - bl sub_0205845C - cmp r0, r4 - beq _0205831E - mov r0, #0x0 - pop {r3-r7, pc} -_0205831E: - add r0, r5, #0x0 - add r1, r6, #0x0 - add r2, r7, #0x0 - bl sub_020582A8 - pop {r3-r7, pc} - .balign 4 - - thumb_func_start sub_0205832C -sub_0205832C: ; 0x0205832C - push {r4, lr} - add r4, r1, #0x0 - add r0, r4, #0x0 - bl sub_02058EF8 - add r0, r4, #0x0 - bl sub_02058830 - cmp r0, #0x0 - beq _02058346 - add r0, r4, #0x0 - bl sub_02058348 -_02058346: - pop {r4, pc} - - thumb_func_start sub_02058348 -sub_02058348: ; 0x02058348 - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058578 - bl sub_020587E0 - cmp r0, #0x1 - bne _0205835E - add r0, r4, #0x0 - bl ov05_021F1D8C -_0205835E: - pop {r4, pc} - - thumb_func_start sub_02058360 -sub_02058360: ; 0x02058360 - bx lr - .balign 4 - - thumb_func_start sub_02058364 -sub_02058364: ; 0x02058364 - str r1, [r0, #0x4] - bx lr - - thumb_func_start sub_02058368 -sub_02058368: ; 0x02058368 - ldr r0, [r0, #0x4] - bx lr - - thumb_func_start sub_0205836C -sub_0205836C: ; 0x0205836C - ldr r1, [r0, #0x8] - add r1, r1, #0x1 - str r1, [r0, #0x8] - bx lr - - thumb_func_start sub_02058374 -sub_02058374: ; 0x02058374 - ldr r1, [r0, #0x8] - sub r1, r1, #0x1 - str r1, [r0, #0x8] - bx lr - - thumb_func_start sub_0205837C -sub_0205837C: ; 0x0205837C - ldr r2, [r0, #0x0] - orr r1, r2 - str r1, [r0, #0x0] - bx lr - - thumb_func_start sub_02058384 -sub_02058384: ; 0x02058384 - ldr r2, [r0, #0x0] - mvn r1, r1 - and r1, r2 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058390 -sub_02058390: ; 0x02058390 - ldr r0, [r0, #0x0] - and r0, r1 - bx lr - .balign 4 - - thumb_func_start sub_02058398 -sub_02058398: ; 0x02058398 - str r1, [r0, #0xc] - bx lr - - thumb_func_start sub_0205839C -sub_0205839C: ; 0x0205839C - ldr r0, [r0, #0xc] - bx lr - - thumb_func_start sub_020583A0 -sub_020583A0: ; 0x020583A0 - add r0, #0x18 - bx lr - - thumb_func_start sub_020583A4 -sub_020583A4: ; 0x020583A4 - mov r2, #0x12 - lsl r2, r2, #0x4 - str r1, [r0, r2] - bx lr - - thumb_func_start sub_020583AC -sub_020583AC: ; 0x020583AC - mov r1, #0x12 - lsl r1, r1, #0x4 - ldr r0, [r0, r1] - bx lr - - thumb_func_start sub_020583B4 -sub_020583B4: ; 0x020583B4 - mov r2, #0x49 - lsl r2, r2, #0x2 - str r1, [r0, r2] - bx lr - - thumb_func_start sub_020583BC -sub_020583BC: ; 0x020583BC - mov r1, #0x49 - lsl r1, r1, #0x2 - ldr r0, [r0, r1] - bx lr - - thumb_func_start sub_020583C4 -sub_020583C4: ; 0x020583C4 - mov r1, #0x49 - lsl r1, r1, #0x2 - ldr r0, [r0, r1] - bx lr - - thumb_func_start sub_020583CC -sub_020583CC: ; 0x020583CC - mov r1, #0x49 - lsl r1, r1, #0x2 - ldr r0, [r0, r1] - bx lr - - thumb_func_start sub_020583D4 -sub_020583D4: ; 0x020583D4 - mov r1, #0x4a - ldr r2, [r0, #0x0] - lsl r1, r1, #0x2 - add r1, r2, r1 - str r1, [r0, #0x0] - bx lr - - thumb_func_start sub_020583E0 -sub_020583E0: ; 0x020583E0 - mov r2, #0x4a - lsl r2, r2, #0x2 - str r1, [r0, r2] - bx lr - - thumb_func_start sub_020583E8 -sub_020583E8: ; 0x020583E8 - mov r1, #0x4a - lsl r1, r1, #0x2 - ldr r0, [r0, r1] - bx lr - - thumb_func_start sub_020583F0 -sub_020583F0: ; 0x020583F0 - str r1, [r0, #0x14] - bx lr - - thumb_func_start sub_020583F4 -sub_020583F4: ; 0x020583F4 - push {r4, lr} - add r4, r0, #0x0 - ldr r0, [r4, #0x14] - cmp r0, #0x0 - bne _02058402 - bl GF_AssertFail -_02058402: - ldr r0, [r4, #0x14] - pop {r4, pc} - .balign 4 - - thumb_func_start sub_02058408 -sub_02058408: ; 0x02058408 - str r1, [r0, #0x0] - bx lr - - thumb_func_start sub_0205840C -sub_0205840C: ; 0x0205840C - ldr r0, [r0, #0x0] - bx lr - - thumb_func_start sub_02058410 -sub_02058410: ; 0x02058410 - ldr r2, [r0, #0x0] - orr r1, r2 - str r1, [r0, #0x0] - bx lr - - thumb_func_start sub_02058418 -sub_02058418: ; 0x02058418 - ldr r2, [r0, #0x0] - mvn r1, r1 - and r1, r2 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058424 -sub_02058424: ; 0x02058424 - ldr r0, [r0, #0x0] - and r0, r1 - bx lr - .balign 4 - - thumb_func_start sub_0205842C -sub_0205842C: ; 0x0205842C - ldr r0, [r0, #0x0] - tst r0, r1 - beq _02058436 - mov r0, #0x1 - bx lr -_02058436: - mov r0, #0x0 - bx lr - .balign 4 - - thumb_func_start sub_0205843C -sub_0205843C: ; 0x0205843C - str r1, [r0, #0x4] - bx lr - - thumb_func_start sub_02058440 -sub_02058440: ; 0x02058440 - ldr r0, [r0, #0x4] - bx lr - - thumb_func_start sub_02058444 -sub_02058444: ; 0x02058444 - str r1, [r0, #0x8] - bx lr - - thumb_func_start MapObject_GetID -MapObject_GetID: ; 0x02058448 - ldr r0, [r0, #0x8] - bx lr - - thumb_func_start sub_0205844C -sub_0205844C: ; 0x0205844C - str r1, [r0, #0xc] - bx lr - - thumb_func_start sub_02058450 -sub_02058450: ; 0x02058450 - ldr r0, [r0, #0xc] - bx lr - - thumb_func_start sub_02058454 -sub_02058454: ; 0x02058454 - str r1, [r0, #0x10] - bx lr - - thumb_func_start sub_02058458 -sub_02058458: ; 0x02058458 - ldr r0, [r0, #0x10] - bx lr - - thumb_func_start sub_0205845C -sub_0205845C: ; 0x0205845C - push {r3-r5, lr} - add r5, r0, #0x0 - bl sub_02058458 - add r4, r0, #0x0 - bl sub_0205C334 - cmp r0, #0x1 - bne _02058476 - add r0, r5, #0x0 - bl sub_0205C340 - add r4, r0, #0x0 -_02058476: - add r0, r4, #0x0 - pop {r3-r5, pc} - .balign 4 - - thumb_func_start sub_0205847C -sub_0205847C: ; 0x0205847C - str r1, [r0, #0x14] - bx lr - - thumb_func_start sub_02058480 -sub_02058480: ; 0x02058480 - ldr r0, [r0, #0x14] - bx lr - - thumb_func_start sub_02058484 -sub_02058484: ; 0x02058484 - str r1, [r0, #0x18] - bx lr - - thumb_func_start sub_02058488 -sub_02058488: ; 0x02058488 - ldr r0, [r0, #0x18] - bx lr - - thumb_func_start sub_0205848C -sub_0205848C: ; 0x0205848C - str r1, [r0, #0x1c] - bx lr - - thumb_func_start sub_02058490 -sub_02058490: ; 0x02058490 - ldr r0, [r0, #0x1c] - bx lr - - thumb_func_start sub_02058494 -sub_02058494: ; 0x02058494 - str r1, [r0, #0x20] - bx lr - - thumb_func_start sub_02058498 -sub_02058498: ; 0x02058498 - ldr r0, [r0, #0x20] - bx lr - - thumb_func_start sub_0205849C -sub_0205849C: ; 0x0205849C - str r1, [r0, #0x24] - bx lr - - thumb_func_start sub_020584A0 -sub_020584A0: ; 0x020584A0 - ldr r0, [r0, #0x24] - bx lr - - thumb_func_start sub_020584A4 -sub_020584A4: ; 0x020584A4 - ldr r2, [r0, #0x28] - str r2, [r0, #0x30] - str r1, [r0, #0x28] - bx lr - - thumb_func_start sub_020584AC -sub_020584AC: ; 0x020584AC - push {r3-r5, lr} - add r4, r1, #0x0 - mov r1, #0x80 - add r5, r0, #0x0 - bl sub_02058424 - cmp r0, #0x0 - bne _020584C2 - ldr r0, [r5, #0x28] - str r0, [r5, #0x30] - str r4, [r5, #0x28] -_020584C2: - pop {r3-r5, pc} - - thumb_func_start sub_020584C4 -sub_020584C4: ; 0x020584C4 - ldr r0, [r0, #0x28] - bx lr - - thumb_func_start sub_020584C8 -sub_020584C8: ; 0x020584C8 - ldr r0, [r0, #0x30] - bx lr - - thumb_func_start sub_020584CC -sub_020584CC: ; 0x020584CC - ldr r2, [r0, #0x2c] - str r2, [r0, #0x34] - str r1, [r0, #0x2c] - bx lr - - thumb_func_start sub_020584D4 -sub_020584D4: ; 0x020584D4 - ldr r0, [r0, #0x2c] - bx lr - - thumb_func_start sub_020584D8 -sub_020584D8: ; 0x020584D8 - push {r3-r5, lr} - add r5, r0, #0x0 - add r4, r1, #0x0 - bl sub_020584AC - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_020584CC - pop {r3-r5, pc} - - thumb_func_start sub_020584EC -sub_020584EC: ; 0x020584EC - push {r3, lr} - cmp r2, #0x0 - beq _020584FC - cmp r2, #0x1 - beq _02058500 - cmp r2, #0x2 - beq _02058504 - b _02058508 -_020584FC: - str r1, [r0, #0x38] - pop {r3, pc} -_02058500: - str r1, [r0, #0x3c] - pop {r3, pc} -_02058504: - str r1, [r0, #0x40] - pop {r3, pc} -_02058508: - bl GF_AssertFail - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058510 -sub_02058510: ; 0x02058510 - push {r3, lr} - cmp r1, #0x0 - beq _02058520 - cmp r1, #0x1 - beq _02058524 - cmp r1, #0x2 - beq _02058528 - b _0205852C -_02058520: - ldr r0, [r0, #0x38] - pop {r3, pc} -_02058524: - ldr r0, [r0, #0x3c] - pop {r3, pc} -_02058528: - ldr r0, [r0, #0x40] - pop {r3, pc} -_0205852C: - bl GF_AssertFail - mov r0, #0x0 - pop {r3, pc} - - thumb_func_start sub_02058534 -sub_02058534: ; 0x02058534 - str r1, [r0, #0x44] - bx lr - - thumb_func_start sub_02058538 -sub_02058538: ; 0x02058538 - ldr r0, [r0, #0x44] - bx lr - - thumb_func_start sub_0205853C -sub_0205853C: ; 0x0205853C - str r1, [r0, #0x48] - bx lr - - thumb_func_start sub_02058540 -sub_02058540: ; 0x02058540 - ldr r0, [r0, #0x48] - bx lr - - thumb_func_start sub_02058544 -sub_02058544: ; 0x02058544 - add r0, #0xa0 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_0205854C -sub_0205854C: ; 0x0205854C - add r0, #0xa0 - ldr r0, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058554 -sub_02058554: ; 0x02058554 - add r0, #0xb0 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_0205855C -sub_0205855C: ; 0x0205855C - add r0, #0xb0 - ldr r0, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058564 -sub_02058564: ; 0x02058564 - push {r3, lr} - bl sub_0205855C - bl sub_0200CAB4 - pop {r3, pc} - - thumb_func_start sub_02058570 -sub_02058570: ; 0x02058570 - add r0, #0xb4 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058578 -sub_02058578: ; 0x02058578 - add r0, #0xb4 - ldr r0, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058580 -sub_02058580: ; 0x02058580 - ldr r3, _02058588 ; =sub_02058360 - add r0, #0xb4 - ldr r0, [r0, #0x0] - bx r3 - .balign 4 -_02058588: .word sub_02058360 - - thumb_func_start sub_0205858C -sub_0205858C: ; 0x0205858C - push {r3-r5, lr} - add r5, r1, #0x0 - add r4, r0, #0x0 - cmp r5, #0x10 - ble _0205859A - bl GF_AssertFail -_0205859A: - add r0, r4, #0x0 - bl sub_020585B0 - mov r1, #0x0 - add r2, r5, #0x0 - add r4, r0, #0x0 - bl memset - add r0, r4, #0x0 - pop {r3-r5, pc} - .balign 4 - - thumb_func_start sub_020585B0 -sub_020585B0: ; 0x020585B0 - add r0, #0xd8 - bx lr - - thumb_func_start sub_020585B4 -sub_020585B4: ; 0x020585B4 - push {r3-r5, lr} - add r5, r1, #0x0 - add r4, r0, #0x0 - cmp r5, #0x10 - ble _020585C2 - bl GF_AssertFail -_020585C2: - add r0, r4, #0x0 - bl sub_020585D8 - mov r1, #0x0 - add r2, r5, #0x0 - add r4, r0, #0x0 - bl memset - add r0, r4, #0x0 - pop {r3-r5, pc} - .balign 4 - - thumb_func_start sub_020585D8 -sub_020585D8: ; 0x020585D8 - add r0, #0xe8 - bx lr - - thumb_func_start sub_020585DC -sub_020585DC: ; 0x020585DC - push {r3-r5, lr} - add r5, r1, #0x0 - add r4, r0, #0x0 - cmp r5, #0x10 - ble _020585EA - bl GF_AssertFail -_020585EA: - add r0, r4, #0x0 - bl sub_02058600 - mov r1, #0x0 - add r2, r5, #0x0 - add r4, r0, #0x0 - bl memset - add r0, r4, #0x0 - pop {r3-r5, pc} - .balign 4 - - thumb_func_start sub_02058600 -sub_02058600: ; 0x02058600 - add r0, #0xf8 - bx lr - - thumb_func_start sub_02058604 -sub_02058604: ; 0x02058604 - push {r3-r5, lr} - add r5, r1, #0x0 - add r4, r0, #0x0 - cmp r5, #0x20 - ble _02058612 - bl GF_AssertFail -_02058612: - add r0, r4, #0x0 - bl sub_02058628 - mov r1, #0x0 - add r2, r5, #0x0 - add r4, r0, #0x0 - bl memset - add r0, r4, #0x0 - pop {r3-r5, pc} - .balign 4 - - thumb_func_start sub_02058628 -sub_02058628: ; 0x02058628 - mov r1, #0x42 - lsl r1, r1, #0x2 - add r0, r0, r1 - bx lr - - thumb_func_start sub_02058630 -sub_02058630: ; 0x02058630 - add r0, #0xb8 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058638 -sub_02058638: ; 0x02058638 - push {r3, lr} - add r1, r0, #0x0 - add r1, #0xb8 - ldr r1, [r1, #0x0] - blx r1 - pop {r3, pc} - - thumb_func_start sub_02058644 -sub_02058644: ; 0x02058644 - add r0, #0xbc - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_0205864C -sub_0205864C: ; 0x0205864C - push {r3, lr} - add r1, r0, #0x0 - add r1, #0xbc - ldr r1, [r1, #0x0] - blx r1 - pop {r3, pc} - - thumb_func_start sub_02058658 -sub_02058658: ; 0x02058658 - add r0, #0xc0 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058660 -sub_02058660: ; 0x02058660 - push {r3, lr} - add r1, r0, #0x0 - add r1, #0xc0 - ldr r1, [r1, #0x0] - blx r1 - pop {r3, pc} - - thumb_func_start sub_0205866C -sub_0205866C: ; 0x0205866C - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058480 - bl sub_02058D14 - add r1, r0, #0x0 - ldr r1, [r1, #0x10] - add r0, r4, #0x0 - blx r1 - pop {r4, pc} - .balign 4 - - thumb_func_start sub_02058684 -sub_02058684: ; 0x02058684 - add r0, #0xc4 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_0205868C -sub_0205868C: ; 0x0205868C - push {r3, lr} - add r1, r0, #0x0 - add r1, #0xc4 - ldr r1, [r1, #0x0] - blx r1 - pop {r3, pc} - - thumb_func_start sub_02058698 -sub_02058698: ; 0x02058698 - add r0, #0xc8 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_020586A0 -sub_020586A0: ; 0x020586A0 - push {r3, lr} - add r1, r0, #0x0 - add r1, #0xc8 - ldr r1, [r1, #0x0] - blx r1 - pop {r3, pc} - - thumb_func_start sub_020586AC -sub_020586AC: ; 0x020586AC - add r0, #0xcc - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_020586B4 -sub_020586B4: ; 0x020586B4 - push {r3, lr} - add r1, r0, #0x0 - add r1, #0xcc - ldr r1, [r1, #0x0] - blx r1 - pop {r3, pc} - - thumb_func_start sub_020586C0 -sub_020586C0: ; 0x020586C0 - add r0, #0xd0 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_020586C8 -sub_020586C8: ; 0x020586C8 - push {r3, lr} - add r1, r0, #0x0 - add r1, #0xd0 - ldr r1, [r1, #0x0] - blx r1 - pop {r3, pc} - - thumb_func_start sub_020586D4 -sub_020586D4: ; 0x020586D4 - add r0, #0xd4 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_020586DC -sub_020586DC: ; 0x020586DC - push {r3, lr} - add r1, r0, #0x0 - add r1, #0xd4 - ldr r1, [r1, #0x0] - blx r1 - pop {r3, pc} - - thumb_func_start sub_020586E8 -sub_020586E8: ; 0x020586E8 - add r0, #0xa4 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_020586F0 -sub_020586F0: ; 0x020586F0 - add r0, #0xa4 - ldr r0, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_020586F8 -sub_020586F8: ; 0x020586F8 - add r0, #0xa8 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058700 -sub_02058700: ; 0x02058700 - add r1, r0, #0x0 - add r1, #0xa8 - ldr r1, [r1, #0x0] - add r0, #0xa8 - add r1, r1, #0x1 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058710 -sub_02058710: ; 0x02058710 - add r0, #0xa8 - ldr r0, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058718 -sub_02058718: ; 0x02058718 - add r0, #0xac - strh r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058720 -sub_02058720: ; 0x02058720 - add r0, #0xac - ldrh r0, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058728 -sub_02058728: ; 0x02058728 - add r0, #0xae - strh r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start sub_02058730 -sub_02058730: ; 0x02058730 - add r0, #0xae - ldrh r0, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start MapObject_GetFieldSysPtr -MapObject_GetFieldSysPtr: ; 0x02058738 - push {r3, lr} - bl sub_02058580 - bl sub_020583E8 - pop {r3, pc} - - thumb_func_start sub_02058744 -sub_02058744: ; 0x02058744 - push {r3, lr} - bl sub_02058578 - bl sub_0205839C - pop {r3, pc} - - thumb_func_start sub_02058750 -sub_02058750: ; 0x02058750 - push {r4, lr} - add r4, r0, #0x0 - bl sub_020589CC - cmp r0, #0x1 - beq _02058760 - bl GF_AssertFail -_02058760: - add r0, r4, #0x0 - bl sub_02058490 - pop {r4, pc} - - thumb_func_start sub_02058768 -sub_02058768: ; 0x02058768 - ldr r3, _02058770 ; =sub_0205837C - mov r1, #0x6 - bx r3 - nop -_02058770: .word sub_0205837C - - thumb_func_start sub_02058774 -sub_02058774: ; 0x02058774 - ldr r3, _0205877C ; =sub_02058384 - mov r1, #0x6 - bx r3 - nop -_0205877C: .word sub_02058384 - - thumb_func_start MapObjectManager_PauseAllMovement -MapObjectManager_PauseAllMovement: ; 0x02058780 - push {r4-r6, lr} - add r5, r0, #0x0 - bl sub_02058368 - add r4, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583CC - mov r6, #0x4a - add r5, r0, #0x0 - lsl r6, r6, #0x2 -_02058796: - add r0, r5, #0x0 - bl sub_02058830 - cmp r0, #0x0 - beq _020587A6 - add r0, r5, #0x0 - bl sub_02058908 -_020587A6: - add r5, r5, r6 - sub r4, r4, #0x1 - bne _02058796 - pop {r4-r6, pc} - .balign 4 - - thumb_func_start MapObjectManager_UnpauseAllMovement -MapObjectManager_UnpauseAllMovement: ; 0x020587B0 - push {r4-r6, lr} - add r5, r0, #0x0 - bl sub_02058368 - add r4, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583CC - mov r6, #0x4a - add r5, r0, #0x0 - lsl r6, r6, #0x2 -_020587C6: - add r0, r5, #0x0 - bl sub_02058830 - cmp r0, #0x0 - beq _020587D6 - add r0, r5, #0x0 - bl sub_02058914 -_020587D6: - add r5, r5, r6 - sub r4, r4, #0x1 - bne _020587C6 - pop {r4-r6, pc} - .balign 4 - - thumb_func_start sub_020587E0 -sub_020587E0: ; 0x020587E0 - push {r3, lr} - mov r1, #0x1 - bl sub_02058390 - cmp r0, #0x0 - beq _020587F0 - mov r0, #0x1 - pop {r3, pc} -_020587F0: - mov r0, #0x0 - pop {r3, pc} - - thumb_func_start sub_020587F4 -sub_020587F4: ; 0x020587F4 - push {r4, lr} - add r4, r1, #0x0 - bl sub_02058578 - add r1, r4, #0x0 - bl sub_02058390 - pop {r4, pc} - - thumb_func_start sub_02058804 -sub_02058804: ; 0x02058804 - push {r3, lr} - cmp r1, #0x0 - bne _02058812 - mov r1, #0x8 - bl sub_0205837C - pop {r3, pc} -_02058812: - mov r1, #0x8 - bl sub_02058384 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_0205881C -sub_0205881C: ; 0x0205881C - push {r3, lr} - mov r1, #0x8 - bl sub_02058390 - cmp r0, #0x0 - bne _0205882C - mov r0, #0x1 - pop {r3, pc} -_0205882C: - mov r0, #0x0 - pop {r3, pc} - - thumb_func_start sub_02058830 -sub_02058830: ; 0x02058830 - ldr r3, _02058838 ; =sub_0205842C - mov r1, #0x1 - bx r3 - nop -_02058838: .word sub_0205842C - - thumb_func_start sub_0205883C -sub_0205883C: ; 0x0205883C - ldr r3, _02058844 ; =sub_02058410 - mov r1, #0x2 - bx r3 - nop -_02058844: .word sub_02058410 - - thumb_func_start sub_02058848 -sub_02058848: ; 0x02058848 - ldr r3, _02058850 ; =sub_02058418 - mov r1, #0x2 - bx r3 - nop -_02058850: .word sub_02058418 - - thumb_func_start sub_02058854 -sub_02058854: ; 0x02058854 - ldr r3, _0205885C ; =sub_0205842C - mov r1, #0x2 - bx r3 - nop -_0205885C: .word sub_0205842C - - thumb_func_start sub_02058860 -sub_02058860: ; 0x02058860 - ldr r3, _02058868 ; =sub_02058410 - mov r1, #0x4 - bx r3 - nop -_02058868: .word sub_02058410 - - thumb_func_start sub_0205886C -sub_0205886C: ; 0x0205886C - ldr r3, _02058874 ; =sub_02058418 - mov r1, #0x8 - bx r3 - nop -_02058874: .word sub_02058418 - - thumb_func_start sub_02058878 -sub_02058878: ; 0x02058878 - ldr r3, _02058880 ; =sub_02058410 - mov r1, #0x1 - lsl r1, r1, #0xe - bx r3 - .balign 4 -_02058880: .word sub_02058410 - - thumb_func_start sub_02058884 -sub_02058884: ; 0x02058884 - ldr r3, _0205888C ; =sub_0205842C - mov r1, #0x1 - lsl r1, r1, #0xe - bx r3 - .balign 4 -_0205888C: .word sub_0205842C - - thumb_func_start sub_02058890 -sub_02058890: ; 0x02058890 - ldr r3, _02058898 ; =sub_0205842C - mov r1, #0x2 - lsl r1, r1, #0x8 - bx r3 - .balign 4 -_02058898: .word sub_0205842C - - thumb_func_start MapObject_SetVisible -MapObject_SetVisible: ; 0x0205889C - push {r3, lr} - cmp r1, #0x1 - bne _020588AC - mov r1, #0x2 - lsl r1, r1, #0x8 - bl sub_02058410 - pop {r3, pc} -_020588AC: - mov r1, #0x2 - lsl r1, r1, #0x8 - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_020588B8 -sub_020588B8: ; 0x020588B8 - push {r3, lr} - cmp r1, #0x1 - bne _020588C8 - mov r1, #0x1 - lsl r1, r1, #0x12 - bl sub_02058418 - pop {r3, pc} -_020588C8: - mov r1, #0x1 - lsl r1, r1, #0x12 - bl sub_02058410 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_020588D4 -sub_020588D4: ; 0x020588D4 - push {r3, lr} - mov r1, #0x2 - lsl r1, r1, #0x12 - bl sub_0205842C - cmp r0, #0x1 - beq _020588E6 - mov r0, #0x1 - pop {r3, pc} -_020588E6: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_020588EC -sub_020588EC: ; 0x020588EC - push {r3, lr} - cmp r1, #0x1 - bne _020588FC - mov r1, #0x2 - lsl r1, r1, #0x12 - bl sub_02058410 - pop {r3, pc} -_020588FC: - mov r1, #0x2 - lsl r1, r1, #0x12 - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058908 -sub_02058908: ; 0x02058908 - ldr r3, _02058910 ; =sub_02058410 - mov r1, #0x40 - bx r3 - nop -_02058910: .word sub_02058410 - - thumb_func_start sub_02058914 -sub_02058914: ; 0x02058914 - ldr r3, _0205891C ; =sub_02058418 - mov r1, #0x40 - bx r3 - nop -_0205891C: .word sub_02058418 - - thumb_func_start sub_02058920 -sub_02058920: ; 0x02058920 - push {r3, lr} - mov r1, #0x40 - bl sub_0205842C - cmp r0, #0x1 - bne _02058930 - mov r0, #0x1 - pop {r3, pc} -_02058930: - mov r0, #0x0 - pop {r3, pc} - - thumb_func_start sub_02058934 -sub_02058934: ; 0x02058934 - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058578 - bl sub_020587E0 - cmp r0, #0x0 - bne _02058948 - mov r0, #0x0 - pop {r4, pc} -_02058948: - mov r1, #0x1 - add r0, r4, #0x0 - lsl r1, r1, #0xe - bl sub_02058424 - cmp r0, #0x0 - beq _0205895A - mov r0, #0x1 - pop {r4, pc} -_0205895A: - mov r0, #0x0 - pop {r4, pc} - .balign 4 - - thumb_func_start sub_02058960 -sub_02058960: ; 0x02058960 - push {r3, lr} - cmp r1, #0x1 - bne _02058970 - mov r1, #0x2 - lsl r1, r1, #0x16 - bl sub_02058410 - pop {r3, pc} -_02058970: - mov r1, #0x2 - lsl r1, r1, #0x16 - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_0205897C -sub_0205897C: ; 0x0205897C - push {r3, lr} - mov r1, #0x2 - lsl r1, r1, #0x16 - bl sub_02058424 - cmp r0, #0x0 - beq _0205898E - mov r0, #0x1 - pop {r3, pc} -_0205898E: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058994 -sub_02058994: ; 0x02058994 - push {r3, lr} - cmp r1, #0x1 - bne _020589A4 - mov r1, #0x1 - lsl r1, r1, #0xa - bl sub_02058410 - pop {r3, pc} -_020589A4: - mov r1, #0x1 - lsl r1, r1, #0xa - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_020589B0 -sub_020589B0: ; 0x020589B0 - push {r3, lr} - cmp r1, #0x1 - bne _020589C0 - mov r1, #0x2 - lsl r1, r1, #0x18 - bl sub_02058410 - pop {r3, pc} -_020589C0: - mov r1, #0x2 - lsl r1, r1, #0x18 - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_020589CC -sub_020589CC: ; 0x020589CC - push {r3, lr} - mov r1, #0x2 - lsl r1, r1, #0x18 - bl sub_02058424 - cmp r0, #0x0 - beq _020589DE - mov r0, #0x1 - pop {r3, pc} -_020589DE: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_020589E4 -sub_020589E4: ; 0x020589E4 - push {r3, lr} - cmp r1, #0x1 - bne _020589F4 - mov r1, #0x1 - lsl r1, r1, #0x1a - bl sub_02058410 - pop {r3, pc} -_020589F4: - mov r1, #0x1 - lsl r1, r1, #0x1a - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058A00 -sub_02058A00: ; 0x02058A00 - push {r3, lr} - mov r1, #0x1 - lsl r1, r1, #0x1a - bl sub_02058424 - cmp r0, #0x0 - beq _02058A12 - mov r0, #0x1 - pop {r3, pc} -_02058A12: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058A18 -sub_02058A18: ; 0x02058A18 - push {r3, lr} - cmp r1, #0x1 - bne _02058A28 - mov r1, #0x2 - lsl r1, r1, #0x1a - bl sub_02058410 - pop {r3, pc} -_02058A28: - mov r1, #0x2 - lsl r1, r1, #0x1a - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058A34 -sub_02058A34: ; 0x02058A34 - push {r3, lr} - mov r1, #0x2 - lsl r1, r1, #0x1a - bl sub_02058424 - cmp r0, #0x0 - beq _02058A46 - mov r0, #0x1 - pop {r3, pc} -_02058A46: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058A4C -sub_02058A4C: ; 0x02058A4C - push {r3, lr} - cmp r1, #0x1 - bne _02058A5C - mov r1, #0x1 - lsl r1, r1, #0x1c - bl sub_02058410 - pop {r3, pc} -_02058A5C: - mov r1, #0x1 - lsl r1, r1, #0x1c - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058A68 -sub_02058A68: ; 0x02058A68 - push {r3, lr} - mov r1, #0x1 - lsl r1, r1, #0x1c - bl sub_02058424 - cmp r0, #0x0 - beq _02058A7A - mov r0, #0x1 - pop {r3, pc} -_02058A7A: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058A80 -sub_02058A80: ; 0x02058A80 - push {r3, lr} - cmp r1, #0x1 - bne _02058A90 - mov r1, #0x1 - lsl r1, r1, #0x18 - bl sub_02058410 - pop {r3, pc} -_02058A90: - mov r1, #0x1 - lsl r1, r1, #0x18 - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058A9C -sub_02058A9C: ; 0x02058A9C - push {r3, lr} - mov r1, #0x1 - lsl r1, r1, #0x18 - bl sub_02058424 - cmp r0, #0x0 - beq _02058AAE - mov r0, #0x1 - pop {r3, pc} -_02058AAE: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058AB4 -sub_02058AB4: ; 0x02058AB4 - push {r3, lr} - mov r1, #0x10 - bl sub_02058424 - cmp r0, #0x0 - beq _02058AC4 - mov r0, #0x1 - pop {r3, pc} -_02058AC4: - mov r0, #0x0 - pop {r3, pc} - - thumb_func_start sub_02058AC8 -sub_02058AC8: ; 0x02058AC8 - push {r3, lr} - cmp r1, #0x1 - bne _02058AD8 - mov r1, #0x2 - lsl r1, r1, #0x1c - bl sub_02058410 - pop {r3, pc} -_02058AD8: - mov r1, #0x2 - lsl r1, r1, #0x1c - bl sub_02058418 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058AE4 -sub_02058AE4: ; 0x02058AE4 - push {r3, lr} - mov r1, #0x2 - lsl r1, r1, #0x1c - bl sub_02058424 - cmp r0, #0x0 - beq _02058AF6 - mov r0, #0x1 - pop {r3, pc} -_02058AF6: - mov r0, #0x0 - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058AFC -sub_02058AFC: ; 0x02058AFC - ldr r0, [r0, #0x4c] - bx lr - - thumb_func_start sub_02058B00 -sub_02058B00: ; 0x02058B00 - str r1, [r0, #0x4c] - bx lr - - thumb_func_start sub_02058B04 -sub_02058B04: ; 0x02058B04 - ldr r0, [r0, #0x50] - bx lr - - thumb_func_start sub_02058B08 -sub_02058B08: ; 0x02058B08 - str r1, [r0, #0x50] - bx lr - - thumb_func_start sub_02058B0C -sub_02058B0C: ; 0x02058B0C - ldr r0, [r0, #0x54] - bx lr - - thumb_func_start sub_02058B10 -sub_02058B10: ; 0x02058B10 - str r1, [r0, #0x54] - bx lr - - thumb_func_start sub_02058B14 -sub_02058B14: ; 0x02058B14 - ldr r0, [r0, #0x58] - bx lr - - thumb_func_start sub_02058B18 -sub_02058B18: ; 0x02058B18 - str r1, [r0, #0x58] - bx lr - - thumb_func_start sub_02058B1C -sub_02058B1C: ; 0x02058B1C - ldr r0, [r0, #0x5c] - bx lr - - thumb_func_start sub_02058B20 -sub_02058B20: ; 0x02058B20 - str r1, [r0, #0x5c] - bx lr - - thumb_func_start sub_02058B24 -sub_02058B24: ; 0x02058B24 - ldr r0, [r0, #0x60] - bx lr - - thumb_func_start sub_02058B28 -sub_02058B28: ; 0x02058B28 - str r1, [r0, #0x60] - bx lr - - thumb_func_start sub_02058B2C -sub_02058B2C: ; 0x02058B2C - ldr r0, [r0, #0x64] - bx lr - - thumb_func_start sub_02058B30 -sub_02058B30: ; 0x02058B30 - str r1, [r0, #0x64] - bx lr - - thumb_func_start sub_02058B34 -sub_02058B34: ; 0x02058B34 - ldr r2, [r0, #0x64] - add r1, r2, r1 - str r1, [r0, #0x64] - bx lr - - thumb_func_start sub_02058B3C -sub_02058B3C: ; 0x02058B3C - ldr r0, [r0, #0x68] - bx lr - - thumb_func_start sub_02058B40 -sub_02058B40: ; 0x02058B40 - str r1, [r0, #0x68] - bx lr - - thumb_func_start sub_02058B44 -sub_02058B44: ; 0x02058B44 - ldr r2, [r0, #0x68] - add r1, r2, r1 - str r1, [r0, #0x68] - bx lr - - thumb_func_start sub_02058B4C -sub_02058B4C: ; 0x02058B4C - ldr r0, [r0, #0x6c] - bx lr - - thumb_func_start sub_02058B50 -sub_02058B50: ; 0x02058B50 - str r1, [r0, #0x6c] - bx lr - - thumb_func_start sub_02058B54 -sub_02058B54: ; 0x02058B54 - ldr r2, [r0, #0x6c] - add r1, r2, r1 - str r1, [r0, #0x6c] - bx lr - - thumb_func_start sub_02058B5C -sub_02058B5C: ; 0x02058B5C - add r2, r0, #0x0 - add r2, #0x70 - add r3, r1, #0x0 - ldmia r2!, {r0-r1} - stmia r3!, {r0-r1} - ldr r0, [r2, #0x0] - str r0, [r3, #0x0] - bx lr - - thumb_func_start sub_02058B6C -sub_02058B6C: ; 0x02058B6C - add r3, r1, #0x0 - add r2, r0, #0x0 - ldmia r3!, {r0-r1} - add r2, #0x70 - stmia r2!, {r0-r1} - ldr r0, [r3, #0x0] - str r0, [r2, #0x0] - bx lr - - thumb_func_start sub_02058B7C -sub_02058B7C: ; 0x02058B7C - add r0, #0x70 - bx lr - - thumb_func_start sub_02058B80 -sub_02058B80: ; 0x02058B80 - ldr r0, [r0, #0x74] - bx lr - - thumb_func_start sub_02058B84 -sub_02058B84: ; 0x02058B84 - add r2, r0, #0x0 - add r2, #0x7c - add r3, r1, #0x0 - ldmia r2!, {r0-r1} - stmia r3!, {r0-r1} - ldr r0, [r2, #0x0] - str r0, [r3, #0x0] - bx lr - - thumb_func_start sub_02058B94 -sub_02058B94: ; 0x02058B94 - add r3, r1, #0x0 - add r2, r0, #0x0 - ldmia r3!, {r0-r1} - add r2, #0x7c - stmia r2!, {r0-r1} - ldr r0, [r3, #0x0] - str r0, [r2, #0x0] - bx lr - - thumb_func_start sub_02058BA4 -sub_02058BA4: ; 0x02058BA4 - add r2, r0, #0x0 - add r2, #0x88 - add r3, r1, #0x0 - ldmia r2!, {r0-r1} - stmia r3!, {r0-r1} - ldr r0, [r2, #0x0] - str r0, [r3, #0x0] - bx lr - - thumb_func_start sub_02058BB4 -sub_02058BB4: ; 0x02058BB4 - add r3, r1, #0x0 - add r2, r0, #0x0 - ldmia r3!, {r0-r1} - add r2, #0x88 - stmia r2!, {r0-r1} - ldr r0, [r3, #0x0] - str r0, [r2, #0x0] - bx lr - - thumb_func_start sub_02058BC4 -sub_02058BC4: ; 0x02058BC4 - add r2, r0, #0x0 - add r2, #0x94 - add r3, r1, #0x0 - ldmia r2!, {r0-r1} - stmia r3!, {r0-r1} - ldr r0, [r2, #0x0] - str r0, [r3, #0x0] - bx lr - - thumb_func_start sub_02058BD4 -sub_02058BD4: ; 0x02058BD4 - add r3, r1, #0x0 - add r2, r0, #0x0 - ldmia r3!, {r0-r1} - add r2, #0x94 - stmia r2!, {r0-r1} - ldr r0, [r3, #0x0] - str r0, [r2, #0x0] - bx lr - - thumb_func_start sub_02058BE4 -sub_02058BE4: ; 0x02058BE4 - push {r3, lr} - bl sub_02058B80 - asr r1, r0, #0x3 - asr r0, r1, #0xb - lsr r0, r0, #0x14 - add r0, r1, r0 - asr r0, r0, #0xc - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058BF8 -sub_02058BF8: ; 0x02058BF8 - strh r1, [r0, #0x0] - bx lr - - thumb_func_start sub_02058BFC -sub_02058BFC: ; 0x02058BFC - ldrh r0, [r0, #0x0] - bx lr - - thumb_func_start sub_02058C00 -sub_02058C00: ; 0x02058C00 - strh r1, [r0, #0x2] - bx lr - - thumb_func_start sub_02058C04 -sub_02058C04: ; 0x02058C04 - ldrh r0, [r0, #0x2] - bx lr - - thumb_func_start sub_02058C08 -sub_02058C08: ; 0x02058C08 - strh r1, [r0, #0x4] - bx lr - - thumb_func_start sub_02058C0C -sub_02058C0C: ; 0x02058C0C - ldrh r0, [r0, #0x4] - bx lr - - thumb_func_start sub_02058C10 -sub_02058C10: ; 0x02058C10 - strh r1, [r0, #0x6] - bx lr - - thumb_func_start sub_02058C14 -sub_02058C14: ; 0x02058C14 - ldrh r0, [r0, #0x6] - bx lr - - thumb_func_start sub_02058C18 -sub_02058C18: ; 0x02058C18 - strh r1, [r0, #0x8] - bx lr - - thumb_func_start sub_02058C1C -sub_02058C1C: ; 0x02058C1C - ldrh r0, [r0, #0x8] - bx lr - - thumb_func_start sub_02058C20 -sub_02058C20: ; 0x02058C20 - strh r1, [r0, #0xa] - bx lr - - thumb_func_start sub_02058C24 -sub_02058C24: ; 0x02058C24 - ldrh r0, [r0, #0xa] - bx lr - - thumb_func_start sub_02058C28 -sub_02058C28: ; 0x02058C28 - strh r1, [r0, #0xc] - bx lr - - thumb_func_start sub_02058C2C -sub_02058C2C: ; 0x02058C2C - mov r1, #0xc - ldrsh r0, [r0, r1] - bx lr - .balign 4 - - thumb_func_start sub_02058C34 -sub_02058C34: ; 0x02058C34 - push {r3, lr} - cmp r2, #0x0 - beq _02058C44 - cmp r2, #0x1 - beq _02058C48 - cmp r2, #0x2 - beq _02058C4C - b _02058C50 -_02058C44: - strh r1, [r0, #0xe] - pop {r3, pc} -_02058C48: - strh r1, [r0, #0x10] - pop {r3, pc} -_02058C4C: - strh r1, [r0, #0x12] - pop {r3, pc} -_02058C50: - bl GF_AssertFail - pop {r3, pc} - .balign 4 - - thumb_func_start sub_02058C58 -sub_02058C58: ; 0x02058C58 - push {r3, lr} - cmp r1, #0x0 - beq _02058C68 - cmp r1, #0x1 - beq _02058C6C - cmp r1, #0x2 - beq _02058C70 - b _02058C74 -_02058C68: - ldrh r0, [r0, #0xe] - pop {r3, pc} -_02058C6C: - ldrh r0, [r0, #0x10] - pop {r3, pc} -_02058C70: - ldrh r0, [r0, #0x12] - pop {r3, pc} -_02058C74: - bl GF_AssertFail - mov r0, #0x0 - pop {r3, pc} - - thumb_func_start sub_02058C7C -sub_02058C7C: ; 0x02058C7C - strh r1, [r0, #0x14] - bx lr - - thumb_func_start sub_02058C80 -sub_02058C80: ; 0x02058C80 - mov r1, #0x14 - ldrsh r0, [r0, r1] - bx lr - .balign 4 - - thumb_func_start sub_02058C88 -sub_02058C88: ; 0x02058C88 - strh r1, [r0, #0x16] - bx lr - - thumb_func_start sub_02058C8C -sub_02058C8C: ; 0x02058C8C - mov r1, #0x16 - ldrsh r0, [r0, r1] - bx lr - .balign 4 - - thumb_func_start sub_02058C94 -sub_02058C94: ; 0x02058C94 - strh r1, [r0, #0x18] - bx lr - - thumb_func_start sub_02058C98 -sub_02058C98: ; 0x02058C98 - ldrh r0, [r0, #0x18] - bx lr - - thumb_func_start sub_02058C9C -sub_02058C9C: ; 0x02058C9C - str r1, [r0, #0x1c] - bx lr - - thumb_func_start sub_02058CA0 -sub_02058CA0: ; 0x02058CA0 - ldr r0, [r0, #0x1c] - bx lr - - thumb_func_start sub_02058CA4 -sub_02058CA4: ; 0x02058CA4 - strh r1, [r0, #0x1a] - bx lr - - thumb_func_start sub_02058CA8 -sub_02058CA8: ; 0x02058CA8 - ldrh r0, [r0, #0x1a] - bx lr - - thumb_func_start sub_02058CAC -sub_02058CAC: ; 0x02058CAC - push {r3-r7, lr} - add r6, r0, #0x0 - add r7, r1, #0x0 - str r2, [sp, #0x0] - mov r4, #0x0 - add r5, r2, #0x0 -_02058CB8: - add r0, r5, #0x0 - bl sub_02058CE0 - cmp r0, #0x0 - bne _02058CD4 - add r0, r5, #0x0 - bl sub_02058BFC - cmp r6, r0 - bne _02058CD4 - ldr r0, [sp, #0x0] - lsl r1, r4, #0x5 - add r0, r0, r1 - pop {r3-r7, pc} -_02058CD4: - add r4, r4, #0x1 - add r5, #0x20 - cmp r4, r7 - blt _02058CB8 - mov r0, #0x0 - pop {r3-r7, pc} - - thumb_func_start sub_02058CE0 -sub_02058CE0: ; 0x02058CE0 - push {r3, lr} - bl sub_02058C24 - lsl r0, r0, #0x10 - lsr r1, r0, #0x10 - ldr r0, _02058CF8 ; =0x0000FFFF - cmp r1, r0 - bne _02058CF4 - mov r0, #0x1 - pop {r3, pc} -_02058CF4: - mov r0, #0x0 - pop {r3, pc} - .balign 4 -_02058CF8: .word 0x0000FFFF - - thumb_func_start sub_02058CFC -sub_02058CFC: ; 0x02058CFC - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058CE0 - cmp r0, #0x1 - beq _02058D0C - bl GF_AssertFail -_02058D0C: - add r0, r4, #0x0 - bl sub_02058C1C - pop {r4, pc} - - thumb_func_start sub_02058D14 -sub_02058D14: ; 0x02058D14 - push {r4, lr} - add r4, r0, #0x0 - cmp r4, #0x37 - blo _02058D20 - bl GF_AssertFail -_02058D20: - ldr r0, _02058D28 ; =UNK_020F6364 - lsl r1, r4, #0x2 - ldr r0, [r0, r1] - pop {r4, pc} - .balign 4 -_02058D28: .word UNK_020F6364 - - thumb_func_start sub_02058D2C -sub_02058D2C: ; 0x02058D2C - ldr r0, [r0, #0x4] - bx lr - - thumb_func_start sub_02058D30 -sub_02058D30: ; 0x02058D30 - ldr r0, [r0, #0x8] - bx lr - - thumb_func_start sub_02058D34 -sub_02058D34: ; 0x02058D34 - ldr r0, [r0, #0xc] - bx lr - - thumb_func_start sub_02058D38 -sub_02058D38: ; 0x02058D38 - ldr r0, [r0, #0x0] - bx lr - - thumb_func_start sub_02058D3C -sub_02058D3C: ; 0x02058D3C - ldr r0, [r0, #0x4] - bx lr - - thumb_func_start sub_02058D40 -sub_02058D40: ; 0x02058D40 - ldr r0, [r0, #0x8] - bx lr - - thumb_func_start sub_02058D44 -sub_02058D44: ; 0x02058D44 - ldr r0, [r0, #0xc] - bx lr - - thumb_func_start sub_02058D48 -sub_02058D48: ; 0x02058D48 - ldr r0, [r0, #0x10] - bx lr - - thumb_func_start sub_02058D4C -sub_02058D4C: ; 0x02058D4C - push {r3, lr} - ldr r3, _02058D6C ; =ov05_021F9494 - ldr r1, _02058D70 ; =0x0000FFFF -_02058D52: - ldr r2, [r3, #0x0] - cmp r2, r0 - bne _02058D5C - ldr r0, [r3, #0x4] - pop {r3, pc} -_02058D5C: - add r3, #0x8 - ldr r2, [r3, #0x0] - cmp r2, r1 - bne _02058D52 - bl GF_AssertFail - mov r0, #0x0 - pop {r3, pc} - .balign 4 -_02058D6C: .word ov05_021F9494 -_02058D70: .word 0x0000FFFF - - thumb_func_start sub_02058D74 -sub_02058D74: ; 0x02058D74 - push {r3-r7, lr} - add r5, r0, #0x0 - add r6, r1, #0x0 - add r7, r2, #0x0 - bl sub_02058368 - add r4, r0, #0x0 - add r0, r5, #0x0 - bl sub_020583CC - add r5, r0, #0x0 -_02058D8A: - add r0, r5, #0x0 - mov r1, #0x1 - bl sub_02058424 - cmp r0, #0x0 - beq _02058DAE - add r0, r5, #0x0 - bl sub_02058B2C - cmp r6, r0 - bne _02058DAE - add r0, r5, #0x0 - bl sub_02058B4C - cmp r7, r0 - bne _02058DAE - add r0, r5, #0x0 - pop {r3-r7, pc} -_02058DAE: - mov r0, #0x4a - lsl r0, r0, #0x2 - add r5, r5, r0 - sub r4, r4, #0x1 - bne _02058D8A - mov r0, #0x0 - pop {r3-r7, pc} - - thumb_func_start sub_02058DBC -sub_02058DBC: ; 0x02058DBC - push {r4-r6, lr} - add r4, r1, #0x0 - ldr r1, [r4, #0x0] - add r6, r2, #0x0 - asr r2, r1, #0x4 - asr r1, r2, #0xb - lsr r1, r1, #0x14 - add r1, r2, r1 - asr r1, r1, #0xc - add r5, r0, #0x0 - bl sub_02058B30 - ldr r1, [r4, #0x4] - add r0, r5, #0x0 - asr r2, r1, #0x3 - asr r1, r2, #0xb - lsr r1, r1, #0x14 - add r1, r2, r1 - asr r1, r1, #0xc - bl sub_02058B40 - ldr r1, [r4, #0x8] - add r0, r5, #0x0 - asr r2, r1, #0x4 - asr r1, r2, #0xb - lsr r1, r1, #0x14 - add r1, r2, r1 - asr r1, r1, #0xc - bl sub_02058B50 - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_02058B6C - add r0, r5, #0x0 - bl sub_02059C60 - add r0, r5, #0x0 - add r1, r6, #0x0 - bl sub_020584A4 - add r0, r5, #0x0 - bl sub_0205AE80 - add r0, r5, #0x0 - mov r1, #0x4 - bl sub_02058410 - add r0, r5, #0x0 - mov r1, #0xa - bl sub_02058418 - pop {r4-r6, pc} - .balign 4 - - thumb_func_start sub_02058E28 -sub_02058E28: ; 0x02058E28 - push {r3-r6, lr} - sub sp, #0xc - add r4, r2, #0x0 - mov r2, #0x2 - add r6, r3, #0x0 - lsl r3, r1, #0x10 - lsl r2, r2, #0xe - add r2, r3, r2 - add r5, r0, #0x0 - str r2, [sp, #0x0] - bl sub_02058B30 - lsl r0, r4, #0xf - str r0, [sp, #0x4] - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_02058B40 - mov r0, #0x2 - lsl r1, r6, #0x10 - lsl r0, r0, #0xe - add r0, r1, r0 - str r0, [sp, #0x8] - add r0, r5, #0x0 - add r1, r6, #0x0 - bl sub_02058B50 - add r0, r5, #0x0 - add r1, sp, #0x0 - bl sub_02058B6C - add r0, r5, #0x0 - bl sub_02059C60 - ldr r1, [sp, #0x20] - add r0, r5, #0x0 - bl sub_020584A4 - add r0, r5, #0x0 - mov r1, #0x4 - bl sub_02058410 - add r0, r5, #0x0 - mov r1, #0xa - bl sub_02058418 - add r0, r5, #0x0 - bl sub_0205AE80 - add sp, #0xc - pop {r3-r6, pc} - .balign 4 - - thumb_func_start sub_02058E90 -sub_02058E90: ; 0x02058E90 - push {r3-r5, lr} - add r5, r0, #0x0 - add r4, r1, #0x0 - bl sub_02058660 - add r0, r5, #0x0 - add r1, r4, #0x0 - bl sub_0205847C - add r0, r5, #0x0 - bl sub_02057EE0 - add r0, r5, #0x0 - bl sub_02058EE8 - pop {r3-r5, pc} - - thumb_func_start sub_02058EB0 -sub_02058EB0: ; 0x02058EB0 - push {r4, lr} - add r4, r0, #0x0 - bl sub_02058444 - add r0, r4, #0x0 - bl sub_02058860 - add r0, r4, #0x0 - bl sub_0205815C - pop {r4, pc} - .balign 4 - - thumb_func_start sub_02058EC8 -sub_02058EC8: ; 0x02058EC8 - bx lr - .balign 4 - - thumb_func_start sub_02058ECC -sub_02058ECC: ; 0x02058ECC - bx lr - .balign 4 - - thumb_func_start sub_02058ED0 -sub_02058ED0: ; 0x02058ED0 - bx lr - .balign 4 - - thumb_func_start sub_02058ED4 -sub_02058ED4: ; 0x02058ED4 - bx lr - .balign 4 - - thumb_func_start sub_02058ED8 -sub_02058ED8: ; 0x02058ED8 - bx lr - .balign 4 - - thumb_func_start sub_02058EDC -sub_02058EDC: ; 0x02058EDC - bx lr - .balign 4 - - thumb_func_start sub_02058EE0 -sub_02058EE0: ; 0x02058EE0 - bx lr - .balign 4 - - thumb_func_start sub_02058EE4 -sub_02058EE4: ; 0x02058EE4 - bx lr - .balign 4 diff --git a/arm9/asm/unk_02058EE8.s b/arm9/asm/unk_02058EE8.s index 8882c2c9e..ae3c02aa5 100644 --- a/arm9/asm/unk_02058EE8.s +++ b/arm9/asm/unk_02058EE8.s @@ -1212,7 +1212,7 @@ sub_02058EF8: ; 0x02058EF8 bl sub_02058FD0 add r0, r4, #0x0 mov r1, #0x10 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _02058F2C add r0, r4, #0x0 @@ -1255,14 +1255,14 @@ _02058F70: mov r1, #0x6 add r0, r4, #0x0 lsl r1, r1, #0xa - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 bne _02058F82 mov r0, #0x1 pop {r4, pc} _02058F82: add r0, r4, #0x0 - bl sub_02058480 + bl MapObject_GetMovement cmp r0, #0x32 bne _02058F90 mov r0, #0x1 @@ -1277,7 +1277,7 @@ sub_02058F94: ; 0x02058F94 mov r1, #0x1 lsl r1, r1, #0xc add r4, r0, #0x0 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _02058FAA add r0, r4, #0x0 @@ -1291,7 +1291,7 @@ sub_02058FAC: ; 0x02058FAC mov r1, #0x2 lsl r1, r1, #0xa add r4, r0, #0x0 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _02058FCC add r0, r4, #0x0 @@ -1309,7 +1309,7 @@ sub_02058FD0: ; 0x02058FD0 push {r4, lr} mov r1, #0x4 add r4, r0, #0x0 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _02058FE4 add r0, r4, #0x0 @@ -1317,7 +1317,7 @@ sub_02058FD0: ; 0x02058FD0 _02058FE4: ldr r1, _02058FF0 ; =0x00010004 add r0, r4, #0x0 - bl sub_02058418 + bl MapObject_ClearFlagsBits pop {r4, pc} nop _02058FF0: .word 0x00010004 @@ -1328,7 +1328,7 @@ sub_02058FF4: ; 0x02058FF4 mov r1, #0x1 lsl r1, r1, #0x10 add r4, r0, #0x0 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _0205900C add r0, r4, #0x0 @@ -1337,7 +1337,7 @@ sub_02058FF4: ; 0x02058FF4 _0205900C: add r0, r4, #0x0 mov r1, #0x4 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _0205901E add r0, r4, #0x0 @@ -1345,7 +1345,7 @@ _0205900C: _0205901E: ldr r1, _02059028 ; =0x00010004 add r0, r4, #0x0 - bl sub_02058418 + bl MapObject_ClearFlagsBits pop {r4, pc} .balign 4 _02059028: .word 0x00010004 @@ -1356,7 +1356,7 @@ sub_0205902C: ; 0x0205902C mov r1, #0x2 lsl r1, r1, #0x10 add r4, r0, #0x0 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _02059044 add r0, r4, #0x0 @@ -1365,7 +1365,7 @@ sub_0205902C: ; 0x0205902C _02059044: add r0, r4, #0x0 mov r1, #0x8 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _02059056 add r0, r4, #0x0 @@ -1373,7 +1373,7 @@ _02059044: _02059056: ldr r1, _02059060 ; =0x00020008 add r0, r4, #0x0 - bl sub_02058418 + bl MapObject_ClearFlagsBits pop {r4, pc} .balign 4 _02059060: .word 0x00020008 @@ -1934,7 +1934,7 @@ sub_02059508: ; 0x02059508 add r5, r0, #0x0 add r4, r1, #0x0 add r6, r3, #0x0 - bl sub_02058578 + bl MapObject_GetManager bl sub_0205881C cmp r0, #0x0 beq _020595A2 @@ -1980,13 +1980,13 @@ _02059578: mov r1, #0x1 add r0, r5, #0x0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r4-r6, pc} _02059584: mov r1, #0x2 add r0, r5, #0x0 lsl r1, r1, #0xe - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 bne _020595A2 add r0, r5, #0x0 @@ -1994,7 +1994,7 @@ _02059584: mov r1, #0x2 add r0, r5, #0x0 lsl r1, r1, #0xe - bl sub_02058410 + bl MapObject_SetFlagsBits _020595A2: pop {r4-r6, pc} @@ -2004,7 +2004,7 @@ sub_020595A4: ; 0x020595A4 add r5, r0, #0x0 add r4, r1, #0x0 add r6, r3, #0x0 - bl sub_02058578 + bl MapObject_GetManager bl sub_0205881C cmp r0, #0x0 beq _0205962A @@ -2050,13 +2050,13 @@ _02059614: mov r1, #0x1 add r0, r5, #0x0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r4-r6, pc} _02059620: mov r1, #0x1 add r0, r5, #0x0 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits _0205962A: pop {r4-r6, pc} @@ -2185,13 +2185,13 @@ sub_0205970C: ; 0x0205970C cmp r0, #0x1 bne _0205973C add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r3, r0, #0x0 add r0, r5, #0x0 add r1, r4, #0x0 @@ -2235,13 +2235,13 @@ sub_02059774: ; 0x02059774 cmp r0, #0x1 bne _020597A4 add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r3, r0, #0x0 add r0, r5, #0x0 add r1, r4, #0x0 @@ -2374,7 +2374,7 @@ sub_02059874: ; 0x02059874 orr r4, r0 _02059896: add r0, r6, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r1, sp, #0xc str r1, [sp, #0x0] ldr r1, [sp, #0x4] @@ -2427,7 +2427,7 @@ sub_020598F0: ; 0x020598F0 add r5, r0, #0x0 add r7, r2, #0x0 add r4, r3, #0x0 - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r0, [sp, #0x28] str r4, [sp, #0x0] str r0, [sp, #0x4] @@ -2445,16 +2445,16 @@ sub_02059918: ; 0x02059918 sub sp, #0xc add r4, r1, #0x0 add r5, r0, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r4, #0x0 bl sub_02059BF4 add r7, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight str r0, [sp, #0x4] add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x8] add r0, r4, #0x0 bl sub_02059C00 @@ -2478,12 +2478,12 @@ sub_0205995C: ; 0x0205995C add r5, r1, #0x0 add r4, r2, #0x0 add r6, r3, #0x0 - bl sub_02058578 + bl MapObject_GetManager add r7, r0, #0x0 bl sub_020583BC str r0, [sp, #0x8] add r0, r7, #0x0 - bl sub_02058368 + bl MapObjectManager_GetObjectCount str r0, [sp, #0x4] _0205997C: ldr r0, [sp, #0x8] @@ -2491,26 +2491,26 @@ _0205997C: cmp r0, r1 beq _020599F4 mov r1, #0x1 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _020599F4 mov r1, #0x1 ldr r0, [sp, #0x8] lsl r1, r1, #0x12 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 bne _020599F4 ldr r0, [sp, #0x8] - bl sub_02058B2C + bl MapObject_GetCurrentX add r7, r0, #0x0 ldr r0, [sp, #0x8] - bl sub_02058B4C + bl MapObject_GetCurrentY cmp r7, r5 bne _020599C8 cmp r0, r6 bne _020599C8 ldr r0, [sp, #0x8] - bl sub_02058B3C + bl MapObject_GetCurrentHeight sub r0, r0, r4 bpl _020599BE neg r0, r0 @@ -2531,7 +2531,7 @@ _020599C8: cmp r0, r6 bne _020599F4 ldr r0, [sp, #0x8] - bl sub_02058B3C + bl MapObject_GetCurrentHeight sub r0, r0, r4 bpl _020599EA neg r0, r0 @@ -2558,10 +2558,10 @@ sub_02059A08: ; 0x02059A08 add r6, r0, #0x0 add r5, r1, #0x0 add r4, r3, #0x0 - bl sub_02058AFC + bl MapObject_GetInitialX add r7, r0, #0x0 add r0, r6, #0x0 - bl sub_02058538 + bl MapObject_GetXRange mov r1, #0x0 mvn r1, r1 cmp r0, r1 @@ -2577,10 +2577,10 @@ _02059A30: pop {r3-r7, pc} _02059A34: add r0, r6, #0x0 - bl sub_02058B0C + bl MapObject_GetInitialY add r5, r0, #0x0 add r0, r6, #0x0 - bl sub_02058540 + bl MapObject_GetYRange mov r1, #0x0 mvn r1, r1 cmp r0, r1 @@ -2606,7 +2606,7 @@ sub_02059A60: ; 0x02059A60 add r6, r1, #0x0 add r7, r2, #0x0 add r5, r3, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x0] add r0, r4, #0x0 bl sub_02058720 @@ -2839,20 +2839,20 @@ sub_02059C0C: ; 0x02059C0C push {r3-r5, lr} add r5, r0, #0x0 add r4, r1, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r1, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B18 + bl MapObject_SetPreviousX add r0, r5, #0x0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight add r1, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B20 + bl MapObject_SetPreviousHeight add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r1, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B28 + bl MapObject_SetPreviousY add r0, r4, #0x0 bl sub_02059BF4 add r1, r0, #0x0 @@ -2872,20 +2872,20 @@ sub_02059C0C: ; 0x02059C0C sub_02059C60: ; 0x02059C60 push {r4, lr} add r4, r0, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r1, r0, #0x0 add r0, r4, #0x0 - bl sub_02058B18 + bl MapObject_SetPreviousX add r0, r4, #0x0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight add r1, r0, #0x0 add r0, r4, #0x0 - bl sub_02058B20 + bl MapObject_SetPreviousHeight add r0, r4, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r1, r0, #0x0 add r0, r4, #0x0 - bl sub_02058B28 + bl MapObject_SetPreviousY pop {r4, pc} .balign 4 @@ -2894,19 +2894,19 @@ sub_02059C90: ; 0x02059C90 push {r3-r7, lr} add r5, r1, #0x0 add r4, r0, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r5, #0x0 bl sub_02059BF4 add r7, r0, #0x0 add r0, r4, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x0] add r0, r5, #0x0 bl sub_02059C00 add r5, r0, #0x0 add r0, r4, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem ldr r2, [sp, #0x0] add r1, r6, r7 add r2, r2, r5 @@ -2922,7 +2922,7 @@ sub_02059CC8: ; 0x02059CC8 add r1, sp, #0x0 add r6, r0, #0x0 add r4, r2, #0x0 - bl sub_02058B5C + bl MapObject_GetPositionVec cmp r5, #0x3 bhi _02059D0E add r0, r5, r5 @@ -2958,7 +2958,7 @@ _02059D08: _02059D0E: add r0, r6, #0x0 add r1, sp, #0x0 - bl sub_02058B6C + bl MapObject_SetPositionVec add sp, #0xc pop {r3-r6, pc} .balign 4 @@ -2969,7 +2969,7 @@ sub_02059D1C: ; 0x02059D1C sub sp, #0x18 add r1, sp, #0xc add r5, r0, #0x0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r3, sp, #0xc ldmia r3!, {r0-r1} add r2, sp, #0x0 @@ -2983,16 +2983,16 @@ sub_02059D1C: ; 0x02059D1C mov r1, #0x1 add r0, r5, #0x0 lsl r1, r1, #0xc - bl sub_02058418 + bl MapObject_ClearFlagsBits add sp, #0x18 mov r0, #0x0 pop {r3-r5, pc} _02059D4E: add r0, r5, #0x0 - bl sub_02058AE4 + bl MapObject_CheckFlag29 add r4, r0, #0x0 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r1, sp, #0x0 add r2, r4, #0x0 bl sub_02059EC8 @@ -3003,12 +3003,12 @@ _02059D4E: add r1, sp, #0xc str r0, [sp, #0x10] add r0, r5, #0x0 - bl sub_02058B6C + bl MapObject_SetPositionVec add r0, r5, #0x0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight add r1, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B20 + bl MapObject_SetPreviousHeight ldr r1, [sp, #0x10] add r0, r5, #0x0 asr r2, r1, #0x3 @@ -3016,17 +3016,17 @@ _02059D4E: lsr r1, r1, #0x14 add r1, r2, r1 asr r1, r1, #0xc - bl sub_02058B40 + bl MapObject_SetCurrentHeight mov r1, #0x1 add r0, r5, #0x0 lsl r1, r1, #0xc - bl sub_02058418 + bl MapObject_ClearFlagsBits b _02059DAC _02059DA2: mov r1, #0x1 add r0, r5, #0x0 lsl r1, r1, #0xc - bl sub_02058410 + bl MapObject_SetFlagsBits _02059DAC: add r0, r4, #0x0 add sp, #0x18 @@ -3043,7 +3043,7 @@ sub_02059DB4: ; 0x02059DB4 bl sub_02058B24 add r6, r0, #0x0 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r1, r4, #0x0 add r2, r6, #0x0 add r7, r0, #0x0 @@ -3052,10 +3052,10 @@ sub_02059DB4: ; 0x02059DB4 add r0, r5, #0x0 bl sub_02058728 add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r2, r0, #0x0 add r0, r7, #0x0 add r1, r4, #0x0 @@ -3071,14 +3071,14 @@ sub_02059DB4: ; 0x02059DB4 mov r1, #0x2 add r0, r5, #0x0 lsl r1, r1, #0xa - bl sub_02058410 + bl MapObject_SetFlagsBits mov r0, #0x0 pop {r3-r7, pc} _02059E18: mov r1, #0x2 add r0, r5, #0x0 lsl r1, r1, #0xa - bl sub_02058418 + bl MapObject_ClearFlagsBits mov r0, #0x1 pop {r3-r7, pc} .balign 4 diff --git a/arm9/asm/unk_02059F04.s b/arm9/asm/unk_02059F04.s index 123fadc7d..6b062ad5c 100644 --- a/arm9/asm/unk_02059F04.s +++ b/arm9/asm/unk_02059F04.s @@ -258,7 +258,7 @@ _0205A0A0: add r0, r5, #0x0 bl sub_0205886C add r0, r5, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r1, #0x0 bl sub_0205AFDC add r1, r0, #0x0 @@ -357,19 +357,19 @@ sub_0205A174: ; 0x0205A174 sub sp, #0x8 str r0, [sp, #0x0] add r4, r1, #0x0 - bl sub_02058AFC + bl MapObject_GetInitialX add r6, r0, #0x0 ldr r0, [sp, #0x0] - bl sub_02058B0C + bl MapObject_GetInitialY add r5, r0, #0x0 ldr r0, [sp, #0x0] - bl sub_02058538 + bl MapObject_GetXRange add r7, r0, #0x0 ldr r0, [sp, #0x0] - bl sub_02058540 + bl MapObject_GetYRange str r0, [sp, #0x4] ldr r0, [sp, #0x0] - bl sub_02058480 + bl MapObject_GetMovement cmp r0, #0xd bhi _0205A268 add r0, r0, r0 @@ -493,13 +493,13 @@ sub_0205A270: ; 0x0205A270 add r1, sp, #0x0 bl sub_0205A174 add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0x0 add r0, r6, #0x0 bl sub_02059BF4 add r4, r4, r0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r5, r0, #0x0 add r0, r6, #0x0 bl sub_02059C00 @@ -667,7 +667,7 @@ sub_0205A3A0: ; 0x0205A3A0 cmp r0, r1 bne _0205A3BE add r0, r5, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection _0205A3BE: mov r1, #0x0 bl sub_0205AFDC @@ -761,7 +761,7 @@ sub_0205A42C: ; 0x0205A42C add r5, r2, #0x0 _0205A462: add r0, r7, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r4, #0x0 ldr r2, [r5, #0x0] sub r1, r4, #0x1 @@ -843,7 +843,7 @@ sub_0205A4F4: ; 0x0205A4F4 push {r3-r5, lr} add r5, r0, #0x0 add r4, r1, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r1, #0x0 bl sub_0205AFDC add r1, r0, #0x0 @@ -918,7 +918,7 @@ sub_0205A548: ; 0x0205A548 add r5, r4, #0x0 _0205A57E: add r0, r7, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r4, #0x0 ldr r2, [r5, #0x0] sub r1, r4, #0x1 @@ -958,10 +958,10 @@ _0205A5C2: add r0, r7, #0x0 bl sub_020584AC add r0, r7, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection add r4, r0, #0x0 add r0, r7, #0x0 - bl sub_020584A0 + bl MapObject_GetInitialFacingDirection cmp r4, r0 bne _0205A5E8 mov r0, #0x0 @@ -1021,7 +1021,7 @@ sub_0205A640: ; 0x0205A640 push {r4-r6, lr} add r5, r0, #0x0 add r4, r1, #0x0 - bl sub_020584A0 + bl MapObject_GetInitialFacingDirection mov r1, #0x2 ldrsh r1, [r4, r1] add r6, r0, #0x0 @@ -1032,7 +1032,7 @@ sub_0205A640: ; 0x0205A640 _0205A65A: add r0, r5, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_0205ACE0 cmp r0, #0x0 @@ -1055,28 +1055,28 @@ sub_0205A67C: ; 0x0205A67C add r5, r0, #0x0 cmp r1, #0x0 beq _0205A6DA - bl sub_02058AFC + bl MapObject_GetInitialX add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B0C + bl MapObject_GetInitialY add r7, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #0x0] add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY ldr r1, [sp, #0x0] cmp r6, r1 bne _0205A6DA cmp r7, r0 bne _0205A6DA add r0, r5, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection bl sub_02059E74 add r6, r0, #0x0 add r0, r5, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_0205ACE0 cmp r0, #0x0 @@ -1089,7 +1089,7 @@ _0205A6D6: strh r0, [r4, #0x2] _0205A6DA: add r0, r5, #0x0 - bl sub_020584D4 + bl MapObject_GetNextFacingDirection add r6, r0, #0x0 add r0, r5, #0x0 add r1, r6, #0x0 @@ -1458,10 +1458,10 @@ sub_0205A940: ; 0x0205A940 ldrsh r1, [r4, r1] cmp r1, #0x0 bne _0205A974 - bl sub_02058AFC + bl MapObject_GetInitialX add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX cmp r6, r0 bne _0205A98C mov r0, #0x2 @@ -1470,10 +1470,10 @@ sub_0205A940: ; 0x0205A940 strh r0, [r4, #0x2] b _0205A98C _0205A974: - bl sub_02058B0C + bl MapObject_GetInitialY add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY cmp r6, r0 bne _0205A98C mov r0, #0x2 @@ -1486,16 +1486,16 @@ _0205A98C: cmp r0, #0x3 bne _0205A9C0 add r0, r5, #0x0 - bl sub_02058AFC + bl MapObject_GetInitialX add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B0C + bl MapObject_GetInitialY add r7, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #0x0] add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY ldr r1, [sp, #0x0] cmp r6, r1 bne _0205A9C0 @@ -1513,7 +1513,7 @@ _0205A9C0: ldr r6, [r7, r0] add r0, r5, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_0205ACE0 cmp r0, #0x0 @@ -1537,7 +1537,7 @@ _0205A9EA: ldr r6, [r7, r0] add r0, r5, #0x0 add r1, r6, #0x0 - bl sub_020584CC + bl MapObject_SetNextFacingDirection add r0, r5, #0x0 bl sub_0205ACE0 cmp r0, #0x0 @@ -1684,7 +1684,7 @@ _0205AB1C: .word UNK_020F69BC sub_0205AB20: ; 0x0205AB20 push {r3-r7, lr} add r5, r0, #0x0 - bl sub_02058488 + bl MapObject_GetType cmp r0, #0x1 beq _0205AB36 cmp r0, #0x2 @@ -1694,7 +1694,7 @@ sub_0205AB20: ; 0x0205AB20 pop {r3-r7, pc} _0205AB36: add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem bl sub_02055698 add r6, r0, #0x0 bl sub_02057124 @@ -1706,7 +1706,7 @@ _0205AB36: _0205AB50: add r0, r5, #0x0 mov r4, #0x0 - bl sub_02058480 + bl MapObject_GetMovement ldr r1, _0205ABE8 ; =UNK_020F6984 _0205AB5A: lsl r2, r4, #0x2 @@ -1743,13 +1743,13 @@ _0205AB8E: add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam str r0, [sp, #0x0] add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r3, r0, #0x0 ldr r0, [sp, #0x0] ldr r5, [sp, #0x0] @@ -1817,13 +1817,13 @@ _0205AC22: mvn r7, r7 ldr r0, [sp, #0x0] add r6, r7, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #0x8] ldr r0, [sp, #0x0] - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x4] ldr r0, [sp, #0x0] - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem bl sub_02055698 str r0, [sp, #0xc] bl GetPlayerXCoord @@ -1913,7 +1913,7 @@ _0205ACDA: thumb_func_start sub_0205ACE0 sub_0205ACE0: ; 0x0205ACE0 push {r3, lr} - bl sub_02058488 + bl MapObject_GetType sub r0, r0, #0x7 cmp r0, #0x1 bhi _0205ACF0 @@ -1927,7 +1927,7 @@ _0205ACF0: sub_0205ACF4: ; 0x0205ACF4 push {r4, lr} add r4, r1, #0x0 - bl sub_02058488 + bl MapObject_GetType cmp r0, #0x7 bne _0205AD06 mov r0, #0x0 @@ -1943,7 +1943,7 @@ sub_0205AD0C: ; 0x0205AD0C push {r3-r7, lr} add r7, r0, #0x0 add r5, r1, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r4, #0x0 add r6, r0, #0x0 add r1, r4, #0x0 @@ -1984,7 +1984,7 @@ _0205AD3E: ldr r4, [r1, r0] add r0, r7, #0x0 mov r1, #0x80 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 beq _0205AD6C mov r0, #0x1 @@ -1998,7 +1998,7 @@ _0205AD6E: bl sub_020584AC add r0, r7, #0x0 mov r1, #0x80 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r3-r7, pc} nop _0205AD84: .word UNK_020F6964 @@ -2010,6 +2010,6 @@ sub_0205AD88: ; 0x0205AD88 cmp r1, #0x0 bne _0205AD96 mov r1, #0x80 - bl sub_02058418 + bl MapObject_ClearFlagsBits _0205AD96: pop {r3, pc} diff --git a/arm9/asm/unk_0205AD98.s b/arm9/asm/unk_0205AD98.s index e49322c61..275cea08a 100644 --- a/arm9/asm/unk_0205AD98.s +++ b/arm9/asm/unk_0205AD98.s @@ -16,7 +16,7 @@ sub_0205AD98: ; 0x0205AD98 push {r4, lr} mov r1, #0x1 add r4, r0, #0x0 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x0 bne _0205ADAA mov r0, #0x0 @@ -24,7 +24,7 @@ sub_0205AD98: ; 0x0205AD98 _0205ADAA: add r0, r4, #0x0 mov r1, #0x2 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x1 bne _0205ADBA mov r0, #0x0 @@ -32,12 +32,12 @@ _0205ADAA: _0205ADBA: add r0, r4, #0x0 mov r1, #0x10 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x1 bne _0205ADD6 add r0, r4, #0x0 mov r1, #0x20 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x0 bne _0205ADD6 mov r0, #0x0 @@ -64,10 +64,10 @@ _0205ADEA: bl sub_020586F8 add r0, r5, #0x0 mov r1, #0x10 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 mov r1, #0x20 - bl sub_02058418 + bl MapObject_ClearFlagsBits pop {r3-r5, pc} thumb_func_start sub_0205AE0C @@ -80,7 +80,7 @@ sub_0205AE0C: ; 0x0205AE0C bl sub_020586F8 add r0, r4, #0x0 mov r1, #0x20 - bl sub_02058418 + bl MapObject_ClearFlagsBits pop {r4, pc} .balign 4 @@ -89,7 +89,7 @@ sub_0205AE28: ; 0x0205AE28 push {r4, lr} mov r1, #0x10 add r4, r0, #0x0 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x0 bne _0205AE3A mov r0, #0x1 @@ -97,7 +97,7 @@ sub_0205AE28: ; 0x0205AE28 _0205AE3A: add r0, r4, #0x0 mov r1, #0x20 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x0 beq _0205AE4A mov r0, #0x1 @@ -112,7 +112,7 @@ sub_0205AE50: ; 0x0205AE50 push {r4, lr} mov r1, #0x10 add r4, r0, #0x0 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x0 bne _0205AE62 mov r0, #0x1 @@ -120,7 +120,7 @@ sub_0205AE50: ; 0x0205AE50 _0205AE62: add r0, r4, #0x0 mov r1, #0x20 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x0 bne _0205AE72 mov r0, #0x0 @@ -128,20 +128,20 @@ _0205AE62: _0205AE72: add r0, r4, #0x0 mov r1, #0x30 - bl sub_02058418 + bl MapObject_ClearFlagsBits mov r0, #0x1 pop {r4, pc} .balign 4 - thumb_func_start sub_0205AE80 -sub_0205AE80: ; 0x0205AE80 + thumb_func_start MapObject_ClearHeldMovement +MapObject_ClearHeldMovement: ; 0x0205AE80 push {r4, lr} add r4, r0, #0x0 mov r1, #0x10 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r4, #0x0 mov r1, #0x20 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r4, #0x0 mov r1, #0xff bl sub_020586E8 @@ -171,12 +171,12 @@ _0205AEC0: sub r1, r1, #0x1 bne _0205AEC0 add r0, r5, #0x0 - bl sub_02058578 - bl sub_0205839C + bl MapObject_GetManager + bl MapObjectManager_GetPriority sub r2, r0, #0x1 ldr r0, _0205AEEC ; =sub_0205AF2C add r1, r4, #0x0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r7, r0, #0x0 bne _0205AEE4 bl GF_AssertFail @@ -431,7 +431,7 @@ sub_0205B080: ; 0x0205B080 bl sub_0205B058 add r0, r4, #0x0 mov r1, #0x20 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0x0 bne _0205B098 mov r0, #0x0 @@ -439,7 +439,7 @@ sub_0205B080: ; 0x0205B080 _0205B098: add r0, r4, #0x0 mov r1, #0x20 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r4, #0x0 mov r1, #0xff bl sub_020586E8 @@ -466,7 +466,7 @@ _0205B0C4: .word UNK_020F6440 sub_0205B0C8: ; 0x0205B0C8 push {r3, lr} mov r1, #0x20 - bl sub_02058410 + bl MapObject_SetFlagsBits mov r0, #0x0 pop {r3, pc} @@ -544,7 +544,7 @@ sub_0205B124: ; 0x0205B124 bl sub_02058544 add r0, r5, #0x0 mov r1, #0x4 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 bl sub_02058700 pop {r3-r7, pc} @@ -574,7 +574,7 @@ sub_0205B16C: ; 0x0205B16C _0205B198: add r0, r5, #0x0 mov r1, #0x28 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 bl sub_02059C60 add r0, r5, #0x0 @@ -977,7 +977,7 @@ sub_0205B43C: ; 0x0205B43C _0205B456: add r0, r4, #0x0 mov r1, #0x20 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r4, #0x0 mov r1, #0x0 bl sub_02058544 @@ -1218,7 +1218,7 @@ _0205B5E2: _0205B5EA: ldr r1, _0205B614 ; =0x00010004 add r0, r5, #0x0 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 add r1, r4, #0x0 bl sub_020584D8 @@ -1264,7 +1264,7 @@ sub_0205B61C: ; 0x0205B61C bl sub_02059C0C add r0, r5, #0x0 mov r1, #0x4 - bl sub_02058410 + bl MapObject_SetFlagsBits _0205B65E: ldr r1, [r4, #0x0] cmp r1, #0x0 @@ -1323,7 +1323,7 @@ _0205B6B8: bl sub_02058B94 ldr r1, _0205B6FC ; =0x00020028 add r0, r5, #0x0 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 bl sub_02059C60 add r0, r5, #0x0 @@ -1922,7 +1922,7 @@ sub_0205BB08: ; 0x0205BB08 mov r1, #0x2 add r4, r0, #0x0 lsl r1, r1, #0x8 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r4, #0x0 bl sub_02058700 mov r0, #0x1 @@ -1935,7 +1935,7 @@ sub_0205BB20: ; 0x0205BB20 mov r1, #0x2 add r4, r0, #0x0 lsl r1, r1, #0x8 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r4, #0x0 bl sub_02058700 mov r0, #0x1 @@ -1947,7 +1947,7 @@ sub_0205BB38: ; 0x0205BB38 push {r4, lr} add r4, r0, #0x0 mov r1, #0x80 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r4, #0x0 bl sub_02058700 mov r0, #0x1 @@ -1958,7 +1958,7 @@ sub_0205BB4C: ; 0x0205BB4C push {r4, lr} add r4, r0, #0x0 mov r1, #0x80 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r4, #0x0 bl sub_02058700 mov r0, #0x1 @@ -1970,7 +1970,7 @@ sub_0205BB60: ; 0x0205BB60 mov r1, #0x1 add r4, r0, #0x0 lsl r1, r1, #0x8 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r4, #0x0 bl sub_02058700 mov r0, #0x1 @@ -1983,7 +1983,7 @@ sub_0205BB78: ; 0x0205BB78 mov r1, #0x1 add r4, r0, #0x0 lsl r1, r1, #0x8 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r4, #0x0 bl sub_02058700 mov r0, #0x1 @@ -2067,7 +2067,7 @@ sub_0205BBF4: ; 0x0205BBF4 bl sub_02058544 add r0, r5, #0x0 mov r1, #0x4 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 bl sub_02058700 pop {r3-r7, pc} @@ -2104,7 +2104,7 @@ sub_0205BC34: ; 0x0205BC34 _0205BC6E: add r0, r5, #0x0 mov r1, #0x28 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 bl sub_02059C60 add r0, r5, #0x0 @@ -2342,11 +2342,11 @@ _0205BDFE: bl ov06_0224D2E0 ldr r1, _0205BE34 ; =0x00010004 add r0, r4, #0x0 - bl sub_02058410 + bl MapObject_SetFlagsBits mov r1, #0x1 add r0, r4, #0x0 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r4, #0x0 bl sub_02058700 mov r0, #0x0 @@ -2391,7 +2391,7 @@ _0205BE70: bl sub_02058B94 ldr r1, _0205BE9C ; =0x00020028 add r0, r5, #0x0 - bl sub_02058410 + bl MapObject_SetFlagsBits add r0, r5, #0x0 bl sub_0205EB2C add r0, r5, #0x0 diff --git a/arm9/asm/unk_0205BEF8.s b/arm9/asm/unk_0205BEF8.s index 61a80213e..1f239a742 100644 --- a/arm9/asm/unk_0205BEF8.s +++ b/arm9/asm/unk_0205BEF8.s @@ -68,7 +68,7 @@ _0205BF1E: sub_0205BF24: ; 0x0205BF24 push {r4, lr} add r4, r0, #0x0 - bl sub_02058488 + bl MapObject_GetType add r1, r0, #0x0 lsl r2, r1, #0x2 ldr r1, _0205BF3C ; =UNK_020F7118 @@ -83,7 +83,7 @@ _0205BF3C: .word UNK_020F7118 sub_0205BF40: ; 0x0205BF40 push {r4, lr} add r4, r0, #0x0 - bl sub_02058488 + bl MapObject_GetType add r1, r0, #0x0 lsl r2, r1, #0x2 ldr r1, _0205BF58 ; =UNK_020F7148 @@ -98,7 +98,7 @@ _0205BF58: .word UNK_020F7148 sub_0205BF5C: ; 0x0205BF5C push {r4, lr} add r4, r0, #0x0 - bl sub_02058488 + bl MapObject_GetType add r1, r0, #0x0 lsl r2, r1, #0x2 ldr r1, _0205BF74 ; =UNK_020F7178 @@ -113,7 +113,7 @@ _0205BF74: .word UNK_020F7178 sub_0205BF78: ; 0x0205BF78 push {r3-r5, lr} add r4, r0, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r5, r0, #0x0 add r0, r4, #0x0 bl sub_02058B14 @@ -123,7 +123,7 @@ sub_0205BF78: ; 0x0205BF78 pop {r3-r5, pc} _0205BF90: add r0, r4, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r5, r0, #0x0 add r0, r4, #0x0 bl sub_02058B24 @@ -140,7 +140,7 @@ _0205BFA6: sub_0205BFAC: ; 0x0205BFAC push {r3-r5, lr} add r4, r0, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r5, r0, #0x0 add r0, r4, #0x0 bl sub_02058B14 @@ -150,7 +150,7 @@ sub_0205BFAC: ; 0x0205BFAC pop {r3-r5, pc} _0205BFC4: add r0, r4, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r5, r0, #0x0 add r0, r4, #0x0 bl sub_02058B24 @@ -187,7 +187,7 @@ sub_0205BFEC: ; 0x0205BFEC add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x1 - bl sub_02058510 + bl MapObject_GetParam strb r0, [r4, #0x3] pop {r3-r5, pc} @@ -288,7 +288,7 @@ _0205C0A6: ldmia r3!, {r0-r1} stmia r2!, {r0-r1} add r0, r5, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection strb r0, [r4, #0x4] lsl r1, r0, #0x2 add r0, sp, #0x10 @@ -391,10 +391,10 @@ sub_0205C16C: ; 0x0205C16C add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x1 - bl sub_02058510 + bl MapObject_GetParam strb r0, [r4, #0x3] add r0, r5, #0x0 - bl sub_02058488 + bl MapObject_GetType cmp r0, #0x5 beq _0205C190 mov r0, #0x1 @@ -508,7 +508,7 @@ _0205C248: ; jump table (using 16-bit offset) .short _0205C2D2 - _0205C248 - 2; case 3 _0205C250: add r0, r7, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r5, #0x0 add r6, r0, #0x0 add r1, r5, #0x0 diff --git a/arm9/asm/unk_0205C334.s b/arm9/asm/unk_0205C334.s index 97c71f34b..a716afd3f 100644 --- a/arm9/asm/unk_0205C334.s +++ b/arm9/asm/unk_0205C334.s @@ -66,7 +66,7 @@ sub_0205C390: ; 0x0205C390 bl sub_020585B0 add r4, r0, #0x0 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r1, r5, #0x0 bl sub_0204B5FC strh r0, [r4, #0x0] @@ -104,7 +104,7 @@ sub_0205C3D0: ; 0x0205C3D0 bl sub_02058628 add r4, r0, #0x0 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r1, r5, #0x0 bl sub_0204B5FC add r6, r0, #0x0 @@ -121,7 +121,7 @@ sub_0205C3D0: ; 0x0205C3D0 add r1, #0x8 bl ov05_021F2094 add r0, r5, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r1, r5, #0x0 bl sub_0204B61C add r1, r6, #0x0 @@ -215,7 +215,7 @@ _0205C4C0: mov r1, #0x2 add r0, r5, #0x0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r3-r5, pc} thumb_func_start sub_0205C4D8 @@ -244,7 +244,7 @@ _0205C506: mov r1, #0x2 add r0, r5, #0x0 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits _0205C510: add r0, r5, #0x0 bl ov06_0224A310 @@ -261,7 +261,7 @@ _0205C516: mov r1, #0x2 add r0, r5, #0x0 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits _0205C536: pop {r3-r5, pc} .balign 4 diff --git a/arm9/asm/unk_0205C598.s b/arm9/asm/unk_0205C598.s index 125a35557..5d6f41dbf 100644 --- a/arm9/asm/unk_0205C598.s +++ b/arm9/asm/unk_0205C598.s @@ -175,7 +175,7 @@ sub_0205C6BC: ; 0x0205C6BC add r1, sp, #0x4 add r2, sp, #0xc mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x0 beq _0205C734 _0205C6DE: @@ -200,7 +200,7 @@ _0205C6E8: lsl r1, r1, #0x10 add r0, r6, #0x0 lsr r1, r1, #0x10 - bl TrainerFlagCheck + bl TrainerFieldSystem_FlagCheck cmp r0, #0x0 bne _0205C724 ldr r0, [sp, #0x28] @@ -216,7 +216,7 @@ _0205C724: add r1, sp, #0x4 add r2, sp, #0xc mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x0 bne _0205C6DE _0205C734: @@ -233,7 +233,7 @@ sub_0205C73C: ; 0x0205C73C str r2, [r5, #0x0] str r3, [r5, #0x4] add r0, r4, #0x0 - bl sub_02058498 + bl MapObject_GetScript str r0, [r5, #0x8] lsl r0, r0, #0x10 lsr r0, r0, #0x10 @@ -250,7 +250,7 @@ sub_0205C73C: ; 0x0205C73C thumb_func_start sub_0205C768 sub_0205C768: ; 0x0205C768 push {r3, lr} - bl sub_02058488 + bl MapObject_GetType cmp r0, #0x8 bhi _0205C792 add r1, r0, r0 @@ -291,11 +291,11 @@ sub_0205C794: ; 0x0205C794 bl GetPlayerYCoord add r6, r0, #0x0 add r0, r5, #0x0 - bl sub_020584C4 + bl MapObject_GetFacingDirection add r4, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam add r2, r0, #0x0 str r6, [sp, #0x0] mov r0, #0x0 @@ -336,7 +336,7 @@ _0205C802: add r7, r0, #0x0 add r0, r5, #0x0 mov r1, #0x0 - bl sub_02058510 + bl MapObject_GetParam str r0, [sp, #0xc] mov r4, #0x0 _0205C822: @@ -402,11 +402,11 @@ sub_0205C888: ; 0x0205C888 add r5, r1, #0x0 add r6, r2, #0x0 add r4, r3, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX cmp r0, r6 bne _0205C8AE add r0, r7, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY cmp r4, r0 bge _0205C8AE sub r1, r0, r5 @@ -426,11 +426,11 @@ sub_0205C8B4: ; 0x0205C8B4 add r5, r1, #0x0 add r6, r2, #0x0 add r4, r3, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX cmp r0, r6 bne _0205C8DA add r0, r7, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY cmp r4, r0 ble _0205C8DA add r1, r0, r5 @@ -450,11 +450,11 @@ sub_0205C8E0: ; 0x0205C8E0 add r5, r1, #0x0 add r4, r2, #0x0 add r6, r3, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY cmp r0, r6 bne _0205C906 add r0, r7, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX cmp r4, r0 bge _0205C906 sub r1, r0, r5 @@ -474,11 +474,11 @@ sub_0205C90C: ; 0x0205C90C add r5, r1, #0x0 add r4, r2, #0x0 add r6, r3, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY cmp r0, r6 bne _0205C932 add r0, r7, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX cmp r4, r0 ble _0205C932 add r1, r0, r5 @@ -504,13 +504,13 @@ sub_0205C938: ; 0x0205C938 mov r0, #0x1 pop {r3-r7, pc} _0205C94C: - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0x0 ldr r0, [sp, #0x4] - bl sub_02058B4C + bl MapObject_GetCurrentY add r7, r0, #0x0 ldr r0, [sp, #0x4] - bl sub_02058B3C + bl MapObject_GetCurrentHeight str r0, [sp, #0xc] add r0, r5, #0x0 bl sub_02059BF4 @@ -573,7 +573,7 @@ _0205C9D0: thumb_func_start sub_0205C9D8 sub_0205C9D8: ; 0x0205C9D8 push {r3, lr} - bl sub_02058498 + bl MapObject_GetScript lsl r0, r0, #0x10 lsr r0, r0, #0x10 bl sub_020395F4 @@ -599,7 +599,7 @@ sub_0205C9F0: ; 0x0205C9F0 add r1, sp, #0x0 add r2, sp, #0x4 mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x0 beq _0205CA40 add r7, sp, #0x0 @@ -623,7 +623,7 @@ _0205CA30: add r1, r7, #0x0 add r2, sp, #0x4 mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x0 bne _0205CA10 _0205CA40: @@ -698,7 +698,7 @@ _0205CA9A: str r5, [r4, #0x24] ldr r0, _0205CAD0 ; =sub_0205CAF8 str r6, [r4, #0x28] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r4, r0, #0x0 bne _0205CACC bl GF_AssertFail @@ -778,7 +778,7 @@ _0205CB44: bl ov05_021F1EC0 add r0, r5, #0x0 mov r1, #0x40 - bl sub_02058410 + bl MapObject_SetFlagsBits mov r0, #0x2 str r0, [r4, #0x0] mov r0, #0x1 @@ -797,7 +797,7 @@ sub_0205CB5C: ; 0x0205CB5C pop {r4, pc} _0205CB72: ldr r0, [r4, #0x24] - bl sub_02058480 + bl MapObject_GetMovement sub r0, #0x33 cmp r0, #0x3 bhi _0205CB9A @@ -1024,16 +1024,16 @@ sub_0205CCEC: ; 0x0205CCEC ldr r0, [r5, #0x28] bl PlayerAvatar_GetMapObject add r4, r0, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0x0 add r0, r4, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r7, r0, #0x0 ldr r0, [r5, #0x24] - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #0x0] ldr r0, [r5, #0x24] - bl sub_02058B4C + bl MapObject_GetCurrentY add r3, r0, #0x0 ldr r2, [sp, #0x0] add r0, r6, #0x0 @@ -1057,7 +1057,7 @@ _0205CD38: bne _0205CD64 add r0, r4, #0x0 mov r1, #0x80 - bl sub_02058418 + bl MapObject_ClearFlagsBits add r0, r6, #0x0 mov r1, #0x0 bl sub_0205AFDC diff --git a/arm9/asm/unk_0205E4EC.s b/arm9/asm/unk_0205E4EC.s index 35f0c7d58..ffc5f7715 100644 --- a/arm9/asm/unk_0205E4EC.s +++ b/arm9/asm/unk_0205E4EC.s @@ -132,7 +132,7 @@ sub_0205E5B4: ; 0x0205E5B4 push {r3-r5, lr} add r5, r0, #0x0 add r4, r1, #0x0 - bl sub_02058578 + bl MapObject_GetManager bl sub_020552A4 cmp r0, #0x0 bne _0205E5CC @@ -155,7 +155,7 @@ _0205E5DA: sub_0205E5E0: ; 0x0205E5E0 push {r3-r5, lr} add r5, r1, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem bl sub_02055698 mov r1, #0x1 add r4, r0, #0x0 @@ -174,7 +174,7 @@ sub_0205E5E0: ; 0x0205E5E0 sub_0205E608: ; 0x0205E608 push {r4-r6, lr} add r5, r1, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem bl sub_02055698 add r6, r0, #0x0 beq _0205E638 @@ -201,7 +201,7 @@ _0205E638: sub_0205E63C: ; 0x0205E63C push {r3-r5, lr} add r5, r1, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem bl sub_02055698 add r4, r0, #0x0 bl GetPlayerXCoord @@ -215,7 +215,7 @@ sub_0205E63C: ; 0x0205E63C thumb_func_start sub_0205E65C sub_0205E65C: ; 0x0205E65C push {r3, lr} - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem bl sub_02055698 bl sub_02055464 add r1, r0, #0x0 @@ -253,14 +253,14 @@ sub_0205E698: ; 0x0205E698 push {r3-r7, lr} sub sp, #0x8 add r5, r0, #0x0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem bl sub_02055698 add r4, r0, #0x0 add r0, r5, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #0x0] add r0, r5, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r7, r0, #0x0 add r0, r4, #0x0 bl sub_02055338 @@ -407,7 +407,7 @@ sub_0205E7C4: ; 0x0205E7C4 mov r1, #0x0 add r4, r0, #0x0 str r1, [sp, #0x8] - bl sub_02058488 + bl MapObject_GetType str r0, [sp, #0x0] add r0, r4, #0x0 bl sub_02058450 @@ -416,7 +416,7 @@ sub_0205E7C4: ; 0x0205E7C4 bl sub_0205C9E8 add r5, r0, #0x0 add r0, r4, #0x0 - bl sub_02058578 + bl MapObject_GetManager ldr r1, [sp, #0x0] add r7, r0, #0x0 cmp r1, #0x8 @@ -441,7 +441,7 @@ _0205E810: add r1, sp, #0x4 add r2, sp, #0x8 mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x1 bne _0205E84C _0205E81E: @@ -463,7 +463,7 @@ _0205E83C: add r1, sp, #0x4 add r2, sp, #0x8 mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x1 beq _0205E81E _0205E84C: @@ -478,7 +478,7 @@ sub_0205E854: ; 0x0205E854 sub sp, #0xc add r5, r0, #0x0 str r1, [sp, #0x0] - bl sub_02058578 + bl MapObject_GetManager add r4, r0, #0x0 mov r0, #0x0 str r0, [sp, #0x8] @@ -492,7 +492,7 @@ sub_0205E854: ; 0x0205E854 add r1, sp, #0x4 add r2, sp, #0x8 mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x1 bne _0205E8C6 _0205E886: @@ -523,7 +523,7 @@ _0205E8B6: add r1, sp, #0x4 add r2, sp, #0x8 mov r3, #0x1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #0x1 beq _0205E886 _0205E8C6: @@ -541,10 +541,10 @@ sub_0205E8D0: ; 0x0205E8D0 add r4, r2, #0x0 strb r0, [r5, #0x1] add r0, r4, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX strh r0, [r5, #0x2] add r0, r4, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY strh r0, [r5, #0x4] mov r0, #0xff strh r0, [r5, #0x6] @@ -557,10 +557,10 @@ sub_0205E8F4: ; 0x0205E8F4 push {r3-r7, lr} add r6, r0, #0x0 ldr r5, [r1, #0x8] - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0x0 add r0, r6, #0x0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r6, r0, #0x0 add r0, r5, #0x0 bl sub_02058B14 @@ -579,7 +579,7 @@ _0205E91E: mov r1, #0x61 add r0, r5, #0x0 lsl r1, r1, #0x6 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0x0 bne _0205E93A _0205E936: @@ -596,16 +596,16 @@ sub_0205E940: ; 0x0205E940 sub sp, #0xc str r0, [sp, #0x0] add r5, r1, #0x0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0x0 ldr r0, [sp, #0x0] - bl sub_02058B4C + bl MapObject_GetCurrentY add r6, r0, #0x0 ldr r0, [r5, #0x8] - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #0x8] ldr r0, [r5, #0x8] - bl sub_02058B4C + bl MapObject_GetCurrentY add r7, r0, #0x0 ldr r0, [r5, #0x8] bl sub_02058B14 @@ -670,7 +670,7 @@ sub_0205E9C8: ; 0x0205E9C8 mov r1, #0x1 add r0, r4, #0x0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits ldr r5, _0205EA0C ; =UNK_020F7398 add r3, sp, #0x0 ldmia r5!, {r0-r1} diff --git a/arm9/asm/unk_0205F7A0.s b/arm9/asm/unk_0205F7A0.s index 08e398fcf..622741ae0 100644 --- a/arm9/asm/unk_0205F7A0.s +++ b/arm9/asm/unk_0205F7A0.s @@ -251,7 +251,7 @@ _0205F962: _0205F98C: ldrb r1, [r6, #0x1] add r0, r7, #0x0 - bl FlagCheck + bl FieldSystem_FlagCheck lsl r0, r0, #0x18 lsr r0, r0, #0x18 lsl r0, r0, #0x1e @@ -298,7 +298,7 @@ _0205F9BE: _0205F9E8: ldrb r1, [r6, #0x3] add r0, r7, #0x0 - bl FlagCheck + bl FieldSystem_FlagCheck lsl r0, r0, #0x18 lsr r0, r0, #0x18 lsl r0, r0, #0x1e diff --git a/arm9/asm/unk_02063948.s b/arm9/asm/unk_02063948.s index 4cfc287f4..195787995 100644 --- a/arm9/asm/unk_02063948.s +++ b/arm9/asm/unk_02063948.s @@ -57,7 +57,7 @@ sub_02063964: ; 0x02063964 ldr r0, [sp, #0x8] cmp r0, #0x0 beq _020639B6 - bl sub_02058458 + bl MapObject_GetSpriteID cmp r0, #0x54 beq _0206399A cmp r0, #0x55 diff --git a/arm9/asm/unk_020643C0.s b/arm9/asm/unk_020643C0.s index e88512c8d..d49ca537f 100644 --- a/arm9/asm/unk_020643C0.s +++ b/arm9/asm/unk_020643C0.s @@ -251,7 +251,7 @@ sub_020645B0: ; 0x020645B0 add r2, r1, #0x0 ldr r0, _020645CC ; =sub_020645D0 add r1, r3, #0x0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r4, r0, #0x0 bne _020645C6 bl GF_AssertFail diff --git a/arm9/asm/unk_020653EC.s b/arm9/asm/unk_020653EC.s index 146405f48..8d9f249d7 100644 --- a/arm9/asm/unk_020653EC.s +++ b/arm9/asm/unk_020653EC.s @@ -87,7 +87,7 @@ sub_020653EC: ; 0x020653EC ldr r0, _02065470 ; =sub_020654B0 add r1, r4, #0x0 mov r2, #0x0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x8] pop {r4-r6, pc} .balign 4 diff --git a/arm9/asm/unk_0206BF90.s b/arm9/asm/unk_0206BF90.s index d3bb2805e..04a23cb1c 100644 --- a/arm9/asm/unk_0206BF90.s +++ b/arm9/asm/unk_0206BF90.s @@ -47,11 +47,11 @@ sub_0206BF90: ; 0x0206BF90 ldr r0, _0206BFE8 ; =sub_0206C550 add r1, r4, #0x0 mov r2, #0x0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _0206BFEC ; =sub_0206C5DC add r1, r6, #0x0 mov r2, #0x0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4-r6, pc} nop _0206BFE4: .word UNK_020F828C diff --git a/arm9/asm/unk_0206C700.s b/arm9/asm/unk_0206C700.s index 8c45f1a53..c23af95eb 100644 --- a/arm9/asm/unk_0206C700.s +++ b/arm9/asm/unk_0206C700.s @@ -236,7 +236,7 @@ sub_0206C700: ; 0x0206C700 ldr r0, _0206C8E8 ; =sub_0206C8EC add r1, r4, #0x0 mov r2, #0x0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r0, #0x1 bl TextFlags_SetCanABSpeedUpPrint bl sub_02033E74 diff --git a/arm9/asm/unk_02080C38.s b/arm9/asm/unk_02080C38.s index 97d73835f..4a2a5a851 100644 --- a/arm9/asm/unk_02080C38.s +++ b/arm9/asm/unk_02080C38.s @@ -2428,7 +2428,7 @@ _02081E46: ldr r0, _02081EB4 ; =sub_02081680 add r1, r6, #0x0 mov r2, #0xa - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x6 lsl r1, r1, #0x6 str r0, [r6, r1] @@ -2479,7 +2479,7 @@ _02081EE6: ldr r0, _02081F04 ; =sub_02081F08 add r1, r4, #0x0 mov r2, #0xa - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x6 lsl r1, r1, #0x6 str r0, [r4, r1] @@ -3334,7 +3334,7 @@ _020824DC: ldr r0, _02082504 ; =sub_0208251C add r1, r5, #0x0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x0] ldr r0, _020824F0 ; =0x000019BC str r4, [r5, r0] diff --git a/arm9/global.inc b/arm9/global.inc index 58a1d9663..84a5336b2 100644 --- a/arm9/global.inc +++ b/arm9/global.inc @@ -681,7 +681,7 @@ .extern sub_0200C9D8 .extern sub_0200CA0C .extern sub_0200CA40 -.extern sub_0200CA44 +.extern SysTask_CreateOnMainQueue .extern sub_0200CA60 .extern sub_0200CA7C .extern sub_0200CA98 @@ -2566,7 +2566,7 @@ .extern LocalFieldData_GetSafariStepsCounter .extern sub_02034E2C .extern Save_LocalFieldData_Get -.extern sub_02034E48 +.extern FieldSystem_SyncMapObjectsToSave .extern sub_02034E60 .extern GetMomSpawnId .extern GetSpecialSpawnWarpData @@ -2680,8 +2680,8 @@ .extern sub_02039460 .extern GetVarPointer .extern FieldSystem_VarGet -.extern sub_02039504 -.extern FlagCheck +.extern FieldSystem_VarGetObjectEventGraphicsId +.extern FieldSystem_FlagCheck .extern FieldSystem_FlagSet .extern FlagClear .extern ResetTempFlagsAndVars @@ -2690,7 +2690,7 @@ .extern sub_020395F4 .extern sub_02039618 .extern TrainerIsDoubleBattle -.extern TrainerFlagCheck +.extern TrainerFieldSystem_FlagCheck .extern TrainerFieldSystem_FlagSet .extern TrainerFlagClear .extern sub_02039694 @@ -3983,33 +3983,33 @@ .extern sub_02057260 .extern sub_02057278 .extern sub_020572B8 -.extern sub_02057380 -.extern sub_020573AC +.extern MapObjectManager_Init +.extern MapObjectManager_Delete .extern sub_020573C8 -.extern sub_0205753C -.extern sub_020575D4 +.extern MapObject_Create +.extern MapObject_CreateFromObjectEventWithId .extern sub_02057614 .extern sub_02057634 -.extern sub_02057654 -.extern sub_02057688 +.extern MapObject_Remove +.extern MapObject_Delete .extern sub_020576A8 -.extern sub_0205771C +.extern MapObjectManager_RemoveAllActiveObjects .extern sub_02057750 .extern sub_020577A8 -.extern sub_02057800 -.extern sub_0205785C -.extern sub_02057BAC -.extern GetMapObjectByID -.extern sub_020580B4 -.extern sub_020580F4 +.extern FieldSystem_SyncMapObjectsToSaveEx +.extern MapObjectManager_RestoreFromSave +.extern MapObject_CreateFromMultipleObjectEvents +.extern MapObjectManager_GetFirstActiveObjectByID +.extern MapObjectManager_GetFirstActiveObjectWithMovement +.extern MapObjectManager_GetNextObjectWithFlagFromIndex .extern sub_0205829C .extern sub_020582A8 .extern sub_020582F8 -.extern sub_02058368 +.extern MapObjectManager_GetObjectCount .extern sub_0205837C .extern sub_02058384 .extern sub_02058390 -.extern sub_0205839C +.extern MapObjectManager_GetPriority .extern sub_020583A0 .extern sub_020583A4 .extern sub_020583AC @@ -4017,39 +4017,39 @@ .extern sub_020583D4 .extern sub_020583F0 .extern sub_020583F4 -.extern sub_02058410 -.extern sub_02058418 -.extern sub_02058424 -.extern sub_0205842C -.extern sub_02058444 +.extern MapObject_SetFlagsBits +.extern MapObject_ClearFlagsBits +.extern MapObject_GetFlagsBits +.extern MapObject_TestFlagsBits +.extern MapObject_SetID .extern MapObject_GetID .extern sub_02058450 -.extern sub_02058454 -.extern sub_02058458 +.extern MapObject_SetSpriteID +.extern MapObject_GetSpriteID .extern sub_0205845C -.extern sub_02058480 -.extern sub_02058484 -.extern sub_02058488 -.extern sub_0205848C -.extern sub_02058494 -.extern sub_02058498 -.extern sub_020584A0 -.extern sub_020584A4 +.extern MapObject_GetMovement +.extern MapObject_SetType +.extern MapObject_GetType +.extern MapObject_SetFlagID +.extern MapObject_SetScript +.extern MapObject_GetScript +.extern MapObject_GetInitialFacingDirection +.extern MapObject_SetFacingDirectionDirect .extern sub_020584AC -.extern sub_020584C4 +.extern MapObject_GetFacingDirection .extern sub_020584C8 -.extern sub_020584CC -.extern sub_020584D4 +.extern MapObject_SetNextFacingDirection +.extern MapObject_GetNextFacingDirection .extern sub_020584D8 -.extern sub_020584EC -.extern sub_02058510 -.extern sub_02058534 -.extern sub_02058538 -.extern sub_0205853C -.extern sub_02058540 +.extern MapObject_SetParam +.extern MapObject_GetParam +.extern MapObject_SetXRange +.extern MapObject_GetXRange +.extern MapObject_SetYRange +.extern MapObject_GetYRange .extern sub_02058544 .extern sub_0205854C -.extern sub_02058578 +.extern MapObject_GetManager .extern sub_0205858C .extern sub_020585B0 .extern sub_020585B4 @@ -4071,7 +4071,7 @@ .extern sub_02058720 .extern sub_02058728 .extern sub_02058730 -.extern MapObject_GetFieldSysPtr +.extern MapObject_GetFieldSystem .extern sub_02058744 .extern sub_02058750 .extern sub_02058768 @@ -4082,13 +4082,13 @@ .extern sub_020587F4 .extern sub_02058804 .extern sub_0205881C -.extern sub_02058830 +.extern MapObject_IsInUse .extern sub_0205883C .extern sub_02058848 .extern sub_02058854 .extern sub_02058860 .extern sub_0205886C -.extern sub_02058884 +.extern MapObject_CheckFlag14 .extern sub_02058890 .extern MapObject_SetVisible .extern sub_020588B8 @@ -4101,7 +4101,7 @@ .extern sub_02058960 .extern sub_0205897C .extern sub_02058994 -.extern sub_020589CC +.extern MapObject_CheckFlag25 .extern sub_020589E4 .extern sub_02058A00 .extern sub_02058A18 @@ -4112,29 +4112,29 @@ .extern sub_02058A9C .extern sub_02058AB4 .extern sub_02058AC8 -.extern sub_02058AE4 -.extern sub_02058AFC -.extern sub_02058B04 -.extern sub_02058B0C +.extern MapObject_CheckFlag29 +.extern MapObject_GetInitialX +.extern MapObject_GetInitialHeight +.extern MapObject_GetInitialY .extern sub_02058B14 -.extern sub_02058B18 +.extern MapObject_SetPreviousX .extern sub_02058B1C -.extern sub_02058B20 +.extern MapObject_SetPreviousHeight .extern sub_02058B24 -.extern sub_02058B28 -.extern sub_02058B2C -.extern sub_02058B30 +.extern MapObject_SetPreviousY +.extern MapObject_GetCurrentX +.extern MapObject_SetCurrentX .extern sub_02058B34 -.extern sub_02058B3C -.extern sub_02058B40 +.extern MapObject_GetCurrentHeight +.extern MapObject_SetCurrentHeight .extern sub_02058B44 -.extern sub_02058B4C -.extern sub_02058B50 +.extern MapObject_GetCurrentY +.extern MapObject_SetCurrentY .extern sub_02058B54 -.extern sub_02058B5C -.extern sub_02058B6C +.extern MapObject_GetPositionVec +.extern MapObject_SetPositionVec .extern sub_02058B7C -.extern sub_02058B80 +.extern MapObject_GetPosVecYCoord .extern sub_02058B84 .extern sub_02058B94 .extern sub_02058BA4 @@ -4248,7 +4248,7 @@ .extern sub_0205AE0C .extern sub_0205AE28 .extern sub_0205AE50 -.extern sub_0205AE80 +.extern MapObject_ClearHeldMovement .extern sub_0205AEA4 .extern sub_0205AEF0 .extern sub_0205AEFC diff --git a/arm9/overlays/05/asm/ov05_021D7F4C.s b/arm9/overlays/05/asm/ov05_021D7F4C.s index a9d8e7ee1..0781ef608 100644 --- a/arm9/overlays/05/asm/ov05_021D7F4C.s +++ b/arm9/overlays/05/asm/ov05_021D7F4C.s @@ -134,7 +134,7 @@ _021D8034: ldr r0, _021D809C ; =ov05_021D7FDC ldr r2, [r6] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] ldr r0, [r5, #0x10] ldr r1, _021D80A0 ; =ov05_021D8000 diff --git a/arm9/overlays/05/asm/ov05_021D80E8.s b/arm9/overlays/05/asm/ov05_021D80E8.s index 2f5b1f820..1d0d1b4e8 100644 --- a/arm9/overlays/05/asm/ov05_021D80E8.s +++ b/arm9/overlays/05/asm/ov05_021D80E8.s @@ -461,12 +461,12 @@ _021D845A: bl sub_02055B8C _021D8486: ldr r0, [sp, #4] - bl sub_02058488 + bl MapObject_GetType cmp r0, #9 beq _021D84A8 ldr r5, [sp, #4] add r0, r5, #0 - bl sub_02058498 + bl MapObject_GetScript add r1, r0, #0 lsl r1, r1, #0x10 add r0, r4, #0 @@ -599,7 +599,7 @@ ov05_021D859C: ; 0x021D859C bne _021D85C4 ldr r4, [sp] add r0, r4, #0 - bl sub_02058498 + bl MapObject_GetScript add r1, r0, #0 lsl r1, r1, #0x10 add r0, r5, #0 @@ -732,7 +732,7 @@ _021D86AE: cmp r0, #1 bne _021D86FE ldr r0, [sp] - bl sub_02058480 + bl MapObject_GetMovement cmp r0, #1 beq _021D86FE ldr r0, [r5, #0x38] @@ -747,7 +747,7 @@ _021D86AE: _021D86E4: ldr r4, [sp] add r0, r4, #0 - bl sub_02058498 + bl MapObject_GetScript add r1, r0, #0 lsl r1, r1, #0x10 add r0, r5, #0 @@ -852,7 +852,7 @@ _021D87B6: bl sub_02031C10 ldr r4, [sp] add r0, r4, #0 - bl sub_02058498 + bl MapObject_GetScript add r1, r0, #0 lsl r1, r1, #0x10 add r0, r5, #0 @@ -934,12 +934,12 @@ _021D8842: bl sub_02055B8C _021D886E: ldr r0, [sp] - bl sub_02058488 + bl MapObject_GetType cmp r0, #9 beq _021D8890 ldr r5, [sp] add r0, r5, #0 - bl sub_02058498 + bl MapObject_GetScript add r1, r0, #0 lsl r1, r1, #0x10 add r0, r4, #0 diff --git a/arm9/overlays/05/asm/ov05_021DC0B8.s b/arm9/overlays/05/asm/ov05_021DC0B8.s index 4651eabee..e30564dfe 100644 --- a/arm9/overlays/05/asm/ov05_021DC0B8.s +++ b/arm9/overlays/05/asm/ov05_021DC0B8.s @@ -134,14 +134,14 @@ _021DC19A: mov r2, #0 add r1, r5, #0 str r2, [r5, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue b _021DC1C2 _021DC1B6: ldr r0, _021DC1CC ; =ov05_021DC2A4 mov r2, #0 add r1, r5, #0 str r2, [r5, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue _021DC1C2: str r0, [r5, #0x14] mov r0, #1 @@ -490,7 +490,7 @@ _021DC3F6: ldr r0, _021DC470 ; =ov05_021DC474 add r1, r6, #0 mov r2, #0xa - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r6, #0xf8 str r0, [r6] add sp, #0x1c @@ -1136,7 +1136,7 @@ _021DC92E: ldr r0, _021DC944 ; =ov05_021DCC38 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x1c] mov r0, #1 str r0, [r4, #0x14] @@ -1180,7 +1180,7 @@ _021DC974: _021DC97E: ldr r0, [r4, #0x20] mov r2, #4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [r4, #0xc] ldr r3, _021DCA34 ; =0x00000F48 str r0, [r1, r3] diff --git a/arm9/overlays/05/asm/ov05_021E1374.s b/arm9/overlays/05/asm/ov05_021E1374.s index 2ce753451..394bfbf5c 100644 --- a/arm9/overlays/05/asm/ov05_021E1374.s +++ b/arm9/overlays/05/asm/ov05_021E1374.s @@ -295,10 +295,10 @@ _021E15A6: add r1, r6, #0 ldr r0, [r0, #4] ldr r0, [r0, #0x34] - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r4, r0, #0 beq _021E161A - bl sub_02058488 + bl MapObject_GetType cmp r0, #8 bhi _021E161A add r0, r0, r0 @@ -319,10 +319,10 @@ _021E15CA: ; jump table .short _021E15DC - _021E15CA - 2 ; case 8 _021E15DC: add r0, r4, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r7, r0, #0 add r0, r4, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY ldr r1, [sp, #0x14] cmp r7, r1 blt _021E161A @@ -336,7 +336,7 @@ _021E15DC: cmp r0, r1 bgt _021E161A add r0, r4, #0 - bl sub_02058480 + bl MapObject_GetMovement bl ov05_021E1630 cmp r0, #0 bne _021E161A @@ -447,10 +447,10 @@ ov05_021E16C8: ; 0x021E16C8 _021E16D6: ldr r0, [r6, #0x34] add r1, r5, #0 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r4, r0, #0 beq _021E16F2 - bl sub_02058480 + bl MapObject_GetMovement cmp r0, #0x31 bne _021E16F2 add r0, r4, #0 @@ -501,7 +501,7 @@ _021E173C: add r1, r4, #0 mov r2, #0 str r6, [r4, #4] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] pop {r4, r5, r6, pc} nop @@ -568,7 +568,7 @@ _021E17BE: bl ov05_021E1848 add r1, r0, #0 ldr r0, [r5, #4] - bl TrainerFlagCheck + bl TrainerFieldSystem_FlagCheck cmp r0, #0 bne _021E17DE ldr r1, [r4, #0x10] @@ -628,7 +628,7 @@ _021E1844: .word ov05_021F6910 thumb_func_start ov05_021E1848 ov05_021E1848: ; 0x021E1848 push {r3, lr} - bl sub_02058498 + bl MapObject_GetScript lsl r0, r0, #0x10 lsr r0, r0, #0x10 bl sub_020395F4 @@ -712,7 +712,7 @@ _021E18DC: cmp r1, r7 beq _021E18F0 add r0, r6, #0 - bl TrainerFlagCheck + bl TrainerFieldSystem_FlagCheck cmp r0, #0 bne _021E18F0 lsl r0, r4, #0x10 @@ -797,7 +797,7 @@ _021E1974: .word ov05_021F691C thumb_func_start ov05_021E1978 ov05_021E1978: ; 0x021E1978 push {r3, lr} - bl sub_02058480 + bl MapObject_GetMovement cmp r0, #0x31 bne _021E1986 mov r0, #1 @@ -821,7 +821,7 @@ ov05_021E1994: ; 0x021E1994 add r5, r1, #0 beq _021E19DC add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection cmp r0, #0 bne _021E19AA mov r4, #0xe @@ -869,7 +869,7 @@ ov05_021E19E0: ; 0x021E19E0 _021E19F0: ldr r0, [r6, #0x34] add r1, r5, #0 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r4, r0, #0 beq _021E1A16 bl sub_02058854 @@ -909,7 +909,7 @@ ov05_021E1A30: ; 0x021E1A30 bl sub_02034B64 add r7, r0, #0 add r0, r4, #0 - bl sub_02058498 + bl MapObject_GetScript lsl r0, r0, #0x10 lsr r0, r0, #0x10 str r0, [sp, #0xc] @@ -929,18 +929,18 @@ _021E1A66: ldr r0, [sp] add r1, r4, #0 ldr r0, [r0, #0x34] - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r5, r0, #0 beq _021E1ACC ldr r1, [sp, #4] cmp r1, #0 bne _021E1A82 - bl sub_02058480 + bl MapObject_GetMovement cmp r0, #0x31 beq _021E1ACC _021E1A82: add r0, r5, #0 - bl sub_02058488 + bl MapObject_GetType cmp r0, #8 bhi _021E1ACC add r0, r0, r0 @@ -961,7 +961,7 @@ _021E1A98: ; jump table .short _021E1AAA - _021E1A98 - 2 ; case 8 _021E1AAA: add r0, r5, #0 - bl sub_02058498 + bl MapObject_GetScript add r6, r0, #0 lsl r0, r6, #0x10 lsr r0, r0, #0x10 diff --git a/arm9/overlays/05/asm/ov05_021E1AD8.s b/arm9/overlays/05/asm/ov05_021E1AD8.s index 64118b494..90c594472 100644 --- a/arm9/overlays/05/asm/ov05_021E1AD8.s +++ b/arm9/overlays/05/asm/ov05_021E1AD8.s @@ -306,7 +306,7 @@ _021E1CA8: ldr r0, _021E1D34 ; =ov05_021E1E58 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] add sp, #0x14 pop {r3, r4, pc} @@ -747,7 +747,7 @@ _021E2032: ldr r0, _021E2090 ; =ov05_021E229C add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] add sp, #0x14 pop {r3, r4, pc} @@ -1338,7 +1338,7 @@ _021E2496: ldr r0, _021E253C ; =ov05_021E25A4 add r1, r5, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] add sp, #0x14 pop {r4, r5, pc} @@ -1660,7 +1660,7 @@ _021E270A: ldr r0, _021E2798 ; =ov05_021E1E58 add r1, r5, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] add sp, #0x18 pop {r3, r4, r5, r6, r7, pc} diff --git a/arm9/overlays/05/asm/ov05_021E2E88.s b/arm9/overlays/05/asm/ov05_021E2E88.s index e38c86b3d..29e659623 100644 --- a/arm9/overlays/05/asm/ov05_021E2E88.s +++ b/arm9/overlays/05/asm/ov05_021E2E88.s @@ -528,7 +528,7 @@ ov05_021E3270: ; 0x021E3270 ldr r0, _021E32EC ; =ov05_021E3124 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #8] mov r0, #1 strb r0, [r4, #4] diff --git a/arm9/overlays/05/asm/ov05_021E3444.s b/arm9/overlays/05/asm/ov05_021E3444.s index 8dafbfcdb..f5d772b16 100644 --- a/arm9/overlays/05/asm/ov05_021E3444.s +++ b/arm9/overlays/05/asm/ov05_021E3444.s @@ -46,7 +46,7 @@ ov05_021E3474: ; 0x021E3474 ldr r0, _021E34B4 ; =ov05_021E34B8 add r1, r4, #0 mov r2, #5 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r5, [r4, #0x48] cmp r5, #0 beq _021E34A4 diff --git a/arm9/overlays/05/asm/ov05_021E4AE4.s b/arm9/overlays/05/asm/ov05_021E4AE4.s index 548c49d3b..7e6b30772 100644 --- a/arm9/overlays/05/asm/ov05_021E4AE4.s +++ b/arm9/overlays/05/asm/ov05_021E4AE4.s @@ -182,7 +182,7 @@ ov05_021E4C20: ; 0x021E4C20 thumb_func_start ov05_021E4C24 ov05_021E4C24: ; 0x021E4C24 push {r3, lr} - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem ldr r0, [r0, #0x3c] pop {r3, pc} .balign 4, 0 diff --git a/arm9/overlays/05/asm/ov05_021E55BC.s b/arm9/overlays/05/asm/ov05_021E55BC.s index d1738a00a..7641b6d3f 100644 --- a/arm9/overlays/05/asm/ov05_021E55BC.s +++ b/arm9/overlays/05/asm/ov05_021E55BC.s @@ -67,7 +67,7 @@ ov05_021E5614: ; 0x021E5614 add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x1c] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, sp, #0x14 str r0, [sp] mov r0, #0xff @@ -107,7 +107,7 @@ ov05_021E5650: ; 0x021E5650 str r0, [r4, #0x28] ldr r0, [r4, #0x38] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_0206476C @@ -147,7 +147,7 @@ _021E56B8: _021E56C8: add r0, r6, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec mov r0, #0xa ldr r1, [sp, #8] lsl r0, r0, #0xc diff --git a/arm9/overlays/05/asm/ov05_021E577C.s b/arm9/overlays/05/asm/ov05_021E577C.s index 2af976217..a2d5c02a8 100644 --- a/arm9/overlays/05/asm/ov05_021E577C.s +++ b/arm9/overlays/05/asm/ov05_021E577C.s @@ -67,7 +67,7 @@ ov05_021E57D4: ; 0x021E57D4 add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x1c] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, sp, #0x14 str r0, [sp] mov r0, #0xff @@ -107,7 +107,7 @@ ov05_021E5810: ; 0x021E5810 str r0, [r4, #0x28] ldr r0, [r4, #0x38] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_0206476C @@ -138,7 +138,7 @@ ov05_021E585C: ; 0x021E585C _021E5878: add r0, r5, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec mov r0, #0xa ldr r1, [sp, #8] lsl r0, r0, #0xc diff --git a/arm9/overlays/05/asm/ov05_021E5918.s b/arm9/overlays/05/asm/ov05_021E5918.s index 5c3c03934..fbd11cce7 100644 --- a/arm9/overlays/05/asm/ov05_021E5918.s +++ b/arm9/overlays/05/asm/ov05_021E5918.s @@ -67,7 +67,7 @@ ov05_021E5970: ; 0x021E5970 add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x1c] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, sp, #0x14 str r0, [sp] mov r0, #0xff @@ -107,7 +107,7 @@ ov05_021E59AC: ; 0x021E59AC str r0, [r4, #0x28] ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_0206476C @@ -141,7 +141,7 @@ _021E5A0E: _021E5A16: ldr r0, [r1, #0x3c] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec mov r0, #0xa ldr r1, [sp, #8] lsl r0, r0, #0xc diff --git a/arm9/overlays/05/asm/ov05_021E5E10.s b/arm9/overlays/05/asm/ov05_021E5E10.s index df55112ec..afaa6c90e 100644 --- a/arm9/overlays/05/asm/ov05_021E5E10.s +++ b/arm9/overlays/05/asm/ov05_021E5E10.s @@ -80,9 +80,9 @@ ov05_021E5E8C: ; 0x021E5E8C str r0, [sp, #0xc] add r0, r4, #0 add r1, sp, #0x10 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r4, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection cmp r0, #3 bhi _021E5EF4 add r0, r0, r0 diff --git a/arm9/overlays/05/asm/ov05_021E5FD8.s b/arm9/overlays/05/asm/ov05_021E5FD8.s index 15f9979fe..0bab026e5 100644 --- a/arm9/overlays/05/asm/ov05_021E5FD8.s +++ b/arm9/overlays/05/asm/ov05_021E5FD8.s @@ -129,7 +129,7 @@ _021E60D2: add r0, r5, #0 bl PlayerAvatar_GetMapObject add r6, r0, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem mov r0, #1 mov r1, #0 str r0, [sp] @@ -385,7 +385,7 @@ _021E62C4: mov r0, #0 pop {r3, r4, r5, r6, r7, pc} _021E62D4: - bl sub_02058458 + bl MapObject_GetSpriteID cmp r0, #0x54 beq _021E62E0 mov r0, #0 @@ -1166,7 +1166,7 @@ _021E6916: mov r0, #0 pop {r4, pc} _021E692C: - bl sub_02058458 + bl MapObject_GetSpriteID cmp r0, #0x76 beq _021E6938 mov r0, #0 @@ -1175,7 +1175,7 @@ _021E6938: add r0, r4, #0 bl ov05_021F1AF8 add r0, r4, #0 - bl sub_02057654 + bl MapObject_Remove ldr r0, _021E6950 ; =0x0000065B bl PlaySE mov r0, #0 @@ -1433,7 +1433,7 @@ ov05_021E6B1C: ; 0x021E6B1C pop {r3, r4, r5, pc} _021E6B2E: ldr r0, [r5, #0x14] - bl sub_020584D4 + bl MapObject_GetNextFacingDirection add r4, r0, #0 ldr r0, [r5, #0x14] add r1, r4, #0 @@ -1647,14 +1647,14 @@ ov05_021E6CC4: ; 0x021E6CC4 sub sp, #0x18 add r5, r0, #0 ldr r0, [r5, #0x3c] - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0 mov r0, #0 bl sub_02059BF4 lsl r0, r0, #1 add r4, r4, r0 ldr r0, [r5, #0x3c] - bl sub_02058B4C + bl MapObject_GetCurrentY add r6, r0, #0 mov r0, #0 bl sub_02059C00 @@ -1680,7 +1680,7 @@ ov05_021E6CC4: ; 0x021E6CC4 str r6, [r5, #0x14] ldr r0, [r5, #0x3c] add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r1, [sp, #0x14] ldr r0, [r5, #0x30] cmp r1, r0 @@ -1737,7 +1737,7 @@ ov05_021E6D80: ; 0x021E6D80 add r4, r0, #0 ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r1, [sp, #4] ldr r0, [r4, #0x20] add r1, r1, r0 @@ -1749,7 +1749,7 @@ ov05_021E6D80: ; 0x021E6D80 _021E6D9E: ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B6C + bl MapObject_SetPositionVec ldr r0, [r4, #8] add r0, r0, #1 str r0, [r4, #8] @@ -1772,7 +1772,7 @@ ov05_021E6DC0: ; 0x021E6DC0 add r4, r0, #0 ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r1, [sp, #4] ldr r0, [r4, #0x20] add r1, r1, r0 @@ -1793,7 +1793,7 @@ _021E6DDE: _021E6DEE: ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B6C + bl MapObject_SetPositionVec ldr r0, [r4, #8] add r0, r0, #1 str r0, [r4, #8] @@ -1817,13 +1817,13 @@ _021E6E12: _021E6E1E: ldr r0, [r4, #0x3c] ldr r1, [r4, #0xc] - bl sub_02058B30 + bl MapObject_SetCurrentX ldr r0, [r4, #0x3c] ldr r1, [r4, #0x10] - bl sub_02058B40 + bl MapObject_SetCurrentHeight ldr r0, [r4, #0x3c] ldr r1, [r4, #0x14] - bl sub_02058B50 + bl MapObject_SetCurrentY ldr r0, [r4, #0x3c] bl sub_02059C60 ldr r0, [r4, #0x50] @@ -1878,14 +1878,14 @@ ov05_021E6E90: ; 0x021E6E90 sub sp, #0x18 add r5, r0, #0 ldr r0, [r5, #0x3c] - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0 mov r0, #1 bl sub_02059BF4 lsl r0, r0, #1 add r4, r4, r0 ldr r0, [r5, #0x3c] - bl sub_02058B4C + bl MapObject_GetCurrentY add r6, r0, #0 mov r0, #1 bl sub_02059C00 @@ -1913,7 +1913,7 @@ ov05_021E6E90: ; 0x021E6E90 str r6, [r5, #0x14] ldr r0, [r5, #0x3c] add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r1, [sp, #0x14] ldr r0, [r5, #0x30] cmp r1, r0 @@ -1970,7 +1970,7 @@ ov05_021E6F50: ; 0x021E6F50 add r4, r0, #0 ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r1, [sp, #8] ldr r0, [r4, #0x24] add r1, r1, r0 @@ -1988,7 +1988,7 @@ _021E6F70: _021E6F78: ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B6C + bl MapObject_SetPositionVec ldr r0, [r4, #8] add r0, r0, #1 str r0, [r4, #8] @@ -2012,7 +2012,7 @@ ov05_021E6F9C: ; 0x021E6F9C add r4, r0, #0 ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r1, [sp, #4] ldr r0, [r4, #0x20] add r1, r1, r0 @@ -2039,7 +2039,7 @@ _021E6FCC: _021E6FD4: ldr r0, [r4, #0x3c] add r1, sp, #0 - bl sub_02058B6C + bl MapObject_SetPositionVec ldr r0, [r4, #8] add r0, r0, #1 str r0, [r4, #8] @@ -2063,13 +2063,13 @@ _021E6FF8: _021E7004: ldr r0, [r4, #0x3c] ldr r1, [r4, #0xc] - bl sub_02058B30 + bl MapObject_SetCurrentX ldr r0, [r4, #0x3c] ldr r1, [r4, #0x10] - bl sub_02058B40 + bl MapObject_SetCurrentHeight ldr r0, [r4, #0x3c] ldr r1, [r4, #0x14] - bl sub_02058B50 + bl MapObject_SetCurrentY ldr r0, [r4, #0x3c] bl sub_02059C60 ldr r0, [r4, #0x50] @@ -2184,7 +2184,7 @@ ov05_021E70F0: ; 0x021E70F0 cmp r0, #0 bne _021E7136 add r0, r5, #0 - bl sub_02058458 + bl MapObject_GetSpriteID sub r0, #0xc4 cmp r0, #1 bls _021E7136 @@ -2216,7 +2216,7 @@ ov05_021E7138: ; 0x021E7138 cmp r0, #0 bne _021E7180 add r0, r5, #0 - bl sub_02058458 + bl MapObject_GetSpriteID cmp r0, #0xc4 beq _021E7162 cmp r0, #0xc5 @@ -2271,7 +2271,7 @@ _021E7198: ldr r0, _021E71E0 ; =ov05_021E7218 ldr r2, _021E71E4 ; =0x0000FFFF add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r4, r0, #0 bne _021E71DA bl GF_AssertFail @@ -2380,7 +2380,7 @@ ov05_021E727C: ; 0x021E727C add r5, r0, #0 add r0, r4, #0 bl PlayerAvatar_GetMapObject - bl sub_02058578 + bl MapObject_GetManager ldr r2, [sp] add r1, r6, r7 add r2, r2, r5 diff --git a/arm9/overlays/05/asm/ov05_021E7504.s b/arm9/overlays/05/asm/ov05_021E7504.s index d2f741586..55439355e 100644 --- a/arm9/overlays/05/asm/ov05_021E7504.s +++ b/arm9/overlays/05/asm/ov05_021E7504.s @@ -303,13 +303,13 @@ ov05_021E7750: ; 0x021E7750 ldr r0, _021E7794 ; =ov05_021E7544 add r1, r4, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _021E7786: ldr r0, _021E7798 ; =ov05_021E7618 add r1, r4, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _021E7794: .word ov05_021E7544 diff --git a/arm9/overlays/05/asm/ov05_021E779C.s b/arm9/overlays/05/asm/ov05_021E779C.s index 909d1d8eb..d1dcf7835 100644 --- a/arm9/overlays/05/asm/ov05_021E779C.s +++ b/arm9/overlays/05/asm/ov05_021E779C.s @@ -464,7 +464,7 @@ ov05_021E7AC0: ; 0x021E7AC0 add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x20] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 bl sub_02058744 add r1, r0, #1 diff --git a/arm9/overlays/05/asm/ov05_021E8310.s b/arm9/overlays/05/asm/ov05_021E8310.s index be16c3f01..2933ad484 100644 --- a/arm9/overlays/05/asm/ov05_021E8310.s +++ b/arm9/overlays/05/asm/ov05_021E8310.s @@ -366,7 +366,7 @@ Field_SaveStatsPrinter_Delete: ; 0x021E85E4 Field_SaveGame: ; 0x021E85FC push {r4, lr} add r4, r0, #0 - bl sub_02034E48 + bl FieldSystem_SyncMapObjectsToSave add r0, r4, #0 mov r1, #4 mov r2, #0 diff --git a/arm9/overlays/05/asm/ov05_021ED9C0.s b/arm9/overlays/05/asm/ov05_021ED9C0.s index 5fdc89902..26e71df87 100644 --- a/arm9/overlays/05/asm/ov05_021ED9C0.s +++ b/arm9/overlays/05/asm/ov05_021ED9C0.s @@ -81,7 +81,7 @@ ov05_021EDA48: ; 0x021EDA48 bl ov05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x14] add r0, r4, #0 mov r1, #0x18 @@ -192,7 +192,7 @@ ov05_021EDB10: ; 0x021EDB10 _021EDB32: add r0, r4, #0 add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r4, #0 add r1, sp, #0 bl sub_02058B84 diff --git a/arm9/overlays/05/asm/ov05_021EDB70.s b/arm9/overlays/05/asm/ov05_021EDB70.s index 1b6bf7e4c..b7ac8bfbc 100644 --- a/arm9/overlays/05/asm/ov05_021EDB70.s +++ b/arm9/overlays/05/asm/ov05_021EDB70.s @@ -173,13 +173,13 @@ _021EDCAE: str r0, [r5, #0x20] _021EDCB8: add r0, r6, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r4, r0, #0 ldr r0, [r5, #4] bl sub_02059BF4 add r7, r0, #0 add r0, r6, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #8] ldr r0, [r5, #4] bl sub_02059C00 @@ -191,7 +191,7 @@ _021EDCB8: bl sub_02059E60 add r0, r6, #0 add r1, sp, #0x18 - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r0, [sp, #0x1c] add r1, sp, #0xc str r0, [sp, #0x10] diff --git a/arm9/overlays/05/asm/ov05_021EDE34.s b/arm9/overlays/05/asm/ov05_021EDE34.s index db722a9f2..e6417731d 100644 --- a/arm9/overlays/05/asm/ov05_021EDE34.s +++ b/arm9/overlays/05/asm/ov05_021EDE34.s @@ -3746,7 +3746,7 @@ ov05_021EFA08: ; 0x021EFA08 str r2, [r1, #0x1c] ldr r0, _021EFA3C ; =ov05_021EF904 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _021EFA3C: .word ov05_021EF904 diff --git a/arm9/overlays/05/asm/ov05_021F0514.s b/arm9/overlays/05/asm/ov05_021F0514.s index 0bc5badab..5ea6d2056 100644 --- a/arm9/overlays/05/asm/ov05_021F0514.s +++ b/arm9/overlays/05/asm/ov05_021F0514.s @@ -7,7 +7,7 @@ ov05_021F0514: ; 0x021F0514 push {r4, lr} add r4, r0, #0 - bl sub_02058458 + bl MapObject_GetSpriteID cmp r0, #0x97 bgt _021F053E bge _021F05B2 @@ -152,7 +152,7 @@ _021F061C: mov r1, #2 add r0, r5, #0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r3, r4, r5, pc} .balign 4, 0 @@ -186,7 +186,7 @@ _021F0658: mov r1, #2 add r0, r5, #0 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits _021F0678: pop {r3, r4, r5, pc} .balign 4, 0 @@ -208,7 +208,7 @@ ov05_021F067C: ; 0x021F067C cmp r7, #0 beq _021F06E6 add r0, r4, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection str r0, [sp, #4] add r0, r4, #0 bl sub_0205854C @@ -660,7 +660,7 @@ ov05_021F0A04: ; 0x021F0A04 thumb_func_start ov05_021F0A28 ov05_021F0A28: ; 0x021F0A28 - bl sub_020584C4 + bl MapObject_GetFacingDirection str r0, [sp, #4] add r0, r4, #0 bl sub_0205854C @@ -808,7 +808,7 @@ _021F0B44: mov r1, #2 add r0, r5, #0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r3, r4, r5, pc} thumb_func_start ov05_021F0B58 @@ -840,7 +840,7 @@ _021F0B7A: mov r1, #2 add r0, r5, #0 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits _021F0B9A: pop {r3, r4, r5, pc} @@ -860,7 +860,7 @@ ov05_021F0B9C: ; 0x021F0B9C cmp r6, #0 beq _021F0C26 add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection add r7, r0, #0 add r0, r5, #0 bl sub_0205854C @@ -926,7 +926,7 @@ ov05_021F0C28: ; 0x021F0C28 cmp r4, #0 beq _021F0CEA add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection add r7, r0, #0 add r0, r5, #0 bl sub_0205854C @@ -1067,7 +1067,7 @@ _021F0D5C: mov r1, #2 add r0, r5, #0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r3, r4, r5, pc} thumb_func_start ov05_021F0D70 @@ -1099,7 +1099,7 @@ _021F0D92: mov r1, #2 add r0, r5, #0 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits _021F0DB2: pop {r3, r4, r5, pc} @@ -1120,7 +1120,7 @@ ov05_021F0DB4: ; 0x021F0DB4 cmp r7, #0 beq _021F0E1E add r0, r4, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection str r0, [sp, #4] add r0, r4, #0 bl sub_0205854C @@ -1686,7 +1686,7 @@ ov05_021F1234: ; 0x021F1234 cmp r0, #0 beq _021F12B6 add r0, r7, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection str r0, [sp, #8] add r0, r7, #0 bl sub_0205854C @@ -1938,7 +1938,7 @@ ov05_021F1440: ; 0x021F1440 cmp r0, #1 beq _021F14B4 add r0, r4, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection str r0, [sp, #4] add r0, r4, #0 bl sub_0205854C @@ -2274,7 +2274,7 @@ ov05_021F16D4: ; 0x021F16D4 cmp r4, #0 beq _021F1734 add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection add r7, r0, #0 strb r7, [r6] add r0, r5, #0 @@ -2317,7 +2317,7 @@ ov05_021F1738: ; 0x021F1738 cmp r4, #0 beq _021F179C add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection strb r0, [r6] add r0, r5, #0 bl sub_0205854C @@ -2363,7 +2363,7 @@ ov05_021F17A0: ; 0x021F17A0 cmp r4, #0 beq _021F1836 add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection add r7, r0, #0 add r0, r5, #0 bl sub_0205854C @@ -2431,7 +2431,7 @@ ov05_021F1838: ; 0x021F1838 cmp r4, #0 beq _021F18A0 add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r1, #0 ldrsb r1, [r6, r1] add r7, r0, #0 @@ -2479,7 +2479,7 @@ ov05_021F18A4: ; 0x021F18A4 cmp r4, #0 beq _021F191A add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection str r0, [sp] add r0, r5, #0 bl sub_0205854C @@ -2593,7 +2593,7 @@ ov05_021F19A4: ; 0x021F19A4 add r6, r1, #0 lsl r1, r4, #9 add r5, r0, #0 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 bne _021F19B8 mov r4, #0 @@ -2601,13 +2601,13 @@ _021F19B8: mov r1, #1 add r0, r5, #0 lsl r1, r1, #0xc - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 bne _021F19D6 mov r1, #2 add r0, r5, #0 lsl r1, r1, #0xc - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0 bne _021F19D6 mov r4, #0 diff --git a/arm9/overlays/05/asm/ov05_021F1B0C.s b/arm9/overlays/05/asm/ov05_021F1B0C.s index 3bf5a9d58..3d05e7524 100644 --- a/arm9/overlays/05/asm/ov05_021F1B0C.s +++ b/arm9/overlays/05/asm/ov05_021F1B0C.s @@ -67,7 +67,7 @@ _021F1B76: mov r1, #2 add r0, r5, #0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r3, r4, r5, pc} .balign 4, 0 @@ -99,7 +99,7 @@ _021F1BAE: mov r1, #2 add r0, r5, #0 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits _021F1BCC: pop {r3, r4, r5, pc} .balign 4, 0 @@ -198,7 +198,7 @@ ov05_021F1C64: ; 0x021F1C64 add r6, r1, #0 lsl r1, r4, #9 add r5, r0, #0 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 bne _021F1C78 mov r4, #0 @@ -206,13 +206,13 @@ _021F1C78: mov r1, #1 add r0, r5, #0 lsl r1, r1, #0xc - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 bne _021F1C96 mov r1, #2 add r0, r5, #0 lsl r1, r1, #0xc - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0 bne _021F1C96 mov r4, #0 diff --git a/arm9/overlays/05/asm/ov05_021F1CB8.s b/arm9/overlays/05/asm/ov05_021F1CB8.s index 91c6047c1..3443ded90 100644 --- a/arm9/overlays/05/asm/ov05_021F1CB8.s +++ b/arm9/overlays/05/asm/ov05_021F1CB8.s @@ -20,10 +20,10 @@ _021F1CD2: add r0, r5, #0 bl ov05_021F1D68 add r0, r5, #0 - bl sub_02058368 + bl MapObjectManager_GetObjectCount str r0, [sp, #0x10] add r0, r5, #0 - bl sub_0205839C + bl MapObjectManager_GetPriority sub r0, r0, #1 str r0, [sp, #0xc] add r0, r5, #0 @@ -103,7 +103,7 @@ ov05_021F1D80: ; 0x021F1D80 ov05_021F1D8C: ; 0x021F1D8C push {r4, lr} add r4, r0, #0 - bl sub_02058578 + bl MapObject_GetManager mov r1, #4 bl sub_02058390 cmp r0, #0 @@ -111,7 +111,7 @@ ov05_021F1D8C: ; 0x021F1D8C mov r1, #1 add r0, r4, #0 lsl r1, r1, #0xe - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0 beq _021F1DC6 add r0, r4, #0 @@ -131,7 +131,7 @@ _021F1DC6: thumb_func_start ov05_021F1DC8 ov05_021F1DC8: ; 0x021F1DC8 push {r3, lr} - bl sub_02058458 + bl MapObject_GetSpriteID bl ov05_021F1DD4 pop {r3, pc} @@ -175,7 +175,7 @@ _021F1E16: mov r1, #1 add r0, r4, #0 lsl r1, r1, #8 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0 beq _021F1E28 mov r0, #1 @@ -219,7 +219,7 @@ ov05_021F1E64: ; 0x021F1E64 add r4, r1, #0 add r5, r0, #0 add r1, sp, #0x24 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0x18 bl sub_02058B84 @@ -263,7 +263,7 @@ ov05_021F1EC0: ; 0x021F1EC0 add r4, r0, #0 bl sub_020584AC add r0, r4, #0 - bl sub_02058884 + bl MapObject_CheckFlag14 cmp r0, #1 bne _021F1ED8 add r0, r4, #0 @@ -281,7 +281,7 @@ ov05_021F1EDC: ; 0x021F1EDC mov r1, #1 add r0, r4, #0 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r4, pc} .balign 4, 0 diff --git a/arm9/overlays/05/asm/ov05_021F1F04.s b/arm9/overlays/05/asm/ov05_021F1F04.s index 880be5942..6dfb22dd7 100644 --- a/arm9/overlays/05/asm/ov05_021F1F04.s +++ b/arm9/overlays/05/asm/ov05_021F1F04.s @@ -101,7 +101,7 @@ ov05_021F1FC8: ; 0x021F1FC8 push {r3, r4, r5, lr} add r5, r0, #0 add r4, r1, #0 - bl sub_02058458 + bl MapObject_GetSpriteID add r2, r0, #0 add r0, r5, #0 add r1, r4, #0 @@ -155,7 +155,7 @@ ov05_021F202C: ; 0x021F202C mov r0, #0 str r0, [r4] add r0, r5, #0 - bl sub_02058578 + bl MapObject_GetManager add r1, r5, #0 add r2, r6, #0 bl ov05_021F2284 @@ -179,7 +179,7 @@ ov05_021F2060: ; 0x021F2060 cmp r0, #0 beq _021F2092 add r0, r5, #0 - bl sub_02058458 + bl MapObject_GetSpriteID add r6, r0, #0 bl sub_0205C334 cmp r0, #1 @@ -213,7 +213,7 @@ _021F20AE: cmp r4, r0 beq _021F20D2 add r0, r6, #0 - bl sub_02058578 + bl MapObject_GetManager add r1, r6, #0 add r2, r4, #0 bl ov05_021F2284 @@ -471,7 +471,7 @@ ov05_021F2284: ; 0x021F2284 add r5, r0, #0 add r6, r1, #0 add r7, r2, #0 - bl sub_02058368 + bl MapObjectManager_GetObjectCount add r4, r0, #0 add r0, r5, #0 bl sub_020583BC @@ -480,11 +480,11 @@ _021F229A: ldr r0, [sp] cmp r0, r6 beq _021F22CE - bl sub_02058830 + bl MapObject_IsInUse cmp r0, #1 bne _021F22CE ldr r0, [sp] - bl sub_02058458 + bl MapObject_GetSpriteID add r5, r0, #0 bl sub_0205C334 cmp r0, #1 @@ -1585,7 +1585,7 @@ ov05_021F2B10: ; 0x021F2B10 add r2, sp, #4 mov r3, #1 add r7, r0, #0 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #1 bne _021F2B6A _021F2B2E: @@ -1596,7 +1596,7 @@ _021F2B2E: beq _021F2B5A _021F2B38: ldr r0, [sp] - bl sub_02058458 + bl MapObject_GetSpriteID add r4, r0, #0 bl sub_0205C334 cmp r0, #1 @@ -1615,7 +1615,7 @@ _021F2B5A: add r1, sp, #0 add r2, sp, #4 mov r3, #1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #1 beq _021F2B2E _021F2B6A: @@ -1636,7 +1636,7 @@ ov05_021F2B70: ; 0x021F2B70 add r2, sp, #4 mov r3, #1 add r7, r0, #0 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #1 bne _021F2BEE _021F2B8E: @@ -1647,7 +1647,7 @@ _021F2B8E: beq _021F2BDE _021F2B98: ldr r0, [sp] - bl sub_02058458 + bl MapObject_GetSpriteID add r4, r0, #0 ldr r0, _021F2BF4 ; =0x0000FFFF cmp r4, r0 @@ -1682,7 +1682,7 @@ _021F2BDE: add r1, sp, #0 add r2, sp, #4 mov r3, #1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #1 beq _021F2B8E _021F2BEE: @@ -1705,7 +1705,7 @@ ov05_021F2BF8: ; 0x021F2BF8 add r2, sp, #4 mov r3, #1 add r7, r0, #0 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #1 bne _021F2C74 _021F2C16: @@ -1726,7 +1726,7 @@ _021F2C20: cmp r0, #1 bne _021F2C64 ldr r0, [sp] - bl sub_02058458 + bl MapObject_GetSpriteID add r4, r0, #0 bl sub_0205C334 cmp r0, #1 @@ -1750,7 +1750,7 @@ _021F2C64: add r1, sp, #0 add r2, sp, #4 mov r3, #1 - bl sub_020580F4 + bl MapObjectManager_GetNextObjectWithFlagFromIndex cmp r0, #1 beq _021F2C16 _021F2C74: @@ -2030,12 +2030,12 @@ ov05_021F2E0C: ; 0x021F2E0C bne _021F2E1C mov r1, #1 lsl r1, r1, #0x16 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r3, pc} _021F2E1C: mov r1, #1 lsl r1, r1, #0x16 - bl sub_02058418 + bl MapObject_ClearFlagsBits pop {r3, pc} .balign 4, 0 @@ -2044,7 +2044,7 @@ ov05_021F2E28: ; 0x021F2E28 push {r3, lr} mov r1, #1 lsl r1, r1, #0x16 - bl sub_02058424 + bl MapObject_GetFlagsBits cmp r0, #0 beq _021F2E3A mov r0, #1 @@ -2172,7 +2172,7 @@ ov05_021F2ED0: ; 0x021F2ED0 thumb_func_start ov05_021F2F3C ov05_021F2F3C: ; 0x021F2F3C push {r3, lr} - bl sub_02058578 + bl MapObject_GetManager bl sub_020583A0 pop {r3, pc} @@ -2202,7 +2202,7 @@ ov05_021F2F6C: ; 0x021F2F6C add r6, r1, #0 lsl r1, r4, #9 add r5, r0, #0 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 bne _021F2F80 mov r4, #0 @@ -2210,13 +2210,13 @@ _021F2F80: mov r1, #1 add r0, r5, #0 lsl r1, r1, #0xc - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 bne _021F2F9E mov r1, #2 add r0, r5, #0 lsl r1, r1, #0xc - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #0 bne _021F2F9E mov r4, #0 @@ -2803,7 +2803,7 @@ _021F338A: mov r1, #2 ldr r0, [r4, #4] lsl r1, r1, #0x14 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 ldr r0, [r4, #4] bne _021F33A8 @@ -2862,17 +2862,17 @@ _021F33E2: str r4, [r5, r0] add r0, r0, #4 ldr r0, [r5, r0] - bl sub_0205839C + bl MapObjectManager_GetPriority add r6, r0, #0 ldr r0, _021F3448 ; =ov05_021F30C4 add r1, r5, #0 add r2, r6, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x18] ldr r0, _021F344C ; =ov05_021F3358 add r1, r5, #0 add r2, r6, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x1c] ldr r0, _021F3450 ; =ov05_021F3240 add r1, r5, #0 @@ -2932,10 +2932,10 @@ ov05_021F3490: ; 0x021F3490 bne _021F34D2 _021F34A8: add r0, r5, #0 - bl sub_02058458 + bl MapObject_GetSpriteID add r6, r0, #0 add r0, r5, #0 - bl sub_02058578 + bl MapObject_GetManager add r7, r0, #0 add r0, r5, #0 bl sub_020576A8 @@ -2977,7 +2977,7 @@ ov05_021F34DC: ; 0x021F34DC str r0, [r5] add r0, r7, #0 str r7, [r5, #0x50] - bl sub_02058458 + bl MapObject_GetSpriteID add r6, r0, #0 bl ov05_021F2DE8 ldr r4, _021F36C4 ; =ov05_021F9094 @@ -3124,7 +3124,7 @@ _021F35EC: _021F3658: add r0, r7, #0 add r1, sp, #0x1c - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r7, #0 bl ov05_021E4C24 ldr r1, [sp, #0xc] @@ -3153,7 +3153,7 @@ _021F367A: ldr r0, [sp, #0x18] lsl r1, r1, #2 ldr r0, [r0, r1] - bl sub_0205839C + bl MapObjectManager_GetPriority ldr r0, _021F36D4 ; =ov05_021F36D8 add r1, r5, #0 mov r2, #0xff @@ -3188,7 +3188,7 @@ ov05_021F36D8: ; 0x021F36D8 pop {r4, r5, r6, pc} _021F36EC: add r0, r4, #0 - bl sub_02058830 + bl MapObject_IsInUse cmp r0, #0 beq _021F3700 add r0, r4, #0 @@ -3216,7 +3216,7 @@ _021F370A: pop {r4, r5, r6, pc} _021F3730: add r0, r4, #0 - bl sub_02058458 + bl MapObject_GetSpriteID ldr r1, [r5] cmp r1, r0 beq _021F377C diff --git a/arm9/overlays/05/asm/ov05_021F3FE0.s b/arm9/overlays/05/asm/ov05_021F3FE0.s index c1d4a1737..5d1c4224d 100644 --- a/arm9/overlays/05/asm/ov05_021F3FE0.s +++ b/arm9/overlays/05/asm/ov05_021F3FE0.s @@ -572,7 +572,7 @@ ov05_021F43E4: ; 0x021F43E4 str r2, [r0] ldr r0, _021F4440 ; =ov05_021F4200 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _021F4440: .word ov05_021F4200 diff --git a/arm9/overlays/05/asm/ov05_021F46C8.s b/arm9/overlays/05/asm/ov05_021F46C8.s index d3da7bdd3..8f4b29c00 100644 --- a/arm9/overlays/05/asm/ov05_021F46C8.s +++ b/arm9/overlays/05/asm/ov05_021F46C8.s @@ -71,7 +71,7 @@ _021F4732: ldr r0, _021F47A8 ; =ov05_021F47B4 add r1, r4, #0 add r2, #0xec - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r2, #0xc7 lsl r2, r2, #2 str r0, [r4, r2] diff --git a/arm9/overlays/05/asm/ov05_021F5C44.s b/arm9/overlays/05/asm/ov05_021F5C44.s index cab8066df..f1fd12f9a 100644 --- a/arm9/overlays/05/asm/ov05_021F5C44.s +++ b/arm9/overlays/05/asm/ov05_021F5C44.s @@ -126,7 +126,7 @@ ov05_021F5D2C: ; 0x021F5D2C ldr r0, _021F5D4C ; =ov05_021F5D7C mov r2, #0x80 str r6, [r1] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 _021F5D4C: .word ov05_021F5D7C diff --git a/arm9/overlays/05/asm/ov05_021F61F4.s b/arm9/overlays/05/asm/ov05_021F61F4.s index 543483849..cba02bbdd 100644 --- a/arm9/overlays/05/asm/ov05_021F61F4.s +++ b/arm9/overlays/05/asm/ov05_021F61F4.s @@ -27,7 +27,7 @@ ov05_021F61F4: ; 0x021F61F4 ldr r0, _021F622C ; =ov05_021F6270 ldr r2, _021F6230 ; =0x0000FFFF add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 _021F622C: .word ov05_021F6270 diff --git a/arm9/overlays/05/include/ov05_021E72FC.h b/arm9/overlays/05/include/ov05_021E72FC.h index 9ab7a1db6..819f6a326 100644 --- a/arm9/overlays/05/include/ov05_021E72FC.h +++ b/arm9/overlays/05/include/ov05_021E72FC.h @@ -2,21 +2,23 @@ #define POKEDIAMOND_ov05_021E72FC_H #include "nitro/types.h" +#include "field_system.h" +#include "task.h" typedef struct UnkStruct021E7358 { u32 Unk00; u32 Unk04; u32 Unk08; - u32 Unk0C; + FieldSystem *fieldSystem; u32 Unk10; } UnkStruct021E7358; -BOOL ov05_021E72FC(u32 param0, u32 param1); -void ov05_021E7358(u32 param0, u32 param1, u32 param2); +BOOL ov05_021E72FC(FieldSystem *fieldSystem, u32 param1); +void ov05_021E7358(FieldSystem *fieldSystem, u32 param1, u32 param2); u32 ov05_021E7388(u32 param0); -BOOL ov05_021E73B4(UnkStruct021E7358 *param0); +BOOL ov05_021E73B4(TaskManager *taskManager); UnkStruct021E7358 *ov05_021E74D4(u32 param0); void ov05_021E74F8(UnkStruct021E7358 *param0); diff --git a/arm9/overlays/05/src/ov05_021E72FC.c b/arm9/overlays/05/src/ov05_021E72FC.c index bc0a9ffed..26ca3c27b 100644 --- a/arm9/overlays/05/src/ov05_021E72FC.c +++ b/arm9/overlays/05/src/ov05_021E72FC.c @@ -2,25 +2,24 @@ #include "ov05_021E72FC.h" #include "constants/sndseq.h" #include "heap.h" +#include "map_object.h" #include "unk_020051F4.h" -extern void FieldSystem_CreateTask(u32 param0, void *func, UnkStruct021E7358 *param2); -extern u32 PlayerAvatar_GetMapObject(u32 param0); -extern u32 sub_02058720(u32 param0); +extern LocalMapObject *PlayerAvatar_GetMapObject(u32 param0); +extern u32 sub_02058720(LocalMapObject *object); extern BOOL sub_02054B30(u8 param0); extern BOOL sub_02054B3C(u8 param0); extern BOOL sub_02054B48(u8 param0); extern BOOL sub_02054B54(u8 param0); -extern UnkStruct021E7358 *TaskManager_GetEnvironment(UnkStruct021E7358 *param0); -extern void sub_02058410(u32 param0, u32 param1); +extern void MapObject_SetFlagsBits(LocalMapObject *object, u32 bits); extern BOOL sub_02057254(u32 param0); extern u32 sub_0205AFDC(u32 param0, u32 param1); extern void sub_02057260(u32 param0, u32 param1); extern void sub_02055304(u32 param0, u32 param1); -extern BOOL sub_02056B74(u32 param0, u32 param1, u32 param2); -extern void sub_02058418(u32 param0, u32 param1); +extern BOOL sub_02056B74(u32 param0, LocalMapObject *object, u32 param2); +extern void MapObject_ClearFlagsBits(LocalMapObject *object, u32 bits); -BOOL ov05_021E72FC(u32 param0, u32 param1) +BOOL ov05_021E72FC(FieldSystem *fieldSystem, u32 param1) { u8 res = (u8)sub_02058720(PlayerAvatar_GetMapObject(param1)); u32 r2; @@ -46,18 +45,18 @@ BOOL ov05_021E72FC(u32 param0, u32 param1) } return FALSE; label: - ov05_021E7358(param0, param1, r2); + ov05_021E7358(fieldSystem, param1, r2); return TRUE; } -void ov05_021E7358(u32 param0, u32 param1, u32 param2) +void ov05_021E7358(FieldSystem *fieldSystem, u32 param1, u32 param2) { UnkStruct021E7358 *res = ov05_021E74D4(24); - res->Unk0C = param0; + res->fieldSystem = fieldSystem; res->Unk10 = param1; res->Unk00 = param2; PlaySE(SEQ_SE_DP_F209); - FieldSystem_CreateTask(param0, ov05_021E73B4, res); + FieldSystem_CreateTask(fieldSystem, ov05_021E73B4, res); } u32 ov05_021E7388(u32 param0) @@ -76,15 +75,15 @@ u32 ov05_021E7388(u32 param0) return 0; } -BOOL ov05_021E73B4(UnkStruct021E7358 *param0) +BOOL ov05_021E73B4(TaskManager *taskManager) { - UnkStruct021E7358 *strct = TaskManager_GetEnvironment(param0); - u32 res = PlayerAvatar_GetMapObject(strct->Unk10); - u8 res2 = (u8)sub_02058720(res); + UnkStruct021E7358 *strct = TaskManager_GetEnvironment(taskManager); + LocalMapObject *playerObject = PlayerAvatar_GetMapObject(strct->Unk10); + u8 res2 = (u8)sub_02058720(playerObject); switch (strct->Unk08) { case 0: - sub_02058410(res, 1 << 8); + MapObject_SetFlagsBits(playerObject, MAPOBJECTFLAG_UNK8); strct->Unk08++; break; case 1: @@ -127,13 +126,13 @@ BOOL ov05_021E73B4(UnkStruct021E7358 *param0) { strct->Unk00 = ov05_021E7388(strct->Unk00); } - if (sub_02056B74(strct->Unk10, res, strct->Unk00) == FALSE) + if (sub_02056B74(strct->Unk10, playerObject, strct->Unk00) == FALSE) { strct->Unk08 = 1; break; } - sub_02058418(res, 0x80); - sub_02058418(res, 1 << 8); + MapObject_ClearFlagsBits(playerObject, MAPOBJECTFLAG_UNK7); + MapObject_ClearFlagsBits(playerObject, MAPOBJECTFLAG_UNK8); sub_02055304(strct->Unk10, strct->Unk00); ov05_021E74F8(strct); sub_020054F0(1624, 0); diff --git a/arm9/overlays/06/asm/overlay_06.s b/arm9/overlays/06/asm/overlay_06.s index 0f7f389d6..0a821dbd5 100644 --- a/arm9/overlays/06/asm/overlay_06.s +++ b/arm9/overlays/06/asm/overlay_06.s @@ -309,17 +309,17 @@ ov06_022398D8: ; 0x022398D8 push {r4, lr} ldr r0, [r0, #0x34] add r4, r2, #0 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID cmp r4, #1 bne _022398F0 mov r1, #1 lsl r1, r1, #0x14 - bl sub_02058410 + bl MapObject_SetFlagsBits pop {r4, pc} _022398F0: mov r1, #1 lsl r1, r1, #0x14 - bl sub_02058418 + bl MapObject_ClearFlagsBits pop {r4, pc} .align 2, 0 @@ -1121,17 +1121,17 @@ ov06_02239F04: ; 0x02239F04 ldr r0, [r1, #0x34] mov r1, #5 add r4, r2, #0 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r5, r0, #0 bne _02239F18 bl GF_AssertFail _02239F18: add r0, r5, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX lsl r0, r0, #0x10 lsr r6, r0, #0x10 add r0, r5, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY lsl r0, r0, #0x10 lsr r5, r0, #0x10 mov r0, #4 @@ -2325,7 +2325,7 @@ ov06_0223A7AC: ; 0x0223A7AC add r1, r4, #0 lsl r2, r2, #0xa str r3, [r4, r5] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} nop _0223A7D8: .word ov06_0223A8A8 @@ -2357,7 +2357,7 @@ ov06_0223A800: ; 0x0223A800 mov r2, #0 lsl r0, r0, #4 str r2, [r1, r0] - ldr r3, _0223A818 ; =sub_0200CA44 + ldr r3, _0223A818 ; =SysTask_CreateOnMainQueue mov r2, #4 sub r0, r0, #4 str r2, [r1, r0] @@ -2365,7 +2365,7 @@ ov06_0223A800: ; 0x0223A800 lsl r2, r2, #8 bx r3 .align 2, 0 -_0223A818: .word sub_0200CA44 +_0223A818: .word SysTask_CreateOnMainQueue _0223A81C: .word ov06_0223A944 thumb_func_start ov06_0223A820 @@ -3000,7 +3000,7 @@ ov06_0223ACD8: ; 0x0223ACD8 bl ov06_0223ADB4 ldr r0, [r4, #8] add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec mov r0, #1 ldr r1, [sp, #8] lsl r0, r0, #0x10 @@ -3115,7 +3115,7 @@ ov06_0223ADB4: ; 0x0223ADB4 add r4, r0, #0 ldr r0, [r1, #0x34] add r1, r2, #0 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID str r0, [r4] cmp r0, #0 bne _0223ADCA @@ -4672,9 +4672,9 @@ ov06_0223B8EC: ; 0x0223B8EC add r0, #0xd8 ldr r0, [r0] ldr r0, [r0, #0x34] - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r1, [sp] ldr r2, [sp, #4] ldr r3, [sp, #8] @@ -11865,7 +11865,7 @@ _0223F2AA: ldr r0, _0223F338 ; =ov06_0223FAA4 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _0223F330 ; =0x02252420 ldr r0, [r0] bl ov06_0223F344 @@ -12573,7 +12573,7 @@ ov06_0223F8C8: ; 0x0223F8C8 ldr r0, _0223F94C ; =ov06_0223FAA4 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue bl ov06_0223F95C ldr r0, _0223F950 ; =0x02252420 ldr r0, [r0] @@ -13587,7 +13587,7 @@ _02240144: ldr r0, _02240160 ; =ov06_02240164 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x44 pop {r3, r4, r5, r6, pc} nop @@ -13907,7 +13907,7 @@ ov06_022403E0: ; 0x022403E0 ldr r0, _02240410 ; =ov06_0223FAA4 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _02240414 ; =ov06_02240474 bl ov06_0223F8BC pop {r4, pc} @@ -13941,7 +13941,7 @@ ov06_02240418: ; 0x02240418 ldr r0, _0224046C ; =ov06_0223FAA4 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _02240470 ; =ov06_02240474 bl ov06_0223F8BC ldr r0, _02240468 ; =0x02252420 @@ -14214,7 +14214,7 @@ ov06_02240668: ; 0x02240668 ldr r0, _022406A4 ; =ov06_022406A8 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, pc} .align 2, 0 _022406A0: .word ov06_02252420 @@ -14250,7 +14250,7 @@ ov06_022406D4: ; 0x022406D4 ldr r0, _022406E8 ; =ov06_022406EC add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, pc} .align 2, 0 _022406E8: .word ov06_022406EC @@ -23441,14 +23441,14 @@ ov06_02244EF8: ; 0x02244EF8 mov r2, #1 lsl r0, r0, #2 str r2, [r1, r0] - ldr r3, _02244F10 ; =sub_0200CA44 + ldr r3, _02244F10 ; =SysTask_CreateOnMainQueue mov r2, #0 add r0, r0, #4 str r2, [r1, r0] ldr r0, _02244F14 ; =ov06_02244F64 bx r3 nop -_02244F10: .word sub_0200CA44 +_02244F10: .word SysTask_CreateOnMainQueue _02244F14: .word ov06_02244F64 thumb_func_start ov06_02244F18 @@ -26531,12 +26531,12 @@ ov06_0224666C: ; 0x0224666C bne _0224668E ldr r0, _02246698 ; =ov06_022466E8 mov r2, #0x85 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} _0224668E: ldr r0, _0224669C ; =ov06_02246AA8 mov r2, #0x85 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 _02246698: .word ov06_022466E8 @@ -30393,7 +30393,7 @@ ov06_022483BC: ; 0x022483BC ldr r0, _022483DC ; =ov06_02248400 mov r2, #0x85 str r5, [r1, #0x14] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} .align 2, 0 _022483DC: .word ov06_02248400 @@ -32375,11 +32375,11 @@ ov06_022492EC: ; 0x022492EC ldr r0, [r4, #0x20] bl ov05_021E4C20 ldr r0, [r0, #0x34] - bl sub_0205839C + bl MapObjectManager_GetPriority sub r2, r0, #1 ldr r0, _0224930C ; =ov06_02249388 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x24] pop {r4, pc} nop @@ -32663,7 +32663,7 @@ ov06_02249508: ; 0x02249508 add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x1c] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 mov r1, #2 bl sub_0205829C @@ -32697,13 +32697,13 @@ ov06_0224954C: ; 0x0224954C bl sub_02064754 str r0, [r4, #0x10] ldr r0, [r4, #0x1c] - bl sub_02058458 + bl MapObject_GetSpriteID str r0, [r4] ldr r0, [r4, #0x1c] bl MapObject_GetID str r0, [r4, #4] ldr r0, [r4, #0x1c] - bl sub_020589CC + bl MapObject_CheckFlag25 cmp r0, #1 ldr r0, [r4, #0x1c] bne _0224958E @@ -32754,7 +32754,7 @@ _022495D6: str r0, [r4, #0xc] ldr r1, _02249604 ; =0x00100200 add r0, r6, #0 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 bne _022495EE mov r0, #1 @@ -32764,7 +32764,7 @@ _022495D6: _022495EE: add r0, r6, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_0206476C @@ -32838,7 +32838,7 @@ ov06_02249668: ; 0x02249668 add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x1c] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 mov r1, #2 bl sub_0205829C @@ -32878,7 +32878,7 @@ _022496D0: str r0, [r4, #0xc] ldr r1, _022496FC ; =0x00100200 add r0, r6, #0 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 bne _022496E8 mov r0, #1 @@ -32888,7 +32888,7 @@ _022496D0: _022496E8: add r0, r6, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_0206476C @@ -33028,7 +33028,7 @@ ov06_022497E8: ; 0x022497E8 sub sp, #0x24 add r5, r0, #0 add r4, r1, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #8] add r0, r5, #0 bl ov05_021E4C24 @@ -33039,7 +33039,7 @@ ov06_022497E8: ; 0x022497E8 add r0, r5, #0 add r1, sp, #0x18 str r5, [sp, #0x14] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 mov r1, #2 bl sub_0205829C @@ -33080,7 +33080,7 @@ ov06_02249834: ; 0x02249834 bl sub_02058450 str r0, [r4, #4] ldr r0, [r4, #0x20] - bl sub_02058458 + bl MapObject_GetSpriteID str r0, [r4, #8] bl sub_0205C334 cmp r0, #1 @@ -33129,7 +33129,7 @@ ov06_022498BC: ; 0x022498BC ldr r6, [r4, #0x20] add r5, r0, #0 add r0, r6, #0 - bl sub_02058458 + bl MapObject_GetSpriteID add r7, r0, #0 bl sub_0205C334 cmp r0, #1 @@ -33205,7 +33205,7 @@ ov06_02249954: ; 0x02249954 ldr r4, [r5, #0x20] add r6, r0, #0 add r0, r4, #0 - bl sub_02058458 + bl MapObject_GetSpriteID add r7, r0, #0 bl sub_0205C334 cmp r0, #1 @@ -33295,7 +33295,7 @@ ov06_02249A00: ; 0x02249A00 neg r6, r0 ldr r0, [sp] ldr r7, [r4] - bl sub_02058B5C + bl MapObject_GetPositionVec ldr r0, [r5, #0x14] add r1, r4, #0 bl sub_02059E9C @@ -33334,7 +33334,7 @@ ov06_02249A68: ; 0x02249A68 add r4, r1, #0 add r5, r0, #0 ldr r0, [r4, #0x20] - bl sub_02058578 + bl MapObject_GetManager ldr r1, [r4, #8] add r2, sp, #0 bl ov05_021F220C @@ -33899,10 +33899,10 @@ ov06_02249E9C: ; 0x02249E9C bl sub_02058B24 str r0, [sp, #0x10] add r0, r5, #0 - bl sub_02058B80 + bl MapObject_GetPosVecYCoord add r6, r0, #0 add r0, r5, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection str r0, [sp, #0x14] add r0, r5, #0 bl sub_020584C8 @@ -34255,7 +34255,7 @@ ov06_0224A130: ; 0x0224A130 bl ov05_021E4C08 add r6, r0, #0 add r0, r5, #0 - bl sub_02058458 + bl MapObject_GetSpriteID bl ov06_0224A0F0 add r2, r0, #0 add r0, sp, #0x14 @@ -34313,7 +34313,7 @@ _0224A1AC: bl MapObject_GetID str r0, [r4, #4] ldr r0, [r4, #0x68] - bl sub_020589CC + bl MapObject_CheckFlag25 cmp r0, #1 ldr r0, [r4, #0x68] bne _0224A1CE @@ -34351,7 +34351,7 @@ ov06_0224A1DC: ; 0x0224A1DC _0224A1FE: add r0, r5, #0 add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_02058B84 @@ -34506,7 +34506,7 @@ ov06_0224A310: ; 0x0224A310 add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x1c] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 bl sub_02058744 add r1, r0, #1 @@ -34573,11 +34573,11 @@ _0224A3A6: str r0, [r5, #8] add r0, r4, #0 lsl r1, r1, #8 - bl sub_0205842C + bl MapObject_TestFlagsBits cmp r0, #1 beq _0224A3C8 add r0, r4, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r1, r4, #0 bl sub_0204B5FC cmp r0, #0 @@ -34589,13 +34589,13 @@ _0224A3C8: pop {r3, r4, r5, r6, pc} _0224A3D0: add r0, r4, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem add r1, r4, #0 bl sub_0204B684 str r0, [r5, #0xc] add r0, r4, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r6, #0 add r1, sp, #0 bl sub_0206476C @@ -35073,7 +35073,7 @@ ov06_0224A710: ; 0x0224A710 ldr r5, [r5, #0x18] add r1, sp, #0xc add r0, r5, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_02058B84 @@ -35158,7 +35158,7 @@ _0224A828: bne _0224A86C add r0, r6, #0 add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r6, #0 add r1, sp, #0 bl sub_02058B84 @@ -35326,7 +35326,7 @@ ov06_0224A948: ; 0x0224A948 _0224A96A: add r0, r5, #0 add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_02058B84 @@ -35516,7 +35516,7 @@ ov06_0224AAB4: ; 0x0224AAB4 _0224AAD6: add r0, r5, #0 add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_02058B84 @@ -35649,7 +35649,7 @@ ov06_0224ABAC: ; 0x0224ABAC cmp r0, #0 bne _0224ABF6 add r0, r5, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem mov r1, #2 lsl r2, r4, #0x10 lsl r1, r1, #0xe @@ -35670,7 +35670,7 @@ _0224ABF6: add r1, sp, #0x14 str r0, [r2] add r0, r5, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #8 bl sub_02058BB4 @@ -35762,7 +35762,7 @@ _0224ACBA: mov r0, #0 str r0, [r5] add r0, r4, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection mov r1, #0 mvn r1, r1 str r0, [r5, #4] @@ -35814,7 +35814,7 @@ _0224AD06: bl sub_02058BB4 add r0, r4, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec mov r0, #1 ldr r1, [r5, #0x1c] lsl r0, r0, #0xc @@ -36083,7 +36083,7 @@ ov06_0224AEE8: ; 0x0224AEE8 str r4, [sp, #0x1c] str r0, [sp, #0x18] add r0, r5, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x20] add r0, r4, #0 mov r1, #0x12 @@ -36108,7 +36108,7 @@ ov06_0224AEE8: ; 0x0224AEE8 _0224AF3E: add r0, r5, #0 add r1, sp, #0xc - bl sub_02058B5C + bl MapObject_GetPositionVec _0224AF46: add r0, r5, #0 mov r1, #2 @@ -36192,7 +36192,7 @@ ov06_0224AFC4: ; 0x0224AFC4 bl sub_02058BB4 add r0, r4, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 add r1, sp, #0 bl sub_0206476C @@ -36887,13 +36887,13 @@ ov06_0224B568: ; 0x0224B568 bl ov05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #8] add r0, r5, #0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight str r0, [sp, #0xc] add r0, r5, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x10] add r0, r4, #0 str r4, [sp, #0x18] @@ -36906,7 +36906,7 @@ ov06_0224B568: ; 0x0224B568 add r0, r5, #0 add r1, sp, #0x24 str r5, [sp, #0x20] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 mov r1, #2 bl sub_0205829C @@ -36957,7 +36957,7 @@ ov06_0224B5D0: ; 0x0224B5D0 lsl r0, r0, #0x10 str r0, [sp, #8] ldr r0, [r4, #0x30] - bl sub_02058B80 + bl MapObject_GetPosVecYCoord str r0, [sp, #4] ldr r0, [r4, #0x24] add r1, sp, #0 @@ -37092,10 +37092,10 @@ _0224B710: pop {r3, r4, r5, r6, r7, pc} _0224B72A: add r0, r6, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r7, r0, #0 add r0, r6, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY ldr r1, [r4, #0x18] cmp r1, r7 bne _0224B744 @@ -37464,7 +37464,7 @@ ov06_0224B9E0: ; 0x0224B9E0 bl ov05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x14] add r0, r4, #0 mov r1, #0x17 @@ -37621,7 +37621,7 @@ ov06_0224BB0C: ; 0x0224BB0C _0224BB30: add r0, r6, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec mov r0, #2 ldr r1, [sp, #8] lsl r0, r0, #0xe @@ -37719,7 +37719,7 @@ ov06_0224BBEC: ; 0x0224BBEC bl ov05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x14] add r0, r4, #0 mov r1, #0x19 @@ -37729,12 +37729,12 @@ ov06_0224BBEC: ; 0x0224BBEC add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x20] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0 add r0, r5, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r1, r0, #0 add r0, r6, #0 add r2, sp, #8 @@ -37925,13 +37925,13 @@ ov06_0224BD90: ; 0x0224BD90 bl ov05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #8] add r0, r5, #0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight str r0, [sp, #0xc] add r0, r5, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x10] add r0, r4, #0 str r4, [sp, #0x18] @@ -37944,7 +37944,7 @@ ov06_0224BD90: ; 0x0224BD90 add r0, r5, #0 add r1, sp, #0x24 str r5, [sp, #0x20] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 mov r1, #2 bl sub_0205829C @@ -37995,7 +37995,7 @@ ov06_0224BDF8: ; 0x0224BDF8 lsl r0, r0, #0x10 str r0, [sp, #8] ldr r0, [r4, #0x30] - bl sub_02058B80 + bl MapObject_GetPosVecYCoord str r0, [sp, #4] ldr r0, [r4, #0x24] add r1, sp, #0 @@ -38121,10 +38121,10 @@ _0224BF2A: str r0, [r4] _0224BF40: add r0, r6, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r7, r0, #0 add r0, r6, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY ldr r1, [r4, #0x18] cmp r1, r7 bne _0224BF5A @@ -38252,13 +38252,13 @@ ov06_0224C038: ; 0x0224C038 bl ov05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #8] add r0, r5, #0 - bl sub_02058B3C + bl MapObject_GetCurrentHeight str r0, [sp, #0xc] add r0, r5, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY str r0, [sp, #0x10] add r0, r4, #0 str r4, [sp, #0x18] @@ -38271,7 +38271,7 @@ ov06_0224C038: ; 0x0224C038 add r0, r5, #0 add r1, sp, #0x24 str r5, [sp, #0x20] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 mov r1, #2 bl sub_0205829C @@ -38322,7 +38322,7 @@ ov06_0224C0A0: ; 0x0224C0A0 lsl r0, r0, #0x10 str r0, [sp, #8] ldr r0, [r4, #0x30] - bl sub_02058B80 + bl MapObject_GetPosVecYCoord str r0, [sp, #4] ldr r0, [r4, #0x24] add r1, sp, #0 @@ -38454,10 +38454,10 @@ _0224C1DE: str r0, [r4] _0224C1F4: add r0, r6, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r7, r0, #0 add r0, r6, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY ldr r1, [r4, #0x18] cmp r1, r7 bne _0224C20E @@ -40118,10 +40118,10 @@ ov06_0224CECC: ; 0x0224CECC bl ov05_021E4C20 add r7, r0, #0 add r0, r5, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX str r0, [sp, #8] add r0, r5, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r1, r0, #0 ldr r0, [sp, #8] add r2, sp, #0x20 @@ -40651,7 +40651,7 @@ ov06_0224D2E0: ; 0x0224D2E0 bl ov05_021E4C24 add r4, r0, #0 add r0, r5, #0 - bl MapObject_GetFieldSysPtr + bl MapObject_GetFieldSystem str r0, [sp, #0x14] add r0, r4, #0 mov r1, #0x1d @@ -40661,12 +40661,12 @@ ov06_0224D2E0: ; 0x0224D2E0 add r0, r5, #0 add r1, sp, #8 str r5, [sp, #0x20] - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r5, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r6, r0, #0 add r0, r5, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r1, r0, #0 add r0, r6, #0 add r2, sp, #8 @@ -43298,18 +43298,18 @@ ov06_0224E858: ; 0x0224E858 push {r4, r5, r6, r7, lr} sub sp, #0xc add r7, r2, #0 - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID add r6, r0, #0 add r1, sp, #0 - bl sub_02058B5C + bl MapObject_GetPositionVec add r0, r6, #0 - bl sub_02058B2C + bl MapObject_GetCurrentX add r5, r0, #0 add r0, r6, #0 - bl sub_02058B4C + bl MapObject_GetCurrentY add r4, r0, #0 add r0, r6, #0 - bl sub_020584C4 + bl MapObject_GetFacingDirection cmp r0, #3 bhi _0224E8A8 add r0, r0, r0 @@ -44528,7 +44528,7 @@ _0224F144: mov r2, #0 add r1, r6, #0 strh r2, [r5] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0224F16C: .word ov06_02252210 diff --git a/arm9/overlays/08/asm/overlay_08.s b/arm9/overlays/08/asm/overlay_08.s index 6a0741388..744398f01 100644 --- a/arm9/overlays/08/asm/overlay_08.s +++ b/arm9/overlays/08/asm/overlay_08.s @@ -115,7 +115,7 @@ _02211F18: ldr r2, [sp, #0x10] add r0, r5, #0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} thumb_func_start ov08_02211F24 @@ -1003,13 +1003,13 @@ _02212544: thumb_func_start ov08_0221255C ov08_0221255C: ; 0x0221255C - ldr r3, _02212568 ; =sub_0200CA44 + ldr r3, _02212568 ; =SysTask_CreateOnMainQueue str r0, [r1, #0x38] ldr r0, _0221256C ; =ov08_02212574 ldr r2, _02212570 ; =0x0000044C bx r3 nop -_02212568: .word sub_0200CA44 +_02212568: .word SysTask_CreateOnMainQueue _0221256C: .word ov08_02212574 _02212570: .word 0x0000044C @@ -3227,7 +3227,7 @@ _02213500: ldr r0, _02213628 ; =ov08_022133F4 ldr r1, [r5, r1] ldr r2, _0221362C ; =0x00001001 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x5e lsl r1, r1, #2 ldr r1, [r5, r1] @@ -3698,7 +3698,7 @@ _0221393A: strb r1, [r0, #5] ldr r0, _0221399C ; =ov08_022133A8 ldr r1, [r6, r5] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [r6, r5] str r0, [r1, #0xc] _02213990: @@ -3994,7 +3994,7 @@ _02213BBC: ldr r0, _02213BD0 ; =ov08_022139FC add r1, r1, r4 lsl r2, r2, #0xc - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue _02213BCA: add sp, #0xc pop {r4, r5, r6, r7, pc} @@ -5333,7 +5333,7 @@ _022145C0: ldr r0, _022145F0 ; =ov08_022144C0 ldr r2, _022145F4 ; =0x00001001 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r0, #0 pop {r3, r4, r5, pc} nop @@ -5435,7 +5435,7 @@ _022146A6: ldr r0, _022146CC ; =ov08_022146E4 add r1, r6, #0 lsl r2, r2, #0xc - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r0, #0 add sp, #8 pop {r3, r4, r5, r6, r7, pc} @@ -5766,7 +5766,7 @@ ov08_02214910: ; 0x02214910 str r0, [r4, #0x18] ldr r0, _0221495C ; =ov08_022148E0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} .align 2, 0 _02214954: .word 0x0000044C @@ -5858,7 +5858,7 @@ ov08_022149B8: ; 0x022149B8 str r0, [r4, #0x18] ldr r0, _02214A08 ; =ov08_022148E0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} nop _02214A00: .word 0x0000044C @@ -6006,7 +6006,7 @@ _02214B12: ldr r0, _02214B20 ; =ov08_022148E0 ldr r2, _02214B24 ; =0x0000044C add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02214B20: .word ov08_022148E0 @@ -14039,7 +14039,7 @@ ov08_022186D4: ; 0x022186D4 ldr r0, _02218700 ; =ov08_0221868C add r1, r4, #0 str r2, [r4, #0x24] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #8 pop {r4, r5, r6, pc} nop @@ -14674,7 +14674,7 @@ _02218B70: ldr r0, _02218B88 ; =ov08_02218A84 ldr r2, [sp, #0x30] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] add r0, r4, #0 pop {r3, r4, r5, r6, r7, pc} @@ -14933,7 +14933,7 @@ ov08_02218D38: ; 0x02218D38 ldr r0, _02218D58 ; =ov08_02218D14 lsl r2, r2, #0xc str r4, [r1, #4] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, pc} .align 2, 0 _02218D58: .word ov08_02218D14 @@ -45425,7 +45425,7 @@ _0222854E: ldr r0, _0222856C ; =ov08_022282B4 add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r1, r4, #0 bl ov08_022282B4 pop {r4, pc} @@ -45453,7 +45453,7 @@ ov08_02228574: ; 0x02228574 ldr r0, _022285A0 ; =ov08_022285BC add r1, r5, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r5, #0x84 str r0, [r5] pop {r3, r4, r5, pc} @@ -45637,7 +45637,7 @@ _022286DE: ldr r0, _02228708 ; =ov08_02228620 ldr r2, _0222870C ; =0x000003E9 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, [sp] add r7, r7, #1 add r0, r0, #4 @@ -48170,7 +48170,7 @@ _022299B2: ldr r0, _022299E4 ; =ov08_022298C0 add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r1, r4, #0 add r1, #0xcc str r0, [r1] @@ -49267,7 +49267,7 @@ ov08_0222A1DC: ; 0x0222A1DC ldr r0, _0222A200 ; =ov08_0222A208 add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x18] pop {r4, pc} nop diff --git a/arm9/overlays/11/asm/ov11_0222D5C0_1.s b/arm9/overlays/11/asm/ov11_0222D5C0_1.s index aaf71557e..e8518e5ec 100644 --- a/arm9/overlays/11/asm/ov11_0222D5C0_1.s +++ b/arm9/overlays/11/asm/ov11_0222D5C0_1.s @@ -1018,12 +1018,12 @@ _0222DC42: ldr r0, _0222DF34 ; =ov11_0222F100 ldr r2, _0222DF38 ; =0x0000EA60 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x1c] ldr r0, _0222DF3C ; =ov11_0222F144 ldr r2, _0222DF40 ; =0x0000C350 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x20] mov r2, #0x4b ldr r0, _0222DF44 ; =ov11_0222F254 diff --git a/arm9/overlays/11/asm/ov11_02232264.s b/arm9/overlays/11/asm/ov11_02232264.s index 8f56c2096..2143760b3 100644 --- a/arm9/overlays/11/asm/ov11_02232264.s +++ b/arm9/overlays/11/asm/ov11_02232264.s @@ -3088,7 +3088,7 @@ ov11_02233A78: ; 0x02233A78 str r2, [r0, #0x48] ldr r0, _02233AB4 ; =ov11_0223A79C ldr r1, [r4, r1] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r0, #0 pop {r3, r4, r5, pc} nop @@ -3487,7 +3487,7 @@ ov11_02233D7C: ; 0x02233D7C str r3, [r0, #0x2c] ldr r0, _02233DC8 ; =ov11_0223B49C ldr r1, [r4, r1] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r0, #0 pop {r4, r5, r6, pc} .align 2, 0 diff --git a/arm9/overlays/11/asm/ov11_0224D550.s b/arm9/overlays/11/asm/ov11_0224D550.s index e4d7f4172..30d366595 100644 --- a/arm9/overlays/11/asm/ov11_0224D550.s +++ b/arm9/overlays/11/asm/ov11_0224D550.s @@ -16,7 +16,7 @@ ov11_0224D550: ; 0x0224D550 strb r2, [r1, #0x14] ldr r0, _0224D570 ; =ov11_022530A0 strb r2, [r1, #0x15] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, pc} nop _0224D570: .word ov11_022530A0 @@ -221,7 +221,7 @@ _0224D6D8: lsr r0, r0, #0x1f str r0, [r4, #0x28] ldr r0, _0224D734 ; =ov11_0224EEA0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x58 pop {r3, r4, r5, r6, r7, pc} nop @@ -383,7 +383,7 @@ _0224D774: strh r2, [r0] ldr r0, _0224D878 ; =ov11_0224F2DC add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0xc pop {r4, r5, r6, r7, pc} .align 2, 0 @@ -595,7 +595,7 @@ _0224D9C2: ldr r0, _0224DA28 ; =ov11_0224F7C4 add r1, r5, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x1c pop {r4, r5, r6, r7, pc} nop @@ -691,7 +691,7 @@ _0224DA92: ldr r0, _0224DAE4 ; =ov11_0224FD90 add r1, r2, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x14 pop {r4, r5, r6, r7, pc} nop @@ -739,7 +739,7 @@ ov11_0224DAE8: ; 0x0224DAE8 ldr r0, _0224DB48 ; =ov11_0224FFF0 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0224DB44: .word ov11_0225E84A @@ -927,7 +927,7 @@ _0224DCBE: ldr r0, _0224DCE0 ; =ov11_02250060 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x40 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -981,7 +981,7 @@ _0224DD30: ldr r0, _0224DD40 ; =ov11_02250338 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0224DD40: .word ov11_02250338 @@ -1018,7 +1018,7 @@ _0224DD7A: strb r0, [r1, #0xb] ldr r0, _0224DD88 ; =ov11_022508A4 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} nop _0224DD88: .word ov11_022508A4 @@ -1102,7 +1102,7 @@ _0224DDB8: add r1, r4, #0 strb r0, [r4, #9] ldr r0, _0224DE4C ; =ov11_0225092C - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x28 pop {r3, r4, r5, r6, r7, pc} nop @@ -1201,7 +1201,7 @@ ov11_0224DE50: ; 0x0224DE50 ldr r0, _0224DF14 ; =ov11_022509B4 add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] pop {r3, r4, r5, r6, r7, pc} nop @@ -1238,7 +1238,7 @@ ov11_0224DF18: ; 0x0224DF18 ldr r0, _0224DF5C ; =ov11_02250A28 add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] pop {r4, r5, r6, pc} .align 2, 0 @@ -1353,7 +1353,7 @@ _0224E004: add r1, r4, #0 ldr r0, [r0] mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} thumb_func_start ov11_0224E034 @@ -1410,7 +1410,7 @@ _0224E076: strh r0, [r3, #0x22] ldr r0, [sp] ldr r0, [r0, #4] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -1479,7 +1479,7 @@ _0224E120: ldr r0, [r7, #8] add r1, r6, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0xc pop {r4, r5, r6, r7, pc} .align 2, 0 @@ -1565,7 +1565,7 @@ _0224E1A8: add r1, r4, #0 ldr r0, [r0, #0xc] mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #8 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -1623,7 +1623,7 @@ _0224E220: add r1, r2, #0 ldr r0, [r0, #0x10] mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -1658,7 +1658,7 @@ ov11_0224E248: ; 0x0224E248 ldr r0, [r4, #8] str r0, [r1, #0x14] ldr r0, [r5, #0x14] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 @@ -1705,7 +1705,7 @@ ov11_0224E28C: ; 0x0224E28C ldr r0, _0224E2F0 ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x28 pop {r3, r4, r5, r6, r7, pc} nop @@ -1743,7 +1743,7 @@ ov11_0224E2F4: ; 0x0224E2F4 ldr r0, _0224E340 ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0224E340: .word ov11_02253008 @@ -1823,7 +1823,7 @@ _0224E3BC: ldr r0, _0224E3DC ; =ov11_02252754 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0224E3DC: .word ov11_02252754 @@ -1848,7 +1848,7 @@ ov11_0224E3E0: ; 0x0224E3E0 strb r0, [r1, #8] ldr r0, _0224E40C ; =ov11_022529C0 strb r2, [r1, #0xa] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} .align 2, 0 _0224E40C: .word ov11_022529C0 @@ -1913,7 +1913,7 @@ _0224E480: ldr r0, _0224E498 ; =ov11_02252A1C add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -1965,7 +1965,7 @@ _0224E4AE: ldr r0, _0224E50C ; =ov11_02252A70 add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] pop {r3, r4, r5, r6, r7, pc} _0224E4FA: @@ -2091,7 +2091,7 @@ _0224E5A0: blt _0224E5A0 ldr r0, _0224E5F4 ; =ov11_02252B30 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x14 pop {r4, r5, r6, r7, pc} nop @@ -2145,7 +2145,7 @@ ov11_0224E628: ; 0x0224E628 ldrb r0, [r4, r0] strb r0, [r1, #5] ldr r0, _0224E658 ; =ov11_02252DB4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} nop _0224E658: .word ov11_02252DB4 @@ -2226,7 +2226,7 @@ _0224E6AA: blt _0224E6AA ldr r0, _0224E6F8 ; =ov11_02252E50 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x14 pop {r4, r5, r6, r7, pc} .align 2, 0 @@ -2298,7 +2298,7 @@ ov11_0224E734: ; 0x0224E734 ldr r0, _0224E78C ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #8 pop {r3, r4, r5, r6, r7, pc} nop @@ -2338,7 +2338,7 @@ ov11_0224E790: ; 0x0224E790 ldr r0, _0224E7E4 ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x28 pop {r3, r4, r5, r6, r7, pc} nop @@ -2378,7 +2378,7 @@ ov11_0224E7E8: ; 0x0224E7E8 ldr r0, _0224E83C ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x28 pop {r3, r4, r5, r6, r7, pc} nop @@ -2417,7 +2417,7 @@ ov11_0224E840: ; 0x0224E840 ldr r0, _0224E890 ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x24 pop {r4, r5, r6, r7, pc} .align 2, 0 @@ -2457,7 +2457,7 @@ ov11_0224E894: ; 0x0224E894 ldr r0, _0224E8E8 ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x28 pop {r3, r4, r5, r6, r7, pc} nop @@ -2486,7 +2486,7 @@ ov11_0224E8EC: ; 0x0224E8EC strb r2, [r1, #0xa] ldr r0, _0224E920 ; =ov11_02252FBC str r4, [r1, #4] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} nop _0224E920: .word ov11_02252FBC @@ -2527,7 +2527,7 @@ ov11_0224E924: ; 0x0224E924 ldr r0, _0224E9BC ; =ov11_0225304C add r1, r7, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _0224E976: cmp r2, #1 @@ -2676,7 +2676,7 @@ ov11_0224EA74: ; 0x0224EA74 ldrb r0, [r4, #1] strb r0, [r1, #0xe] ldr r0, _0224EAA8 ; =ov11_022533F4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 _0224EAA8: .word ov11_022533F4 @@ -2708,7 +2708,7 @@ ov11_0224EAAC: ; 0x0224EAAC ldrb r0, [r4, #2] strb r0, [r1, #0xd] ldr r0, _0224EAE8 ; =ov11_0225352C - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} nop _0224EAE8: .word ov11_0225352C @@ -2746,7 +2746,7 @@ _0224EB16: ldr r0, _0224EB30 ; =ov11_0225359C mov r2, #0 strb r2, [r1, #0xe] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 _0224EB30: .word ov11_0225359C @@ -2775,7 +2775,7 @@ ov11_0224EB34: ; 0x0224EB34 strb r0, [r1, #6] ldr r0, _0224EB68 ; =ov11_02253650 strb r2, [r1, #0xe] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 _0224EB68: .word ov11_02253650 @@ -2814,7 +2814,7 @@ _0224EB96: strb r0, [r1, #0xe] ldr r0, _0224EBB4 ; =ov11_0225359C mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} nop _0224EBB4: .word ov11_0225359C @@ -2844,7 +2844,7 @@ ov11_0224EBB8: ; 0x0224EBB8 mov r0, #1 strb r0, [r1, #0xe] ldr r0, _0224EBF0 ; =ov11_02253650 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} nop _0224EBF0: .word ov11_02253650 @@ -2940,7 +2940,7 @@ ov11_0224EC80: ; 0x0224EC80 ldr r0, [r4, #0x20] str r0, [r1, #8] ldr r0, _0224ECB4 ; =ov11_022536D4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} .align 2, 0 _0224ECB4: .word ov11_022536D4 @@ -2969,7 +2969,7 @@ ov11_0224ECB8: ; 0x0224ECB8 ldr r0, [r4, #0x20] str r0, [r1, #8] ldr r0, _0224ECEC ; =ov11_02253720 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} .align 2, 0 _0224ECEC: .word ov11_02253720 @@ -3007,7 +3007,7 @@ ov11_0224ECF0: ; 0x0224ECF0 ldr r0, _0224ED40 ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x24 pop {r4, r5, r6, r7, pc} .align 2, 0 @@ -3046,7 +3046,7 @@ ov11_0224ED44: ; 0x0224ED44 ldr r0, _0224ED94 ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x24 pop {r4, r5, r6, r7, pc} .align 2, 0 @@ -3085,7 +3085,7 @@ ov11_0224ED98: ; 0x0224ED98 ldr r0, _0224EDE8 ; =ov11_02253008 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x24 pop {r4, r5, r6, r7, pc} .align 2, 0 diff --git a/arm9/overlays/11/asm/ov11_0225464C.s b/arm9/overlays/11/asm/ov11_0225464C.s index eae00c43d..9b31fa6a0 100644 --- a/arm9/overlays/11/asm/ov11_0225464C.s +++ b/arm9/overlays/11/asm/ov11_0225464C.s @@ -25,7 +25,7 @@ ov11_0225464C: ; 0x0225464C ldr r0, _02254684 ; =ov11_022546B4 ldr r2, _02254688 ; =0x000003F2 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x66 lsl r1, r1, #2 str r0, [r4, r1] diff --git a/arm9/overlays/11/asm/ov11_02256C08.s b/arm9/overlays/11/asm/ov11_02256C08.s index e6f085715..432acb651 100644 --- a/arm9/overlays/11/asm/ov11_02256C08.s +++ b/arm9/overlays/11/asm/ov11_02256C08.s @@ -1017,7 +1017,7 @@ _022573C4: ldr r0, _022573D0 ; =ov11_022573D8 ldr r2, _022573D4 ; =0x000003DE add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} .align 2, 0 _022573D0: .word ov11_022573D8 @@ -2633,7 +2633,7 @@ ov11_0225805C: ; 0x0225805C add r1, r4, #0 lsl r2, r2, #2 str r6, [r4, #4] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} nop _0225808C: .word ov11_02258090 @@ -2779,7 +2779,7 @@ ov11_02258188: ; 0x02258188 ldr r0, _022581A8 ; =ov11_022581D4 ldr r2, _022581AC ; =0x000003F2 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x50] _022581A6: pop {r4, pc} diff --git a/arm9/overlays/11/asm/ov11_02258428.s b/arm9/overlays/11/asm/ov11_02258428.s index ab6a6463b..d29b99ecb 100644 --- a/arm9/overlays/11/asm/ov11_02258428.s +++ b/arm9/overlays/11/asm/ov11_02258428.s @@ -112,7 +112,7 @@ ov11_022584D4: ; 0x022584D4 str r0, [r6, r2] ldr r0, _02258644 ; =ov11_0225B794 add r2, #0x56 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02258648 ; =0x000006AC mov r7, #2 str r0, [r6, r1] @@ -251,7 +251,7 @@ _022585DE: ldr r0, _02258650 ; =ov11_0225B824 ldr r2, _02258654 ; =0x0000D6D8 add r1, r6, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r6, #0x64] add r0, r6, #0 add sp, #0x1c @@ -753,7 +753,7 @@ _02258A82: ldr r0, _02258AFC ; =ov11_02258BE0 ldr r1, [sp, #0x14] ldr r2, _02258B00 ; =0x00000514 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp, #0x14] str r0, [r1, #4] add r0, r1, #0 @@ -1551,7 +1551,7 @@ ov11_02259098: ; 0x02259098 ldr r0, _022590C0 ; =ov11_022590C4 add r1, r3, #0 lsl r2, r2, #4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue _022590BC: pop {r4, pc} nop @@ -1724,7 +1724,7 @@ ov11_0225916C: ; 0x0225916C ldr r0, _02259260 ; =ov11_0225B438 ldr r2, _02259264 ; =0x000004BA add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _02259268 ; =ov11_0225B644 add r1, r4, #0 bl Main_SetHBlankIntrCB @@ -3801,7 +3801,7 @@ _0225A3A8: str r6, [r1, r0] ldr r0, _0225A3F0 ; =ov11_0225A3F4 add r1, r6, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue lsl r1, r5, #2 add r2, r4, r1 ldr r1, _0225A3D4 ; =0x00000634 @@ -5076,7 +5076,7 @@ _0225AD90: ldr r2, _0225ADAC ; =0x00000514 add r0, r5, #0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #8] pop {r3, r4, r5, pc} .align 2, 0 diff --git a/arm9/overlays/11/asm/ov11_0225C91C.s b/arm9/overlays/11/asm/ov11_0225C91C.s index 1fb9ebf35..20705bad9 100644 --- a/arm9/overlays/11/asm/ov11_0225C91C.s +++ b/arm9/overlays/11/asm/ov11_0225C91C.s @@ -328,7 +328,7 @@ _0225CB80: ldr r0, _0225CBB4 ; =ov11_0225CBBC add r1, r5, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] ldr r0, _0225CBB8 ; =0x00000711 bl PlaySE @@ -456,7 +456,7 @@ _0225CC8C: ldr r0, _0225CCA0 ; =ov11_0225CCA4 add r1, r5, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] pop {r3, r4, r5, pc} nop @@ -709,14 +709,14 @@ _0225CE70: strh r0, [r5, #0x28] ldr r0, _0225CEBC ; =ov11_0225CEC4 add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] pop {r3, r4, r5, r6, r7, pc} _0225CE96: ldr r0, _0225CEC0 ; =ov11_0225D0C4 strh r1, [r5, #0x28] add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -1145,7 +1145,7 @@ _0225D1C2: strb r1, [r0] ldr r0, _0225D204 ; =ov11_0225D20C add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] pop {r3, r4, r5, r6, r7, pc} _0225D1EC: @@ -1155,7 +1155,7 @@ _0225D1EC: strb r1, [r0] ldr r0, _0225D208 ; =ov11_0225D31C add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] pop {r3, r4, r5, r6, r7, pc} .align 2, 0 diff --git a/arm9/overlays/11/asm/ov11_0225D3EC.s b/arm9/overlays/11/asm/ov11_0225D3EC.s index 93d214738..7c406bbce 100644 --- a/arm9/overlays/11/asm/ov11_0225D3EC.s +++ b/arm9/overlays/11/asm/ov11_0225D3EC.s @@ -129,7 +129,7 @@ _0225D4CE: ldr r0, _0225D500 ; =ov11_0225D670 ldr r1, [sp] ldr r2, _0225D504 ; =0x00009C40 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp] str r0, [r1, #0x14] add r0, r1, #0 diff --git a/arm9/overlays/11/asm/ov11_0225D6A4.s b/arm9/overlays/11/asm/ov11_0225D6A4.s index 68dcdaafa..e7944eb04 100644 --- a/arm9/overlays/11/asm/ov11_0225D6A4.s +++ b/arm9/overlays/11/asm/ov11_0225D6A4.s @@ -125,7 +125,7 @@ _0225D74C: ldr r0, _0225D7B0 ; =ov11_0225D828 ldr r2, _0225D7B4 ; =0x000003E7 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] add r0, r4, #0 add sp, #0x38 diff --git a/arm9/overlays/12/asm/overlay_12.s b/arm9/overlays/12/asm/overlay_12.s index 5b1a8182f..a63925b22 100644 --- a/arm9/overlays/12/asm/overlay_12.s +++ b/arm9/overlays/12/asm/overlay_12.s @@ -250,7 +250,7 @@ _0222D7BC: ldr r0, _0222D884 ; =ov12_0222DB18 ldr r2, _0222D888 ; =0x0000EA60 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] ldr r0, _0222D88C ; =0x00000824 mov r1, #1 @@ -3352,7 +3352,7 @@ ov12_0222EF04: ; 0x0222EF04 ldr r0, _0222F180 ; =ov12_0222F4F4 ldr r2, _0222F184 ; =0x0000EA60 add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] ldr r0, _0222F188 ; =0x000004F8 mov r1, #1 @@ -5214,7 +5214,7 @@ ov12_0222FE4C: ; 0x0222FE4C ldr r0, _02230108 ; =ov12_02230520 ldr r2, _0223010C ; =0x00013880 add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] ldr r0, _02230110 ; =0x00001154 mov r1, #1 @@ -8157,7 +8157,7 @@ _02231804: ldr r0, _02231858 ; =ov12_02231880 ldr r1, [sp] ldr r2, [sp, #0x68] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp] str r0, [r1, #0x18] add sp, #0x3c @@ -8227,7 +8227,7 @@ ov12_022318A4: ; 0x022318A4 ldr r0, _022318D8 ; =ov12_0223190C ldr r2, [sp, #0x1c] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] add r0, r4, #0 pop {r3, r4, r5, r6, r7, pc} @@ -10000,7 +10000,7 @@ _02232664: ldr r2, _02232680 ; =0x00000514 add r0, r5, #0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] pop {r3, r4, r5, pc} .align 2, 0 @@ -10527,7 +10527,7 @@ _02232A78: ldr r2, _02232A94 ; =0x00000528 add r0, r5, #0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x14] pop {r3, r4, r5, pc} .align 2, 0 @@ -12066,7 +12066,7 @@ ov12_022335E4: ; 0x022335E4 ldr r0, _02233618 ; =ov12_02233648 add r1, r4, #0 strb r6, [r4, #0xa] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] add r0, r4, #0 pop {r4, r5, r6, pc} @@ -12956,13 +12956,13 @@ _02233CEE: strh r0, [r4, #0x26] ldr r0, _02233D6C ; =ov12_02233E48 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _02233D04: ldr r0, _02233D70 ; =ov12_02233D84 ldr r2, _02233D68 ; =0x00009C40 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _02233D10: ldr r0, _02233D74 ; =0xFFFFFD00 @@ -12970,7 +12970,7 @@ _02233D10: strh r0, [r4, #0x24] ldr r0, _02233D6C ; =ov12_02233E48 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _02233D20: ldr r0, _02233D78 ; =0xFFFFFC00 @@ -12978,7 +12978,7 @@ _02233D20: strh r0, [r4, #0x24] ldr r0, _02233D6C ; =ov12_02233E48 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _02233D30: ldr r0, _02233D7C ; =0xFFFFFB80 @@ -12986,7 +12986,7 @@ _02233D30: strh r0, [r4, #0x24] ldr r0, _02233D6C ; =ov12_02233E48 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _02233D40: ldr r0, _02233D80 ; =0xFFFFFD80 @@ -12994,7 +12994,7 @@ _02233D40: strh r0, [r4, #0x24] ldr r0, _02233D6C ; =ov12_02233E48 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _02233D50: mov r0, #0xff @@ -13003,7 +13003,7 @@ _02233D50: ldr r0, _02233D6C ; =ov12_02233E48 ldr r2, _02233D68 ; =0x00009C40 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02233D64: .word 0xFFFFFE00 @@ -13565,7 +13565,7 @@ ov12_0223419C: ; 0x0223419C ldr r0, _022341C8 ; =ov12_022341D0 ldr r2, _022341CC ; =0x00009C40 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} .align 2, 0 _022341C8: .word ov12_022341D0 @@ -14254,7 +14254,7 @@ _02234672: strb r0, [r1] ldr r0, _0223477C ; =ov12_0223440C add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue _02234736: add r5, r5, #1 _02234738: @@ -14411,7 +14411,7 @@ ov12_0223483C: ; 0x0223483C add r1, r4, #0 lsl r2, r2, #2 str r7, [r4, #4] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02234870: .word ov12_02234874 @@ -15774,7 +15774,7 @@ ov12_022352F4: ; 0x022352F4 strb r0, [r4, #0xe] ldr r0, _02235338 ; =ov12_0223533C add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02235334: .word 0x00000BB8 @@ -16131,7 +16131,7 @@ _022355E6: lsl r0, r0, #8 str r0, [r4, #0x18] ldr r0, _02235630 ; =ov12_02235634 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldrb r0, [r5] add r0, r0, #1 strb r0, [r5] @@ -16355,7 +16355,7 @@ ov12_022357B0: ; 0x022357B0 ldr r2, _022357E0 ; =0x00009C40 add r1, r4, #0 strb r6, [r4, #8] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] add r0, r4, #0 pop {r4, r5, r6, pc} @@ -16450,7 +16450,7 @@ _02235846: strh r0, [r4, #0x24] ldr r0, _022358A0 ; =ov12_022358A4 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldrb r0, [r5] add r0, r0, #1 strb r0, [r5] @@ -17270,7 +17270,7 @@ ov12_02235E3C: ; 0x02235E3C ldrh r0, [r5, #6] strh r0, [r4, #0xa] ldr r0, _02235E78 ; =ov12_02235E7C - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} nop _02235E74: .word 0x00007530 @@ -17398,7 +17398,7 @@ ov12_02235F14: ; 0x02235F14 ldrh r0, [r6] strh r0, [r4, #0x16] ldr r0, _02235F70 ; =ov12_02235F74 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02235F6C: .word 0x00007530 @@ -17558,7 +17558,7 @@ ov12_02236058: ; 0x02236058 ldr r0, _022360A8 ; =ov12_022360B0 ldr r2, _022360AC ; =0x00007530 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r0, r6, #0 bl ov12_02234EFC pop {r3, r4, r5, r6, r7, pc} @@ -17794,7 +17794,7 @@ ov12_02236228: ; 0x02236228 ldr r0, _0223627C ; =ov12_02236284 ldr r2, _02236280 ; =0x00007530 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0223627C: .word ov12_02236284 @@ -17976,7 +17976,7 @@ ov12_02236388: ; 0x02236388 ldrb r0, [r5, #3] strb r0, [r4, #0x10] ldr r0, _022363F0 ; =ov12_022363F4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _022363EC: .word 0x00007530 @@ -18251,7 +18251,7 @@ _022365E6: str r0, [r3] ldr r0, _02236600 ; =ov12_02236604 mov r2, #5 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02236600: .word ov12_02236604 @@ -18886,7 +18886,7 @@ ov12_02236AB8: ; 0x02236AB8 add r1, r4, #0 strb r0, [r4, #0xd] ldr r0, _02236AFC ; =ov12_02236B00 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} nop _02236AF8: .word 0x00000123 @@ -19240,7 +19240,7 @@ _02236D8E: str r0, [r3] ldr r0, _02236DAC ; =ov12_02236DB0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02236DA8: .word 0x00007530 @@ -19400,7 +19400,7 @@ _02236EBE: str r0, [r3] ldr r0, _02236EDC ; =ov12_02236EE0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02236ED8: .word 0x00007530 @@ -19756,7 +19756,7 @@ _0223715A: str r0, [r3] ldr r0, _02237178 ; =ov12_0223717C add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02237174: .word 0x00007530 @@ -19947,7 +19947,7 @@ _022372C2: str r0, [r3] ldr r0, _022372E0 ; =ov12_022372E4 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _022372DC: .word 0x00007530 @@ -20478,7 +20478,7 @@ _022376AE: str r0, [r3] ldr r0, _022376CC ; =ov12_022376D0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _022376C8: .word 0x00007530 @@ -20666,7 +20666,7 @@ _0223780E: str r0, [r3] ldr r0, _0223782C ; =ov12_02237830 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02237828: .word 0x00007530 @@ -21061,7 +21061,7 @@ _02237AFA: str r0, [r3] ldr r0, _02237B18 ; =ov12_02237B1C add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02237B14: .word 0x00007530 @@ -21326,7 +21326,7 @@ _02237CEA: str r0, [r3] ldr r0, _02237D0C ; =ov12_02237D10 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02237D04: .word 0x00000123 @@ -21439,7 +21439,7 @@ ov12_02237DA8: ; 0x02237DA8 strh r0, [r4, #0xa] ldr r0, _02237DE8 ; =ov12_02237DEC str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02237DE4: .word 0x00007530 @@ -21690,7 +21690,7 @@ ov12_02237F5C: ; 0x02237F5C ldrb r0, [r5] strb r0, [r4, #0x1b] ldr r0, _02237FD0 ; =ov12_02237FD4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02237FCC: .word 0x00007530 @@ -25298,7 +25298,7 @@ _0223993C: strb r0, [r1] ldr r0, _02239978 ; =ov12_02239980 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _0223997C ; =0x000006E1 bl PlaySE pop {r3, r4, r5, r6, r7, pc} @@ -25824,7 +25824,7 @@ _02239C90: ldr r0, _02239D84 ; =ov12_02239D8C ldr r2, _02239D88 ; =0x00007530 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x24 pop {r4, r5, r6, r7, pc} .align 2, 0 @@ -26010,7 +26010,7 @@ ov12_02239EAC: ; 0x02239EAC ldrb r0, [r0] strb r0, [r4, #0x11] ldr r0, _02239EF4 ; =ov12_02239EF8 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02239EF0: .word 0x00007530 @@ -26147,7 +26147,7 @@ ov12_02239FBC: ; 0x02239FBC mov r0, #0 strb r0, [r4, #0x1a] ldr r0, _0223A008 ; =ov12_0223A0BC - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A004: .word 0x00007530 @@ -26185,7 +26185,7 @@ ov12_0223A00C: ; 0x0223A00C mov r0, #1 strb r0, [r4, #0x1a] ldr r0, _0223A058 ; =ov12_0223A0BC - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A054: .word 0x00007530 @@ -26231,7 +26231,7 @@ ov12_0223A05C: ; 0x0223A05C mov r0, #1 strb r0, [r4, #0x1b] ldr r0, _0223A0B8 ; =ov12_0223A0BC - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A0B4: .word 0x00007530 @@ -26506,7 +26506,7 @@ ov12_0223A27C: ; 0x0223A27C ldrb r0, [r0] strb r0, [r4, #0x11] ldr r0, _0223A2C4 ; =ov12_0223A2C8 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A2C0: .word 0x00007530 @@ -26646,7 +26646,7 @@ ov12_0223A39C: ; 0x0223A39C strh r0, [r4, #0xa] ldr r0, _0223A3DC ; =ov12_0223A3E0 str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A3D8: .word 0x00007530 @@ -26876,7 +26876,7 @@ ov12_0223A550: ; 0x0223A550 strh r0, [r4, #0xa] ldr r0, _0223A590 ; =ov12_0223A594 str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A58C: .word 0x00007530 @@ -27130,7 +27130,7 @@ ov12_0223A72C: ; 0x0223A72C ldrb r0, [r0] strb r0, [r4, #0x11] ldr r0, _0223A774 ; =ov12_0223A778 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A770: .word 0x00007530 @@ -27255,7 +27255,7 @@ ov12_0223A828: ; 0x0223A828 ldrb r0, [r0] strb r0, [r4, #0x11] ldr r0, _0223A870 ; =ov12_0223A874 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A86C: .word 0x00007530 @@ -27396,7 +27396,7 @@ ov12_0223A92C: ; 0x0223A92C add r1, r4, #0 str r0, [r4, #0x24] ldr r0, _0223A98C ; =ov12_0223A990 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223A988: .word 0x00007530 @@ -27420,12 +27420,12 @@ _0223A9A8: ldr r0, _0223AAA8 ; =ov12_0223AB54 ldr r2, _0223AAAC ; =0x0000753A add r1, #0x2c - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r1, r5, #0 ldr r0, _0223AAB0 ; =ov12_0223ACFC ldr r2, _0223AAAC ; =0x0000753A add r1, #0x48 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, [r5, #0x38] ldr r1, [r0, #0xc] add r0, r5, #0 @@ -27489,12 +27489,12 @@ _0223AA32: ldr r0, _0223AAB4 ; =ov12_0223AAF8 ldr r2, _0223AAAC ; =0x0000753A add r1, #0x14 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r1, r5, #0 ldr r0, _0223AAB8 ; =ov12_0223ABD4 ldr r2, _0223AAAC ; =0x0000753A add r1, #0x38 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldrb r0, [r5, #0x10] add sp, #0x10 add r0, r0, #1 @@ -28062,7 +28062,7 @@ ov12_0223AE58: ; 0x0223AE58 ldrb r0, [r5, #8] strb r0, [r4, #0x18] ldr r0, _0223AEBC ; =ov12_0223AEC0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223AEB8: .word 0x00007530 @@ -28208,7 +28208,7 @@ ov12_0223AF88: ; 0x0223AF88 ldrsb r0, [r6, r0] strb r0, [r4, #0x13] ldr r0, _0223AFDC ; =ov12_0223AFE0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0223AFD8: .word 0x00007530 @@ -28373,7 +28373,7 @@ ov12_0223B0EC: ; 0x0223B0EC strh r0, [r4, #0xa] ldr r0, _0223B12C ; =ov12_0223B130 str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223B128: .word 0x00007530 @@ -28715,7 +28715,7 @@ ov12_0223B37C: ; 0x0223B37C ldr r0, _0223B3C0 ; =ov12_0223B3C8 ldr r2, _0223B3C4 ; =0x00007530 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0223B3C0: .word ov12_0223B3C8 @@ -30090,7 +30090,7 @@ _0223BE74: ldr r2, _0223BE90 ; =0x00000514 add r0, r5, #0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0xc] pop {r3, r4, r5, pc} nop @@ -31523,7 +31523,7 @@ _0223C940: ldr r0, _0223C98C ; =ov12_0223C994 ldr r2, _0223C990 ; =0x00009D08 add r1, r6, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r6, #8] add sp, #0x10 pop {r3, r4, r5, r6, r7, pc} @@ -31723,7 +31723,7 @@ ov12_0223CAF8: ; 0x0223CAF8 ldr r0, _0223CB10 ; =ov12_0223CB28 ldr r2, _0223CB14 ; =0x00009CAE add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #2 lsl r1, r1, #8 str r0, [r4, r1] @@ -31874,7 +31874,7 @@ _0223CBE4: ldr r0, _0223CC68 ; =ov12_0223CCBC ldr r2, _0223CC6C ; =0x0000A08C add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #2 lsl r1, r1, #8 str r0, [r4, r1] @@ -32248,7 +32248,7 @@ _0223CF06: str r0, [r4, #0x14] ldr r0, _0223CF40 ; =ov12_0223CF44 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] mov r0, #1 add sp, #8 @@ -33077,7 +33077,7 @@ ov12_0223D55C: ; 0x0223D55C ldr r0, _0223D570 ; =ov12_0223D5B0 ldr r2, _0223D574 ; =0x00009862 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #8] pop {r4, pc} nop @@ -34034,7 +34034,7 @@ _0223DC46: ldr r0, _0223DCB8 ; =ov12_0223DE10 ldr r2, _0223DCBC ; =0x00009858 add r1, r1, r4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp, #4] str r0, [r7, r1] add sp, #0xc @@ -34917,7 +34917,7 @@ _0223E33E: ldr r0, _0223E384 ; =ov12_0223E3BC ldr r2, _0223E388 ; =0x00009C4F add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] pop {r3, r4, r5, pc} .align 2, 0 @@ -35226,12 +35226,12 @@ ov12_0223E598: ; 0x0223E598 bne _0223E5E8 ldr r0, _0223E5FC ; =ov12_0223E604 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _0223E5E8: ldr r0, _0223E600 ; =ov12_0223E6A4 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223E5F4: .word 0x00000AB4 @@ -35579,7 +35579,7 @@ _0223E87A: ldr r2, _0223E894 ; =0x00009C40 add r1, r5, #0 str r4, [r5] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] pop {r3, r4, r5, pc} .align 2, 0 @@ -36004,7 +36004,7 @@ _0223EBAC: ldr r0, _0223EC20 ; =ov12_0223EC28 add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _0223EC24 ; =0x000006E5 bl PlaySE add sp, #0xc @@ -36277,7 +36277,7 @@ _0223EDF4: ldr r0, _0223EE0C ; =ov12_0223EE14 ldr r2, _0223EE10 ; =0x00009C40 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #8 pop {r3, r4, r5, r6, r7, pc} nop @@ -36442,7 +36442,7 @@ ov12_0223EEFC: ; 0x0223EEFC strh r0, [r4, #0xa] ldr r0, _0223EF3C ; =ov12_0223EF40 str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223EF38: .word 0x00007530 @@ -36672,7 +36672,7 @@ ov12_0223F0B0: ; 0x0223F0B0 strh r0, [r4, #0xa] ldr r0, _0223F0FC ; =ov12_0223F108 str r7, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _0223F100 ; =0x00001134 mov r1, #0 strb r1, [r6, r0] @@ -36929,7 +36929,7 @@ ov12_0223F2A0: ; 0x0223F2A0 strh r0, [r4, #0xa] ldr r0, _0223F2E0 ; =ov12_0223F2E4 str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0223F2DC: .word 0x00007530 @@ -37134,7 +37134,7 @@ _0223F452: ldr r0, _0223F514 ; =ov12_0223F5CC add r1, r4, #0 str r6, [r4, #0x54] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r7, #0 add r5, r4, #0 _0223F46E: @@ -37248,7 +37248,7 @@ ov12_0223F524: ; 0x0223F524 ldr r2, _0223F554 ; =0x00007594 add r1, r4, #0 strb r6, [r4, #0x12] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] add r0, r4, #0 pop {r4, r5, r6, pc} @@ -38427,7 +38427,7 @@ _0223FE24: str r0, [r3] ldr r0, _0223FE40 ; =ov12_0223FE44 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0223FE3C: .word 0x00007530 @@ -38579,7 +38579,7 @@ _0223FF4C: ldr r0, _02240034 ; =ov12_02240044 ldr r2, _02240038 ; =0x00009CA4 add r1, r1, r7 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r6, r6, #1 cmp r6, #4 blt _0223FEF4 @@ -39003,7 +39003,7 @@ _022402C0: str r0, [r3] ldr r0, _022402DC ; =ov12_022402E0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _022402D8: .word 0x00007530 @@ -39113,7 +39113,7 @@ _0224039C: str r0, [r3] ldr r0, _022403B8 ; =ov12_022403BC add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _022403B4: .word 0x00007530 @@ -39281,7 +39281,7 @@ ov12_022404A0: ; 0x022404A0 ldrb r0, [r5] strb r0, [r4, #0x1b] ldr r0, _02240508 ; =ov12_0224050C - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _02240504: .word 0x00007530 @@ -39501,7 +39501,7 @@ _02240690: str r0, [r3] ldr r0, _022406AC ; =ov12_022406B0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _022406A8: .word 0x00007530 @@ -41270,7 +41270,7 @@ ov12_02241210: ; 0x02241210 ldr r0, _02241474 ; =ov12_0224182C ldr r2, _02241478 ; =0x00013880 add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #4] mov r0, #0x85 mov r1, #1 @@ -44211,7 +44211,7 @@ _02242B7A: ldr r0, _02242BC4 ; =ov12_02242C1C ldr r2, _02242BC8 ; =0x0000C738 add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x4d lsl r1, r1, #2 str r0, [r5, r1] @@ -44358,7 +44358,7 @@ _02242CCA: ldr r0, _02242CE4 ; =ov12_02242CF8 ldr r2, _02242CE8 ; =0x0000C35A add r1, r6, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} nop _02242CE4: .word ov12_02242CF8 @@ -44476,7 +44476,7 @@ ov12_02242D3C: ; 0x02242D3C ldr r0, _02242DEC ; =ov12_02242DF8 ldr r2, _02242DF0 ; =0x0000C35B add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _02242DF4 ; =0x0000127E ldrb r1, [r5, r0] add r1, r1, #1 @@ -45063,7 +45063,7 @@ ov12_0224324C: ; 0x0224324C str r0, [r4, #0xc] ldr r0, _022432A0 ; =ov12_022432A8 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _02243286: mov r0, #3 @@ -45074,7 +45074,7 @@ _02243286: str r0, [r4, #0xc] ldr r0, _022432A4 ; =ov12_0224333C add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0224329C: .word 0x0000A028 @@ -45265,7 +45265,7 @@ ov12_022433CC: ; 0x022433CC str r0, [r4, #0xc] ldr r0, _02243430 ; =ov12_02243438 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} _02243416: mov r0, #2 @@ -45276,7 +45276,7 @@ _02243416: str r0, [r4, #0xc] ldr r0, _02243434 ; =ov12_022434A4 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0224342C: .word 0x0000C350 @@ -46240,7 +46240,7 @@ ov12_02243B1C: ; 0x02243B1C strh r0, [r4, #0xa] ldr r0, _02243B5C ; =ov12_02243B60 str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02243B58: .word 0x00007530 @@ -46470,7 +46470,7 @@ ov12_02243CD0: ; 0x02243CD0 strh r0, [r4, #0xa] ldr r0, _02243D10 ; =ov12_02243D14 str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02243D0C: .word 0x00007530 @@ -46764,7 +46764,7 @@ ov12_02243ED8: ; 0x02243ED8 ldrb r0, [r5, #0xf] strb r0, [r4, #0x1b] ldr r0, _02243F3C ; =ov12_02243F40 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02243F38: .word 0x00007530 @@ -46914,7 +46914,7 @@ _0224401C: strh r0, [r4, #0xa] ldr r0, _0224405C ; =ov12_02244060 str r7, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _0224405C: .word ov12_02244060 @@ -47139,7 +47139,7 @@ _02244210: ldr r0, _0224422C ; =ov12_02244234 ldr r2, _02244230 ; =0x00007530 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _0224422C: .word ov12_02244234 @@ -47264,7 +47264,7 @@ ov12_022442D4: ; 0x022442D4 ldrb r0, [r0, #2] strb r0, [r4, #0x11] ldr r0, _0224431C ; =ov12_02244320 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02244318: .word 0x00007530 @@ -47503,7 +47503,7 @@ _022444D8: ldr r0, _022444F0 ; =ov12_022444F8 ldr r2, _022444F4 ; =0x00007530 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} .align 2, 0 _022444E4: .word 0x0000041E @@ -47699,7 +47699,7 @@ ov12_02244624: ; 0x02244624 strh r0, [r4, #0xa] ldr r0, _02244664 ; =ov12_02244668 str r6, [r4, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, r6, r7, pc} nop _02244660: .word 0x00007530 @@ -47947,7 +47947,7 @@ _02244832: ldr r0, _02244864 ; =ov12_02244958 ldr r1, [sp] ldr r2, _02244868 ; =0x00009C40 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp] str r0, [r1, #0x14] add r0, r1, #0 diff --git a/arm9/overlays/14/asm/overlay_14.s b/arm9/overlays/14/asm/overlay_14.s index a865f237c..6a4775e74 100644 --- a/arm9/overlays/14/asm/overlay_14.s +++ b/arm9/overlays/14/asm/overlay_14.s @@ -5260,7 +5260,7 @@ _021D9FFA: blo _021D9FFA ldr r0, _021DA014 ; =ov14_021DA018 add r1, r7, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #8 pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -10725,7 +10725,7 @@ _021DC854: str r6, [r4, r0] ldr r0, _021DCA04 ; =ov14_021DCA0C mov r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] ldr r0, _021DCA08 ; =ov14_021DCBFC add r1, r4, #0 @@ -10904,7 +10904,7 @@ _021DCB3A: ldr r0, _021DCB94 ; =ov14_021E63CC mov r2, #1 ldr r0, [r0, r7] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue lsl r1, r4, #2 add r1, r5, r1 str r0, [r1, #8] @@ -13995,7 +13995,7 @@ ov14_021DE2E8: ; 0x021DE2E8 str r2, [r0] ldr r0, _021DE38C ; =ov14_021DE39C add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r0, _021DE390 ; =ov14_021DE3E4 add r1, r5, #0 mov r2, #1 @@ -17716,7 +17716,7 @@ ov14_021E0050: ; 0x021E0050 strb r2, [r4, r0] ldr r0, _021E0078 ; =ov14_021E0094 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _021E0070 ldr r0, _021E007C ; =0x0000078D @@ -17799,7 +17799,7 @@ ov14_021E00F0: ; 0x021E00F0 strb r2, [r4, r0] ldr r0, _021E0118 ; =ov14_021E0134 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _021E0112 ldr r0, _021E011C ; =0x0000078D @@ -17883,7 +17883,7 @@ ov14_021E0190: ; 0x021E0190 strb r2, [r4, r0] ldr r0, _021E01B4 ; =ov14_021E01D0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _021E01AC ldr r0, _021E01B8 ; =0x00000788 @@ -19825,7 +19825,7 @@ _021E10D8: str r5, [r4, #8] add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x4c] pop {r3, r4, r5, pc} _021E10EA: @@ -22369,7 +22369,7 @@ ov14_021E247C: ; 0x021E247C strb r2, [r4, #4] add r1, r4, #0 strb r2, [r4, #5] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r1, r5, #0 add r1, #0xdc add r5, #0xdc @@ -29537,7 +29537,7 @@ _021E5AC6: ldr r0, _021E5B60 ; =ov14_021E5D64 add r1, r7, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0xe lsl r1, r1, #6 str r0, [r7, r1] diff --git a/arm9/overlays/15/asm/overlay_15.s b/arm9/overlays/15/asm/overlay_15.s index bfc5b3823..0d1cdd7a3 100644 --- a/arm9/overlays/15/asm/overlay_15.s +++ b/arm9/overlays/15/asm/overlay_15.s @@ -2616,7 +2616,7 @@ ov15_021D87F8: ; 0x021D87F8 ldr r0, _021D8880 ; =ov15_021D88D8 add r1, r4, #0 mov r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] ldr r0, _021D8884 ; =ov15_021D88DC add r1, r4, #0 @@ -2733,7 +2733,7 @@ _021D8928: ldr r0, [r0, r2] mov r2, #1 str r4, [r1, #0x10] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue lsl r1, r4, #2 add r1, r5, r1 str r0, [r1, #8] @@ -8023,7 +8023,7 @@ ov15_021DB2D0: ; 0x021DB2D0 add r1, r4, #0 strh r0, [r4, #0x16] ldr r0, _021DB350 ; =ov15_021DB36C - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _021DB354 ; =0x000004FC str r0, [r5, r1] pop {r3, r4, r5, pc} diff --git a/arm9/overlays/16/asm/overlay_16.s b/arm9/overlays/16/asm/overlay_16.s index 1d5c7315a..075926fd2 100644 --- a/arm9/overlays/16/asm/overlay_16.s +++ b/arm9/overlays/16/asm/overlay_16.s @@ -4309,7 +4309,7 @@ ov16_021D95C4: ; 0x021D95C4 ldr r0, _021D95E0 ; =ov16_021D95F4 add r1, r4, r1 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x9d lsl r1, r1, #2 str r0, [r4, r1] @@ -4533,7 +4533,7 @@ ov16_021D9760: ; 0x021D9760 ldr r0, _021D977C ; =ov16_021D9724 add r1, r4, r1 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x9e lsl r1, r1, #2 str r0, [r4, r1] @@ -49129,7 +49129,7 @@ _021EE18A: ldr r0, _021EE19C ; =ov16_021EE1A0 add r1, #0x40 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x3c] pop {r4, pc} .align 2, 0 @@ -49421,7 +49421,7 @@ _021EE3B4: ldr r0, _021EE3C4 ; =ov16_021EE3C8 add r1, #0x74 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x3c] pop {r3, r4, r5, pc} .align 2, 0 @@ -49535,7 +49535,7 @@ _021EE438: add r1, r5, #0 ldr r0, _021EE494 ; =ov16_021EE498 add r1, #0x98 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x3c] pop {r3, r4, r5, pc} nop @@ -50999,7 +50999,7 @@ ov16_021EEF0C: ; 0x021EEF0C ldr r0, _021EEF64 ; =ov16_021EF90C add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #7 lsl r1, r1, #6 str r0, [r4, r1] diff --git a/arm9/overlays/18/asm/overlay_18.s b/arm9/overlays/18/asm/overlay_18.s index 2af32746d..5569eb874 100644 --- a/arm9/overlays/18/asm/overlay_18.s +++ b/arm9/overlays/18/asm/overlay_18.s @@ -1175,7 +1175,7 @@ ov18_02239F34: ; 0x02239F34 ldr r1, [r2] ldr r0, _02239F8C ; =ov18_02239F98 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r2, _02239F88 ; =0x02251380 ldr r1, _02239F90 ; =0x0000087C ldr r3, [r2] @@ -2718,7 +2718,7 @@ ov18_0223AC24: ; 0x0223AC24 ldr r0, _0223AC78 ; =ov18_0223A64C add r1, r4, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0223AC7C ; =0x02251380 ldr r2, [r1] mov r1, #0x22 @@ -6358,7 +6358,7 @@ _0223C7F6: str r4, [r1, r0] ldr r0, _0223C844 ; =ov18_0223C7B0 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0223C834 ; =0x02251380 ldr r2, [r1] ldr r1, _0223C83C ; =0x00000878 @@ -7856,7 +7856,7 @@ _0223D330: str r4, [r1, r0] ldr r0, _0223D36C ; =ov18_0223D2EC add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0223D364 ; =0x02251384 ldr r2, [r1] mov r1, #0x13 @@ -8117,7 +8117,7 @@ _0223D536: mov r1, #0 ldr r0, _0223D59C ; =ov18_0223E7AC add r2, r1, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0223D580 ; =0x02251388 ldr r1, [r1] str r0, [r1, #0x14] @@ -14072,7 +14072,7 @@ _0224023E: str r0, [r4, #0x18] ldr r0, _0224026C ; =ov18_02240100 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02240268 ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -14221,7 +14221,7 @@ ov18_02240334: ; 0x02240334 ldr r0, _02240384 ; =ov18_02240658 mov r2, #0x64 strb r7, [r4, #0x18] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02240380 ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -15332,7 +15332,7 @@ ov18_02240BB8: ; 0x02240BB8 str r4, [r1, r0] ldr r0, _02240C10 ; =ov18_02240B90 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02240C0C ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa5 @@ -15742,7 +15742,7 @@ ov18_02240EE8: ; 0x02240EE8 str r4, [r1, r0] ldr r0, _02240F30 ; =ov18_02240E2C add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02240F2C ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -16212,7 +16212,7 @@ ov18_02241288: ; 0x02241288 ldr r0, _022412E0 ; =ov18_02241038 add r1, r4, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _022412DC ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -16829,7 +16829,7 @@ _02241778: str r4, [r1, r0] ldr r0, _022417B0 ; =ov18_02241424 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _022417A4 ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -18129,7 +18129,7 @@ ov18_02242180: ; 0x02242180 str r4, [r1, r0] ldr r0, _022421CC ; =ov18_02241F10 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _022421C8 ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -20166,7 +20166,7 @@ ov18_022431A4: ; 0x022431A4 str r4, [r1, r0] ldr r0, _022431F0 ; =ov18_02242F08 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _022431EC ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -20921,7 +20921,7 @@ ov18_02243794: ; 0x02243794 str r4, [r1, r0] ldr r0, _022437DC ; =ov18_02243540 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _022437D8 ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -21191,7 +21191,7 @@ ov18_022439A8: ; 0x022439A8 ldr r0, _022439E8 ; =ov18_02243894 add r1, r4, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _022439E4 ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0xa3 @@ -21772,7 +21772,7 @@ ov18_02243E18: ; 0x02243E18 ldr r0, [sp, #0x30] str r0, [r4, #0x1c] ldr r0, _02243E88 ; =ov18_02243D00 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02243E84 ; =0x022513A0 ldr r2, [r1, #4] mov r1, #0x29 @@ -21930,7 +21930,7 @@ ov18_02243F5C: ; 0x02243F5C mov r2, #0x64 str r4, [r0, r5] ldr r0, _02243FB4 ; =ov18_02243E8C - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02243FAC ; =0x022513A0 ldr r1, [r1, #4] add r1, r1, r5 @@ -24110,7 +24110,7 @@ _02244F9A: ldr r0, _02245050 ; =ov18_02246338 mov r1, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _02245000 ; =0x022513EC ldr r1, [r1] str r0, [r1, #4] @@ -24400,7 +24400,7 @@ _0224523E: ldr r0, _0224526C ; =ov18_02246338 mov r1, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0224525C ; =0x022513EC ldr r1, [r1] str r0, [r1, #4] @@ -25415,7 +25415,7 @@ ov18_022459E8: ; 0x022459E8 ldr r0, _02245A48 ; =ov18_02245838 str r5, [r4] mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #8] ldr r1, [r4, #8] ldr r2, _02245A4C ; =ov18_022457F8 @@ -25939,7 +25939,7 @@ ov18_02245E1C: ; 0x02245E1C ldr r0, _02245E84 ; =ov18_02245BB4 add r1, r4, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #8] ldr r1, [r4, #8] ldr r2, _02245E88 ; =ov18_022457F8 @@ -27680,7 +27680,7 @@ ov18_02246C44: ; 0x02246C44 ldr r0, [r0] str r0, [r4] ldr r0, _02246C8C ; =ov18_02246898 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] ldr r1, [r4, #4] ldr r2, _02246C90 ; =ov18_02246C10 @@ -28682,7 +28682,7 @@ ov18_02247428: ; 0x02247428 mov r2, #0x64 strb r0, [r4, #5] ldr r0, _02247468 ; =ov18_02247338 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r1, r0, #0 ldr r2, _0224746C ; =ov18_02247324 add r0, r4, #0 @@ -29515,7 +29515,7 @@ ov18_02247A34: ; 0x02247A34 ldr r0, _02247AA0 ; =ov18_02248054 ldr r2, _02247AA4 ; =0x00002710 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -31957,7 +31957,7 @@ _02248E0C: ldr r0, _02248E64 ; =ov18_022489CC ldr r2, _02248E68 ; =0x00002710 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4] pop {r4, r5, r6, pc} nop @@ -32900,7 +32900,7 @@ ov18_022494C8: ; 0x022494C8 ldr r0, _02249538 ; =ov18_02249684 ldr r2, _0224953C ; =0x00002710 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] ldr r1, [r4, #4] ldr r2, _02249540 ; =ov18_0224AFE8 @@ -35195,7 +35195,7 @@ ov18_0224A7C8: ; 0x0224A7C8 ldr r0, _0224A838 ; =ov18_0224A914 ldr r2, _0224A83C ; =0x00002710 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] ldr r1, [r4, #4] ldr r2, _0224A840 ; =ov18_0224AFE8 @@ -36101,7 +36101,7 @@ ov18_0224AF28: ; 0x0224AF28 ldr r0, _0224AFA4 ; =ov18_02249684 ldr r2, _0224AFA8 ; =0x00002710 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] ldr r1, [r4, #4] ldr r2, _0224AFAC ; =ov18_0224AFE8 @@ -37856,7 +37856,7 @@ ov18_0224BD54: ; 0x0224BD54 ldr r0, _0224BDE8 ; =ov18_0224B9D0 ldr r2, _0224BDEC ; =0x00002710 add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] ldr r1, [r4, #4] ldr r2, _0224BDF0 ; =ov18_0224AFE8 @@ -37976,7 +37976,7 @@ ov18_0224BEA4: ; 0x0224BEA4 ldr r2, _0224BF10 ; =0x00002710 str r6, [r4, #4] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] bl ov18_0223D638 add r6, r0, #0 @@ -40378,7 +40378,7 @@ ov18_0224D1F8: ; 0x0224D1F8 ldr r0, _0224D2E4 ; =ov18_0224CC04 ldr r2, _0224D2E8 ; =0x00002710 add r1, r6, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r6, #4] ldr r1, [r6, #4] ldr r2, _0224D2EC ; =ov18_0224AFE8 @@ -40405,7 +40405,7 @@ _0224D2AE: ldr r0, [r6, #0xc] add r1, r4, #0 ldr r0, [r0, #0x34] - bl GetMapObjectByID + bl MapObjectManager_GetFirstActiveObjectByID ldr r1, [sp] bl sub_020584AC _0224D2CE: @@ -40853,7 +40853,7 @@ _0224D64A: ldr r0, _0224D694 ; =ov18_0224D5B4 add r1, r4, #0 mov r2, #0xa - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0224D68C ; =0x022513FC ldr r2, [r1] str r0, [r2, #4] @@ -41603,7 +41603,7 @@ _0224DC4C: ldr r0, _0224DCB4 ; =ov18_0224DBB8 add r1, r5, #0 mov r2, #0x64 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x20] _0224DC74: ldr r1, [r5, #0x40] diff --git a/arm9/overlays/20/asm/ov20_02252440.s b/arm9/overlays/20/asm/ov20_02252440.s index ef286232c..d584f9826 100644 --- a/arm9/overlays/20/asm/ov20_02252440.s +++ b/arm9/overlays/20/asm/ov20_02252440.s @@ -51,12 +51,12 @@ ov20_02252448: ; 0x02252448 str r5, [r4, #0x34] add r1, r4, #0 mov r2, #4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x38] ldr r0, _022524B8 ; =ov20_0225259C add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue _022524B2: pop {r3, r4, r5, r6, r7, pc} .align 2, 0 diff --git a/arm9/overlays/20/asm/ov20_022536F4.s b/arm9/overlays/20/asm/ov20_022536F4.s index 45efc92fb..b51d11283 100644 --- a/arm9/overlays/20/asm/ov20_022536F4.s +++ b/arm9/overlays/20/asm/ov20_022536F4.s @@ -212,7 +212,7 @@ _0225382E: str r0, [r4, #0x10] ldr r0, [r5, r6] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x14] cmp r0, #0 beq _02253884 diff --git a/arm9/overlays/21/include/ov21_02254854.h b/arm9/overlays/21/include/ov21_02254854.h index 62c4e8293..fba521e79 100644 --- a/arm9/overlays/21/include/ov21_02254854.h +++ b/arm9/overlays/21/include/ov21_02254854.h @@ -3,6 +3,7 @@ #include "nitro/types.h" #include "ov21_02254A6C.h" +#include "unk_0200CA44.h" typedef struct Time { @@ -25,7 +26,7 @@ typedef struct UnkStruct02254854 BOOL ov21_02254854(UnkStruct02254854 **param0, u32 param1, u32 param2, u32 param3); BOOL ov21_0225489C(UnkStruct02254854 *param0, u32 param1, u32 param2, u32 param3); void ov21_02254918(UnkStruct02254854 *param0); -void ov21_02254930(u32 param0, UnkStruct02254854 *param1); +void ov21_02254930(SysTask *task, UnkStruct02254854 *param1); void ov21_0225496C(UnkStruct02254854 *param0); void ov21_02254974(u32 param0, u32 param1, u32 param2, UnkStruct02254854 * param3); void ov21_02254990(UnkStruct02254854 * param0, u8 param1); diff --git a/arm9/overlays/21/src/ov21_02254854.c b/arm9/overlays/21/src/ov21_02254854.c index 113f3cea7..30f7cc3b5 100644 --- a/arm9/overlays/21/src/ov21_02254854.c +++ b/arm9/overlays/21/src/ov21_02254854.c @@ -29,7 +29,7 @@ BOOL ov21_02254854(UnkStruct02254854 **param0, u32 param1, u32 param2, u32 param UnkStruct02254854 *alloced = (UnkStruct02254854 *)AllocFromHeap(HEAP_ID_8, sizeof(UnkStruct02254854)); if (alloced != NULL) { - if (ov21_0225489C(alloced, param1, param2, param3) && sub_0200CA44((void (*)(u32, void *))ov21_02254930, (void *)alloced, 1)) + if (ov21_0225489C(alloced, param1, param2, param3) && SysTask_CreateOnMainQueue((SysTaskFunc)ov21_02254930, (void *)alloced, 1)) { *param0 = alloced; return TRUE; @@ -80,7 +80,7 @@ void ov21_02254918(UnkStruct02254854 *param0) FreeToHeap((void *)param0); } -void ov21_02254930(u32 param0, UnkStruct02254854 *param1) +void ov21_02254930(SysTask *task, UnkStruct02254854 *param1) { if (param1->bytearray[0] >= 3) { @@ -92,7 +92,7 @@ void ov21_02254930(u32 param0, UnkStruct02254854 *param1) return; } ov21_02254918(param1); - sub_0200CAB4((s32)param0); + sub_0200CAB4((s32)task); ov20_022529A0(param1->Unk28); } diff --git a/arm9/overlays/22/asm/overlay_22.s b/arm9/overlays/22/asm/overlay_22.s index 2ad88f843..457edf4df 100644 --- a/arm9/overlays/22/asm/overlay_22.s +++ b/arm9/overlays/22/asm/overlay_22.s @@ -24,7 +24,7 @@ ov22_02254854: ; 0x02254854 add r1, r4, #0 mov r2, #1 str r6, [r4, #0x64] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _02254892 str r4, [r5] @@ -1197,7 +1197,7 @@ ov22_02255098: ; 0x02255098 ldr r0, _02255160 ; =ov22_02254F28 add r1, r5, #0 mov r2, #3 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r5, #0x84 str r0, [r5] add r0, r4, #0 diff --git a/arm9/overlays/23/asm/overlay_23.s b/arm9/overlays/23/asm/overlay_23.s index 07a01d33f..c88dd22d6 100644 --- a/arm9/overlays/23/asm/overlay_23.s +++ b/arm9/overlays/23/asm/overlay_23.s @@ -24,7 +24,7 @@ ov23_02254854: ; 0x02254854 str r6, [r4, #0x10] add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r4, [r5] mov r0, #1 pop {r3, r4, r5, r6, r7, pc} diff --git a/arm9/overlays/24/asm/overlay_24.s b/arm9/overlays/24/asm/overlay_24.s index 09f8bf66b..463690f2d 100644 --- a/arm9/overlays/24/asm/overlay_24.s +++ b/arm9/overlays/24/asm/overlay_24.s @@ -25,7 +25,7 @@ ov24_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov24_02254918 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488E str r4, [r5] diff --git a/arm9/overlays/25/asm/overlay_25.s b/arm9/overlays/25/asm/overlay_25.s index be38d4b7b..93ee2449f 100644 --- a/arm9/overlays/25/asm/overlay_25.s +++ b/arm9/overlays/25/asm/overlay_25.s @@ -24,7 +24,7 @@ ov25_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov25_02254930 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] @@ -331,7 +331,7 @@ _02254AA8: ldr r0, _02254AC0 ; =ov25_02254AE0 add r1, r4, #0 mov r2, #3 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x30] str r4, [r5] mov r0, #1 diff --git a/arm9/overlays/26/asm/ov26_02254854.s b/arm9/overlays/26/asm/ov26_02254854.s index 59687e0c5..31035b452 100644 --- a/arm9/overlays/26/asm/ov26_02254854.s +++ b/arm9/overlays/26/asm/ov26_02254854.s @@ -25,7 +25,7 @@ ov26_02254854: ; 0x02254854 ldr r0, _022548A0 ; =ov26_02254A4C add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _02254896 ldr r0, _022548A4 ; =ov26_02254A30 diff --git a/arm9/overlays/27/asm/overlay_27.s b/arm9/overlays/27/asm/overlay_27.s index 858429f17..96e31266a 100644 --- a/arm9/overlays/27/asm/overlay_27.s +++ b/arm9/overlays/27/asm/overlay_27.s @@ -24,7 +24,7 @@ ov27_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov27_022548F8 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] @@ -1122,7 +1122,7 @@ ov27_022550C8: ; 0x022550C8 ldr r0, _022550F4 ; =ov27_022550F8 add r1, #0xf8 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r4, #0xf4 str r0, [r4] pop {r4, pc} diff --git a/arm9/overlays/28/asm/overlay_28.s b/arm9/overlays/28/asm/overlay_28.s index c19d23778..f61281ce6 100644 --- a/arm9/overlays/28/asm/overlay_28.s +++ b/arm9/overlays/28/asm/overlay_28.s @@ -24,7 +24,7 @@ ov28_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov28_022549C0 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] @@ -897,7 +897,7 @@ _02254EF8: ldr r0, _02254F14 ; =ov28_02254F84 ldr r1, [sp] mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp] add r1, #0xb0 str r1, [sp] diff --git a/arm9/overlays/29/asm/overlay_29.s b/arm9/overlays/29/asm/overlay_29.s index d33a6ceb2..140064d57 100644 --- a/arm9/overlays/29/asm/overlay_29.s +++ b/arm9/overlays/29/asm/overlay_29.s @@ -24,7 +24,7 @@ ov29_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov29_022548E0 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/30/asm/overlay_30.s b/arm9/overlays/30/asm/overlay_30.s index 8313d4f25..e38a9b622 100644 --- a/arm9/overlays/30/asm/overlay_30.s +++ b/arm9/overlays/30/asm/overlay_30.s @@ -24,7 +24,7 @@ ov30_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov30_02254930 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/31/asm/overlay_31.s b/arm9/overlays/31/asm/overlay_31.s index 82cb6904d..3d1675199 100644 --- a/arm9/overlays/31/asm/overlay_31.s +++ b/arm9/overlays/31/asm/overlay_31.s @@ -24,7 +24,7 @@ ov31_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov31_02254918 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/32/asm/overlay_32.s b/arm9/overlays/32/asm/overlay_32.s index 873145afc..07445ac63 100644 --- a/arm9/overlays/32/asm/overlay_32.s +++ b/arm9/overlays/32/asm/overlay_32.s @@ -24,7 +24,7 @@ ov32_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov32_02254920 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/33/asm/ov33_02254854.s b/arm9/overlays/33/asm/ov33_02254854.s index c9039ac1b..7789cfa1a 100644 --- a/arm9/overlays/33/asm/ov33_02254854.s +++ b/arm9/overlays/33/asm/ov33_02254854.s @@ -24,7 +24,7 @@ ov33_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov33_022548D4 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/34/asm/overlay_34.s b/arm9/overlays/34/asm/overlay_34.s index 13c11672f..d2fedaaee 100644 --- a/arm9/overlays/34/asm/overlay_34.s +++ b/arm9/overlays/34/asm/overlay_34.s @@ -24,7 +24,7 @@ ov34_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov34_0225490C add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/35/asm/overlay_35.s b/arm9/overlays/35/asm/overlay_35.s index 3adc4ca08..e407fe386 100644 --- a/arm9/overlays/35/asm/overlay_35.s +++ b/arm9/overlays/35/asm/overlay_35.s @@ -24,7 +24,7 @@ ov35_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov35_022548F0 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/36/asm/overlay_36.s b/arm9/overlays/36/asm/overlay_36.s index 0cbfd2fde..9a2b4213a 100644 --- a/arm9/overlays/36/asm/overlay_36.s +++ b/arm9/overlays/36/asm/overlay_36.s @@ -24,7 +24,7 @@ ov36_02254854: ; 0x02254854 ldr r0, _0225489C ; =ov36_02254938 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/37/asm/overlay_37.s b/arm9/overlays/37/asm/overlay_37.s index 3cd687671..bcb0ba845 100644 --- a/arm9/overlays/37/asm/overlay_37.s +++ b/arm9/overlays/37/asm/overlay_37.s @@ -24,7 +24,7 @@ ov37_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov37_02254900 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/38/asm/overlay_38.s b/arm9/overlays/38/asm/overlay_38.s index 505230b18..2032079eb 100644 --- a/arm9/overlays/38/asm/overlay_38.s +++ b/arm9/overlays/38/asm/overlay_38.s @@ -24,7 +24,7 @@ ov38_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov38_0225494C add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/39/asm/overlay_39.s b/arm9/overlays/39/asm/overlay_39.s index 0600e23a9..dd67f2043 100644 --- a/arm9/overlays/39/asm/overlay_39.s +++ b/arm9/overlays/39/asm/overlay_39.s @@ -24,7 +24,7 @@ ov39_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov39_02254998 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/40/asm/overlay_40.s b/arm9/overlays/40/asm/overlay_40.s index fa6692124..c5128398e 100644 --- a/arm9/overlays/40/asm/overlay_40.s +++ b/arm9/overlays/40/asm/overlay_40.s @@ -24,7 +24,7 @@ ov40_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov40_02254998 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/41/asm/overlay_41.s b/arm9/overlays/41/asm/overlay_41.s index 575849a23..3c5e2d61b 100644 --- a/arm9/overlays/41/asm/overlay_41.s +++ b/arm9/overlays/41/asm/overlay_41.s @@ -24,7 +24,7 @@ ov41_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov41_02254A88 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/42/asm/overlay_42.s b/arm9/overlays/42/asm/overlay_42.s index 50b7e27c3..79771c4c6 100644 --- a/arm9/overlays/42/asm/overlay_42.s +++ b/arm9/overlays/42/asm/overlay_42.s @@ -24,7 +24,7 @@ ov42_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov42_02254A04 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] @@ -823,7 +823,7 @@ _02254E5E: ldr r0, _02254E78 ; =ov42_02254FE8 add r1, r5, #0 mov r2, #3 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x70] add sp, #0x3c pop {r4, r5, r6, r7, pc} diff --git a/arm9/overlays/43/asm/overlay_43.s b/arm9/overlays/43/asm/overlay_43.s index 9473fa186..7da079f94 100644 --- a/arm9/overlays/43/asm/overlay_43.s +++ b/arm9/overlays/43/asm/overlay_43.s @@ -24,7 +24,7 @@ ov43_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov43_0225493C add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] @@ -959,7 +959,7 @@ _02254F7A: ldr r0, _02254F98 ; =ov43_02255078 add r1, r6, #0 mov r2, #3 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x53 lsl r1, r1, #2 str r0, [r6, r1] diff --git a/arm9/overlays/44/asm/ov44_02254854.s b/arm9/overlays/44/asm/ov44_02254854.s index 0835d5521..b7ea5e54d 100644 --- a/arm9/overlays/44/asm/ov44_02254854.s +++ b/arm9/overlays/44/asm/ov44_02254854.s @@ -24,7 +24,7 @@ ov44_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov44_022548EC add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/45/asm/overlay_45.s b/arm9/overlays/45/asm/overlay_45.s index 38fc172c3..f7b84478f 100644 --- a/arm9/overlays/45/asm/overlay_45.s +++ b/arm9/overlays/45/asm/overlay_45.s @@ -24,7 +24,7 @@ ov45_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov45_022549EC add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/46/asm/ov46_02254854.s b/arm9/overlays/46/asm/ov46_02254854.s index 88e975b01..641e30332 100644 --- a/arm9/overlays/46/asm/ov46_02254854.s +++ b/arm9/overlays/46/asm/ov46_02254854.s @@ -24,7 +24,7 @@ ov46_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov46_022548D4 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/47/asm/overlay_47.s b/arm9/overlays/47/asm/overlay_47.s index 5132aebd2..1b4d8e03c 100644 --- a/arm9/overlays/47/asm/overlay_47.s +++ b/arm9/overlays/47/asm/overlay_47.s @@ -24,7 +24,7 @@ ov47_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov47_022548E0 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/48/asm/overlay_48.s b/arm9/overlays/48/asm/overlay_48.s index 60c7dee5b..07b948220 100644 --- a/arm9/overlays/48/asm/overlay_48.s +++ b/arm9/overlays/48/asm/overlay_48.s @@ -24,7 +24,7 @@ ov48_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov48_02254950 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/49/asm/overlay_49.s b/arm9/overlays/49/asm/overlay_49.s index 0f1360927..7d142c2ae 100644 --- a/arm9/overlays/49/asm/overlay_49.s +++ b/arm9/overlays/49/asm/overlay_49.s @@ -24,7 +24,7 @@ ov49_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov49_02254938 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488C str r4, [r5] diff --git a/arm9/overlays/50/asm/ov50_02254854.s b/arm9/overlays/50/asm/ov50_02254854.s index fc4b5f76d..1977611f0 100644 --- a/arm9/overlays/50/asm/ov50_02254854.s +++ b/arm9/overlays/50/asm/ov50_02254854.s @@ -24,7 +24,7 @@ ov50_02254854: ; 0x02254854 ldr r0, _02254898 ; =ov50_022548D4 add r1, r4, #0 mov r2, #1 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue cmp r0, #0 beq _0225488E str r4, [r6] diff --git a/arm9/overlays/61/asm/overlay_61.s b/arm9/overlays/61/asm/overlay_61.s index 8171a4962..89e44afee 100644 --- a/arm9/overlays/61/asm/overlay_61.s +++ b/arm9/overlays/61/asm/overlay_61.s @@ -1345,7 +1345,7 @@ _021D7E00: ldr r0, _021D7FB0 ; =ov61_021D7AA8 add r1, r5, #0 strb r2, [r5, #0x15] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue _021D7FA6: add sp, #0x2c pop {r4, r5, r6, r7, pc} diff --git a/arm9/overlays/62/asm/overlay_62.s b/arm9/overlays/62/asm/overlay_62.s index a73bfe89f..97f0ef383 100644 --- a/arm9/overlays/62/asm/overlay_62.s +++ b/arm9/overlays/62/asm/overlay_62.s @@ -1725,7 +1725,7 @@ _0222E22E: ldr r0, _0222E2B8 ; =ov62_0222E0F8 ldr r1, [sp, #0x1c] lsl r2, r3, #0xc - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x28 pop {r3, r4, r5, r6, r7, pc} nop @@ -5257,7 +5257,7 @@ ov62_0222FE24: ; 0x0222FE24 ldr r0, _0222FE54 ; =ov62_0222FDD0 add r1, r4, #0 lsl r2, r2, #2 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 _0222FE54: .word ov62_0222FDD0 diff --git a/arm9/overlays/63/asm/ov63_021D8890.s b/arm9/overlays/63/asm/ov63_021D8890.s index 70ac0b0d6..44e15c547 100644 --- a/arm9/overlays/63/asm/ov63_021D8890.s +++ b/arm9/overlays/63/asm/ov63_021D8890.s @@ -1051,7 +1051,7 @@ _021D90FE: ldr r0, _021D9210 ; =ov63_021D92A4 strb r2, [r4, #8] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] mov r0, #1 ldr r1, _021D9214 ; =0x00000494 @@ -1074,7 +1074,7 @@ _021D9122: ldr r0, _021D9218 ; =ov63_021D9300 strb r2, [r4, #8] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] ldrb r0, [r4, #1] add r0, r0, #1 @@ -1119,7 +1119,7 @@ _021D9148: ldr r0, _021D9228 ; =ov63_021D9360 strb r2, [r4, #8] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] ldrb r0, [r4, #1] add r0, r0, #1 @@ -1135,7 +1135,7 @@ _021D91AE: ldr r0, _021D922C ; =ov63_021D93A8 strb r2, [r4, #8] add r1, r4, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] ldrb r0, [r4, #1] add r0, r0, #1 diff --git a/arm9/overlays/63/asm/ov63_021DAE5C.s b/arm9/overlays/63/asm/ov63_021DAE5C.s index c8e551978..5ad562a75 100644 --- a/arm9/overlays/63/asm/ov63_021DAE5C.s +++ b/arm9/overlays/63/asm/ov63_021DAE5C.s @@ -496,7 +496,7 @@ ov63_021DB1F8: ; 0x021DB1F8 mov r2, #0xa strb r0, [r4, #5] ldr r0, _021DB22C ; =ov63_021DB2F8 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #8] pop {r4, pc} .align 2, 0 @@ -565,7 +565,7 @@ _021DB248: ldr r0, _021DB2C4 ; =ov63_021DB334 add r1, r4, #0 mov r2, #0x14 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #8] add r0, r5, #1 lsl r0, r0, #0x18 @@ -742,7 +742,7 @@ _021DB3A8: ldr r0, _021DB420 ; =ov63_021DB424 add r1, r4, #0 mov r2, #0x14 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #8] add r0, r5, #1 lsl r0, r0, #0x18 diff --git a/arm9/overlays/64/asm/overlay_64.s b/arm9/overlays/64/asm/overlay_64.s index b9e1bbefe..6192633f4 100644 --- a/arm9/overlays/64/asm/overlay_64.s +++ b/arm9/overlays/64/asm/overlay_64.s @@ -2539,7 +2539,7 @@ _021D8876: ldr r0, _021D88C0 ; =ov64_021D88C4 add r1, r5, #0 str r2, [r5, #0x38] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, r5, r6, pc} .align 2, 0 _021D88B8: .word 0xFFFFEAAB @@ -2839,7 +2839,7 @@ _021D8AEE: ldr r0, _021D8B0C ; =ov64_021D8B10 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x28] pop {r4, pc} nop @@ -3043,7 +3043,7 @@ _021D8C50: str r0, [r5, #0x50] ldr r0, _021D8C90 ; =ov64_021D8CC8 add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x54] pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -3073,7 +3073,7 @@ _021D8CB6: ldr r0, _021D8CC4 ; =ov64_021D8CC8 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x54] pop {r4, pc} .align 2, 0 @@ -3267,7 +3267,7 @@ _021D8DF0: str r0, [r5, #0x38] ldr r0, _021D8E30 ; =ov64_021D8E68 add r1, r5, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x3c] pop {r3, r4, r5, r6, r7, pc} .align 2, 0 @@ -3297,7 +3297,7 @@ _021D8E56: ldr r0, _021D8E64 ; =ov64_021D8E68 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x3c] pop {r4, pc} .align 2, 0 diff --git a/arm9/overlays/65/asm/overlay_65.s b/arm9/overlays/65/asm/overlay_65.s index fe99fcefc..f3ca462cc 100644 --- a/arm9/overlays/65/asm/overlay_65.s +++ b/arm9/overlays/65/asm/overlay_65.s @@ -3610,7 +3610,7 @@ ov65_021D9100: ; 0x021D9100 add r0, r6, #0 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x18] ldr r0, [r5, #4] add r0, r0, #1 diff --git a/arm9/overlays/66/asm/overlay_66.s b/arm9/overlays/66/asm/overlay_66.s index 7336c6010..113e11373 100644 --- a/arm9/overlays/66/asm/overlay_66.s +++ b/arm9/overlays/66/asm/overlay_66.s @@ -3173,7 +3173,7 @@ _021D8DAA: ldr r1, [sp, #8] ldr r0, _021D8DDC ; =ov66_021D8DE0 add r1, #0xa4 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp, #8] add r1, #0xa8 str r1, [sp, #8] @@ -3277,7 +3277,7 @@ ov66_021D8E70: ; 0x021D8E70 bne _021D8E90 ldr r0, _021D8EA0 ; =ov66_021D8EA8 add r1, r3, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x43 lsl r1, r1, #2 str r0, [r4, r1] @@ -3285,7 +3285,7 @@ ov66_021D8E70: ; 0x021D8E70 _021D8E90: ldr r0, _021D8EA4 ; =ov66_021D9020 add r1, r3, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x43 lsl r1, r1, #2 str r0, [r4, r1] diff --git a/arm9/overlays/69/asm/overlay_69.s b/arm9/overlays/69/asm/overlay_69.s index 6cdc55965..dfe1e395d 100644 --- a/arm9/overlays/69/asm/overlay_69.s +++ b/arm9/overlays/69/asm/overlay_69.s @@ -2183,7 +2183,7 @@ _0222E77E: ldr r0, _0222E7BC ; =ov69_0222E7C0 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp, #0xc] str r0, [r7, r1] add sp, #0x10 @@ -2291,7 +2291,7 @@ _0222E860: str r2, [r4, #0x30] ldr r0, _0222E898 ; =ov69_0222E9AC str r2, [r4, #0x34] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp, #4] str r0, [r6, r1] add sp, #8 @@ -2844,7 +2844,7 @@ _0222ECF4: ldr r0, _0222ED2C ; =ov69_0222ED30 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r2, [sp, #0xc] ldr r1, [sp, #0x10] str r0, [r2, r1] @@ -3606,7 +3606,7 @@ _0222F320: str r2, [r0] ldr r0, _0222F35C ; =ov69_0222F388 ldr r1, [sp, #0x28] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add sp, #0x2c pop {r4, r5, r6, r7, pc} .align 2, 0 diff --git a/arm9/overlays/73/asm/overlay_73.s b/arm9/overlays/73/asm/overlay_73.s index 1747fe0f2..d7df1743c 100644 --- a/arm9/overlays/73/asm/overlay_73.s +++ b/arm9/overlays/73/asm/overlay_73.s @@ -6094,7 +6094,7 @@ _021DA446: ldr r0, _021DA494 ; =ov73_021DA408 add r1, r5, #0 lsl r2, r2, #0xa - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x2c] mov r1, #0 str r1, [r5, #0x30] diff --git a/arm9/overlays/81/asm/overlay_81.s b/arm9/overlays/81/asm/overlay_81.s index 7b7393c39..e1f19f2bd 100644 --- a/arm9/overlays/81/asm/overlay_81.s +++ b/arm9/overlays/81/asm/overlay_81.s @@ -417,7 +417,7 @@ _02238182: ldr r0, _022381E8 ; =ov81_02238248 add r1, r4, #0 mov r2, #0x14 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r1, r4, #0 add r1, #0xc0 str r0, [r1] @@ -673,7 +673,7 @@ _0223838C: mov r2, #0xa str r0, [r4, #0x14] ldr r0, _02238408 ; =ov81_0223843C - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue add r1, r5, #0 add r1, #0xf8 ldr r1, [r1] @@ -3045,7 +3045,7 @@ ov81_02239578: ; 0x02239578 ldr r0, _022395C0 ; =ov81_02239608 add r1, r4, #0 str r2, [r4, #0x28] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x68] _022395B8: pop {r3, r4, r5, pc} @@ -4335,7 +4335,7 @@ _02239FD0: ldr r0, _0223A018 ; =ov81_0223A01C ldr r1, [sp] mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, [sp] ldr r1, [r1] str r0, [r1] @@ -4651,7 +4651,7 @@ ov81_0223A228: ; 0x0223A228 ldr r0, _0223A26C ; =ov81_0223A270 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue _0223A268: pop {r3, r4, r5, r6, r7, pc} nop @@ -4787,7 +4787,7 @@ _0223A330: ldr r0, _0223A380 ; =ov81_0223A57C add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r3, r4, r5, pc} nop _0223A37C: .word 0xFFFF8000 @@ -6157,7 +6157,7 @@ ov81_0223AD9C: ; 0x0223AD9C ldr r0, _0223AE44 ; =ov81_0223AF5C add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] pop {r4, pc} nop @@ -7682,7 +7682,7 @@ ov81_0223B9BC: ; 0x0223B9BC ldr r0, _0223BA78 ; =ov81_0223BBC8 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #4] add sp, #4 pop {r3, r4, pc} @@ -8901,7 +8901,7 @@ ov81_0223C3CC: ; 0x0223C3CC ldr r0, _0223C41C ; =ov81_0223C420 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5] cmp r0, #0 bne _0223C418 @@ -8996,7 +8996,7 @@ ov81_0223C47C: ; 0x0223C47C ldr r0, _0223C4DC ; =ov81_0223C4E0 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5] cmp r0, #0 bne _0223C4D8 @@ -10112,7 +10112,7 @@ ov81_0223CD64: ; 0x0223CD64 ldr r0, _0223CDDC ; =ov81_0223CE54 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r6] cmp r0, #0 bne _0223CDD6 diff --git a/arm9/overlays/83/asm/overlay_83.s b/arm9/overlays/83/asm/overlay_83.s index 303f83284..25474deae 100644 --- a/arm9/overlays/83/asm/overlay_83.s +++ b/arm9/overlays/83/asm/overlay_83.s @@ -4181,7 +4181,7 @@ ov83_0222F74C: ; 0x0222F74C strh r1, [r0, #0x24] ldr r0, _0222F7A0 ; =ov83_0222F89C mov r1, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue ldr r1, _0222F79C ; =ov83_0223B884 ldr r2, [r1] str r0, [r2, #0x1c] diff --git a/arm9/overlays/84/asm/overlay_84_thumb2.s b/arm9/overlays/84/asm/overlay_84_thumb2.s index aa91ca5ac..91a7b1675 100644 --- a/arm9/overlays/84/asm/overlay_84_thumb2.s +++ b/arm9/overlays/84/asm/overlay_84_thumb2.s @@ -1530,7 +1530,7 @@ ov84_021D8C54: ; 0x021D8C54 ldr r0, _021D8CD4 ; =ov84_021D9278 add r1, r4, #0 mov r2, #0 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r1, #0x5a lsl r1, r1, #2 str r0, [r4, r1] diff --git a/arm9/overlays/85/asm/overlay_85.s b/arm9/overlays/85/asm/overlay_85.s index cad659623..529a85819 100644 --- a/arm9/overlays/85/asm/overlay_85.s +++ b/arm9/overlays/85/asm/overlay_85.s @@ -1359,7 +1359,7 @@ ov85_021D8020: ; 0x021D8020 mov r0, #3 str r0, [r4, #0xc] ldr r0, _021D8040 ; =ov85_021D8054 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] pop {r4, pc} .align 2, 0 @@ -3918,7 +3918,7 @@ _021D92F4: add r1, r6, #0 add r2, #0x81 str r7, [r5, #0x20] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r5, #0x1c] add r4, r4, #1 add r5, #0x24 @@ -7502,7 +7502,7 @@ ov85_021DAD20: ; 0x021DAD20 ldr r0, _021DAD40 ; =ov85_021DAD70 add r1, r4, #0 mov r2, #0x8a - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x10] pop {r4, pc} nop @@ -7736,7 +7736,7 @@ ov85_021DAEC0: ; 0x021DAEC0 ldr r0, _021DAEE0 ; =ov85_021DAF80 add r1, r4, #0 mov r2, #0x84 - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue str r0, [r4, #0x24] pop {r4, pc} nop @@ -9470,7 +9470,7 @@ ov85_021DBB0C: ; 0x021DBB0C ldr r0, _021DBB2C ; =ov85_021DBB88 mov r2, #0x8f str r4, [r1, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, pc} .align 2, 0 _021DBB2C: .word ov85_021DBB88 @@ -9490,7 +9490,7 @@ ov85_021DBB30: ; 0x021DBB30 ldr r0, _021DBB50 ; =ov85_021DBBE8 mov r2, #0x8f str r4, [r1, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue pop {r4, pc} .align 2, 0 _021DBB50: .word ov85_021DBBE8 @@ -9514,7 +9514,7 @@ ov85_021DBB54: ; 0x021DBB54 ldr r0, _021DBB84 ; =ov85_021DBC48 mov r2, #0x8f str r5, [r1, #0xc] - bl sub_0200CA44 + bl SysTask_CreateOnMainQueue mov r0, #0x5f lsl r0, r0, #4 bl PlaySE diff --git a/arm9/src/map_object.c b/arm9/src/map_object.c new file mode 100644 index 000000000..6098a00df --- /dev/null +++ b/arm9/src/map_object.c @@ -0,0 +1,841 @@ +#include "global.h" +#include "map_object.h" +#include "field_system.h" +#include "heap.h" +#include "constants/sprites.h" +#include "unk_0200CA44.h" + +static MapObjectManager *MapObjectManager_New(u32 objectCount); +static LocalMapObject *MapObject_CreateFromObjectEvent(MapObjectManager *manager, ObjectEvent *objectEvent, u32 mapNo); +static void SavedMapObject_InitFromLocalMapObject(FieldSystem *fieldSystem, LocalMapObject *object, SavedMapObject *savedObject); +static void LocalMapObject_InitFromSavedMapObject(LocalMapObject *localObject, SavedMapObject *savedObject); +static void sub_02057AEC(MapObjectManager *manager, LocalMapObject *object); +static void sub_02057B34(LocalMapObject *object); +static void MapObject_ConvertXYToPositionVec(LocalMapObject *object); +static void MapObject_CreateFromInitArgs(MapObjectInitArgs *args); +static LocalMapObject *MapObjectManager_GetFirstInactiveObject(MapObjectManager *manager); +static LocalMapObject *sub_02057C98(MapObjectManager *manager, u32 id, u32 mapNo); +static void sub_02057CF0(MapObjectManager *manager, LocalMapObject *object); +static void MapObject_InitFromObjectEvent(LocalMapObject *object, ObjectEvent *objectEvent, FieldSystem *fieldSystem); +static void MapObject_SetPositionVecFromObjectEvent(LocalMapObject *object, ObjectEvent *objectEvent); +static void sub_02057E90(LocalMapObject *object, MapObjectManager *manager); +/*static*/ void sub_02057EE0(LocalMapObject *object); +/*static*/ void sub_02057F18(LocalMapObject *object); +static void MapObject_Clear(LocalMapObject *object); +static u32 sub_02057F90(LocalMapObject *object, u32 flagId, u32 objectEventCount, ObjectEvent *objectEvents); +static LocalMapObject *MapObjectManager_GetFirstObjectWithID(MapObjectManager *manager, u32 objectId, u32 flagId); +static void sub_02058148(LocalMapObject *object); +/*static*/ void sub_0205815C(LocalMapObject *object); +static void MapObject_NoOp(LocalMapObject *object); +static u32 FieldSystem_ResolveObjectSpriteID(FieldSystem *fieldSystem, s32 spriteId); +/*static*/ void sub_0205818C(LocalMapObject *object); +static void sub_020581A4(LocalMapObject *object); + +extern void MapObjectManager_SetFieldSystemPtr(MapObjectManager *manager, FieldSystem *fieldSystem); +extern void MapObjectManager_SetObjectCount(MapObjectManager *manager, u32 objectCount); +extern void MapObjectManager_SetPriority(MapObjectManager *manager, u32 priority); +extern LocalMapObject *MapObjectManager_GetObjects(MapObjectManager *manager); +extern u32 MapObjectManager_GetObjectCount(MapObjectManager *manager); +extern BOOL MapObject_IsInUse(LocalMapObject *object); +extern void ov05_021F2AF4(MapObjectManager *manager, void *param0); +extern void *sub_020583A0(MapObjectManager *manager); +extern u32 sub_02058450(LocalMapObject *object); +extern BOOL MapObject_TestFlagsBits(LocalMapObject *object, MapObjectFlagBits flags); +extern void MapObjectManager_SetObjects(MapObjectManager *manager, LocalMapObject *objects); +extern u32 ObjectEvent_GetID(ObjectEvent *objectEvent); +extern BOOL ObjectEvent_ScriptIDIsUnset(ObjectEvent *objectEvent); +extern void sub_02058214(LocalMapObject *object, ObjectEvent *objectEvent, u32 mapNo); +extern u16 ObjectEvent_GetFlagID_AssertScriptIDIsUnset(ObjectEvent *objectEvent); +extern void sub_02058258(LocalMapObject *object, u32 mapNo, ObjectEvent *objectEvent); +extern FieldSystem *MapObjectManager_GetFieldSystemPtr(MapObjectManager *manager); +extern void sub_02057E90(LocalMapObject *object, MapObjectManager *manager); +extern void sub_0205844C(LocalMapObject *object, u32 mapNo); +extern void sub_020581B4(LocalMapObject *object); +extern void MapObject_SetFlagsBits(LocalMapObject *object, MapObjectFlagBits bits); +extern MapObjectManager *MapObjectManager_Get(MapObjectManager *manager); +extern void sub_0205836C(MapObjectManager *manager); +extern void ObjectEvent_SetId(ObjectEvent *objectEvent, u32 id); +extern void ObjectEvent_SetSprite(ObjectEvent *objectEvent, u32 sprite); +extern void ObjectEvent_SetMovement(ObjectEvent *objectEvent, u32 movement); +extern void ObjectEvent_SetType(ObjectEvent *objectEvent, u32 type); +extern void ObjectEvent_SetFlagId(ObjectEvent *objectEvent, u32 flagId); +extern void ObjectEvent_SetScript(ObjectEvent *objectEvent, u32 script); +extern void ObjectEvent_SetFacing(ObjectEvent *objectEvent, u32 direction); +extern void ObjectEvent_SetParam(ObjectEvent *objectEvent, u32 value, u32 param); +extern void ObjectEvent_SetXRange(ObjectEvent *objectEvent, u32 xRange); +extern void ObjectEvent_SetYRange(ObjectEvent *objectEvent, u32 yRange); +extern void ObjectEvent_SetXCoord(ObjectEvent *objectEvent, u32 xCoord); +extern void ObjectEvent_SetYCoord(ObjectEvent *objectEvent, u32 yCoord); +extern void ObjectEvent_SetHeight(ObjectEvent *objectEvent, u32 height); +extern u32 ObjectEvent_GetFlagID(ObjectEvent *objectEvent); +extern ObjectEvent *ObjectEvent_GetById(u32 id, u32 objectEventCount, ObjectEvent *events); +extern u8 FieldSystem_FlagCheck(FieldSystem *fieldSystem, u16 flag); +extern void MapObject_SetSpriteID(LocalMapObject *object, u32 sprite); +extern void MapObject_ClearFlagsBits(LocalMapObject *object, MapObjectFlagBits bits); +extern BOOL sub_02058934(LocalMapObject *object); +extern MapObjectManager *MapObject_GetManager(LocalMapObject *object); +extern BOOL sub_020587E0(MapObjectManager *manager); +extern void sub_020586B4(LocalMapObject *object); +extern void sub_02058660(LocalMapObject *object); +extern void sub_02058564(LocalMapObject *object); +extern MapObjectManager *sub_02058580(LocalMapObject *object); +extern void sub_02058374(MapObjectManager *manager); +extern u32 MapObject_GetFlagID(LocalMapObject *object); +extern FieldSystem *MapObject_GetFieldSystem(LocalMapObject *object); +extern void FieldSystem_FlagSet(FieldSystem *fieldSystem, u16 flag); +extern void sub_02058ED8(LocalMapObject *object); +extern void sub_02058EDC(LocalMapObject *object); +extern void sub_02058EE0(LocalMapObject *object); +extern void sub_02058EE4(LocalMapObject *object); +extern u32 MapObject_GetFlagsBits(LocalMapObject *object, MapObjectFlagBits bits); +extern void sub_02058684(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern void sub_02058698(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern void sub_020586AC(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern void sub_020586C0(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern void sub_020586D4(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern void sub_020586C8(LocalMapObject *object); +extern BOOL MapObject_CheckFlag14(LocalMapObject *object); +extern void sub_020586DC(LocalMapObject *object); +extern void sub_02057AEC(MapObjectManager *manager, LocalMapObject *object); +extern u32 MapObject_GetFlagsWord(LocalMapObject *object); +extern u32 MapObject_GetFlags2Word(LocalMapObject *object); +extern u32 MapObject_GetID(LocalMapObject *object); +extern u32 MapObject_GetSpriteID(LocalMapObject *object); +extern u32 MapObject_GetMovement(LocalMapObject *object); +extern u32 MapObject_GetType(LocalMapObject *object); +extern u32 MapObject_GetScript(LocalMapObject *object); +extern u32 MapObject_GetInitialFacingDirection(LocalMapObject *object); +extern u32 MapObject_GetFacingDirection(LocalMapObject *object); +extern u32 MapObject_GetNextFacingDirection(LocalMapObject *object); +extern u32 MapObject_GetParam(LocalMapObject *object, u32 param); +extern u32 MapObject_GetXRange(LocalMapObject *object); +extern u32 MapObject_GetYRange(LocalMapObject *object); +extern u32 MapObject_GetInitialX(LocalMapObject *object); +extern u32 MapObject_GetInitialHeight(LocalMapObject *object); +extern u32 MapObject_GetInitialY(LocalMapObject *object); +extern u32 MapObject_GetCurrentX(LocalMapObject *object); +extern u32 MapObject_GetCurrentHeight(LocalMapObject *object); +extern u32 MapObject_GetCurrentY(LocalMapObject *object); +extern void sub_02059E60(s32 x, s32 y, VecFx32 *vector); +extern u32 MapObject_GetPosVecYCoord(LocalMapObject *object); +extern u32 MapObject_CheckFlag29(LocalMapObject *object); +extern u8 *sub_020585B0(LocalMapObject *object); +extern u8 *sub_020585D8(LocalMapObject *object); +extern BOOL sub_02059EC8(FieldSystem *fieldSystem, VecFx32 *vector, BOOL flag); +extern void MapObject_SetFlagsWord(LocalMapObject *object, u32 flags); +extern void MapObject_SetFlags2Word(LocalMapObject *object, u32 flags2); +extern void MapObject_SetID(LocalMapObject *object, u32 objectId); +extern void sub_0205844C(LocalMapObject *object, u32 param1); +extern void MapObject_SetMovement(LocalMapObject *object, u32 movement); +extern void MapObject_SetType(LocalMapObject *object, u32 type); +extern void MapObject_SetFlagID(LocalMapObject *object, u32 flagId); +extern void MapObject_SetScript(LocalMapObject *object, u32 script); +extern void MapObject_SetInitialFacingDirection(LocalMapObject *object, u32 initialDirection); +extern void MapObject_SetFacingDirectionDirect(LocalMapObject *object, u32 direction); +extern void MapObject_SetNextFacingDirection(LocalMapObject *object, u32 nextDirection); +extern void MapObject_SetParam(LocalMapObject *object, u32 value, u32 param); +extern void MapObject_SetXRange(LocalMapObject *object, u32 xRange); +extern void MapObject_SetYRange(LocalMapObject *object, u32 yRange); +extern void MapObject_SetInitialX(LocalMapObject *object, u32 initialX); +extern void MapObject_SetInitialHeight(LocalMapObject *object, u32 initialHeight); +extern void MapObject_SetInitialY(LocalMapObject *object, u32 initialY); +extern void MapObject_SetCurrentX(LocalMapObject *object, u32 currentX); +extern void MapObject_SetCurrentHeight(LocalMapObject *object, u32 currentHeight); +extern void MapObject_SetCurrentY(LocalMapObject *object, u32 currentY); +extern void MapObject_SetPositionVec(LocalMapObject *object, VecFx32 *coords); +extern void MapObject_SetManager(LocalMapObject *object, MapObjectManager *manager); +extern void MapObject_ClearHeldMovement(LocalMapObject *object); +extern void sub_0205866C(LocalMapObject *object); +extern void MapObject_GetPositionVec(LocalMapObject *object, VecFx32 *position); +extern void MapObject_SetPreviousX(LocalMapObject *object, u32 previousX); +extern void MapObject_SetPreviousHeight(LocalMapObject *object, u32 previousHeight); +extern void MapObject_SetPreviousY(LocalMapObject *object, u32 previousY); +extern void MapObject_CreateFromInitArgs(MapObjectInitArgs *args); +extern BOOL MapObject_CheckFlag25(LocalMapObject *object); +extern u32 sub_02058750(LocalMapObject *object); +extern void sub_0205832C(SysTask *task, LocalMapObject *object); +extern u32 MapObjectManager_GetPriority(MapObjectManager *manager); +extern void sub_02058554(LocalMapObject *object, SysTask *task); +extern u16 ObjectEvent_GetSpriteID(ObjectEvent *objectEvent); +extern u16 ObjectEvent_GetMovement(ObjectEvent *objectEvent); +extern u16 ObjectEvent_GetType(ObjectEvent *objectEvent); +extern u16 ObjectEvent_GetScript(ObjectEvent *objectEvent); +extern u16 ObjectEvent_GetInitialFacingDirection(ObjectEvent *objectEvent); +extern u32 ObjectEvent_GetParam(ObjectEvent *objectEvent, u32 param); +extern u32 ObjectEvent_GetXRange(ObjectEvent *objectEvent); +extern u32 ObjectEvent_GetYRange(ObjectEvent *objectEvent); +extern u16 ObjectEvent_GetXCoord(ObjectEvent *objectEvent); +extern u16 ObjectEvent_GetYCoord(ObjectEvent *objectEvent); +extern u32 ObjectEvent_GetHeight(ObjectEvent *objectEvent); +extern BOOL MapObject_ScriptIdIsFFFF(LocalMapObject *object); +extern void MapObject_SetFlag25(LocalMapObject *object, BOOL flag); +extern UnkLMOCallbackStruct *sub_02058D14(u32 movement); +extern LocalMapObject_UnkCallback sub_02058D2C(UnkLMOCallbackStruct *callbackStruct); +extern void sub_02058630(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern LocalMapObject_UnkCallback sub_02058D30(UnkLMOCallbackStruct *callbackStruct); +extern void sub_02058644(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern LocalMapObject_UnkCallback sub_02058D34(UnkLMOCallbackStruct *callbackStruct); +extern void sub_02058658(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern UnkLMOCallbackStruct2 *sub_02058D4C(u32 spriteId); +extern LocalMapObject_UnkCallback sub_02058D38(UnkLMOCallbackStruct2 *callbackStruct); +extern void sub_02058684(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern LocalMapObject_UnkCallback sub_02058D3C(UnkLMOCallbackStruct2 *callbackStruct); +extern void sub_02058698(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern LocalMapObject_UnkCallback sub_02058D40(UnkLMOCallbackStruct2 *callbackStruct); +extern void sub_020586AC(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern LocalMapObject_UnkCallback sub_02058D44(UnkLMOCallbackStruct2 *callbackStruct); +extern void sub_020586C0(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern LocalMapObject_UnkCallback sub_02058D48(UnkLMOCallbackStruct2 *callbackStruct); +extern void sub_020586D4(LocalMapObject *object, LocalMapObject_UnkCallback callback); +extern const LocalMapObject *MapObjectManager_GetConstObjects(MapObjectManager *manager); +extern u16 FieldSystem_VarGetObjectEventGraphicsId(FieldSystem *fieldSystem, u16 spriteId); +extern u32 sub_02059D1C(LocalMapObject *object); +extern void sub_02058EE8(LocalMapObject *object); + +MapObjectManager *MapObjectManager_Init(FieldSystem *fieldSystem, u32 objectCount, u32 priority) { + MapObjectManager *ret = MapObjectManager_New(objectCount); + MapObjectManager_SetFieldSystemPtr(ret, fieldSystem); + MapObjectManager_SetObjectCount(ret, objectCount); + MapObjectManager_SetPriority(ret, priority); + + return ret; +} + +void MapObjectManager_Delete(MapObjectManager *manager) { + FreeToHeapExplicit(HEAP_ID_FIELD, MapObjectManager_GetObjects(manager)); + FreeToHeapExplicit(HEAP_ID_FIELD, manager); +} + +void sub_020573C8(MapObjectManager *manager, u32 unused, u32 flagId, u32 objectCount, ObjectEvent *objectEvents) { + u32 count = MapObjectManager_GetObjectCount(manager); + LocalMapObject *objects = MapObjectManager_GetObjects(manager); + + for (; count != 0; count--) { + if (MapObject_IsInUse(objects) == TRUE) { + switch (sub_02057F90(objects, flagId, objectCount, objectEvents)) { + case 0: + if (sub_02058450(objects) != flagId && !MapObject_TestFlagsBits(objects, MAPOBJECTFLAG_UNK10)) { + MapObject_Remove(objects); + } + break; + + case 1: + case 2: + break; + } + } + objects++; + } + + ov05_021F2AF4(manager, sub_020583A0(manager)); +} + +static MapObjectManager *MapObjectManager_New(u32 objectCount) { + LocalMapObject *objects; + MapObjectManager *manager = AllocFromHeap(HEAP_ID_FIELD, sizeof(MapObjectManager)); + GF_ASSERT(manager != NULL); + memset(manager, 0, sizeof(MapObjectManager)); + + objects = AllocFromHeap(HEAP_ID_FIELD, objectCount * sizeof(LocalMapObject)); + GF_ASSERT(objects != NULL); + memset(objects, 0, objectCount * sizeof(LocalMapObject)); + + MapObjectManager_SetObjects(manager, objects); + + return manager; +} + +static LocalMapObject *MapObject_CreateFromObjectEvent(MapObjectManager *manager, ObjectEvent *objectEvent, u32 mapNo) { + LocalMapObject *ret; + + u32 objectId = ObjectEvent_GetID(objectEvent); + if (!ObjectEvent_ScriptIDIsUnset(objectEvent)) { + ret = sub_02057C98(manager, objectId, mapNo); + if (ret != NULL) { + sub_02058214(ret, objectEvent, mapNo); + return ret; + } + } else { + ret = MapObjectManager_GetFirstObjectWithID(manager, objectId, ObjectEvent_GetFlagID_AssertScriptIDIsUnset(objectEvent)); + if (ret != NULL) { + sub_02058258(ret, mapNo, objectEvent); + return ret; + } + } + + ret = MapObjectManager_GetFirstInactiveObject(manager); + if (ret == NULL) { + return ret; + } + + MapObject_InitFromObjectEvent(ret, objectEvent, MapObjectManager_GetFieldSystemPtr(manager)); + sub_02057E90(ret, manager); + sub_0205844C(ret, mapNo); + sub_020581A4(ret); + sub_020581B4(ret); + MapObject_SetFlagsBits(ret, MAPOBJECTFLAG_UNK2); + sub_02057CF0(manager, ret); + sub_0205836C(MapObjectManager_Get(manager)); + return ret; +} + +LocalMapObject *MapObject_Create(MapObjectManager *manager, u32 x, u32 y, u32 direction, u32 sprite, u32 movement, u32 mapNo) { + ObjectEvent objectEvent; + ObjectEvent_SetId(&objectEvent, 0); + ObjectEvent_SetSprite(&objectEvent, sprite); + ObjectEvent_SetMovement(&objectEvent, movement); + ObjectEvent_SetType(&objectEvent, 0); + ObjectEvent_SetFlagId(&objectEvent, 0); + ObjectEvent_SetScript(&objectEvent, 0); + ObjectEvent_SetFacing(&objectEvent, direction); + ObjectEvent_SetParam(&objectEvent, 0, 0); + ObjectEvent_SetParam(&objectEvent, 0, 1); + ObjectEvent_SetParam(&objectEvent, 0, 2); + ObjectEvent_SetXRange(&objectEvent, 0); + ObjectEvent_SetYRange(&objectEvent, 0); + ObjectEvent_SetXCoord(&objectEvent, x); + ObjectEvent_SetYCoord(&objectEvent, y); + ObjectEvent_SetHeight(&objectEvent, 0); + + return MapObject_CreateFromObjectEvent(manager, &objectEvent, mapNo); +} + +LocalMapObject *MapObject_CreateFromObjectEventWithId(MapObjectManager *manager, u16 id, u32 objectEventCount, u32 mapNo, const ObjectEvent *events) { + LocalMapObject *ret = NULL; + ObjectEvent *objectEvent = ObjectEvent_GetById(id, objectEventCount, (ObjectEvent *)events); + if (objectEvent != NULL) { + u32 flagId = ObjectEvent_GetFlagID(objectEvent); + FieldSystem* fieldSystem = MapObjectManager_GetFieldSystemPtr(manager); + if (FieldSystem_FlagCheck(fieldSystem, (u16)flagId) == FALSE) { + ret = MapObject_CreateFromObjectEvent(manager, objectEvent, mapNo); + } + } + + return ret; +} + +void sub_02057614(LocalMapObject *object, u32 sprite) { + MapObject_SetSpriteID(object, sprite); + sub_02058148(object); + MapObject_ClearFlagsBits(object, MAPOBJECTFLAG_UNK14); + sub_020581B4(object); +} + +void sub_02057634(LocalMapObject *object, u32 sprite) { + if (sub_02058934(object) == TRUE) { + sub_020576A8(object); + } + sub_02057614(object, sprite); +} + +void MapObject_Remove(LocalMapObject *object) { + if (sub_020587E0(MapObject_GetManager(object)) == TRUE) { + sub_020586B4(object); + } + sub_02058660(object); + sub_02058564(object); + sub_02058374(sub_02058580(object)); + MapObject_Clear(object); +} + +void MapObject_Delete(LocalMapObject *object) { + u32 flagId = MapObject_GetFlagID(object); + FieldSystem *fieldSystem = MapObject_GetFieldSystem(object); + FieldSystem_FlagSet(fieldSystem, flagId); + MapObject_Remove(object); +} + +void sub_020576A8(LocalMapObject *object) { + if (sub_020587E0(MapObject_GetManager(object)) == TRUE) { + if (MapObject_GetFlagsBits(object, MAPOBJECTFLAG_UNK14) != 0) { + sub_020586B4(object); + } + MapObject_ClearFlagsBits(object, MAPOBJECTFLAG_UNK14); + } + MapObject_SetSpriteID(object, MAP_OBJECT_GFX_ID_INVALID); + sub_02058684(object, sub_02058ED8); + sub_02058698(object, sub_02058EDC); + sub_020586AC(object, sub_02058EDC); + sub_020586C0(object, sub_02058EE0); + sub_020586D4(object, sub_02058EE4); +} + +void MapObjectManager_RemoveAllActiveObjects(MapObjectManager *manager) { + s32 i = 0; + s32 count = MapObjectManager_GetObjectCount(manager); + LocalMapObject *objects = MapObjectManager_GetObjects(manager); + + do { //BUG: does not check for if count is zero, and will always execute at least once + if (MapObject_GetFlagsBits(objects, MAPOBJECTFLAG_ACTIVE) != 0) { + MapObject_Remove(objects); + } + + i++; + objects++; + } while (i < count); +} + +void sub_02057750(MapObjectManager *manager) { + GF_ASSERT(sub_020587E0(manager) == TRUE); + + s32 i = 0; + s32 count = MapObjectManager_GetObjectCount(manager); + LocalMapObject *objects = MapObjectManager_GetObjects(manager); + + do { + if (MapObject_GetFlagsBits(objects, MAPOBJECTFLAG_ACTIVE) != 0 && MapObject_GetFlagsBits(objects, MAPOBJECTFLAG_UNK14) != 0) { + sub_020586C8(objects); + MapObject_NoOp(objects); + } + + i++; + objects++; + } while (i < count); +} + +void sub_020577A8(MapObjectManager *manager) { + GF_ASSERT(sub_020587E0(manager) == TRUE); + + s32 i = 0; + s32 count = MapObjectManager_GetObjectCount(manager); + LocalMapObject *objects = MapObjectManager_GetObjects(manager); + + do { + if (MapObject_IsInUse(objects) == TRUE) { + if (MapObject_CheckFlag14(objects) == TRUE) { + sub_020586DC(objects); + } else { + sub_020581B4(objects); + } + + sub_02058148(objects); + } + + i++; + objects++; + } while (i < count); +} + +void FieldSystem_SyncMapObjectsToSaveEx(FieldSystem *fieldSystem, MapObjectManager *manager, SavedMapObject *savedObjects, s32 count) { + s32 index = 0; + LocalMapObject *object; + + while (MapObjectManager_GetNextObjectWithFlagFromIndex(manager, &object, &index, MAPOBJECTFLAG_ACTIVE)) { //MapObjectManager_GetNextActiveObject? this is an iterator however + SavedMapObject_InitFromLocalMapObject(fieldSystem, object, savedObjects); + + count--; + savedObjects++; + + GF_ASSERT(count > 0); + } + + if (count != 0) { + memset(savedObjects, 0, count * sizeof(SavedMapObject)); + } +} + +void MapObjectManager_RestoreFromSave(MapObjectManager *manager, SavedMapObject *savedObjects, u32 objectCount) { + while (objectCount > 0) { + if ((savedObjects->flags & MAPOBJECTFLAG_ACTIVE)) { + LocalMapObject *localObject = MapObjectManager_GetFirstInactiveObject(manager); + GF_ASSERT(localObject != NULL); + + LocalMapObject_InitFromSavedMapObject(localObject, savedObjects); + sub_02057AEC(manager, localObject); + } + savedObjects++; + objectCount--; + } +} + +static void SavedMapObject_InitFromLocalMapObject(FieldSystem *fieldSystem, LocalMapObject *localObject, SavedMapObject *savedObject) { + savedObject->flags = MapObject_GetFlagsWord(localObject); + savedObject->flags2 = MapObject_GetFlags2Word(localObject); + savedObject->objId = MapObject_GetID(localObject); + savedObject->unk10 = sub_02058450(localObject); + savedObject->spriteId = MapObject_GetSpriteID(localObject); + savedObject->movement = MapObject_GetMovement(localObject); + savedObject->type = MapObject_GetType(localObject); + savedObject->flagId = MapObject_GetFlagID(localObject); + savedObject->script = MapObject_GetScript(localObject); + savedObject->initialFacing = MapObject_GetInitialFacingDirection(localObject); + savedObject->currentFacing = MapObject_GetFacingDirection(localObject); + savedObject->nextFacing = MapObject_GetNextFacingDirection(localObject); + savedObject->param[0] = MapObject_GetParam(localObject, 0); + savedObject->param[1] = MapObject_GetParam(localObject, 1); + savedObject->param[2] = MapObject_GetParam(localObject, 2); + savedObject->xRange = MapObject_GetXRange(localObject); + savedObject->yRange = MapObject_GetYRange(localObject); + savedObject->initialX = MapObject_GetInitialX(localObject); + savedObject->initialHeight = MapObject_GetInitialHeight(localObject); + savedObject->initialY = MapObject_GetInitialY(localObject); + savedObject->currentX = MapObject_GetCurrentX(localObject); + savedObject->currentHeight = MapObject_GetCurrentHeight(localObject); + savedObject->currentY = MapObject_GetCurrentY(localObject); + + VecFx32 coords; + sub_02059E60(savedObject->currentX, savedObject->currentY, &coords); //some kind of x y vec copy with convertion between int and fx32 + coords.y = MapObject_GetPosVecYCoord(localObject); + + if (!sub_02059EC8(fieldSystem, &coords, MapObject_CheckFlag29(localObject))) { + savedObject->vecY = MapObject_GetPosVecYCoord(localObject); + } else { + savedObject->vecY = coords.y; + } + + memcpy(savedObject->unk30, sub_020585B0(localObject), 16); + memcpy(savedObject->unk40, sub_020585D8(localObject), 16); +} + +static void LocalMapObject_InitFromSavedMapObject(LocalMapObject *localObject, SavedMapObject *savedObject) { + MapObject_SetFlagsWord(localObject, savedObject->flags); + MapObject_SetFlags2Word(localObject, savedObject->flags2); + MapObject_SetID(localObject, savedObject->objId); + sub_0205844C(localObject, savedObject->unk10); + MapObject_SetSpriteID(localObject, savedObject->spriteId); + MapObject_SetMovement(localObject, savedObject->movement); + MapObject_SetType(localObject, savedObject->type); + MapObject_SetFlagID(localObject, savedObject->flagId); + MapObject_SetScript(localObject, savedObject->script); + MapObject_SetInitialFacingDirection(localObject, savedObject->initialFacing); + MapObject_SetFacingDirectionDirect(localObject, savedObject->currentFacing); + MapObject_SetNextFacingDirection(localObject, savedObject->nextFacing); + MapObject_SetParam(localObject, savedObject->param[0], 0); + MapObject_SetParam(localObject, savedObject->param[1], 1); + MapObject_SetParam(localObject, savedObject->param[2], 2); + MapObject_SetXRange(localObject, savedObject->xRange); + MapObject_SetYRange(localObject, savedObject->yRange); + MapObject_SetInitialX(localObject, savedObject->initialX); + MapObject_SetInitialHeight(localObject, savedObject->initialHeight); + MapObject_SetInitialY(localObject, savedObject->initialY); + MapObject_SetCurrentX(localObject, savedObject->currentX); + MapObject_SetCurrentHeight(localObject, savedObject->currentHeight); + MapObject_SetCurrentY(localObject, savedObject->currentY); + + VecFx32 coords = {}; + coords.y = savedObject->vecY; + MapObject_SetPositionVec(localObject, &coords); + + memcpy(sub_020585B0(localObject), savedObject->unk30, 16); + memcpy(sub_020585D8(localObject), savedObject->unk40, 16); +} + +static void sub_02057AEC(MapObjectManager *manager, LocalMapObject *object) { + sub_02057B34(object); + MapObject_ConvertXYToPositionVec(object); + MapObject_SetManager(object, manager); + sub_02057EE0(object); + MapObject_ClearHeldMovement(object); + sub_020581B4(object); + sub_02057CF0(manager, object); + sub_0205866C(object); + sub_0205836C(MapObjectManager_Get(manager)); +} + +static void sub_02057B34(LocalMapObject *object) { + MapObject_SetFlagsBits(object, (MapObjectFlagBits)(MAPOBJECTFLAG_UNK2 | MAPOBJECTFLAG_ACTIVE)); + MapObject_ClearFlagsBits(object, (MapObjectFlagBits)(MAPOBJECTFLAG_IGNORE_HEIGHTS | MAPOBJECTFLAG_UNK22 | + MAPOBJECTFLAG_UNK21 | MAPOBJECTFLAG_UNK19 | MAPOBJECTFLAG_UNK18 | + MAPOBJECTFLAG_UNK17 | MAPOBJECTFLAG_UNK16 | MAPOBJECTFLAG_UNK14 | + MAPOBJECTFLAG_VISIBLE | MAPOBJECTFLAG_MOVEMENT_PAUSED | MAPOBJECTFLAG_UNK3)); + sub_0205815C(object); +} + +static void MapObject_ConvertXYToPositionVec(LocalMapObject *object) { + VecFx32 position; + MapObject_GetPositionVec(object, &position); + + u32 x = MapObject_GetCurrentX(object); + position.x = x * FX32_CONST(16) + FX32_CONST(8); + MapObject_SetPreviousX(object, x); + + MapObject_SetPreviousHeight(object, MapObject_GetCurrentHeight(object)); + + u32 y = MapObject_GetCurrentY(object); + position.z = y * FX32_CONST(16) + FX32_CONST(8); + MapObject_SetPreviousY(object, y); + + MapObject_SetPositionVec(object, &position); +} + +void MapObject_CreateFromMultipleObjectEvents(MapObjectManager *manager, u32 mapNo, u32 objectEventCount, ObjectEvent *objectEvents) { + GF_ASSERT(objectEventCount != 0); + + ObjectEvent *objectEventsCopy = AllocFromHeapAtEnd(HEAP_ID_FIELD, objectEventCount * sizeof(ObjectEvent)); + GF_ASSERT(objectEventsCopy != NULL); + memcpy(objectEventsCopy, objectEvents, objectEventCount * sizeof(ObjectEvent)); + + MapObjectInitArgs *args = AllocFromHeapAtEnd(HEAP_ID_FIELD, sizeof(MapObjectInitArgs)); + GF_ASSERT(args != NULL); + args->mapNo = mapNo; + args->objectEventCount = objectEventCount; + args->index = 0; + args->manager = manager; + args->objectEvents = objectEventsCopy; + + MapObject_CreateFromInitArgs(args); +} + +static void MapObject_CreateFromInitArgs(MapObjectInitArgs *args) { + FieldSystem *fieldSystem = MapObjectManager_GetFieldSystemPtr(args->manager); + ObjectEvent *objectEvents = args->objectEvents; + + do { //must be do while due to initial check + GF_ASSERT((ObjectEvent_ScriptIDIsUnset(objectEvents) != TRUE && FieldSystem_FlagCheck(fieldSystem, objectEvents->flag) != FALSE) || + MapObject_CreateFromObjectEvent(args->manager, objectEvents, args->mapNo) != NULL); //this is dumb, but is required to match + + objectEvents++; + args->index++; + } while (args->index < args->objectEventCount); + + FreeToHeapExplicit(HEAP_ID_FIELD, args->objectEvents); + FreeToHeapExplicit(HEAP_ID_FIELD, args); +} + +static LocalMapObject *MapObjectManager_GetFirstInactiveObject(MapObjectManager *manager) { + s32 i = 0; + s32 count = MapObjectManager_GetObjectCount(manager); + LocalMapObject *objects = MapObjectManager_GetObjects(manager); + + do { + if (MapObject_GetFlagsBits(objects, MAPOBJECTFLAG_ACTIVE) == 0) { + return objects; + } + + i++; + objects++; + } while (i < count); + + return NULL; +} + +static LocalMapObject *sub_02057C98(MapObjectManager *manager, u32 id, u32 mapNo) { //find corresponding LMO with ID and mapNo? + s32 index = 0; + LocalMapObject *object; + + while (MapObjectManager_GetNextObjectWithFlagFromIndex(manager, &object, &index, MAPOBJECTFLAG_ACTIVE) == TRUE) { + if (MapObject_CheckFlag25(object) == TRUE && MapObject_GetID(object) == id && sub_02058750(object) == mapNo) { + return object; + } + } + + return NULL; +} + +static void sub_02057CF0(MapObjectManager *manager, LocalMapObject *object) { + u32 priority = MapObjectManager_GetPriority(manager); + u32 movement = MapObject_GetMovement(object); + if (movement == 48 || movement == 50) { + priority += 2; + } + + SysTask *task = SysTask_CreateOnMainQueue((SysTaskFunc)sub_0205832C, object, priority); + GF_ASSERT(task != NULL); + + sub_02058554(object, task); +} + +static void MapObject_InitFromObjectEvent(LocalMapObject *object, ObjectEvent *objectEvent, FieldSystem *fieldSystem) { + MapObject_SetID(object, ObjectEvent_GetID(objectEvent)); + MapObject_SetSpriteID(object, FieldSystem_ResolveObjectSpriteID(fieldSystem, ObjectEvent_GetSpriteID(objectEvent))); + MapObject_SetMovement(object, ObjectEvent_GetMovement(objectEvent)); + MapObject_SetType(object, ObjectEvent_GetType(objectEvent)); + MapObject_SetFlagID(object, ObjectEvent_GetFlagID(objectEvent)); + MapObject_SetScript(object, ObjectEvent_GetScript(objectEvent)); + MapObject_SetInitialFacingDirection(object, ObjectEvent_GetInitialFacingDirection(objectEvent)); + MapObject_SetParam(object, ObjectEvent_GetParam(objectEvent, 0), 0); + MapObject_SetParam(object, ObjectEvent_GetParam(objectEvent, 1), 1); + MapObject_SetParam(object, ObjectEvent_GetParam(objectEvent, 2), 2); + MapObject_SetXRange(object, ObjectEvent_GetXRange(objectEvent)); + MapObject_SetYRange(object, ObjectEvent_GetYRange(objectEvent)); + + MapObject_SetPositionVecFromObjectEvent(object, objectEvent); +} + +static void MapObject_SetPositionVecFromObjectEvent(LocalMapObject *object, ObjectEvent *objectEvent) { + VecFx32 coords; + + u16 x = ObjectEvent_GetXCoord(objectEvent); + coords.x = x * FX32_CONST(16) + FX32_CONST(8); + MapObject_SetInitialX(object, x); + MapObject_SetPreviousX(object, x); + MapObject_SetCurrentX(object, x); + + coords.y = ObjectEvent_GetHeight(objectEvent); + u32 height = (coords.y >> 3) / FX32_ONE; + MapObject_SetInitialHeight(object, height); + MapObject_SetPreviousHeight(object, height); + MapObject_SetCurrentHeight(object, height); + + u16 y = ObjectEvent_GetYCoord(objectEvent); + coords.z = y * FX32_CONST(16) + FX32_CONST(8); + MapObject_SetInitialY(object, y); + MapObject_SetPreviousY(object, y); + MapObject_SetCurrentY(object, y); + + MapObject_SetPositionVec(object, &coords); +} + +static void sub_02057E90(LocalMapObject *object, MapObjectManager *manager) { //setup facing and flags? also sets manager? + MapObject_SetFlagsBits(object, (MapObjectFlagBits)(MAPOBJECTFLAG_UNK12 | MAPOBJECTFLAG_UNK11 | MAPOBJECTFLAG_ACTIVE)); + if (MapObject_ScriptIdIsFFFF(object) == TRUE) { + MapObject_SetFlag25(object, TRUE); + } + MapObject_SetManager(object, manager); + MapObject_SetFacingDirectionDirect(object, MapObject_GetInitialFacingDirection(object)); + MapObject_SetNextFacingDirection(object, MapObject_GetInitialFacingDirection(object)); + MapObject_ClearHeldMovement(object); +} + +/*static*/ void sub_02057EE0(LocalMapObject *object) { + UnkLMOCallbackStruct *unk = sub_02058D14(MapObject_GetMovement(object)); + sub_02058630(object, sub_02058D2C(unk)); + sub_02058644(object, sub_02058D30(unk)); + sub_02058658(object, sub_02058D34(unk)); +} + +extern const UnkLMOCallbackStruct2 ov05_021F9080; + +/*static*/ void sub_02057F18(LocalMapObject *object) { + u32 spriteId = MapObject_GetSpriteID(object); + UnkLMOCallbackStruct2 *unk = (spriteId == SPRITE_CAMERA_FOCUS) ? (UnkLMOCallbackStruct2 *)&ov05_021F9080 : sub_02058D4C(spriteId); + + sub_02058684(object, sub_02058D38(unk)); + sub_02058698(object, sub_02058D3C(unk)); + sub_020586AC(object, sub_02058D40(unk)); + sub_020586C0(object, sub_02058D44(unk)); + sub_020586D4(object, sub_02058D48(unk)); +} + +static void MapObject_Clear(LocalMapObject *object) { + memset(object, 0, sizeof(LocalMapObject)); +} + +static u32 sub_02057F90(LocalMapObject *object, u32 flagId, u32 objectEventCount, ObjectEvent *objectEvents) { + for (; objectEventCount != 0; objectEventCount--, objectEvents++) { + if (ObjectEvent_GetID(objectEvents) != MapObject_GetID(object)) { + continue; + } + + if (ObjectEvent_ScriptIDIsUnset(objectEvents) == TRUE) { + u16 flagIdUnset = ObjectEvent_GetFlagID_AssertScriptIDIsUnset(objectEvents); + if (MapObject_CheckFlag25(object) == TRUE) { //this and the one below cannot be combined as it doesn't match + if (sub_02058750(object) == flagIdUnset) { + return 1; + } + } else if (sub_02058450(object) == flagIdUnset) { + return 2; + } + } else if (MapObject_CheckFlag25(object) == TRUE && sub_02058750(object) == flagId) { + return 2; + } + } + + return 0; +} + +//TODO: this also gets based on the second param, which is currently labelled as flagId, but is not +//see the note attached to sub_02058450 +static LocalMapObject *MapObjectManager_GetFirstObjectWithID(MapObjectManager *manager, u32 objectId, u32 flagId) { + s32 index = 0; + LocalMapObject *object; + + while (MapObjectManager_GetNextObjectWithFlagFromIndex(manager, &object, &index, MAPOBJECTFLAG_ACTIVE) == TRUE) { + if (MapObject_GetID(object) == objectId && sub_02058450(object) == flagId) { + return object; + } + } + + return NULL; +} + +LocalMapObject *MapObjectManager_GetFirstActiveObjectByID(MapObjectManager *manager, u32 id) { + GF_ASSERT(manager != NULL); + + s32 count = MapObjectManager_GetObjectCount(manager); + LocalMapObject *objects = (LocalMapObject *)MapObjectManager_GetConstObjects(manager); + do { + if (MapObject_TestFlagsBits(objects, MAPOBJECTFLAG_ACTIVE) == TRUE && + MapObject_CheckFlag25(objects) == FALSE && MapObject_GetID(objects) == id) + { + return objects; + } + + count--; + objects++; + } while (count > 0); + + return NULL; +} + +LocalMapObject *MapObjectManager_GetFirstActiveObjectWithMovement(MapObjectManager *manager, u32 movement) { + s32 count = MapObjectManager_GetObjectCount(manager); + LocalMapObject *objects = (LocalMapObject *)MapObjectManager_GetConstObjects(manager); + + do { + if (MapObject_TestFlagsBits(objects, MAPOBJECTFLAG_ACTIVE) == TRUE && MapObject_GetMovement(objects) == movement) { + return objects; + } + + count--; + objects++; + } while (count > 0); + + return NULL; +} + +BOOL MapObjectManager_GetNextObjectWithFlagFromIndex(MapObjectManager *manager, LocalMapObject **objectDest, s32 *index, MapObjectFlagBits flag) { + s32 count = MapObjectManager_GetObjectCount(manager); + if (*index >= count) { + return FALSE; + } + + LocalMapObject *objects = (LocalMapObject *)MapObjectManager_GetConstObjects(manager); + LocalMapObject *object = objects + *index; + do { + (*index)++; + + if (flag == (MapObjectFlagBits)MapObject_GetFlagsBits(object, flag)) { + *objectDest = object; + return TRUE; + } + + object++; + } while (*index < count); + + return FALSE; +} + +static void sub_02058148(LocalMapObject *object) { + MapObject_SetFlagsBits(object, MAPOBJECTFLAG_UNK2); + sub_0205815C(object); +} + +/*static*/ void sub_0205815C(LocalMapObject *object) { + MapObject_ClearFlagsBits(object, (MapObjectFlagBits)(MAPOBJECTFLAG_UNK26 | MAPOBJECTFLAG_UNK24 | + MAPOBJECTFLAG_UNK20 | MAPOBJECTFLAG_UNK15)); +} + +static void MapObject_NoOp(LocalMapObject *object) { + // NoOp +} + +static u32 FieldSystem_ResolveObjectSpriteID(FieldSystem *fieldSystem, s32 spriteId) { + //BUG: index out of range, should be < not <= + //TODO: check these with sprite constants, these should be variable sprites but this starts at 101 not 100 + if (spriteId >= 101 && spriteId <= 117) { + spriteId = FieldSystem_VarGetObjectEventGraphicsId(fieldSystem, (u16)(spriteId - 101)); + } + return spriteId; +} + +/*static*/ void sub_0205818C(LocalMapObject *object) { + if (MapObject_GetFlagsBits(object, MAPOBJECTFLAG_UNK12) != 0) { + sub_02059D1C(object); + } +} + +static void sub_020581A4(LocalMapObject *object) { + sub_02057EE0(object); + sub_02058EE8(object); +} diff --git a/arm9/src/palette.c b/arm9/src/palette.c index dcef6fe36..605e31353 100644 --- a/arm9/src/palette.c +++ b/arm9/src/palette.c @@ -209,9 +209,7 @@ u32 sub_02003210(struct PaletteData *paletteData, paletteData->unk118_0 = 1; paletteData->unk11c = 0; - sub_0200CA44((void (*)(u32, void *))sub_02003464, - (void *)paletteData, - (u32)(-2)); + SysTask_CreateOnMainQueue((SysTaskFunc)sub_02003464, (void *)paletteData, (u32)(-2)); } } @@ -291,7 +289,7 @@ void sub_020033A4(struct PaletteFadeControl *paletteFade, paletteFade->yDec = 1; } -void sub_02003464(u32 param0, struct PaletteData *param1) +void sub_02003464(SysTask *task, struct PaletteData *param1) { if (param1->unk11c == 1) { @@ -299,7 +297,7 @@ void sub_02003464(u32 param0, struct PaletteData *param1) param1->unk11a_0 = 0; param1->activeFadePalettes = 0; param1->unk11a_e = 0; - sub_0200CAB4((s32)param0); + sub_0200CAB4((s32)task); return; } @@ -312,7 +310,7 @@ void sub_02003464(u32 param0, struct PaletteData *param1) if (param1->activeFadePalettes == 0) { param1->unk11a_e = 0; - sub_0200CAB4((s32)param0); + sub_0200CAB4((s32)task); } } } diff --git a/arm9/src/render_window.c b/arm9/src/render_window.c index dd33026b7..a18e79048 100644 --- a/arm9/src/render_window.c +++ b/arm9/src/render_window.c @@ -30,7 +30,7 @@ extern u32 sub_0202022C(u32 param0); extern void sub_020201E4(u32 param0, u32 param1); extern void sub_0201FDEC(u32 param0); extern void ov05_021D99F8(struct UnkStruct_0200CABC_2 *param0); -extern void *sub_0201B6C8(BOOL); +extern void *sub_0201B6C8(SysTask *sysTask); extern void ov05_021D959C( struct UnkStruct_0200CABC_2 *param0, void *param1, u32 param2, HeapID heapId); extern void ov05_021D967C(struct UnkStruct_0200CABC_2 *param0, @@ -694,7 +694,7 @@ PokepicManager *DrawPokemonPicFromMon(struct BgConfig *bg_config, u8 bg_id, u8 p return &r4->pokepicManager; } -void sub_0200DCF8(u32 param0, void *param1) +void sub_0200DCF8(SysTask *task, void *param1) { struct UnkStruct_0200CABC_2 *unk = (struct UnkStruct_0200CABC_2 *)param1; switch (unk->pokepicManager.unk00) @@ -703,7 +703,7 @@ void sub_0200DCF8(u32 param0, void *param1) ClearFramed10x10Square(unk); sub_0200C3DC(unk->unk164); ov05_021D99F8(unk); - sub_0200621C((s32)param0); + sub_0200621C((s32)task); return; case 2: unk->pokepicManager.unk00 = 3; @@ -723,7 +723,7 @@ void sub_0200DCF8(u32 param0, void *param1) struct UnkStruct_0200CABC_2 *sub_0200DD70( struct BgConfig *bg_config, u8 bg_id, u8 param2, u8 param3, HeapID heapId) { - struct UnkStruct_0200CABC_2 *res = sub_0201B6C8(sub_020061E8(sub_0200DCF8, 0x170, 0, heapId)); + struct UnkStruct_0200CABC_2 *res = sub_0201B6C8(sub_020061E8((SysTaskFunc)sub_0200DCF8, 0x170, 0, heapId)); res->pokepicManager.unk00 = 0; res->bgConfig = bg_config; diff --git a/arm9/src/scrcmd.c b/arm9/src/scrcmd.c index 2f0f0fe4b..36c50f226 100644 --- a/arm9/src/scrcmd.c +++ b/arm9/src/scrcmd.c @@ -15,6 +15,7 @@ #include "gf_rtc.h" #include "hall_of_fame.h" #include "main.h" +#include "map_object.h" #include "math_util.h" #include "message_format.h" #include "msgdata.h" @@ -52,21 +53,21 @@ extern ScriptContext *CreateScriptContext(FieldSystem *fieldSystem, u16 id); extern u32 MapObject_GetID(LocalMapObject *lastInteracted); extern void FieldSystem_FlagSet(FieldSystem *fieldSystem, u16 flag); extern void FlagClear(FieldSystem *fieldSystem, u16 flag); -extern u8 FlagCheck(FieldSystem *fieldSystem, u16 flag); +extern u8 FieldSystem_FlagCheck(FieldSystem *fieldSystem, u16 flag); extern void TrainerFieldSystem_FlagSet(FieldSystem *fieldSystem, u16 flag); extern void TrainerFlagClear(FieldSystem *fieldSystem, u16 flag); -extern u8 TrainerFlagCheck(FieldSystem *fieldSystem, u16 flag); +extern u8 TrainerFieldSystem_FlagCheck(FieldSystem *fieldSystem, u16 flag); extern void ov05_ShowMessageInField(ScriptContext *ctx, MsgData *msgData, u16 id); extern void ov05_021E2BD0(ScriptContext *ctx, MsgData *msgData, u16 msgId, u32 param4, void *param5); extern void ov05_021E2C58(ScriptContext *ctx, u16 typ, u16 id, u16 word1, s16 word2, u8 param5); extern MessageFormat *ov06_02244210(SaveData *sav, u16 poke, u16 sex, u8 flag, u8 *unk); extern void ov05_021E2CBC(ScriptContext *ctx, MessageFormat *messageFormat, u8 param2, u32 param3); extern void ov05_021E2BB8(void *param0, ScriptContext *ctx); -extern u32 sub_02058488(LocalMapObject *lastInteracted); +extern u32 MapObject_GetType(LocalMapObject *lastInteracted); extern BOOL sub_02030F40(void); extern void sub_02055304(PlayerAvatar *playerAvatar, u32 param1); extern void sub_02039460(FieldSystem *arg); -extern u32 sub_02058510(LocalMapObject *event, u32 param1); +extern u32 MapObject_GetParam(LocalMapObject *event, u32 param1); extern void ov05_021E8128(u32 param0, u8 type, u16 map); extern void ov05_021E8130(u32 param0, u32 param1); extern void ov05_021E8158(FieldSystem *fieldSystem); @@ -87,10 +88,8 @@ extern void ov05_021E26CC(u32 param0, u8 param1); extern void ov05_021E2B80(u32 param0, u8 param1); extern void ov05_021E2B9C(u32 param0, u8 param1); extern u32 sub_0205AEA4(LocalMapObject *event, const void *ptr); -extern u32 sub_02058B2C(LocalMapObject *event); -extern u32 sub_02058B4C(LocalMapObject *event); -extern LocalMapObject *sub_020580B4(MapObjectManager *mapObjectManager, u32 param1); -extern LocalMapObject *GetMapObjectByID(MapObjectManager *mapObjectManager, u16 eventId); +extern u32 MapObject_GetCurrentX(LocalMapObject *event); +extern u32 MapObject_GetCurrentY(LocalMapObject *event); extern BOOL sub_0205AEF0(u32 param0); extern void sub_0205AEFC(u32 param0); extern void MapObjectManager_PauseAllMovement(MapObjectManager *mapObjectManager); @@ -102,16 +101,12 @@ extern LocalMapObject *sub_0205E7C4(LocalMapObject *event); extern void sub_02058914(LocalMapObject *event); extern void MapObjectManager_UnpauseAllMovement(MapObjectManager *mapObjectManager); extern u32 sub_02034B64(FieldSystem *fieldSystem); -extern u32 sub_02034B6C(FieldSystem *fieldSystem); -extern u32 sub_020575D4(MapObjectManager *mapObjectManager, u16 eventVar, u32 param2, u32 mapId, u32 param4); -extern void sub_02057688(LocalMapObject *event); -extern LocalMapObject *sub_0205753C(MapObjectManager *mapObjectManager, u16 x, u16 y, u16 z, u32 param4, u32 param5, u32 mapId); +extern const ObjectEvent *sub_02034B6C(FieldSystem *fieldSystem); extern u32 sub_02059D1C(LocalMapObject *target); extern LocalMapObject *MapObject_SetVisible(LocalMapObject *target, BOOL visible); extern LocalMapObject *sub_020588B8(LocalMapObject *target, u32 param1); extern VecFx32 *sub_02058B7C(LocalMapObject *target); extern void ov05_021EF5E0(VecFx32 *target, u32 param1); -extern void sub_02057654(LocalMapObject *target); extern u32 PlayerAvatar_GetFacingDirection(PlayerAvatar *playerAvatar); extern u32 sub_02059E74(u32 direction); extern void ov05_021F1EC0(LocalMapObject *event, u32 param1); @@ -120,7 +115,7 @@ extern u16 GetPlayerYCoord(PlayerAvatar *playerAvatar); extern void sub_02058BB4(LocalMapObject *event, VecFx32 *param1); extern void sub_02058994(LocalMapObject *event, u8 value); extern void sub_02058E90(LocalMapObject *event, u16 movement); -extern u16 sub_02058480(LocalMapObject *event); +extern u16 MapObject_GetMovement(LocalMapObject *event); extern void sub_02058EB0(LocalMapObject *event, u32 param1); extern u16 sub_02029E0C(SealCase *sealCase); extern u16 SealCase_CountSealOccurrenceAnywhere(SealCase *sealCase, u16 sealId); @@ -380,7 +375,7 @@ extern u32 sub_02026CC4(SaveData *saveData); extern void sub_02025C30(u32 param0); extern void sub_02033E74(void); extern void sub_02033ED0(void); -extern void sub_02034E48(FieldSystem *fieldSystem); +extern void FieldSystem_SyncMapObjectsToSave(FieldSystem *fieldSystem); extern Location *LocalFieldData_GetSpecialSpawnWarpPtr(LocalFieldData *localFieldData); extern u16 GetTrainerCardLevel(FieldSystem *fieldSystem); extern SaveStatsPrinter *Field_SaveStatsPrinter_New(FieldSystem *fieldSystem, HeapID heapId, u32 param2); @@ -415,7 +410,7 @@ static BOOL sub_0203AD78(ScriptContext *ctx); static LocalMapObject *sub_0203B120(FieldSystem *fieldSystem, u16 eventId); static BOOL IsAllMovementFinished(ScriptContext *ctx); static void sub_0203B174(FieldSystem *fieldSystem, u32 param1, void *param2); -static void sub_0203B1A8(u32 param0, UnkStruct_0203B174 *param1); +static void sub_0203B1A8(SysTask *task, UnkStruct_0203B174 *param1); static BOOL sub_0203B218(ScriptContext *ctx); /*static*/ BOOL sub_0203BB90(ScriptContext *ctx); static BOOL sub_0203BBBC(ScriptContext *ctx); @@ -761,7 +756,7 @@ BOOL ScrCmd_CheckFlag(ScriptContext *ctx) //0020 { FieldSystem *fieldSystem = ctx->fieldSystem; u16 flag = ScriptReadHalfword(ctx); - ctx->comparisonResult = FlagCheck(fieldSystem, flag); + ctx->comparisonResult = FieldSystem_FlagCheck(fieldSystem, flag); return FALSE; } @@ -770,7 +765,7 @@ BOOL ScrCmd_CheckFlagVar(ScriptContext *ctx) //0021 FieldSystem *fieldSystem = ctx->fieldSystem; u16 *wk1 = ScriptGetVarPointer(ctx); u16 *wk2 = ScriptGetVarPointer(ctx); - *wk2 = FlagCheck(fieldSystem, *wk1); + *wk2 = FieldSystem_FlagCheck(fieldSystem, *wk1); return FALSE; } @@ -802,7 +797,7 @@ BOOL ScrCmd_CheckTrainerFlag(ScriptContext *ctx) //0025 { FieldSystem *fieldSystem = ctx->fieldSystem; u16 flag = ScriptGetVar(ctx); - ctx->comparisonResult = TrainerFlagCheck(fieldSystem, flag); + ctx->comparisonResult = TrainerFieldSystem_FlagCheck(fieldSystem, flag); return FALSE; } @@ -998,7 +993,7 @@ BOOL ScrCmd_Unk002E(ScriptContext *ctx) //002E - todo: MessageWait? MessageNoSki BOOL ScrCmd_Unk020C(ScriptContext *ctx) //020C { LocalMapObject **lastInteracted = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_LAST_INTERACTED); - u8 msg = (u8)sub_02058488(*lastInteracted); + u8 msg = (u8)MapObject_GetType(*lastInteracted); ov05_021E2BD0(ctx, ctx->msgData, msg, 1, NULL); SetupNativeScript(ctx, sub_0203A2F0); return TRUE; @@ -1240,7 +1235,7 @@ BOOL ScrCmd_CreateMessageBox(ScriptContext *ctx) //003C if (map == 0) { LocalMapObject **lastInteracted = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_LAST_INTERACTED); - map = (u16)sub_02058510(*lastInteracted, 0); + map = (u16)MapObject_GetParam(*lastInteracted, 0); } ov05_021E8128(fieldSystem->unk60, typ, map); @@ -1615,8 +1610,8 @@ BOOL ScrCmd_Unk02A1(ScriptContext *ctx) { //02A1 GF_ASSERT(event); u16 *unk4 = AllocFromHeap(HEAP_ID_4, 0x100); - u16 xVal = (u16)sub_02058B2C(event); - u16 yVal = (u16)sub_02058B4C(event); + u16 xVal = (u16)MapObject_GetCurrentX(event); + u16 yVal = (u16)MapObject_GetCurrentY(event); u32 pos = 0; @@ -1654,12 +1649,12 @@ BOOL ScrCmd_Unk02A1(ScriptContext *ctx) { //02A1 static LocalMapObject *sub_0203B120(FieldSystem *fieldSystem, u16 eventId) { if (eventId == 242) { - return sub_020580B4(fieldSystem->mapObjectManager, 48); + return MapObjectManager_GetFirstActiveObjectWithMovement(fieldSystem->mapObjectManager, 48); } else if (eventId == 241) { LocalMapObject **cameraTarget = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_CAMERA_TARGET); return *cameraTarget; } else { - return GetMapObjectByID(fieldSystem->mapObjectManager, eventId); + return MapObjectManager_GetFirstActiveObjectByID(fieldSystem->mapObjectManager, eventId); } } @@ -1683,12 +1678,11 @@ static void sub_0203B174(FieldSystem *fieldSystem, u32 param1, void *param2) { unkStruct->fieldSystem = fieldSystem; unkStruct->Unk04 = param1; unkStruct->Unk08 = param2; - unkStruct->Unk00 = sub_0200CA44((void (*)(u32, void *))sub_0203B1A8, unkStruct, 0); + unkStruct->sysTask = SysTask_CreateOnMainQueue((SysTaskFunc)sub_0203B1A8, unkStruct, 0); } -void sub_0203B1A8(u32 param0, UnkStruct_0203B174 *param1) { - //is it tho? -#pragma unused(param0) +void sub_0203B1A8(SysTask *task, UnkStruct_0203B174 *param1) { +#pragma unused(task) u8 *movementCounter = (u8 *)FieldSysGetAttrAddr(param1->fieldSystem, SCRIPTENV_ACTIVE_MOVEMENT_COUNTER); if (sub_0205AEF0(param1->Unk04) != TRUE) { @@ -1696,7 +1690,7 @@ void sub_0203B1A8(u32 param0, UnkStruct_0203B174 *param1) { } sub_0205AEFC(param1->Unk04); - sub_0200CAB4((s32)param1->Unk00); + sub_0200CAB4((s32)param1->sysTask); if (param1->Unk08 != NULL) { FreeToHeap(param1->Unk08); @@ -1740,7 +1734,7 @@ static BOOL sub_0203B218(ScriptContext *ctx) { } } if (UNK_021C5A0C[0] & 2) { - LocalMapObject *unk1 = sub_020580B4(fieldSystem->mapObjectManager, 48); + LocalMapObject *unk1 = MapObjectManager_GetFirstActiveObjectWithMovement(fieldSystem->mapObjectManager, 48); if (sub_02058854(unk1) == 0) { sub_02058908(unk1); UNK_021C5A0C[0] &= 0xfd; @@ -1765,7 +1759,7 @@ BOOL ScrCmd_LockAllEvents2(ScriptContext *ctx) { //02B4 FieldSystem *fieldSystem = ctx->fieldSystem; LocalMapObject **lastInteracted = FieldSysGetAttrAddr(fieldSystem, SCRIPTENV_LAST_INTERACTED); LocalMapObject *playerAvatar = PlayerAvatar_GetMapObject(fieldSystem->playerAvatar); - LocalMapObject *unk1 = sub_020580B4(fieldSystem->mapObjectManager, 48); + LocalMapObject *unk1 = MapObjectManager_GetFirstActiveObjectWithMovement(fieldSystem->mapObjectManager, 48); LocalMapObject *unk2 = sub_0205E7C4(*lastInteracted); MapObjectManager *mapObjectManager = fieldSystem->mapObjectManager; UNK_021C5A0C[0] = 0; @@ -1806,32 +1800,32 @@ BOOL ScrCmd_ReleaseAllEvents(ScriptContext *ctx) { //0061 BOOL ScrCmd_LockEvent(ScriptContext *ctx) { //0062 FieldSystem *fieldSystem = ctx->fieldSystem; u16 eventId = ScriptReadHalfword(ctx); - sub_02058908(GetMapObjectByID(fieldSystem->mapObjectManager, eventId)); + sub_02058908(MapObjectManager_GetFirstActiveObjectByID(fieldSystem->mapObjectManager, eventId)); return FALSE; } BOOL ScrCmd_ReleaseEvent(ScriptContext *ctx) { //0063 FieldSystem *fieldSystem = ctx->fieldSystem; u16 eventId = ScriptReadHalfword(ctx); - sub_02058914(GetMapObjectByID(fieldSystem->mapObjectManager, eventId)); + sub_02058914(MapObjectManager_GetFirstActiveObjectByID(fieldSystem->mapObjectManager, eventId)); return FALSE; } BOOL ScrCmd_AddEvent(ScriptContext *ctx) { //0064 FieldSystem *fieldSystem = ctx->fieldSystem; u16 eventId = ScriptGetVar(ctx); - u32 unk0 = sub_02034B64(fieldSystem); - u32 unk1 = sub_02034B6C(fieldSystem); - u32 res = sub_020575D4(fieldSystem->mapObjectManager, eventId, unk0, fieldSystem->location->mapId, unk1); + u32 eventCount = sub_02034B64(fieldSystem); + const ObjectEvent *objectEvents = sub_02034B6C(fieldSystem); + LocalMapObject *object = MapObject_CreateFromObjectEventWithId(fieldSystem->mapObjectManager, eventId, eventCount, fieldSystem->location->mapId, objectEvents); - GF_ASSERT(res); + GF_ASSERT(object); return FALSE; } BOOL ScrCmd_RemoveEvent(ScriptContext *ctx) { //0065 FieldSystem *fieldSystem = ctx->fieldSystem; u16 eventId = ScriptGetVar(ctx); - sub_02057688(GetMapObjectByID(fieldSystem->mapObjectManager, eventId)); + MapObject_Delete(MapObjectManager_GetFirstActiveObjectByID(fieldSystem->mapObjectManager, eventId)); return FALSE; } @@ -1839,7 +1833,7 @@ BOOL ScrCmd_LockCamera(ScriptContext *ctx) { //0066 u16 x = ScriptGetVar(ctx); u16 y = ScriptGetVar(ctx); LocalMapObject **targetPtr = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_CAMERA_TARGET); - *targetPtr = sub_0205753C(ctx->fieldSystem->mapObjectManager, x, y, 0, 0x2000, 0, ctx->fieldSystem->location->mapId); + *targetPtr = MapObject_Create(ctx->fieldSystem->mapObjectManager, x, y, 0, 0x2000, 0, ctx->fieldSystem->location->mapId); sub_02059D1C(*targetPtr); MapObject_SetVisible(*targetPtr, TRUE); sub_020588B8(*targetPtr, 0); @@ -1851,8 +1845,8 @@ BOOL ScrCmd_LockCamera(ScriptContext *ctx) { //0066 BOOL ScrCmd_ReleaseCamera(ScriptContext *ctx) { //0067 LocalMapObject **targetPtr = FieldSysGetAttrAddr(ctx->fieldSystem, SCRIPTENV_CAMERA_TARGET); - sub_02057654(*targetPtr); - VecFx32 *position = sub_02058B7C(GetMapObjectByID(ctx->fieldSystem->mapObjectManager, 0xff)); + MapObject_Remove(*targetPtr); + VecFx32 *position = sub_02058B7C(MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, 0xff)); ov05_021EF5E0(position, ctx->fieldSystem->unk24); Camera_SetFixedTarget(position, ctx->fieldSystem->camera); return FALSE; @@ -1886,13 +1880,13 @@ BOOL ScrCmd_GetPlayerPosition(ScriptContext *ctx) { //0069 BOOL ScrCmd_GetEventPosition(ScriptContext *ctx) { //006A FieldSystem *fieldSystem = ctx->fieldSystem; u16 eventId = ScriptGetVar(ctx); - LocalMapObject *event = GetMapObjectByID(fieldSystem->mapObjectManager, eventId); + LocalMapObject *event = MapObjectManager_GetFirstActiveObjectByID(fieldSystem->mapObjectManager, eventId); u16 *x = ScriptGetVarPointer(ctx); u16 *y = ScriptGetVarPointer(ctx); - *x = (u16)sub_02058B2C(event); - *y = (u16)sub_02058B4C(event); + *x = (u16)MapObject_GetCurrentX(event); + *y = (u16)MapObject_GetCurrentY(event); return FALSE; } @@ -1920,14 +1914,14 @@ BOOL ScrCmd_Unk006B(ScriptContext *ctx) { //006B - todo: CheckPersonPosition? BOOL ScrCmd_KeepEvent(ScriptContext *ctx) { //006C u16 eventId = ScriptGetVar(ctx); - LocalMapObject *event = GetMapObjectByID(ctx->fieldSystem->mapObjectManager, eventId); + LocalMapObject *event = MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, eventId); sub_02058994(event, ScriptReadByte(ctx)); return FALSE; } BOOL ScrCmd_SetEventMovement(ScriptContext *ctx) { //006D u16 eventId = ScriptGetVar(ctx); - LocalMapObject *event = GetMapObjectByID(ctx->fieldSystem->mapObjectManager, eventId); + LocalMapObject *event = MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, eventId); u16 movement = ScriptReadHalfword(ctx); sub_02058E90(event, movement); return FALSE; @@ -1938,15 +1932,15 @@ BOOL ScrCmd_GetEventMovement(ScriptContext *ctx) { //02AD *variable = 0; u16 eventId = ScriptGetVar(ctx); - LocalMapObject *event = GetMapObjectByID(ctx->fieldSystem->mapObjectManager, eventId); + LocalMapObject *event = MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, eventId); if (event != NULL) { - *variable = sub_02058480(event); + *variable = MapObject_GetMovement(event); } return FALSE; } BOOL ScrCmd_EventStopFollowing(ScriptContext *ctx) { //006E - LocalMapObject *event = sub_020580B4(ctx->fieldSystem->mapObjectManager, 0x30); + LocalMapObject *event = MapObjectManager_GetFirstActiveObjectWithMovement(ctx->fieldSystem->mapObjectManager, 0x30); sub_02058EB0(event, 0xFE); return FALSE; } @@ -3328,7 +3322,7 @@ BOOL ScrCmd_SetEventPosition(ScriptContext *ctx) { //0187 u16 z = ScriptGetVar(ctx); u16 y = ScriptGetVar(ctx); u16 direction = ScriptGetVar(ctx); - LocalMapObject *object = GetMapObjectByID(ctx->fieldSystem->mapObjectManager, eventId); + LocalMapObject *object = MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, eventId); sub_02058E28(object, x, z, y, direction); sub_02059D1C(object); return FALSE; @@ -3367,7 +3361,7 @@ BOOL ScrCmd_SetBgEventPosition(ScriptContext *ctx) { //018B BOOL ScrCmd_SetEventDirection(ScriptContext *ctx) { //018C u16 eventId = ScriptGetVar(ctx); u16 direction = ScriptGetVar(ctx); - LocalMapObject *localMapObject = GetMapObjectByID(ctx->fieldSystem->mapObjectManager, eventId); + LocalMapObject *localMapObject = MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, eventId); GF_ASSERT(localMapObject); ov05_021F1EC0(localMapObject, direction); return FALSE; @@ -3525,7 +3519,7 @@ BOOL ScrCmd_Unk003F(ScriptContext *ctx) { //003F BOOL ScrCmd_HideEvent(ScriptContext *ctx) { //01B1 FieldSystem *fieldSystem = ctx->fieldSystem; u16 eventId = ScriptGetVar(ctx); - LocalMapObject *localMapObject = GetMapObjectByID(fieldSystem->mapObjectManager, eventId); + LocalMapObject *localMapObject = MapObjectManager_GetFirstActiveObjectByID(fieldSystem->mapObjectManager, eventId); GF_ASSERT(localMapObject); MapObject_SetVisible(localMapObject, FALSE); return FALSE; @@ -3534,7 +3528,7 @@ BOOL ScrCmd_HideEvent(ScriptContext *ctx) { //01B1 BOOL ScrCmd_ShowEvent(ScriptContext *ctx) { //01B2 FieldSystem *fieldSystem = ctx->fieldSystem; u16 eventId = ScriptGetVar(ctx); - LocalMapObject *localMapObject = GetMapObjectByID(fieldSystem->mapObjectManager, eventId); + LocalMapObject *localMapObject = MapObjectManager_GetFirstActiveObjectByID(fieldSystem->mapObjectManager, eventId); GF_ASSERT(localMapObject); MapObject_SetVisible(localMapObject, TRUE); return FALSE; @@ -4343,7 +4337,7 @@ BOOL ScrCmd_ShakeEvent(ScriptContext *ctx) { //0269 u16 frames = ScriptGetVar(ctx); u16 x = ScriptGetVar(ctx); u16 y = ScriptGetVar(ctx); - LocalMapObject *mapObject = GetMapObjectByID(ctx->fieldSystem->mapObjectManager, eventId); + LocalMapObject *mapObject = MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, eventId); GF_ASSERT(mapObject != NULL); sub_02054F50(ctx->taskManager, mapObject, count, frames, x, y); return TRUE; @@ -4353,7 +4347,7 @@ BOOL ScrCmd_BlinkEvent(ScriptContext *ctx) { //026A u16 eventId = ScriptGetVar(ctx); u16 count = ScriptGetVar(ctx); u16 frames = ScriptGetVar(ctx); - LocalMapObject *mapObject = GetMapObjectByID(ctx->fieldSystem->mapObjectManager, eventId); + LocalMapObject *mapObject = MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, eventId); GF_ASSERT(mapObject != NULL); sub_0205502C(ctx->taskManager, mapObject, count, frames); return TRUE; @@ -4787,7 +4781,7 @@ BOOL ScrCmd_Unk02B1(ScriptContext *ctx) { //02B1 } BOOL ScrCmd_Unk02B2(ScriptContext *ctx) { //02B2 - sub_02034E48(ctx->fieldSystem); + FieldSystem_SyncMapObjectsToSave(ctx->fieldSystem); return FALSE; } @@ -4807,7 +4801,7 @@ BOOL ScrCmd_Unk02B5(ScriptContext *ctx) { //02B5 BOOL ScrCmd_Unk02B6(ScriptContext *ctx) { //02B6 u16 objectId = ScriptGetVar(ctx); u8 unk0 = ScriptReadByte(ctx); - LocalMapObject *object = GetMapObjectByID(ctx->fieldSystem->mapObjectManager, objectId); + LocalMapObject *object = MapObjectManager_GetFirstActiveObjectByID(ctx->fieldSystem->mapObjectManager, objectId); GF_ASSERT(object != NULL); sub_020588B8(object, unk0); return FALSE; diff --git a/arm9/src/unk_020051F4.c b/arm9/src/unk_020051F4.c index 58e2ebd92..61b565a3c 100644 --- a/arm9/src/unk_020051F4.c +++ b/arm9/src/unk_020051F4.c @@ -568,14 +568,14 @@ void sub_02005AE0(u32 param0, HeapID heapId) ((u8 *)ptr)[7] = 0; ptr[0] = param0; - u32 r0 = (u32)sub_0200CA44((void (*)(u32, void *))sub_02005B2C, (void *)ptr, 0); + u32 r0 = (u32)SysTask_CreateOnMainQueue((SysTaskFunc)sub_02005B2C, (void *)ptr, 0); //TODO: fix this func ptr[1] = r0; *r6 = r0; } -void sub_02005B2C(u32 param0, s32 *param1) +void sub_02005B2C(SysTask *task, s32 *param1) { -#pragma unused(param0) +#pragma unused(task) u8 *r6 = sub_02003D38(15); u8 *r4 = sub_02003D38(16); diff --git a/arm9/src/unk_020061E8.c b/arm9/src/unk_020061E8.c index 7672a7130..8eb326315 100644 --- a/arm9/src/unk_020061E8.c +++ b/arm9/src/unk_020061E8.c @@ -5,7 +5,7 @@ extern struct TextPrinter *sub_0201B6C8(void); -BOOL sub_020061E8(void (*r0)(u32, void *), u32 r1, u32 r2, HeapID heapId) +SysTask *sub_020061E8(SysTaskFunc func, u32 r1, u32 r2, HeapID heapId) { void * r4; if(r1 != 0) @@ -13,7 +13,7 @@ BOOL sub_020061E8(void (*r0)(u32, void *), u32 r1, u32 r2, HeapID heapId) r4 = AllocFromHeap(heapId, r1); if(r4 == 0) { - return FALSE; + return NULL; } memset(r4, 0, r1); } @@ -21,7 +21,7 @@ BOOL sub_020061E8(void (*r0)(u32, void *), u32 r1, u32 r2, HeapID heapId) { r4 = NULL; } - return sub_0200CA44(r0, r4, r2); + return SysTask_CreateOnMainQueue(func, r4, r2); } void sub_0200621C(s32 r4) diff --git a/arm9/src/unk_0200CA44.c b/arm9/src/unk_0200CA44.c index d55749c41..221292d40 100644 --- a/arm9/src/unk_0200CA44.c +++ b/arm9/src/unk_0200CA44.c @@ -2,30 +2,30 @@ #include "main.h" #include "unk_0200CA44.h" -extern BOOL sub_0201B60C(void *, void (*)(u32, void *), void *, u32); +extern SysTask *sub_0201B60C(void *queue, SysTaskFunc func, void *data, u32 priority); extern void sub_0201B6A0(s32); -BOOL sub_0200CA44(void (*r0)(u32, void *), void * r1, u32 r2) +SysTask *SysTask_CreateOnMainQueue(SysTaskFunc func, void *data, u32 priority) { - return sub_0201B60C(gSystem.unk18, r0, r1, r2); + return sub_0201B60C(gSystem.unk18, func, data, priority); } BOOL sub_0200CA60(void (*r0)(u32, void *), void * r1, u32 r2) { - return sub_0201B60C(gSystem.unk1C, r0, r1, r2); + return (BOOL)sub_0201B60C(gSystem.unk1C, (SysTaskFunc)r0, r1, r2); //TODO: this is wrong } BOOL sub_0200CA7C(void (*r0)(u32, void *), void * r1, u32 r2) { - return sub_0201B60C(gSystem.unk24, r0, r1, r2); + return (BOOL)sub_0201B60C(gSystem.unk24, (SysTaskFunc)r0, r1, r2); } BOOL sub_0200CA98(void (*r0)(u32, void *), void * r1, u32 r2) { - return sub_0201B60C(gSystem.unk20, r0, r1, r2); + return (BOOL)sub_0201B60C(gSystem.unk20, (SysTaskFunc)r0, r1, r2); } -void sub_0200CAB4(s32 unk1) //bool? +void sub_0200CAB4(s32 unk1) //todo: SysTask { sub_0201B6A0(unk1); } diff --git a/include/constants/sprites.h b/include/constants/sprites.h new file mode 100644 index 000000000..b534d9745 --- /dev/null +++ b/include/constants/sprites.h @@ -0,0 +1,6 @@ +#ifndef POKEDIAMOND_CONSTANTS_SPRITES_H +#define POKEDIAMOND_CONSTANTS_SPRITES_H + +#define SPRITE_CAMERA_FOCUS 8192 + +#endif //POKEDIAMOND_CONSTANTS_SPRITES_H \ No newline at end of file diff --git a/include/field_system.h b/include/field_system.h index 60304057e..7a034da7c 100644 --- a/include/field_system.h +++ b/include/field_system.h @@ -21,8 +21,8 @@ typedef struct UnkFieldStruct04 { u32 unk0C; } UnkFieldStruct04; -typedef struct MapObjectManager { - +typedef struct MapObjectManager { //must be in this func, cause otheriwse build will fail + u8 padding[0x12C]; } MapObjectManager; //todo: fill out typedef struct UnkStruct_020464D4 diff --git a/include/map_object.h b/include/map_object.h new file mode 100644 index 000000000..dbbd4ae61 --- /dev/null +++ b/include/map_object.h @@ -0,0 +1,131 @@ +#ifndef POKEDIAMOND_MAP_OBJECT_H +#define POKEDIAMOND_MAP_OBJECT_H + +#include "global.h" +#include "field_system.h" +#include "heap.h" + +typedef struct SavedMapObject { + u32 flags; + u32 flags2; + u8 objId; + u8 movement; + s8 xRange; + s8 yRange; + s8 initialFacing; + s8 currentFacing; + s8 nextFacing; + u16 unk10; + u16 spriteId; + u16 type; + u16 flagId; + u16 script; + s16 param[3]; + s16 initialX; + s16 initialHeight; + s16 initialY; + s16 currentX; + s16 currentHeight; + s16 currentY; + fx32 vecY; + u8 unk30[16]; + u8 unk40[16]; +} SavedMapObject; + +typedef struct LocalMapObject { + u8 padding[0x128]; //todo verify size +} LocalMapObject; + +typedef struct ObjectEvent +{ + u8 padding[0x8]; + u16 flag; + u8 padding2[0x16]; + //todo fill out + //todo this should be in map_events_internal.h +} ObjectEvent; + +typedef void (*LocalMapObject_UnkCallback)(LocalMapObject* object); + +typedef enum MapObjectFlagBits { + MAPOBJECTFLAG_ACTIVE = (1 << 0), + MAPOBJECTFLAG_SINGLE_MOVEMENT = (1 << 1), + MAPOBJECTFLAG_UNK2 = (1 << 2), + MAPOBJECTFLAG_UNK3 = (1 << 3), + MAPOBJECTFLAG_UNK4 = (1 << 4), + MAPOBJECTFLAG_UNK5 = (1 << 5), + MAPOBJECTFLAG_MOVEMENT_PAUSED = (1 << 6), + MAPOBJECTFLAG_UNK7 = (1 << 7), + MAPOBJECTFLAG_UNK8 = (1 << 8), + MAPOBJECTFLAG_VISIBLE = (1 << 9), + MAPOBJECTFLAG_UNK10 = (1 << 10), + MAPOBJECTFLAG_UNK11 = (1 << 11), + MAPOBJECTFLAG_UNK12 = (1 << 12), + MAPOBJECTFLAG_UNK13 = (1 << 13), + MAPOBJECTFLAG_UNK14 = (1 << 14), + MAPOBJECTFLAG_UNK15 = (1 << 15), + MAPOBJECTFLAG_UNK16 = (1 << 16), + MAPOBJECTFLAG_UNK17 = (1 << 17), + MAPOBJECTFLAG_UNK18 = (1 << 18), + MAPOBJECTFLAG_UNK19 = (1 << 19), + MAPOBJECTFLAG_UNK20 = (1 << 20), + MAPOBJECTFLAG_UNK21 = (1 << 21), + MAPOBJECTFLAG_UNK22 = (1 << 22), + MAPOBJECTFLAG_IGNORE_HEIGHTS = (1 << 23), + MAPOBJECTFLAG_UNK24 = (1 << 24), + MAPOBJECTFLAG_UNK25 = (1 << 25), + MAPOBJECTFLAG_UNK26 = (1 << 26), + MAPOBJECTFLAG_UNK27 = (1 << 27), + MAPOBJECTFLAG_UNK28 = (1 << 28), + MAPOBJECTFLAG_UNK29 = (1 << 29), + MAPOBJECTFLAG_UNK30 = (1 << 30), + MAPOBJECTFLAG_UNK31 = (1 << 31), +} MapObjectFlagBits; + +#define MAP_OBJECT_GFX_ID_INVALID 0xFFFF + +typedef struct MapObjectInitArgs { + u32 mapNo; + int objectEventCount; + int index; + MapObjectManager *manager; + ObjectEvent *objectEvents; +} MapObjectInitArgs; + +typedef struct UnkLMOCallbackStruct { + u32 unk0; + LocalMapObject_UnkCallback unk4; + LocalMapObject_UnkCallback unk8; + LocalMapObject_UnkCallback unkC; + LocalMapObject_UnkCallback unk10; +} UnkLMOCallbackStruct; + +typedef struct UnkLMOCallbackStruct2 { + LocalMapObject_UnkCallback unk0; + LocalMapObject_UnkCallback unk4; + LocalMapObject_UnkCallback unk8; + LocalMapObject_UnkCallback unkC; + LocalMapObject_UnkCallback unk10; +} UnkLMOCallbackStruct2; + +MapObjectManager *MapObjectManager_Init(FieldSystem *fieldSystem, u32 objectCount, u32 priority); +void MapObjectManager_Delete(MapObjectManager *manager); +void sub_020573C8(MapObjectManager *manager, u32 unused, u32 flagId, u32 objectCount, ObjectEvent *objectEvents); +LocalMapObject *MapObject_Create(MapObjectManager *manager, u32 x, u32 y, u32 direction, u32 sprite, u32 movement, u32 mapNo); +LocalMapObject *MapObject_CreateFromObjectEventWithId(MapObjectManager *manager, u16 id, u32 objectEventCount, u32 mapNo, const ObjectEvent *events); +void sub_02057614(LocalMapObject *object, u32 sprite); +void sub_02057634(LocalMapObject *object, u32 sprite); +void MapObject_Remove(LocalMapObject *object); +void MapObject_Delete(LocalMapObject *object); +void sub_020576A8(LocalMapObject *object); +void MapObjectManager_RemoveAllActiveObjects(MapObjectManager *manager); +void sub_02057750(MapObjectManager *manager); +void sub_020577A8(MapObjectManager *manager); +void FieldSystem_SyncMapObjectsToSaveEx(FieldSystem *fieldSystem, MapObjectManager *manager, SavedMapObject *savedObjects, s32 count); +void MapObjectManager_RestoreFromSave(MapObjectManager *manager, SavedMapObject *savedObjects, u32 objectCount); +void MapObject_CreateFromMultipleObjectEvents(MapObjectManager *manager, u32 mapNo, u32 objectEventCount, ObjectEvent *objectEvents); +LocalMapObject *MapObjectManager_GetFirstActiveObjectByID(MapObjectManager *manager, u32 id); +LocalMapObject *MapObjectManager_GetFirstActiveObjectWithMovement(MapObjectManager *manager, u32 movement); +BOOL MapObjectManager_GetNextObjectWithFlagFromIndex(MapObjectManager *manager, LocalMapObject **objectDest, s32 *index, MapObjectFlagBits flag); + +#endif //POKEDIAMOND_MAP_OBJECT_H diff --git a/include/nitro/FX_types.h b/include/nitro/FX_types.h index 84edc191d..d2fa39c1e 100644 --- a/include/nitro/FX_types.h +++ b/include/nitro/FX_types.h @@ -62,6 +62,7 @@ typedef s64 fx64c; #define FX_F32_TO_FX16(x) ((fx16)(((x) > 0) ? \ ((x) * (1 << FX16_INT_SHIFT) + 0.5f ) : \ ((x) * (1 << FX16_INT_SHIFT) - 0.5f ))) +#define FX_FX32_TO_F32(x) ((f32)((x) / (f32)(1 << FX32_INT_SHIFT))) #define FX_F32_TO_FX32(x) ((fx32)(((x) > 0) ? \ ((x) * (1 << FX32_INT_SHIFT) + 0.5f ) : \ ((x) * (1 << FX32_INT_SHIFT) - 0.5f ))) diff --git a/include/palette.h b/include/palette.h index 79385f9e2..cfb380045 100644 --- a/include/palette.h +++ b/include/palette.h @@ -3,6 +3,7 @@ #include "global.h" #include "filesystem.h" +#include "unk_0200CA44.h" struct PlttData { @@ -100,7 +101,7 @@ void sub_020033A4(struct PaletteFadeControl *paletteFade, u8 startY, u8 targetY, u16 color); -void sub_02003464(u32 param0, struct PaletteData *param1); +void sub_02003464(SysTask *task, struct PaletteData *param1); void sub_02003500(struct PaletteData *param0); void sub_02003520(struct PaletteData *param0); void sub_02003540(struct PaletteData *paletteData, u8 index, u32 param2); diff --git a/include/render_window.h b/include/render_window.h index 3fc78883f..9784da04d 100644 --- a/include/render_window.h +++ b/include/render_window.h @@ -6,6 +6,7 @@ #include "heap.h" #include "pokemon.h" #include "unk_02008DEC.h" +#include "unk_0200CA44.h" typedef struct PokepicManager { u8 unk00; @@ -105,7 +106,7 @@ void sub_0200DBFC(WaitingIcon *waitingIcon); void sub_0200DC24(WaitingIcon *waitingIcon); PokepicManager *DrawPokemonPicFromSpecies(struct BgConfig *bg_config, u8 bg_id, u8 param2, u8 param3, u8 param4, u16 numTiles, u16 species, u8 gender, HeapID heapId); PokepicManager *DrawPokemonPicFromMon(struct BgConfig *bg_config, u8 bg_id, u8 param2, u8 param3, u8 param4, u16 numTiles, struct Pokemon *mon, HeapID heapId); -void sub_0200DCF8(u32 param0, void *param1); +void sub_0200DCF8(SysTask *task, void *param1); struct UnkStruct_0200CABC_2 *sub_0200DD70(struct BgConfig *bg_config, u8 bg_id, u8 param2, u8 param3, HeapID heapId); void sub_0200DDAC(struct UnkStruct_0200CABC_2 *param0, HeapID heapId); void sub_0200DDD8(struct UnkStruct_0200CABC_2 *param0); diff --git a/include/scrcmd.h b/include/scrcmd.h index f7123327c..9683119f9 100644 --- a/include/scrcmd.h +++ b/include/scrcmd.h @@ -3,6 +3,7 @@ #include "global.h" #include "script.h" +#include "unk_0200CA44.h" extern u16 FieldSystem_VarGet(FieldSystem *fieldSystem, u16); extern u16* GetVarPointer(FieldSystem *fieldSystem, u16); @@ -27,7 +28,7 @@ typedef struct UnkStruct_0203A288 { typedef struct UnkStruct_0203B174 { - BOOL Unk00; + SysTask *sysTask; u32 Unk04; void *Unk08; struct FieldSystem *fieldSystem; diff --git a/include/script.h b/include/script.h index b1a644376..c22665e8f 100644 --- a/include/script.h +++ b/include/script.h @@ -12,16 +12,13 @@ #include "save.h" #include "task.h" #include "field_system.h" +#include "map_object.h" struct ScriptContext; typedef u8 (*ScrCmdFunc)(struct ScriptContext *); typedef u8 Script[]; -typedef struct LocalMapObject { //todo move to local_map_object.c - u8 padding[0x12C]; //todo verify size -} LocalMapObject; - typedef struct PartyMenuAppData PartyMenuAppData; //todo move to own file enum PCBoxOperation { diff --git a/include/unk_020051F4.h b/include/unk_020051F4.h index 36dfd8ebe..e5cb21d9f 100644 --- a/include/unk_020051F4.h +++ b/include/unk_020051F4.h @@ -3,6 +3,7 @@ #include "global.h" #include "heap.h" +#include "unk_0200CA44.h" u32 sub_020051F4(u16 param0); u32 sub_0200521C(u16 param0); @@ -32,7 +33,7 @@ BOOL sub_02005670(); u32 sub_020056AC(u32 param0, u16 param1, s32 param2, s32 param3, HeapID heapId); void sub_02005AC8(u32 param0, int playerNo, s32 param2); void sub_02005AE0(u32 param0, HeapID heapId); -void sub_02005B2C(u32 param0, s32 *param1); +void sub_02005B2C(SysTask *param0, s32 *param1); void sub_02005BA0(); u32 sub_02005BC8(u16 param0, s32 param1); void sub_02005BF8(u32 param0, s32 param1, s32 param2, s32 param3, HeapID heapId); diff --git a/include/unk_020061E8.h b/include/unk_020061E8.h index 6e1be1772..b0a988efd 100644 --- a/include/unk_020061E8.h +++ b/include/unk_020061E8.h @@ -3,8 +3,9 @@ #include "nitro/types.h" #include "text.h" +#include "unk_0200CA44.h" -BOOL sub_020061E8(void (*r0)(u32, void *), u32 r1, u32 r2, HeapID heapId); +SysTask *sub_020061E8(SysTaskFunc func, u32 r1, u32 r2, HeapID heapId); void sub_0200621C(s32 r0); #endif // POKEDIAMOND_UNK_020061E8_H diff --git a/include/unk_0200CA44.h b/include/unk_0200CA44.h index 5ed80745f..53a9e7efb 100644 --- a/include/unk_0200CA44.h +++ b/include/unk_0200CA44.h @@ -1,9 +1,19 @@ #ifndef POKEDIAMOND_UNK_0200CA44_H #define POKEDIAMOND_UNK_0200CA44_H +//TODO: sys_task_api.h + #include "text.h" -BOOL sub_0200CA44(void (*r0)(u32, void *), void * r1, u32 r2); +typedef struct SysTask SysTask; + +typedef void (*SysTaskFunc)(SysTask *task, void *data); + +struct SysTask { //todo move to sys_task.h + u8 padding[0x1C]; //todo fill in +}; + +SysTask *SysTask_CreateOnMainQueue(SysTaskFunc func, void *data, u32 priority); BOOL sub_0200CA60(void (*r0)(u32, void *), void * r1, u32 r2); BOOL sub_0200CA7C(void (*r0)(u32, void *), void * r1, u32 r2); BOOL sub_0200CA98(void (*r0)(u32, void *), void * r1, u32 r2);