From 2f4904dae297e5d3f4df99fd6c34e61c124a230f Mon Sep 17 00:00:00 2001 From: TakaRikka <38417346+TakaRikka@users.noreply.github.com> Date: Sun, 2 May 2021 10:13:14 -0700 Subject: [PATCH] move d_a_itembase_static / d_a_item_static / Z2StatusMgr (#123) * move d_a_itembase_static * move d_a_item_static * moved Z2StatusMgr * clang * fixes * clang? * move d_save * move d_meter2_info * some d_meter2_info fixes * move most d_a_player * move d_bg_s stuff * move c_cc_s stuff * move d_cc stuff * move d_attention / d_event / d_stage --- .../SComponent/c_angle/Norm__7cSGlobeCFv.s | 20 + .../checkDayTime__11Z2StatusMgrFv.s | 11 - .../heartGaugeOn__11Z2StatusMgrFv.s | 4 - .../Z2StatusMgr/menuIn__11Z2StatusMgrFv.s | 17 - .../Z2StatusMgr/menuOut__11Z2StatusMgrFv.s | 17 - .../processTime__11Z2StatusMgrFv.s | 7 - ...setCameraPolygonPos__11Z2StatusMgrFP3Vec.s | 10 - .../Z2StatusMgr/talkIn__11Z2StatusMgrFv.s | 16 - .../Z2StatusMgr/talkOut__11Z2StatusMgrFv.s | 16 - .../d_a_item_static/endControl__8daItem_cFv.s | 5 - .../startControl__8daItem_cFv.s | 5 - .../d_a_item_static/startCtrl__8daItem_cFv.s | 6 - .../changeDraw__12daItemBase_cFv.s | 21 - .../chkDead__12daItemBase_cFv.s | 7 - .../chkDraw__12daItemBase_cFv.s | 7 - .../dead__12daItemBase_cFv.s | 5 - .../getItemNo__12daItemBase_cFv.s | 3 - .../hide__12daItemBase_cFv.s | 5 - .../show__12daItemBase_cFv.s | 5 - .../a/d_a_player/__ct__14daPy_anmHeap_cFUl.s | 17 - .../checkAnmEnd__16daPy_frameCtrl_cFv.s | 20 - .../clearData__16daPy_actorKeep_cFv.s | 6 - .../getSpinnerRideSpeed__9daPy_py_cCFv.s | 22 - .../d_a_player/initData__14daPy_anmHeap_cFv.s | 7 - .../updateFrame__16daPy_frameCtrl_cFv.s | 14 - .../d_meter2_info/__ct__13dMeter2Info_cFv.s | 18 - .../d_meter2_info/__sinit_d_meter2_info_cpp.s | 16 - .../dMeter2Info_getNumberTextureName__Fi.s | 6 - .../dMeter2Info_getPlusTextureName__Fv.s | 13 - ...cFloatingMessageTimer__13dMeter2Info_cFv.s | 13 - .../decHotSpringTimer__13dMeter2Info_cFv.s | 34 - .../decMsgKeyWaitTimer__13dMeter2Info_cFv.s | 7 - .../get4thTexture__13dMeter2Info_cFUc.s | 13 - .../isDirectUseItem__13dMeter2Info_cFi.s | 9 - .../onDirectUseItem__13dMeter2Info_cFi.s | 8 - .../resetFloatingMessage__13dMeter2Info_cFv.s | 9 - .../resetMeterString__13dMeter2Info_cFv.s | 4 - .../setHotSpringTimer__13dMeter2Info_cFUc.s | 8 - .../setMiniGameCount__13dMeter2Info_cFSc.s | 13 - .../setSaveStageName__13dMeter2Info_cFPCc.s | 10 - ...pInfo__13dMeter2Info_cFPCcRC4cXyzsUcUcUc.s | 30 - .../addFishCount__18dSv_fishing_info_cFUc.s | 8 - .../checkBombBag__17dSv_player_item_cFUc.s | 19 - .../checkBottle__17dSv_player_item_cFUc.s | 32 - .../checkEmptyBottle__17dSv_player_item_cFv.s | 18 - .../d_save/clearRoomItem__13dSv_zoneBit_cFv.s | 4 - .../clearRoomSwitch__13dSv_zoneBit_cFv.s | 4 - .../save/d_save/createZone__10dSv_info_cFi.s | 27 - asm/d/save/d_save/dSv_item_rename__FUc.s | 21 - ...tBombNum__24dSv_player_item_record_cCFUc.s | 5 - ...ottleNum__24dSv_player_item_record_cCFUc.s | 5 - .../d_save/getEventReg__11dSv_event_cCFUs.s | 7 - .../getLightDropNum__16dSv_light_drop_cCFUc.s | 12 - .../getLineUpItem__17dSv_player_item_cCFi.s | 9 - ...MixItemIndex__21dSv_player_status_a_cCFi.s | 9 - .../getRupeeMax__21dSv_player_status_a_cCFv.s | 26 - asm/d/save/d_save/getSave2__10dSv_save_cFi.s | 6 - ...ectItemIndex__21dSv_player_status_a_cCFi.s | 9 - .../getSound__19dSv_player_config_cFv.s | 3 - .../getVibration__19dSv_player_config_cFv.s | 3 - asm/d/save/d_save/initZone__10dSv_info_cFv.s | 24 - asm/d/save/d_save/init__10dSv_info_cFv.s | 21 - asm/d/save/d_save/init__10dSv_save_cFv.s | 38 - asm/d/save/d_save/init__10dSv_zone_cFi.s | 16 - asm/d/save/d_save/init__11dSv_event_cFv.s | 16 - asm/d/save/d_save/init__12dSv_danBit_cFSc.s | 37 - asm/d/save/d_save/init__12dSv_memBit_cFv.s | 23 - asm/d/save/d_save/init__12dSv_memory_cFv.s | 9 - asm/d/save/d_save/init__12dSv_player_cFv.s | 44 - asm/d/save/d_save/init__13dSv_memory2_cFv.s | 10 - asm/d/save/d_save/init__13dSv_zoneBit_cFv.s | 22 - asm/d/save/d_save/init__14dSv_MiniGame_cFv.s | 20 - asm/d/save/d_save/init__15dSv_zoneActor_cFv.s | 10 - .../save/d_save/init__16dSv_light_drop_cFv.s | 20 - .../save/d_save/init__17dSv_letter_info_cFv.s | 22 - .../save/d_save/init__17dSv_player_item_cFv.s | 12 - .../save/d_save/init__17dSv_player_wolf_cFv.s | 12 - .../d_save/init__18dSv_fishing_info_cFv.s | 15 - .../d_save/init__20dSv_player_collect_cFv.s | 17 - .../d_save/init__21dSv_player_get_item_cFv.s | 10 - .../d_save/init__21dSv_player_item_max_cFv.s | 32 - .../d_save/init__21dSv_player_status_a_cFv.s | 64 - .../d_save/init__21dSv_player_status_b_cFv.s | 19 - .../init__24dSv_player_item_record_cFv.s | 31 - .../init__25dSv_player_return_place_cFv.s | 22 - asm/d/save/d_save/isActor__10dSv_info_cCFii.s | 33 - ...llectCrystal__20dSv_player_collect_cCFUc.s | 10 - ...ollectMirror__20dSv_player_collect_cCFUc.s | 10 - .../isCollect__20dSv_player_collect_cCFiUc.s | 10 - ...sDarkClearLV__21dSv_player_status_b_cCFi.s | 9 - .../d_save/isDungeonItem__12dSv_memBit_cCFi.s | 9 - .../d_save/isEventBit__11dSv_event_cCFUs.s | 11 - asm/d/save/d_save/isItem__10dSv_info_cCFii.s | 52 - asm/d/save/d_save/isItem__12dSv_danBit_cCFi.s | 12 - asm/d/save/d_save/isItem__12dSv_memBit_cCFi.s | 12 - .../save/d_save/isItem__13dSv_zoneBit_cCFi.s | 12 - .../isLetterGetFlag__17dSv_letter_info_cCFi.s | 11 - ...isLetterReadFlag__17dSv_letter_info_cCFi.s | 12 - ...LightDropGetFlag__16dSv_light_drop_cCFUc.s | 18 - .../d_save/isOneItem__13dSv_zoneBit_cCFi.s | 8 - .../d_save/isOneSwitch__13dSv_zoneBit_cCFi.s | 8 - ...__33dSv_player_field_last_stay_info_cCFi.s | 16 - .../save/d_save/isSwitch__10dSv_info_cCFii.s | 60 - .../save/d_save/isSwitch__12dSv_danBit_cCFi.s | 12 - .../save/d_save/isSwitch__12dSv_memBit_cCFi.s | 12 - .../d_save/isSwitch__13dSv_zoneBit_cCFi.s | 11 - asm/d/save/d_save/isTbox__12dSv_memBit_cCFi.s | 11 - ...sTransformLV__21dSv_player_status_b_cCFi.s | 9 - .../d_save/isVisitedRoom__13dSv_memory2_cFi.s | 11 - asm/d/save/d_save/is__15dSv_zoneActor_cCFi.s | 11 - asm/d/save/d_save/offActor__10dSv_info_cFii.s | 31 - .../d_save/offEventBit__11dSv_event_cFUs.s | 7 - .../d_save/offOneSwitch__13dSv_zoneBit_cFi.s | 7 - .../save/d_save/offSwitch__10dSv_info_cFii.s | 50 - .../save/d_save/offSwitch__12dSv_danBit_cFi.s | 11 - .../save/d_save/offSwitch__12dSv_memBit_cFi.s | 11 - .../d_save/offSwitch__13dSv_zoneBit_cFi.s | 10 - asm/d/save/d_save/offTbox__12dSv_memBit_cFi.s | 10 - .../offVisitedRoom__13dSv_memory2_cFi.s | 10 - asm/d/save/d_save/off__15dSv_zoneActor_cFi.s | 10 - asm/d/save/d_save/onActor__10dSv_info_cFii.s | 31 - ...ollectCrystal__20dSv_player_collect_cFUc.s | 9 - ...CollectMirror__20dSv_player_collect_cFUc.s | 9 - ...onDarkClearLV__21dSv_player_status_b_cFi.s | 8 - .../d_save/onDungeonItem__12dSv_memBit_cFi.s | 8 - .../d_save/onEventBit__11dSv_event_cFUs.s | 7 - asm/d/save/d_save/onItem__10dSv_info_cFii.s | 50 - asm/d/save/d_save/onItem__12dSv_danBit_cFi.s | 11 - asm/d/save/d_save/onItem__12dSv_memBit_cFi.s | 11 - asm/d/save/d_save/onItem__13dSv_zoneBit_cFi.s | 12 - .../onLetterGetFlag__17dSv_letter_info_cFi.s | 10 - .../onLetterReadFlag__17dSv_letter_info_cFi.s | 11 - ...nLightDropGetFlag__16dSv_light_drop_cFUc.s | 15 - .../d_save/onOneItem__13dSv_zoneBit_cFi.s | 8 - .../d_save/onOneSwitch__13dSv_zoneBit_cFi.s | 8 - ...t__33dSv_player_field_last_stay_info_cFi.s | 12 - asm/d/save/d_save/onSwitch__10dSv_info_cFii.s | 50 - .../save/d_save/onSwitch__12dSv_danBit_cFi.s | 11 - .../save/d_save/onSwitch__12dSv_memBit_cFi.s | 11 - .../save/d_save/onSwitch__13dSv_zoneBit_cFi.s | 11 - asm/d/save/d_save/onTbox__12dSv_memBit_cFi.s | 10 - ...onTransformLV__21dSv_player_status_b_cFi.s | 8 - .../d_save/onVisitedRoom__13dSv_memory2_cFi.s | 10 - asm/d/save/d_save/on__15dSv_zoneActor_cFi.s | 10 - .../d_save/revOneSwitch__13dSv_zoneBit_cFi.s | 11 - .../save/d_save/revSwitch__10dSv_info_cFii.s | 52 - .../save/d_save/revSwitch__12dSv_danBit_cFi.s | 15 - ...setBombNum__21dSv_player_item_max_cFUcUc.s | 21 - ...BombNum__24dSv_player_item_record_cFUcUc.s | 5 - ...ttleNum__24dSv_player_item_record_cFUcUc.s | 5 - .../setCollect__20dSv_player_collect_cFiUc.s | 9 - ...BombBagItemIn__17dSv_player_item_cFUcUcb.s | 15 - ...tyBombBagItemIn__17dSv_player_item_cFUcb.s | 13 - ...pBottleItemEmpty__17dSv_player_item_cFUc.s | 10 - .../d_save/setEventReg__11dSv_event_cFUsUc.s | 10 - ...setLightDropNum__16dSv_light_drop_cFUcUc.s | 10 - ...ixItemIndex__21dSv_player_status_a_cFiUc.s | 6 - ...setRodTypeLevelUp__17dSv_player_item_cFv.s | 40 - .../setRoom__13dSv_restart_cFRC4cXyzsSc.s | 10 - ...ctItemIndex__21dSv_player_status_a_cFiUc.s | 6 - ...layer_last_mark_info_cFPCcRC4cXyzsScUcUc.s | 26 - .../set__17dSv_horse_place_cFPCcRC4cXyzsSc.s | 26 - .../set__17dSv_turnRestart_cFRC4cXyzsScUl.s | 11 - ...set__25dSv_player_return_place_cFPCcScUc.s | 18 - ...r_field_last_stay_info_cFPCcRC4cXyzsScUc.s | 28 - .../JSystem/J3DGraphAnimator/J3DAnimation.h | 31 + include/JSystem/JUtility/JUTFont.h | 18 + include/SSystem/SComponent/c_angle.h | 1 + include/SSystem/SComponent/c_cc_d.h | 280 ++ include/SSystem/SComponent/c_cc_s.h | 41 + include/SSystem/SComponent/c_lib.h | 2 +- include/SSystem/SComponent/c_m3d_g_cps.h | 6 - include/Z2AudioLib/Z2StatusMgr.h | 39 + include/d/a/d_a_item_static.h | 16 + include/d/a/d_a_itembase.h | 38 + include/d/a/d_a_itembase_static.h | 1 + include/d/a/d_a_player.h | 338 +++ include/d/bg/d_bg_s.h | 112 + include/d/bg/d_bg_s_acch.h | 107 + include/d/bg/d_bg_s_chk.h | 14 + include/d/bg/d_bg_s_gnd_chk.h | 16 + include/d/bg/d_bg_s_grp_pass_chk.h | 14 + include/d/bg/d_bg_s_poly_pass_chk.h | 57 + include/d/bg/d_bg_s_roof_chk.h | 21 + include/d/bg/d_bg_s_spl_grp_chk.h | 21 + include/d/bg/d_bg_s_wtr_chk.h | 9 + include/d/bg/d_bg_w.h | 205 ++ include/d/cc/d_cc_d.h | 185 ++ include/d/cc/d_cc_mass_s.h | 35 + include/d/cc/d_cc_s.h | 44 + include/d/d_attention.h | 238 ++ include/d/d_stage.h | 435 +++ include/d/event/d_event.h | 295 ++ include/d/event/d_event_data.h | 56 + include/d/event/d_event_manager.h | 84 + include/d/meter/d_meter2_info.h | 198 ++ include/d/save/d_save.h | 925 ++++++ include/dolphin/gx/GXTexture.h | 21 + include/dolphin/mtx/vec.h | 10 + include/m_Do/m_Do_ext.h | 112 + .../JSystem/J3DGraphAnimator/J3DAnimation.cpp | 19 +- libs/JSystem/JFramework/JFWDisplay.cpp | 4 +- libs/JSystem/JUtility/JUTFont.cpp | 4 - libs/SSystem/SComponent/c_angle.cpp | 18 + libs/SSystem/SComponent/c_cc_d.cpp | 215 -- libs/SSystem/SComponent/c_cc_s.cpp | 89 - libs/Z2AudioLib/Z2StatusMgr.cpp | 166 +- src/d/a/d_a_item_static.cpp | 51 +- src/d/a/d_a_itembase.cpp | 23 - src/d/a/d_a_itembase_static.cpp | 88 +- src/d/a/d_a_player.cpp | 206 +- src/d/bg/d_bg_s.cpp | 140 - src/d/bg/d_bg_s_acch.cpp | 151 +- src/d/bg/d_bg_s_chk.cpp | 21 - src/d/bg/d_bg_s_gnd_chk.cpp | 22 - src/d/bg/d_bg_s_grp_pass_chk.cpp | 13 - src/d/bg/d_bg_s_poly_pass_chk.cpp | 34 +- src/d/bg/d_bg_s_roof_chk.cpp | 28 - src/d/bg/d_bg_s_spl_grp_chk.cpp | 31 - src/d/bg/d_bg_s_wtr_chk.cpp | 12 - src/d/bg/d_bg_w.cpp | 229 -- src/d/cc/d_cc_d.cpp | 308 -- src/d/cc/d_cc_mass_s.cpp | 2 +- src/d/cc/d_cc_s.cpp | 2 +- src/d/d_attention.cpp | 172 -- src/d/d_stage.cpp | 504 +--- src/d/event/d_event.cpp | 80 - src/d/event/d_event_data.cpp | 54 - src/d/event/d_event_manager.cpp | 95 - src/d/meter/d_meter2_info.cpp | 576 ++-- src/d/save/d_save.cpp | 2615 ++++++++--------- src/m_Do/m_Do_ext.cpp | 72 - tools/libdol2asm/executor.template.cpp | 13 +- .../global_destructor_chain.template.cpp | 29 +- 234 files changed, 5861 insertions(+), 6762 deletions(-) create mode 100644 asm/SSystem/SComponent/c_angle/Norm__7cSGlobeCFv.s delete mode 100644 asm/Z2AudioLib/Z2StatusMgr/checkDayTime__11Z2StatusMgrFv.s delete mode 100644 asm/Z2AudioLib/Z2StatusMgr/heartGaugeOn__11Z2StatusMgrFv.s delete mode 100644 asm/Z2AudioLib/Z2StatusMgr/menuIn__11Z2StatusMgrFv.s delete mode 100644 asm/Z2AudioLib/Z2StatusMgr/menuOut__11Z2StatusMgrFv.s delete mode 100644 asm/Z2AudioLib/Z2StatusMgr/processTime__11Z2StatusMgrFv.s delete mode 100644 asm/Z2AudioLib/Z2StatusMgr/setCameraPolygonPos__11Z2StatusMgrFP3Vec.s delete mode 100644 asm/Z2AudioLib/Z2StatusMgr/talkIn__11Z2StatusMgrFv.s delete mode 100644 asm/Z2AudioLib/Z2StatusMgr/talkOut__11Z2StatusMgrFv.s delete mode 100644 asm/d/a/d_a_item_static/endControl__8daItem_cFv.s delete mode 100644 asm/d/a/d_a_item_static/startControl__8daItem_cFv.s delete mode 100644 asm/d/a/d_a_item_static/startCtrl__8daItem_cFv.s delete mode 100644 asm/d/a/d_a_itembase_static/changeDraw__12daItemBase_cFv.s delete mode 100644 asm/d/a/d_a_itembase_static/chkDead__12daItemBase_cFv.s delete mode 100644 asm/d/a/d_a_itembase_static/chkDraw__12daItemBase_cFv.s delete mode 100644 asm/d/a/d_a_itembase_static/dead__12daItemBase_cFv.s delete mode 100644 asm/d/a/d_a_itembase_static/getItemNo__12daItemBase_cFv.s delete mode 100644 asm/d/a/d_a_itembase_static/hide__12daItemBase_cFv.s delete mode 100644 asm/d/a/d_a_itembase_static/show__12daItemBase_cFv.s delete mode 100644 asm/d/a/d_a_player/__ct__14daPy_anmHeap_cFUl.s delete mode 100644 asm/d/a/d_a_player/checkAnmEnd__16daPy_frameCtrl_cFv.s delete mode 100644 asm/d/a/d_a_player/clearData__16daPy_actorKeep_cFv.s delete mode 100644 asm/d/a/d_a_player/getSpinnerRideSpeed__9daPy_py_cCFv.s delete mode 100644 asm/d/a/d_a_player/initData__14daPy_anmHeap_cFv.s delete mode 100644 asm/d/a/d_a_player/updateFrame__16daPy_frameCtrl_cFv.s delete mode 100644 asm/d/meter/d_meter2_info/__ct__13dMeter2Info_cFv.s delete mode 100644 asm/d/meter/d_meter2_info/__sinit_d_meter2_info_cpp.s delete mode 100644 asm/d/meter/d_meter2_info/dMeter2Info_getNumberTextureName__Fi.s delete mode 100644 asm/d/meter/d_meter2_info/dMeter2Info_getPlusTextureName__Fv.s delete mode 100644 asm/d/meter/d_meter2_info/decFloatingMessageTimer__13dMeter2Info_cFv.s delete mode 100644 asm/d/meter/d_meter2_info/decHotSpringTimer__13dMeter2Info_cFv.s delete mode 100644 asm/d/meter/d_meter2_info/decMsgKeyWaitTimer__13dMeter2Info_cFv.s delete mode 100644 asm/d/meter/d_meter2_info/get4thTexture__13dMeter2Info_cFUc.s delete mode 100644 asm/d/meter/d_meter2_info/isDirectUseItem__13dMeter2Info_cFi.s delete mode 100644 asm/d/meter/d_meter2_info/onDirectUseItem__13dMeter2Info_cFi.s delete mode 100644 asm/d/meter/d_meter2_info/resetFloatingMessage__13dMeter2Info_cFv.s delete mode 100644 asm/d/meter/d_meter2_info/resetMeterString__13dMeter2Info_cFv.s delete mode 100644 asm/d/meter/d_meter2_info/setHotSpringTimer__13dMeter2Info_cFUc.s delete mode 100644 asm/d/meter/d_meter2_info/setMiniGameCount__13dMeter2Info_cFSc.s delete mode 100644 asm/d/meter/d_meter2_info/setSaveStageName__13dMeter2Info_cFPCc.s delete mode 100644 asm/d/meter/d_meter2_info/setWarpInfo__13dMeter2Info_cFPCcRC4cXyzsUcUcUc.s delete mode 100644 asm/d/save/d_save/addFishCount__18dSv_fishing_info_cFUc.s delete mode 100644 asm/d/save/d_save/checkBombBag__17dSv_player_item_cFUc.s delete mode 100644 asm/d/save/d_save/checkBottle__17dSv_player_item_cFUc.s delete mode 100644 asm/d/save/d_save/checkEmptyBottle__17dSv_player_item_cFv.s delete mode 100644 asm/d/save/d_save/clearRoomItem__13dSv_zoneBit_cFv.s delete mode 100644 asm/d/save/d_save/clearRoomSwitch__13dSv_zoneBit_cFv.s delete mode 100644 asm/d/save/d_save/createZone__10dSv_info_cFi.s delete mode 100644 asm/d/save/d_save/dSv_item_rename__FUc.s delete mode 100644 asm/d/save/d_save/getBombNum__24dSv_player_item_record_cCFUc.s delete mode 100644 asm/d/save/d_save/getBottleNum__24dSv_player_item_record_cCFUc.s delete mode 100644 asm/d/save/d_save/getEventReg__11dSv_event_cCFUs.s delete mode 100644 asm/d/save/d_save/getLightDropNum__16dSv_light_drop_cCFUc.s delete mode 100644 asm/d/save/d_save/getLineUpItem__17dSv_player_item_cCFi.s delete mode 100644 asm/d/save/d_save/getMixItemIndex__21dSv_player_status_a_cCFi.s delete mode 100644 asm/d/save/d_save/getRupeeMax__21dSv_player_status_a_cCFv.s delete mode 100644 asm/d/save/d_save/getSave2__10dSv_save_cFi.s delete mode 100644 asm/d/save/d_save/getSelectItemIndex__21dSv_player_status_a_cCFi.s delete mode 100644 asm/d/save/d_save/getSound__19dSv_player_config_cFv.s delete mode 100644 asm/d/save/d_save/getVibration__19dSv_player_config_cFv.s delete mode 100644 asm/d/save/d_save/initZone__10dSv_info_cFv.s delete mode 100644 asm/d/save/d_save/init__10dSv_info_cFv.s delete mode 100644 asm/d/save/d_save/init__10dSv_save_cFv.s delete mode 100644 asm/d/save/d_save/init__10dSv_zone_cFi.s delete mode 100644 asm/d/save/d_save/init__11dSv_event_cFv.s delete mode 100644 asm/d/save/d_save/init__12dSv_danBit_cFSc.s delete mode 100644 asm/d/save/d_save/init__12dSv_memBit_cFv.s delete mode 100644 asm/d/save/d_save/init__12dSv_memory_cFv.s delete mode 100644 asm/d/save/d_save/init__12dSv_player_cFv.s delete mode 100644 asm/d/save/d_save/init__13dSv_memory2_cFv.s delete mode 100644 asm/d/save/d_save/init__13dSv_zoneBit_cFv.s delete mode 100644 asm/d/save/d_save/init__14dSv_MiniGame_cFv.s delete mode 100644 asm/d/save/d_save/init__15dSv_zoneActor_cFv.s delete mode 100644 asm/d/save/d_save/init__16dSv_light_drop_cFv.s delete mode 100644 asm/d/save/d_save/init__17dSv_letter_info_cFv.s delete mode 100644 asm/d/save/d_save/init__17dSv_player_item_cFv.s delete mode 100644 asm/d/save/d_save/init__17dSv_player_wolf_cFv.s delete mode 100644 asm/d/save/d_save/init__18dSv_fishing_info_cFv.s delete mode 100644 asm/d/save/d_save/init__20dSv_player_collect_cFv.s delete mode 100644 asm/d/save/d_save/init__21dSv_player_get_item_cFv.s delete mode 100644 asm/d/save/d_save/init__21dSv_player_item_max_cFv.s delete mode 100644 asm/d/save/d_save/init__21dSv_player_status_a_cFv.s delete mode 100644 asm/d/save/d_save/init__21dSv_player_status_b_cFv.s delete mode 100644 asm/d/save/d_save/init__24dSv_player_item_record_cFv.s delete mode 100644 asm/d/save/d_save/init__25dSv_player_return_place_cFv.s delete mode 100644 asm/d/save/d_save/isActor__10dSv_info_cCFii.s delete mode 100644 asm/d/save/d_save/isCollectCrystal__20dSv_player_collect_cCFUc.s delete mode 100644 asm/d/save/d_save/isCollectMirror__20dSv_player_collect_cCFUc.s delete mode 100644 asm/d/save/d_save/isCollect__20dSv_player_collect_cCFiUc.s delete mode 100644 asm/d/save/d_save/isDarkClearLV__21dSv_player_status_b_cCFi.s delete mode 100644 asm/d/save/d_save/isDungeonItem__12dSv_memBit_cCFi.s delete mode 100644 asm/d/save/d_save/isEventBit__11dSv_event_cCFUs.s delete mode 100644 asm/d/save/d_save/isItem__10dSv_info_cCFii.s delete mode 100644 asm/d/save/d_save/isItem__12dSv_danBit_cCFi.s delete mode 100644 asm/d/save/d_save/isItem__12dSv_memBit_cCFi.s delete mode 100644 asm/d/save/d_save/isItem__13dSv_zoneBit_cCFi.s delete mode 100644 asm/d/save/d_save/isLetterGetFlag__17dSv_letter_info_cCFi.s delete mode 100644 asm/d/save/d_save/isLetterReadFlag__17dSv_letter_info_cCFi.s delete mode 100644 asm/d/save/d_save/isLightDropGetFlag__16dSv_light_drop_cCFUc.s delete mode 100644 asm/d/save/d_save/isOneItem__13dSv_zoneBit_cCFi.s delete mode 100644 asm/d/save/d_save/isOneSwitch__13dSv_zoneBit_cCFi.s delete mode 100644 asm/d/save/d_save/isRegionBit__33dSv_player_field_last_stay_info_cCFi.s delete mode 100644 asm/d/save/d_save/isSwitch__10dSv_info_cCFii.s delete mode 100644 asm/d/save/d_save/isSwitch__12dSv_danBit_cCFi.s delete mode 100644 asm/d/save/d_save/isSwitch__12dSv_memBit_cCFi.s delete mode 100644 asm/d/save/d_save/isSwitch__13dSv_zoneBit_cCFi.s delete mode 100644 asm/d/save/d_save/isTbox__12dSv_memBit_cCFi.s delete mode 100644 asm/d/save/d_save/isTransformLV__21dSv_player_status_b_cCFi.s delete mode 100644 asm/d/save/d_save/isVisitedRoom__13dSv_memory2_cFi.s delete mode 100644 asm/d/save/d_save/is__15dSv_zoneActor_cCFi.s delete mode 100644 asm/d/save/d_save/offActor__10dSv_info_cFii.s delete mode 100644 asm/d/save/d_save/offEventBit__11dSv_event_cFUs.s delete mode 100644 asm/d/save/d_save/offOneSwitch__13dSv_zoneBit_cFi.s delete mode 100644 asm/d/save/d_save/offSwitch__10dSv_info_cFii.s delete mode 100644 asm/d/save/d_save/offSwitch__12dSv_danBit_cFi.s delete mode 100644 asm/d/save/d_save/offSwitch__12dSv_memBit_cFi.s delete mode 100644 asm/d/save/d_save/offSwitch__13dSv_zoneBit_cFi.s delete mode 100644 asm/d/save/d_save/offTbox__12dSv_memBit_cFi.s delete mode 100644 asm/d/save/d_save/offVisitedRoom__13dSv_memory2_cFi.s delete mode 100644 asm/d/save/d_save/off__15dSv_zoneActor_cFi.s delete mode 100644 asm/d/save/d_save/onActor__10dSv_info_cFii.s delete mode 100644 asm/d/save/d_save/onCollectCrystal__20dSv_player_collect_cFUc.s delete mode 100644 asm/d/save/d_save/onCollectMirror__20dSv_player_collect_cFUc.s delete mode 100644 asm/d/save/d_save/onDarkClearLV__21dSv_player_status_b_cFi.s delete mode 100644 asm/d/save/d_save/onDungeonItem__12dSv_memBit_cFi.s delete mode 100644 asm/d/save/d_save/onEventBit__11dSv_event_cFUs.s delete mode 100644 asm/d/save/d_save/onItem__10dSv_info_cFii.s delete mode 100644 asm/d/save/d_save/onItem__12dSv_danBit_cFi.s delete mode 100644 asm/d/save/d_save/onItem__12dSv_memBit_cFi.s delete mode 100644 asm/d/save/d_save/onItem__13dSv_zoneBit_cFi.s delete mode 100644 asm/d/save/d_save/onLetterGetFlag__17dSv_letter_info_cFi.s delete mode 100644 asm/d/save/d_save/onLetterReadFlag__17dSv_letter_info_cFi.s delete mode 100644 asm/d/save/d_save/onLightDropGetFlag__16dSv_light_drop_cFUc.s delete mode 100644 asm/d/save/d_save/onOneItem__13dSv_zoneBit_cFi.s delete mode 100644 asm/d/save/d_save/onOneSwitch__13dSv_zoneBit_cFi.s delete mode 100644 asm/d/save/d_save/onRegionBit__33dSv_player_field_last_stay_info_cFi.s delete mode 100644 asm/d/save/d_save/onSwitch__10dSv_info_cFii.s delete mode 100644 asm/d/save/d_save/onSwitch__12dSv_danBit_cFi.s delete mode 100644 asm/d/save/d_save/onSwitch__12dSv_memBit_cFi.s delete mode 100644 asm/d/save/d_save/onSwitch__13dSv_zoneBit_cFi.s delete mode 100644 asm/d/save/d_save/onTbox__12dSv_memBit_cFi.s delete mode 100644 asm/d/save/d_save/onTransformLV__21dSv_player_status_b_cFi.s delete mode 100644 asm/d/save/d_save/onVisitedRoom__13dSv_memory2_cFi.s delete mode 100644 asm/d/save/d_save/on__15dSv_zoneActor_cFi.s delete mode 100644 asm/d/save/d_save/revOneSwitch__13dSv_zoneBit_cFi.s delete mode 100644 asm/d/save/d_save/revSwitch__10dSv_info_cFii.s delete mode 100644 asm/d/save/d_save/revSwitch__12dSv_danBit_cFi.s delete mode 100644 asm/d/save/d_save/setBombNum__21dSv_player_item_max_cFUcUc.s delete mode 100644 asm/d/save/d_save/setBombNum__24dSv_player_item_record_cFUcUc.s delete mode 100644 asm/d/save/d_save/setBottleNum__24dSv_player_item_record_cFUcUc.s delete mode 100644 asm/d/save/d_save/setCollect__20dSv_player_collect_cFiUc.s delete mode 100644 asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcUcb.s delete mode 100644 asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcb.s delete mode 100644 asm/d/save/d_save/setEquipBottleItemEmpty__17dSv_player_item_cFUc.s delete mode 100644 asm/d/save/d_save/setEventReg__11dSv_event_cFUsUc.s delete mode 100644 asm/d/save/d_save/setLightDropNum__16dSv_light_drop_cFUcUc.s delete mode 100644 asm/d/save/d_save/setMixItemIndex__21dSv_player_status_a_cFiUc.s delete mode 100644 asm/d/save/d_save/setRodTypeLevelUp__17dSv_player_item_cFv.s delete mode 100644 asm/d/save/d_save/setRoom__13dSv_restart_cFRC4cXyzsSc.s delete mode 100644 asm/d/save/d_save/setSelectItemIndex__21dSv_player_status_a_cFiUc.s delete mode 100644 asm/d/save/d_save/setWarpItemData__27dSv_player_last_mark_info_cFPCcRC4cXyzsScUcUc.s delete mode 100644 asm/d/save/d_save/set__17dSv_horse_place_cFPCcRC4cXyzsSc.s delete mode 100644 asm/d/save/d_save/set__17dSv_turnRestart_cFRC4cXyzsScUl.s delete mode 100644 asm/d/save/d_save/set__25dSv_player_return_place_cFPCcScUc.s delete mode 100644 asm/d/save/d_save/set__33dSv_player_field_last_stay_info_cFPCcRC4cXyzsScUc.s diff --git a/asm/SSystem/SComponent/c_angle/Norm__7cSGlobeCFv.s b/asm/SSystem/SComponent/c_angle/Norm__7cSGlobeCFv.s new file mode 100644 index 00000000000..4235a77464a --- /dev/null +++ b/asm/SSystem/SComponent/c_angle/Norm__7cSGlobeCFv.s @@ -0,0 +1,20 @@ +lbl_80271B30: +/* 80271B30 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80271B34 7C 08 02 A6 */ mflr r0 +/* 80271B38 90 01 00 24 */ stw r0, 0x24(r1) +/* 80271B3C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80271B40 7C 7F 1B 78 */ mr r31, r3 +/* 80271B44 7C 85 23 78 */ mr r5, r4 +/* 80271B48 38 61 00 08 */ addi r3, r1, 8 +/* 80271B4C C0 22 B8 3C */ lfs f1, lit_2744(r2) +/* 80271B50 38 85 00 04 */ addi r4, r5, 4 +/* 80271B54 38 A5 00 06 */ addi r5, r5, 6 +/* 80271B58 4B FF FC F9 */ bl __ct__7cSGlobeFfRC7cSAngleRC7cSAngle +/* 80271B5C 7F E3 FB 78 */ mr r3, r31 +/* 80271B60 38 81 00 08 */ addi r4, r1, 8 +/* 80271B64 4B FF FF 51 */ bl Xyz__7cSGlobeCFv +/* 80271B68 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80271B6C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80271B70 7C 08 03 A6 */ mtlr r0 +/* 80271B74 38 21 00 20 */ addi r1, r1, 0x20 +/* 80271B78 4E 80 00 20 */ blr \ No newline at end of file diff --git a/asm/Z2AudioLib/Z2StatusMgr/checkDayTime__11Z2StatusMgrFv.s b/asm/Z2AudioLib/Z2StatusMgr/checkDayTime__11Z2StatusMgrFv.s deleted file mode 100644 index 2b91617c2b7..00000000000 --- a/asm/Z2AudioLib/Z2StatusMgr/checkDayTime__11Z2StatusMgrFv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_802B6734: -/* 802B6734 88 03 00 00 */ lbz r0, 0(r3) -/* 802B6738 28 00 00 06 */ cmplwi r0, 6 -/* 802B673C 41 80 00 14 */ blt lbl_802B6750 -/* 802B6740 28 00 00 13 */ cmplwi r0, 0x13 -/* 802B6744 40 80 00 0C */ bge lbl_802B6750 -/* 802B6748 38 60 00 01 */ li r3, 1 -/* 802B674C 4E 80 00 20 */ blr -lbl_802B6750: -/* 802B6750 38 60 00 00 */ li r3, 0 -/* 802B6754 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2StatusMgr/heartGaugeOn__11Z2StatusMgrFv.s b/asm/Z2AudioLib/Z2StatusMgr/heartGaugeOn__11Z2StatusMgrFv.s deleted file mode 100644 index 9c73fd8abea..00000000000 --- a/asm/Z2AudioLib/Z2StatusMgr/heartGaugeOn__11Z2StatusMgrFv.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_802B5F70: -/* 802B5F70 38 00 00 02 */ li r0, 2 -/* 802B5F74 98 03 00 2D */ stb r0, 0x2d(r3) -/* 802B5F78 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2StatusMgr/menuIn__11Z2StatusMgrFv.s b/asm/Z2AudioLib/Z2StatusMgr/menuIn__11Z2StatusMgrFv.s deleted file mode 100644 index 47a7ea946b6..00000000000 --- a/asm/Z2AudioLib/Z2StatusMgr/menuIn__11Z2StatusMgrFv.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_802B613C: -/* 802B613C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6140 7C 08 02 A6 */ mflr r0 -/* 802B6144 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6148 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B614C 7C 7F 1B 78 */ mr r31, r3 -/* 802B6150 80 6D 86 04 */ lwz r3, data_80450B84(r13) -/* 802B6154 4B FF CC 59 */ bl menuInBgm__8Z2SeqMgrFv -/* 802B6158 80 6D 86 08 */ lwz r3, data_80450B88(r13) -/* 802B615C 4B FF 7B FD */ bl menuInSe__7Z2SeMgrFv -/* 802B6160 38 00 00 01 */ li r0, 1 -/* 802B6164 98 1F 00 0C */ stb r0, 0xc(r31) -/* 802B6168 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B616C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6170 7C 08 03 A6 */ mtlr r0 -/* 802B6174 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6178 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2StatusMgr/menuOut__11Z2StatusMgrFv.s b/asm/Z2AudioLib/Z2StatusMgr/menuOut__11Z2StatusMgrFv.s deleted file mode 100644 index 6c041ba9b13..00000000000 --- a/asm/Z2AudioLib/Z2StatusMgr/menuOut__11Z2StatusMgrFv.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_802B617C: -/* 802B617C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6180 7C 08 02 A6 */ mflr r0 -/* 802B6184 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6188 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B618C 7C 7F 1B 78 */ mr r31, r3 -/* 802B6190 80 6D 86 04 */ lwz r3, data_80450B84(r13) -/* 802B6194 4B FF CC 61 */ bl menuOutBgm__8Z2SeqMgrFv -/* 802B6198 80 6D 86 08 */ lwz r3, data_80450B88(r13) -/* 802B619C 4B FF 7A B9 */ bl talkOutSe__7Z2SeMgrFv -/* 802B61A0 38 00 00 00 */ li r0, 0 -/* 802B61A4 98 1F 00 0C */ stb r0, 0xc(r31) -/* 802B61A8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B61AC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B61B0 7C 08 03 A6 */ mtlr r0 -/* 802B61B4 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B61B8 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2StatusMgr/processTime__11Z2StatusMgrFv.s b/asm/Z2AudioLib/Z2StatusMgr/processTime__11Z2StatusMgrFv.s deleted file mode 100644 index 8c591e73c3b..00000000000 --- a/asm/Z2AudioLib/Z2StatusMgr/processTime__11Z2StatusMgrFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_802B671C: -/* 802B671C 88 03 00 00 */ lbz r0, 0(r3) -/* 802B6720 54 04 44 2E */ rlwinm r4, r0, 8, 0x10, 0x17 -/* 802B6724 88 03 00 01 */ lbz r0, 1(r3) -/* 802B6728 7C 04 02 14 */ add r0, r4, r0 -/* 802B672C B0 03 00 04 */ sth r0, 4(r3) -/* 802B6730 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2StatusMgr/setCameraPolygonPos__11Z2StatusMgrFP3Vec.s b/asm/Z2AudioLib/Z2StatusMgr/setCameraPolygonPos__11Z2StatusMgrFP3Vec.s deleted file mode 100644 index 8d624b5e0a1..00000000000 --- a/asm/Z2AudioLib/Z2StatusMgr/setCameraPolygonPos__11Z2StatusMgrFP3Vec.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_802B6760: -/* 802B6760 28 04 00 00 */ cmplwi r4, 0 -/* 802B6764 4D 82 00 20 */ beqlr -/* 802B6768 C0 04 00 00 */ lfs f0, 0(r4) -/* 802B676C D0 03 00 20 */ stfs f0, 0x20(r3) -/* 802B6770 C0 04 00 04 */ lfs f0, 4(r4) -/* 802B6774 D0 03 00 24 */ stfs f0, 0x24(r3) -/* 802B6778 C0 04 00 08 */ lfs f0, 8(r4) -/* 802B677C D0 03 00 28 */ stfs f0, 0x28(r3) -/* 802B6780 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2StatusMgr/talkIn__11Z2StatusMgrFv.s b/asm/Z2AudioLib/Z2StatusMgr/talkIn__11Z2StatusMgrFv.s deleted file mode 100644 index 2fff1e41696..00000000000 --- a/asm/Z2AudioLib/Z2StatusMgr/talkIn__11Z2StatusMgrFv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_802B60CC: -/* 802B60CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B60D0 7C 08 02 A6 */ mflr r0 -/* 802B60D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B60D8 48 00 00 E5 */ bl isMovieDemo__11Z2StatusMgrFv -/* 802B60DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B60E0 40 82 00 14 */ bne lbl_802B60F4 -/* 802B60E4 80 6D 86 04 */ lwz r3, data_80450B84(r13) -/* 802B60E8 4B FF CB BD */ bl talkInBgm__8Z2SeqMgrFv -/* 802B60EC 80 6D 86 08 */ lwz r3, data_80450B88(r13) -/* 802B60F0 4B FF 7A 61 */ bl talkInSe__7Z2SeMgrFv -lbl_802B60F4: -/* 802B60F4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B60F8 7C 08 03 A6 */ mtlr r0 -/* 802B60FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6100 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2StatusMgr/talkOut__11Z2StatusMgrFv.s b/asm/Z2AudioLib/Z2StatusMgr/talkOut__11Z2StatusMgrFv.s deleted file mode 100644 index f72c7d1194e..00000000000 --- a/asm/Z2AudioLib/Z2StatusMgr/talkOut__11Z2StatusMgrFv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_802B6104: -/* 802B6104 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6108 7C 08 02 A6 */ mflr r0 -/* 802B610C 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6110 48 00 00 AD */ bl isMovieDemo__11Z2StatusMgrFv -/* 802B6114 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B6118 40 82 00 14 */ bne lbl_802B612C -/* 802B611C 80 6D 86 04 */ lwz r3, data_80450B84(r13) -/* 802B6120 4B FF CC 45 */ bl talkOutBgm__8Z2SeqMgrFv -/* 802B6124 80 6D 86 08 */ lwz r3, data_80450B88(r13) -/* 802B6128 4B FF 7B 2D */ bl talkOutSe__7Z2SeMgrFv -lbl_802B612C: -/* 802B612C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6130 7C 08 03 A6 */ mtlr r0 -/* 802B6134 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6138 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_item_static/endControl__8daItem_cFv.s b/asm/d/a/d_a_item_static/endControl__8daItem_cFv.s deleted file mode 100644 index 2588540a7fd..00000000000 --- a/asm/d/a/d_a_item_static/endControl__8daItem_cFv.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80037C04: -/* 80037C04 38 00 00 00 */ li r0, 0 -/* 80037C08 98 03 09 4A */ stb r0, 0x94a(r3) -/* 80037C0C 38 60 00 01 */ li r3, 1 -/* 80037C10 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_item_static/startControl__8daItem_cFv.s b/asm/d/a/d_a_item_static/startControl__8daItem_cFv.s deleted file mode 100644 index 42ff23e4b52..00000000000 --- a/asm/d/a/d_a_item_static/startControl__8daItem_cFv.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80037BF4: -/* 80037BF4 38 00 00 01 */ li r0, 1 -/* 80037BF8 98 03 09 4A */ stb r0, 0x94a(r3) -/* 80037BFC 38 60 00 01 */ li r3, 1 -/* 80037C00 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_item_static/startCtrl__8daItem_cFv.s b/asm/d/a/d_a_item_static/startCtrl__8daItem_cFv.s deleted file mode 100644 index ea2f64945ff..00000000000 --- a/asm/d/a/d_a_item_static/startCtrl__8daItem_cFv.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80037BE0: -/* 80037BE0 88 03 09 48 */ lbz r0, 0x948(r3) -/* 80037BE4 60 00 00 04 */ ori r0, r0, 4 -/* 80037BE8 98 03 09 48 */ stb r0, 0x948(r3) -/* 80037BEC 38 60 00 01 */ li r3, 1 -/* 80037BF0 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_itembase_static/changeDraw__12daItemBase_cFv.s b/asm/d/a/d_a_itembase_static/changeDraw__12daItemBase_cFv.s deleted file mode 100644 index ca4b2644402..00000000000 --- a/asm/d/a/d_a_itembase_static/changeDraw__12daItemBase_cFv.s +++ /dev/null @@ -1,21 +0,0 @@ -lbl_80037A84: -/* 80037A84 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80037A88 7C 08 02 A6 */ mflr r0 -/* 80037A8C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80037A90 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80037A94 7C 7F 1B 78 */ mr r31, r3 -/* 80037A98 48 00 00 35 */ bl chkDraw__12daItemBase_cFv -/* 80037A9C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80037AA0 41 82 00 10 */ beq lbl_80037AB0 -/* 80037AA4 7F E3 FB 78 */ mr r3, r31 -/* 80037AA8 4B FF FF BD */ bl hide__12daItemBase_cFv -/* 80037AAC 48 00 00 0C */ b lbl_80037AB8 -lbl_80037AB0: -/* 80037AB0 7F E3 FB 78 */ mr r3, r31 -/* 80037AB4 4B FF FF C1 */ bl show__12daItemBase_cFv -lbl_80037AB8: -/* 80037AB8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80037ABC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80037AC0 7C 08 03 A6 */ mtlr r0 -/* 80037AC4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80037AC8 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_itembase_static/chkDead__12daItemBase_cFv.s b/asm/d/a/d_a_itembase_static/chkDead__12daItemBase_cFv.s deleted file mode 100644 index 57762696874..00000000000 --- a/asm/d/a/d_a_itembase_static/chkDead__12daItemBase_cFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80037AF4: -/* 80037AF4 88 03 09 2B */ lbz r0, 0x92b(r3) -/* 80037AF8 54 03 07 BC */ rlwinm r3, r0, 0, 0x1e, 0x1e -/* 80037AFC 30 03 FF FF */ addic r0, r3, -1 -/* 80037B00 7C 00 19 10 */ subfe r0, r0, r3 -/* 80037B04 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 80037B08 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_itembase_static/chkDraw__12daItemBase_cFv.s b/asm/d/a/d_a_itembase_static/chkDraw__12daItemBase_cFv.s deleted file mode 100644 index 511d9f558e5..00000000000 --- a/asm/d/a/d_a_itembase_static/chkDraw__12daItemBase_cFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80037ACC: -/* 80037ACC 88 03 09 2B */ lbz r0, 0x92b(r3) -/* 80037AD0 54 03 07 FE */ clrlwi r3, r0, 0x1f -/* 80037AD4 30 03 FF FF */ addic r0, r3, -1 -/* 80037AD8 7C 00 19 10 */ subfe r0, r0, r3 -/* 80037ADC 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 80037AE0 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_itembase_static/dead__12daItemBase_cFv.s b/asm/d/a/d_a_itembase_static/dead__12daItemBase_cFv.s deleted file mode 100644 index 35fce0621ea..00000000000 --- a/asm/d/a/d_a_itembase_static/dead__12daItemBase_cFv.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80037AE4: -/* 80037AE4 88 03 09 2B */ lbz r0, 0x92b(r3) -/* 80037AE8 60 00 00 02 */ ori r0, r0, 2 -/* 80037AEC 98 03 09 2B */ stb r0, 0x92b(r3) -/* 80037AF0 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_itembase_static/getItemNo__12daItemBase_cFv.s b/asm/d/a/d_a_itembase_static/getItemNo__12daItemBase_cFv.s deleted file mode 100644 index e549f5a3a97..00000000000 --- a/asm/d/a/d_a_itembase_static/getItemNo__12daItemBase_cFv.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_80037A5C: -/* 80037A5C 88 63 09 2A */ lbz r3, 0x92a(r3) -/* 80037A60 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_itembase_static/hide__12daItemBase_cFv.s b/asm/d/a/d_a_itembase_static/hide__12daItemBase_cFv.s deleted file mode 100644 index adb5bdfdd5f..00000000000 --- a/asm/d/a/d_a_itembase_static/hide__12daItemBase_cFv.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80037A64: -/* 80037A64 88 03 09 2B */ lbz r0, 0x92b(r3) -/* 80037A68 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e -/* 80037A6C 98 03 09 2B */ stb r0, 0x92b(r3) -/* 80037A70 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_itembase_static/show__12daItemBase_cFv.s b/asm/d/a/d_a_itembase_static/show__12daItemBase_cFv.s deleted file mode 100644 index 8a04a55f732..00000000000 --- a/asm/d/a/d_a_itembase_static/show__12daItemBase_cFv.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80037A74: -/* 80037A74 88 03 09 2B */ lbz r0, 0x92b(r3) -/* 80037A78 60 00 00 01 */ ori r0, r0, 1 -/* 80037A7C 98 03 09 2B */ stb r0, 0x92b(r3) -/* 80037A80 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/__ct__14daPy_anmHeap_cFUl.s b/asm/d/a/d_a_player/__ct__14daPy_anmHeap_cFUl.s deleted file mode 100644 index 2408b0f533e..00000000000 --- a/asm/d/a/d_a_player/__ct__14daPy_anmHeap_cFUl.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_8015ED10: -/* 8015ED10 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015ED14 7C 08 02 A6 */ mflr r0 -/* 8015ED18 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015ED1C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015ED20 93 C1 00 08 */ stw r30, 8(r1) -/* 8015ED24 7C 7E 1B 78 */ mr r30, r3 -/* 8015ED28 7C 9F 23 78 */ mr r31, r4 -/* 8015ED2C 48 00 00 81 */ bl initData__14daPy_anmHeap_cFv -/* 8015ED30 93 FE 00 08 */ stw r31, 8(r30) -/* 8015ED34 7F C3 F3 78 */ mr r3, r30 -/* 8015ED38 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015ED3C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015ED40 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015ED44 7C 08 03 A6 */ mtlr r0 -/* 8015ED48 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015ED4C 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/checkAnmEnd__16daPy_frameCtrl_cFv.s b/asm/d/a/d_a_player/checkAnmEnd__16daPy_frameCtrl_cFv.s deleted file mode 100644 index ff47fdff3f1..00000000000 --- a/asm/d/a/d_a_player/checkAnmEnd__16daPy_frameCtrl_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_8015E4CC: -/* 8015E4CC A0 03 00 14 */ lhz r0, 0x14(r3) -/* 8015E4D0 28 00 00 00 */ cmplwi r0, 0 -/* 8015E4D4 41 82 00 18 */ beq lbl_8015E4EC -/* 8015E4D8 A0 03 00 16 */ lhz r0, 0x16(r3) -/* 8015E4DC 28 00 00 00 */ cmplwi r0, 0 -/* 8015E4E0 40 82 00 0C */ bne lbl_8015E4EC -/* 8015E4E4 38 60 00 01 */ li r3, 1 -/* 8015E4E8 4E 80 00 20 */ blr -lbl_8015E4EC: -/* 8015E4EC C0 22 9C 00 */ lfs f1, lit_4215(r2) -/* 8015E4F0 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 8015E4F4 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8015E4F8 40 82 00 10 */ bne lbl_8015E508 -/* 8015E4FC 38 00 00 01 */ li r0, 1 -/* 8015E500 B0 03 00 14 */ sth r0, 0x14(r3) -/* 8015E504 B0 03 00 16 */ sth r0, 0x16(r3) -lbl_8015E508: -/* 8015E508 38 60 00 00 */ li r3, 0 -/* 8015E50C 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/clearData__16daPy_actorKeep_cFv.s b/asm/d/a/d_a_player/clearData__16daPy_actorKeep_cFv.s deleted file mode 100644 index 8c147bf4a7e..00000000000 --- a/asm/d/a/d_a_player/clearData__16daPy_actorKeep_cFv.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_8015ECFC: -/* 8015ECFC 38 00 FF FF */ li r0, -1 -/* 8015ED00 90 03 00 00 */ stw r0, 0(r3) -/* 8015ED04 38 00 00 00 */ li r0, 0 -/* 8015ED08 90 03 00 04 */ stw r0, 4(r3) -/* 8015ED0C 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/getSpinnerRideSpeed__9daPy_py_cCFv.s b/asm/d/a/d_a_player/getSpinnerRideSpeed__9daPy_py_cCFv.s deleted file mode 100644 index 745b8c77bed..00000000000 --- a/asm/d/a/d_a_player/getSpinnerRideSpeed__9daPy_py_cCFv.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_8015F7C8: -/* 8015F7C8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015F7CC 7C 08 02 A6 */ mflr r0 -/* 8015F7D0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015F7D4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015F7D8 7C 7F 1B 78 */ mr r31, r3 -/* 8015F7DC 81 83 06 28 */ lwz r12, 0x628(r3) -/* 8015F7E0 81 8C 01 98 */ lwz r12, 0x198(r12) -/* 8015F7E4 7D 89 03 A6 */ mtctr r12 -/* 8015F7E8 4E 80 04 21 */ bctrl -/* 8015F7EC 28 03 00 00 */ cmplwi r3, 0 -/* 8015F7F0 41 82 00 0C */ beq lbl_8015F7FC -/* 8015F7F4 C0 3F 05 2C */ lfs f1, 0x52c(r31) -/* 8015F7F8 48 00 00 08 */ b lbl_8015F800 -lbl_8015F7FC: -/* 8015F7FC C0 22 9C 00 */ lfs f1, lit_4215(r2) -lbl_8015F800: -/* 8015F800 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015F804 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015F808 7C 08 03 A6 */ mtlr r0 -/* 8015F80C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015F810 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/initData__14daPy_anmHeap_cFv.s b/asm/d/a/d_a_player/initData__14daPy_anmHeap_cFv.s deleted file mode 100644 index fdfbfb17de3..00000000000 --- a/asm/d/a/d_a_player/initData__14daPy_anmHeap_cFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_8015EDAC: -/* 8015EDAC 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FFFF@ha */ -/* 8015EDB0 38 04 FF FF */ addi r0, r4, 0xFFFF /* 0x0000FFFF@l */ -/* 8015EDB4 B0 03 00 00 */ sth r0, 0(r3) -/* 8015EDB8 B0 03 00 02 */ sth r0, 2(r3) -/* 8015EDBC B0 03 00 04 */ sth r0, 4(r3) -/* 8015EDC0 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/updateFrame__16daPy_frameCtrl_cFv.s b/asm/d/a/d_a_player/updateFrame__16daPy_frameCtrl_cFv.s deleted file mode 100644 index f77f0e4145f..00000000000 --- a/asm/d/a/d_a_player/updateFrame__16daPy_frameCtrl_cFv.s +++ /dev/null @@ -1,14 +0,0 @@ -lbl_8015E510: -/* 8015E510 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015E514 7C 08 02 A6 */ mflr r0 -/* 8015E518 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015E51C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015E520 7C 7F 1B 78 */ mr r31, r3 -/* 8015E524 48 1C A4 A9 */ bl update__12J3DFrameCtrlFv -/* 8015E528 38 00 00 00 */ li r0, 0 -/* 8015E52C B0 1F 00 16 */ sth r0, 0x16(r31) -/* 8015E530 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015E534 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015E538 7C 08 03 A6 */ mtlr r0 -/* 8015E53C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015E540 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/__ct__13dMeter2Info_cFv.s b/asm/d/meter/d_meter2_info/__ct__13dMeter2Info_cFv.s deleted file mode 100644 index 8244a838bef..00000000000 --- a/asm/d/meter/d_meter2_info/__ct__13dMeter2Info_cFv.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_8021BDDC: -/* 8021BDDC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8021BDE0 7C 08 02 A6 */ mflr r0 -/* 8021BDE4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8021BDE8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8021BDEC 7C 7F 1B 78 */ mr r31, r3 -/* 8021BDF0 3C 80 80 3C */ lis r4, __vt__13dMeter2Info_c@ha /* 0x803BFA1C@ha */ -/* 8021BDF4 38 04 FA 1C */ addi r0, r4, __vt__13dMeter2Info_c@l /* 0x803BFA1C@l */ -/* 8021BDF8 90 03 00 00 */ stw r0, 0(r3) -/* 8021BDFC 48 00 00 6D */ bl init__13dMeter2Info_cFv -/* 8021BE00 38 00 00 00 */ li r0, 0 -/* 8021BE04 90 1F 00 90 */ stw r0, 0x90(r31) -/* 8021BE08 7F E3 FB 78 */ mr r3, r31 -/* 8021BE0C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8021BE10 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8021BE14 7C 08 03 A6 */ mtlr r0 -/* 8021BE18 38 21 00 10 */ addi r1, r1, 0x10 -/* 8021BE1C 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/__sinit_d_meter2_info_cpp.s b/asm/d/meter/d_meter2_info/__sinit_d_meter2_info_cpp.s deleted file mode 100644 index 5a99e5c8538..00000000000 --- a/asm/d/meter/d_meter2_info/__sinit_d_meter2_info_cpp.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_8021E9D8: -/* 8021E9D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8021E9DC 7C 08 02 A6 */ mflr r0 -/* 8021E9E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8021E9E4 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 8021E9E8 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 8021E9EC 4B FF D3 F1 */ bl __ct__13dMeter2Info_cFv -/* 8021E9F0 3C 80 80 22 */ lis r4, __dt__13dMeter2Info_cFv@ha /* 0x8021BE20@ha */ -/* 8021E9F4 38 84 BE 20 */ addi r4, r4, __dt__13dMeter2Info_cFv@l /* 0x8021BE20@l */ -/* 8021E9F8 3C A0 80 43 */ lis r5, lit_3846@ha /* 0x80430178@ha */ -/* 8021E9FC 38 A5 01 78 */ addi r5, r5, lit_3846@l /* 0x80430178@l */ -/* 8021EA00 48 14 32 25 */ bl __register_global_object -/* 8021EA04 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8021EA08 7C 08 03 A6 */ mtlr r0 -/* 8021EA0C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8021EA10 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/dMeter2Info_getNumberTextureName__Fi.s b/asm/d/meter/d_meter2_info/dMeter2Info_getNumberTextureName__Fi.s deleted file mode 100644 index 74cf3fec0c7..00000000000 --- a/asm/d/meter/d_meter2_info/dMeter2Info_getNumberTextureName__Fi.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_8021E2C8: -/* 8021E2C8 54 60 10 3A */ slwi r0, r3, 2 -/* 8021E2CC 3C 60 80 3C */ lis r3, tex_name_5183@ha /* 0x803BF7F4@ha */ -/* 8021E2D0 38 63 F7 F4 */ addi r3, r3, tex_name_5183@l /* 0x803BF7F4@l */ -/* 8021E2D4 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8021E2D8 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/dMeter2Info_getPlusTextureName__Fv.s b/asm/d/meter/d_meter2_info/dMeter2Info_getPlusTextureName__Fv.s deleted file mode 100644 index 8fb9c569abe..00000000000 --- a/asm/d/meter/d_meter2_info/dMeter2Info_getPlusTextureName__Fv.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_8021E2DC: -/* 8021E2DC 88 0D 8B 3C */ lbz r0, data_804510BC(r13) -/* 8021E2E0 7C 00 07 75 */ extsb. r0, r0 -/* 8021E2E4 40 82 00 1C */ bne lbl_8021E300 -/* 8021E2E8 3C 60 80 3A */ lis r3, d_meter_d_meter2_info__stringBase0@ha /* 0x80399168@ha */ -/* 8021E2EC 38 63 91 68 */ addi r3, r3, d_meter_d_meter2_info__stringBase0@l /* 0x80399168@l */ -/* 8021E2F0 38 03 01 B4 */ addi r0, r3, 0x1b4 -/* 8021E2F4 90 0D 8B 38 */ stw r0, tex_name_5188(r13) -/* 8021E2F8 38 00 00 01 */ li r0, 1 -/* 8021E2FC 98 0D 8B 3C */ stb r0, data_804510BC(r13) -lbl_8021E300: -/* 8021E300 80 6D 8B 38 */ lwz r3, tex_name_5188(r13) -/* 8021E304 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/decFloatingMessageTimer__13dMeter2Info_cFv.s b/asm/d/meter/d_meter2_info/decFloatingMessageTimer__13dMeter2Info_cFv.s deleted file mode 100644 index 77a0fca30f5..00000000000 --- a/asm/d/meter/d_meter2_info/decFloatingMessageTimer__13dMeter2Info_cFv.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_8021C1F0: -/* 8021C1F0 A8 83 00 A8 */ lha r4, 0xa8(r3) -/* 8021C1F4 2C 04 00 00 */ cmpwi r4, 0 -/* 8021C1F8 40 81 00 10 */ ble lbl_8021C208 -/* 8021C1FC 38 04 FF FF */ addi r0, r4, -1 -/* 8021C200 B0 03 00 A8 */ sth r0, 0xa8(r3) -/* 8021C204 48 00 00 0C */ b lbl_8021C210 -lbl_8021C208: -/* 8021C208 38 00 00 00 */ li r0, 0 -/* 8021C20C B0 03 00 A8 */ sth r0, 0xa8(r3) -lbl_8021C210: -/* 8021C210 A8 63 00 A8 */ lha r3, 0xa8(r3) -/* 8021C214 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/decHotSpringTimer__13dMeter2Info_cFv.s b/asm/d/meter/d_meter2_info/decHotSpringTimer__13dMeter2Info_cFv.s deleted file mode 100644 index 27518eae6e1..00000000000 --- a/asm/d/meter/d_meter2_info/decHotSpringTimer__13dMeter2Info_cFv.s +++ /dev/null @@ -1,34 +0,0 @@ -lbl_8021DCE0: -/* 8021DCE0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8021DCE4 7C 08 02 A6 */ mflr r0 -/* 8021DCE8 90 01 00 24 */ stw r0, 0x24(r1) -/* 8021DCEC 39 61 00 20 */ addi r11, r1, 0x20 -/* 8021DCF0 48 14 44 ED */ bl _savegpr_29 -/* 8021DCF4 7C 7D 1B 78 */ mr r29, r3 -/* 8021DCF8 3B C0 00 00 */ li r30, 0 -/* 8021DCFC 3B E0 00 00 */ li r31, 0 -lbl_8021DD00: -/* 8021DD00 38 9F 00 9A */ addi r4, r31, 0x9a -/* 8021DD04 7C 7D 22 2E */ lhzx r3, r29, r4 -/* 8021DD08 28 03 00 00 */ cmplwi r3, 0 -/* 8021DD0C 41 82 00 28 */ beq lbl_8021DD34 -/* 8021DD10 38 03 FF FF */ addi r0, r3, -1 -/* 8021DD14 7C 1D 23 2E */ sthx r0, r29, r4 -/* 8021DD18 7C 1D 22 2E */ lhzx r0, r29, r4 -/* 8021DD1C 28 00 00 00 */ cmplwi r0, 0 -/* 8021DD20 40 82 00 14 */ bne lbl_8021DD34 -/* 8021DD24 7F A3 EB 78 */ mr r3, r29 -/* 8021DD28 38 1E 00 0B */ addi r0, r30, 0xb -/* 8021DD2C 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 8021DD30 48 00 00 2D */ bl changeWater__13dMeter2Info_cFUc -lbl_8021DD34: -/* 8021DD34 3B DE 00 01 */ addi r30, r30, 1 -/* 8021DD38 2C 1E 00 04 */ cmpwi r30, 4 -/* 8021DD3C 3B FF 00 02 */ addi r31, r31, 2 -/* 8021DD40 41 80 FF C0 */ blt lbl_8021DD00 -/* 8021DD44 39 61 00 20 */ addi r11, r1, 0x20 -/* 8021DD48 48 14 44 E1 */ bl _restgpr_29 -/* 8021DD4C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8021DD50 7C 08 03 A6 */ mtlr r0 -/* 8021DD54 38 21 00 20 */ addi r1, r1, 0x20 -/* 8021DD58 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/decMsgKeyWaitTimer__13dMeter2Info_cFv.s b/asm/d/meter/d_meter2_info/decMsgKeyWaitTimer__13dMeter2Info_cFv.s deleted file mode 100644 index 689b965ad66..00000000000 --- a/asm/d/meter/d_meter2_info/decMsgKeyWaitTimer__13dMeter2Info_cFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_8021C238: -/* 8021C238 A8 83 00 94 */ lha r4, 0x94(r3) -/* 8021C23C 2C 04 00 00 */ cmpwi r4, 0 -/* 8021C240 4C 81 00 20 */ blelr -/* 8021C244 38 04 FF FF */ addi r0, r4, -1 -/* 8021C248 B0 03 00 94 */ sth r0, 0x94(r3) -/* 8021C24C 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/get4thTexture__13dMeter2Info_cFUc.s b/asm/d/meter/d_meter2_info/get4thTexture__13dMeter2Info_cFUc.s deleted file mode 100644 index d4c06a75b6c..00000000000 --- a/asm/d/meter/d_meter2_info/get4thTexture__13dMeter2Info_cFUc.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_8021D4FC: -/* 8021D4FC 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 8021D500 2C 00 00 08 */ cmpwi r0, 8 -/* 8021D504 40 80 00 18 */ bge lbl_8021D51C -/* 8021D508 2C 00 00 01 */ cmpwi r0, 1 -/* 8021D50C 40 80 00 08 */ bge lbl_8021D514 -/* 8021D510 48 00 00 0C */ b lbl_8021D51C -lbl_8021D514: -/* 8021D514 38 60 00 2E */ li r3, 0x2e -/* 8021D518 4E 80 00 20 */ blr -lbl_8021D51C: -/* 8021D51C 38 60 FF FF */ li r3, -1 -/* 8021D520 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/isDirectUseItem__13dMeter2Info_cFi.s b/asm/d/meter/d_meter2_info/isDirectUseItem__13dMeter2Info_cFi.s deleted file mode 100644 index 34c4e398a93..00000000000 --- a/asm/d/meter/d_meter2_info/isDirectUseItem__13dMeter2Info_cFi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8021C950: -/* 8021C950 88 63 00 B8 */ lbz r3, 0xb8(r3) -/* 8021C954 38 00 00 01 */ li r0, 1 -/* 8021C958 7C 00 20 30 */ slw r0, r0, r4 -/* 8021C95C 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 8021C960 7C 63 00 38 */ and r3, r3, r0 -/* 8021C964 30 03 FF FF */ addic r0, r3, -1 -/* 8021C968 7C 60 19 10 */ subfe r3, r0, r3 -/* 8021C96C 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/onDirectUseItem__13dMeter2Info_cFi.s b/asm/d/meter/d_meter2_info/onDirectUseItem__13dMeter2Info_cFi.s deleted file mode 100644 index d822b5973e4..00000000000 --- a/asm/d/meter/d_meter2_info/onDirectUseItem__13dMeter2Info_cFi.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_8021C934: -/* 8021C934 88 A3 00 B8 */ lbz r5, 0xb8(r3) -/* 8021C938 38 00 00 01 */ li r0, 1 -/* 8021C93C 7C 00 20 30 */ slw r0, r0, r4 -/* 8021C940 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 8021C944 7C A0 03 78 */ or r0, r5, r0 -/* 8021C948 98 03 00 B8 */ stb r0, 0xb8(r3) -/* 8021C94C 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/resetFloatingMessage__13dMeter2Info_cFv.s b/asm/d/meter/d_meter2_info/resetFloatingMessage__13dMeter2Info_cFv.s deleted file mode 100644 index efd5396de79..00000000000 --- a/asm/d/meter/d_meter2_info/resetFloatingMessage__13dMeter2Info_cFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8021C218: -/* 8021C218 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FFFF@ha */ -/* 8021C21C 38 04 FF FF */ addi r0, r4, 0xFFFF /* 0x0000FFFF@l */ -/* 8021C220 B0 03 00 A4 */ sth r0, 0xa4(r3) -/* 8021C224 B0 03 00 A6 */ sth r0, 0xa6(r3) -/* 8021C228 38 00 00 00 */ li r0, 0 -/* 8021C22C B0 03 00 A8 */ sth r0, 0xa8(r3) -/* 8021C230 98 03 00 F1 */ stb r0, 0xf1(r3) -/* 8021C234 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/resetMeterString__13dMeter2Info_cFv.s b/asm/d/meter/d_meter2_info/resetMeterString__13dMeter2Info_cFv.s deleted file mode 100644 index be975bc3d8f..00000000000 --- a/asm/d/meter/d_meter2_info/resetMeterString__13dMeter2Info_cFv.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8021CC00: -/* 8021CC00 38 00 00 00 */ li r0, 0 -/* 8021CC04 90 03 00 8C */ stw r0, 0x8c(r3) -/* 8021CC08 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/setHotSpringTimer__13dMeter2Info_cFUc.s b/asm/d/meter/d_meter2_info/setHotSpringTimer__13dMeter2Info_cFUc.s deleted file mode 100644 index 748f03dad3c..00000000000 --- a/asm/d/meter/d_meter2_info/setHotSpringTimer__13dMeter2Info_cFUc.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_8021DCC4: -/* 8021DCC4 38 A0 03 84 */ li r5, 0x384 -/* 8021DCC8 54 84 06 3E */ clrlwi r4, r4, 0x18 -/* 8021DCCC 38 04 FF F5 */ addi r0, r4, -11 -/* 8021DCD0 54 00 08 3C */ slwi r0, r0, 1 -/* 8021DCD4 7C 63 02 14 */ add r3, r3, r0 -/* 8021DCD8 B0 A3 00 9A */ sth r5, 0x9a(r3) -/* 8021DCDC 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/setMiniGameCount__13dMeter2Info_cFSc.s b/asm/d/meter/d_meter2_info/setMiniGameCount__13dMeter2Info_cFSc.s deleted file mode 100644 index 520e0c3e664..00000000000 --- a/asm/d/meter/d_meter2_info/setMiniGameCount__13dMeter2Info_cFSc.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_8021E268: -/* 8021E268 7C 80 07 74 */ extsb r0, r4 -/* 8021E26C 2C 00 FF 9D */ cmpwi r0, -99 -/* 8021E270 40 80 00 08 */ bge lbl_8021E278 -/* 8021E274 38 80 FF 9D */ li r4, -99 -lbl_8021E278: -/* 8021E278 7C 80 07 74 */ extsb r0, r4 -/* 8021E27C 2C 00 00 63 */ cmpwi r0, 0x63 -/* 8021E280 40 81 00 08 */ ble lbl_8021E288 -/* 8021E284 38 80 00 63 */ li r4, 0x63 -lbl_8021E288: -/* 8021E288 98 83 00 DE */ stb r4, 0xde(r3) -/* 8021E28C 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/setSaveStageName__13dMeter2Info_cFPCc.s b/asm/d/meter/d_meter2_info/setSaveStageName__13dMeter2Info_cFPCc.s deleted file mode 100644 index bd70684493e..00000000000 --- a/asm/d/meter/d_meter2_info/setSaveStageName__13dMeter2Info_cFPCc.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_8021E290: -/* 8021E290 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8021E294 7C 08 02 A6 */ mflr r0 -/* 8021E298 90 01 00 14 */ stw r0, 0x14(r1) -/* 8021E29C 38 63 00 E9 */ addi r3, r3, 0xe9 -/* 8021E2A0 48 14 A8 8D */ bl strcpy -/* 8021E2A4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8021E2A8 7C 08 03 A6 */ mtlr r0 -/* 8021E2AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8021E2B0 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_info/setWarpInfo__13dMeter2Info_cFPCcRC4cXyzsUcUcUc.s b/asm/d/meter/d_meter2_info/setWarpInfo__13dMeter2Info_cFPCcRC4cXyzsUcUcUc.s deleted file mode 100644 index a34272f73e1..00000000000 --- a/asm/d/meter/d_meter2_info/setWarpInfo__13dMeter2Info_cFPCcRC4cXyzsUcUcUc.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_8021CC0C: -/* 8021CC0C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8021CC10 7C 08 02 A6 */ mflr r0 -/* 8021CC14 90 01 00 24 */ stw r0, 0x24(r1) -/* 8021CC18 39 61 00 20 */ addi r11, r1, 0x20 -/* 8021CC1C 48 14 55 B5 */ bl _savegpr_26 -/* 8021CC20 7C 7A 1B 78 */ mr r26, r3 -/* 8021CC24 7C BB 2B 78 */ mr r27, r5 -/* 8021CC28 7C DC 33 78 */ mr r28, r6 -/* 8021CC2C 7C FD 3B 78 */ mr r29, r7 -/* 8021CC30 7D 1E 43 78 */ mr r30, r8 -/* 8021CC34 7D 3F 4B 78 */ mr r31, r9 -/* 8021CC38 38 7A 00 38 */ addi r3, r26, 0x38 -/* 8021CC3C 48 14 BE F1 */ bl strcpy -/* 8021CC40 C0 1B 00 00 */ lfs f0, 0(r27) -/* 8021CC44 D0 1A 00 40 */ stfs f0, 0x40(r26) -/* 8021CC48 C0 1B 00 04 */ lfs f0, 4(r27) -/* 8021CC4C D0 1A 00 44 */ stfs f0, 0x44(r26) -/* 8021CC50 C0 1B 00 08 */ lfs f0, 8(r27) -/* 8021CC54 D0 1A 00 48 */ stfs f0, 0x48(r26) -/* 8021CC58 B3 9A 00 4C */ sth r28, 0x4c(r26) -/* 8021CC5C 9B BA 00 4E */ stb r29, 0x4e(r26) -/* 8021CC60 9B DA 00 4F */ stb r30, 0x4f(r26) -/* 8021CC64 9B FA 00 50 */ stb r31, 0x50(r26) -/* 8021CC68 39 61 00 20 */ addi r11, r1, 0x20 -/* 8021CC6C 48 14 55 B1 */ bl _restgpr_26 -/* 8021CC70 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8021CC74 7C 08 03 A6 */ mtlr r0 -/* 8021CC78 38 21 00 20 */ addi r1, r1, 0x20 -/* 8021CC7C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/addFishCount__18dSv_fishing_info_cFUc.s b/asm/d/save/d_save/addFishCount__18dSv_fishing_info_cFUc.s deleted file mode 100644 index e492cc4dcf0..00000000000 --- a/asm/d/save/d_save/addFishCount__18dSv_fishing_info_cFUc.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_800344FC: -/* 800344FC 54 85 0D FC */ rlwinm r5, r4, 1, 0x17, 0x1e -/* 80034500 7C 83 2A 2E */ lhzx r4, r3, r5 -/* 80034504 28 04 03 E7 */ cmplwi r4, 0x3e7 -/* 80034508 4C 80 00 20 */ bgelr -/* 8003450C 38 04 00 01 */ addi r0, r4, 1 -/* 80034510 7C 03 2B 2E */ sthx r0, r3, r5 -/* 80034514 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/checkBombBag__17dSv_player_item_cFUc.s b/asm/d/save/d_save/checkBombBag__17dSv_player_item_cFUc.s deleted file mode 100644 index c3345d6e962..00000000000 --- a/asm/d/save/d_save/checkBombBag__17dSv_player_item_cFUc.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_80033BEC: -/* 80033BEC 38 C0 00 00 */ li r6, 0 -/* 80033BF0 38 E0 00 00 */ li r7, 0 -/* 80033BF4 54 85 06 3E */ clrlwi r5, r4, 0x18 -/* 80033BF8 38 00 00 03 */ li r0, 3 -/* 80033BFC 7C 09 03 A6 */ mtctr r0 -lbl_80033C00: -/* 80033C00 38 07 00 0F */ addi r0, r7, 0xf -/* 80033C04 7C 03 00 AE */ lbzx r0, r3, r0 -/* 80033C08 7C 05 00 40 */ cmplw r5, r0 -/* 80033C0C 40 82 00 10 */ bne lbl_80033C1C -/* 80033C10 54 C4 06 3E */ clrlwi r4, r6, 0x18 -/* 80033C14 38 04 00 01 */ addi r0, r4, 1 -/* 80033C18 54 06 06 3E */ clrlwi r6, r0, 0x18 -lbl_80033C1C: -/* 80033C1C 38 E7 00 01 */ addi r7, r7, 1 -/* 80033C20 42 00 FF E0 */ bdnz lbl_80033C00 -/* 80033C24 7C C3 33 78 */ mr r3, r6 -/* 80033C28 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/checkBottle__17dSv_player_item_cFUc.s b/asm/d/save/d_save/checkBottle__17dSv_player_item_cFUc.s deleted file mode 100644 index 641da8d9fb9..00000000000 --- a/asm/d/save/d_save/checkBottle__17dSv_player_item_cFUc.s +++ /dev/null @@ -1,32 +0,0 @@ -lbl_800336E0: -/* 800336E0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800336E4 7C 08 02 A6 */ mflr r0 -/* 800336E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800336EC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800336F0 93 C1 00 08 */ stw r30, 8(r1) -/* 800336F4 7C 7E 1B 78 */ mr r30, r3 -/* 800336F8 3B E0 00 00 */ li r31, 0 -/* 800336FC 7C 83 23 78 */ mr r3, r4 -/* 80033700 4B FF F2 19 */ bl dSv_item_rename__FUc -/* 80033704 38 A0 00 00 */ li r5, 0 -/* 80033708 54 64 06 3E */ clrlwi r4, r3, 0x18 -/* 8003370C 38 00 00 04 */ li r0, 4 -/* 80033710 7C 09 03 A6 */ mtctr r0 -lbl_80033714: -/* 80033714 38 05 00 0B */ addi r0, r5, 0xb -/* 80033718 7C 1E 00 AE */ lbzx r0, r30, r0 -/* 8003371C 7C 04 00 40 */ cmplw r4, r0 -/* 80033720 40 82 00 10 */ bne lbl_80033730 -/* 80033724 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 80033728 38 03 00 01 */ addi r0, r3, 1 -/* 8003372C 54 1F 06 3E */ clrlwi r31, r0, 0x18 -lbl_80033730: -/* 80033730 38 A5 00 01 */ addi r5, r5, 1 -/* 80033734 42 00 FF E0 */ bdnz lbl_80033714 -/* 80033738 7F E3 FB 78 */ mr r3, r31 -/* 8003373C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80033740 83 C1 00 08 */ lwz r30, 8(r1) -/* 80033744 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80033748 7C 08 03 A6 */ mtlr r0 -/* 8003374C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80033750 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/checkEmptyBottle__17dSv_player_item_cFv.s b/asm/d/save/d_save/checkEmptyBottle__17dSv_player_item_cFv.s deleted file mode 100644 index 4342f98bb99..00000000000 --- a/asm/d/save/d_save/checkEmptyBottle__17dSv_player_item_cFv.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_800337EC: -/* 800337EC 38 80 00 00 */ li r4, 0 -/* 800337F0 38 A0 00 00 */ li r5, 0 -/* 800337F4 38 00 00 04 */ li r0, 4 -/* 800337F8 7C 09 03 A6 */ mtctr r0 -lbl_800337FC: -/* 800337FC 38 05 00 0B */ addi r0, r5, 0xb -/* 80033800 7C 03 00 AE */ lbzx r0, r3, r0 -/* 80033804 28 00 00 60 */ cmplwi r0, 0x60 -/* 80033808 40 82 00 10 */ bne lbl_80033818 -/* 8003380C 54 84 06 3E */ clrlwi r4, r4, 0x18 -/* 80033810 38 04 00 01 */ addi r0, r4, 1 -/* 80033814 54 04 06 3E */ clrlwi r4, r0, 0x18 -lbl_80033818: -/* 80033818 38 A5 00 01 */ addi r5, r5, 1 -/* 8003381C 42 00 FF E0 */ bdnz lbl_800337FC -/* 80033820 7C 83 23 78 */ mr r3, r4 -/* 80033824 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/clearRoomItem__13dSv_zoneBit_cFv.s b/asm/d/save/d_save/clearRoomItem__13dSv_zoneBit_cFv.s deleted file mode 100644 index 778c8b8e866..00000000000 --- a/asm/d/save/d_save/clearRoomItem__13dSv_zoneBit_cFv.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_80034CF8: -/* 80034CF8 38 00 00 00 */ li r0, 0 -/* 80034CFC B0 03 00 0A */ sth r0, 0xa(r3) -/* 80034D00 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/clearRoomSwitch__13dSv_zoneBit_cFv.s b/asm/d/save/d_save/clearRoomSwitch__13dSv_zoneBit_cFv.s deleted file mode 100644 index 57350590a3a..00000000000 --- a/asm/d/save/d_save/clearRoomSwitch__13dSv_zoneBit_cFv.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_80034CEC: -/* 80034CEC 38 00 00 00 */ li r0, 0 -/* 80034CF0 B0 03 00 04 */ sth r0, 4(r3) -/* 80034CF4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/createZone__10dSv_info_cFi.s b/asm/d/save/d_save/createZone__10dSv_info_cFi.s deleted file mode 100644 index 8858623b4cd..00000000000 --- a/asm/d/save/d_save/createZone__10dSv_info_cFi.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_800351A4: -/* 800351A4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800351A8 7C 08 02 A6 */ mflr r0 -/* 800351AC 90 01 00 14 */ stw r0, 0x14(r1) -/* 800351B0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800351B4 38 63 09 B4 */ addi r3, r3, 0x9b4 -/* 800351B8 3B E0 00 00 */ li r31, 0 -/* 800351BC 38 00 00 20 */ li r0, 0x20 -/* 800351C0 7C 09 03 A6 */ mtctr r0 -lbl_800351C4: -/* 800351C4 88 03 00 00 */ lbz r0, 0(r3) -/* 800351C8 7C 00 07 75 */ extsb. r0, r0 -/* 800351CC 40 80 00 10 */ bge lbl_800351DC -/* 800351D0 4B FF FD 75 */ bl init__10dSv_zone_cFi -/* 800351D4 7F E3 FB 78 */ mr r3, r31 -/* 800351D8 48 00 00 14 */ b lbl_800351EC -lbl_800351DC: -/* 800351DC 38 63 00 20 */ addi r3, r3, 0x20 -/* 800351E0 3B FF 00 01 */ addi r31, r31, 1 -/* 800351E4 42 00 FF E0 */ bdnz lbl_800351C4 -/* 800351E8 38 60 FF FF */ li r3, -1 -lbl_800351EC: -/* 800351EC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800351F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800351F4 7C 08 03 A6 */ mtlr r0 -/* 800351F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800351FC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/dSv_item_rename__FUc.s b/asm/d/save/d_save/dSv_item_rename__FUc.s deleted file mode 100644 index 52b7da619ea..00000000000 --- a/asm/d/save/d_save/dSv_item_rename__FUc.s +++ /dev/null @@ -1,21 +0,0 @@ -lbl_80032918: -/* 80032918 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8003291C 2C 00 00 69 */ cmpwi r0, 0x69 -/* 80032920 41 82 00 28 */ beq lbl_80032948 -/* 80032924 40 80 00 10 */ bge lbl_80032934 -/* 80032928 2C 00 00 68 */ cmpwi r0, 0x68 -/* 8003292C 40 80 00 14 */ bge lbl_80032940 -/* 80032930 4E 80 00 20 */ blr -lbl_80032934: -/* 80032934 2C 00 00 6E */ cmpwi r0, 0x6e -/* 80032938 41 82 00 18 */ beq lbl_80032950 -/* 8003293C 4E 80 00 20 */ blr -lbl_80032940: -/* 80032940 38 60 00 66 */ li r3, 0x66 -/* 80032944 4E 80 00 20 */ blr -lbl_80032948: -/* 80032948 38 60 00 61 */ li r3, 0x61 -/* 8003294C 4E 80 00 20 */ blr -lbl_80032950: -/* 80032950 38 60 00 6F */ li r3, 0x6f -/* 80032954 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getBombNum__24dSv_player_item_record_cCFUc.s b/asm/d/save/d_save/getBombNum__24dSv_player_item_record_cCFUc.s deleted file mode 100644 index b3bca756f73..00000000000 --- a/asm/d/save/d_save/getBombNum__24dSv_player_item_record_cCFUc.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80033F7C: -/* 80033F7C 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80033F80 7C 63 02 14 */ add r3, r3, r0 -/* 80033F84 88 63 00 01 */ lbz r3, 1(r3) -/* 80033F88 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getBottleNum__24dSv_player_item_record_cCFUc.s b/asm/d/save/d_save/getBottleNum__24dSv_player_item_record_cCFUc.s deleted file mode 100644 index 0c78a26350a..00000000000 --- a/asm/d/save/d_save/getBottleNum__24dSv_player_item_record_cCFUc.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80034030: -/* 80034030 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034034 7C 63 02 14 */ add r3, r3, r0 -/* 80034038 88 63 00 04 */ lbz r3, 4(r3) -/* 8003403C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getEventReg__11dSv_event_cCFUs.s b/asm/d/save/d_save/getEventReg__11dSv_event_cCFUs.s deleted file mode 100644 index af1d1361da9..00000000000 --- a/asm/d/save/d_save/getEventReg__11dSv_event_cCFUs.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80034A04: -/* 80034A04 54 85 06 3E */ clrlwi r5, r4, 0x18 -/* 80034A08 54 80 C6 3E */ rlwinm r0, r4, 0x18, 0x18, 0x1f -/* 80034A0C 7C 03 00 AE */ lbzx r0, r3, r0 -/* 80034A10 7C A0 00 38 */ and r0, r5, r0 -/* 80034A14 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 80034A18 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getLightDropNum__16dSv_light_drop_cCFUc.s b/asm/d/save/d_save/getLightDropNum__16dSv_light_drop_cCFUc.s deleted file mode 100644 index ee9238e8ed2..00000000000 --- a/asm/d/save/d_save/getLightDropNum__16dSv_light_drop_cCFUc.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80034340: -/* 80034340 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034344 28 00 00 04 */ cmplwi r0, 4 -/* 80034348 41 80 00 14 */ blt lbl_8003435C -/* 8003434C 28 00 00 06 */ cmplwi r0, 6 -/* 80034350 41 81 00 0C */ bgt lbl_8003435C -/* 80034354 38 60 00 00 */ li r3, 0 -/* 80034358 4E 80 00 20 */ blr -lbl_8003435C: -/* 8003435C 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034360 7C 63 00 AE */ lbzx r3, r3, r0 -/* 80034364 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getLineUpItem__17dSv_player_item_cCFi.s b/asm/d/save/d_save/getLineUpItem__17dSv_player_item_cCFi.s deleted file mode 100644 index 7a600f5f911..00000000000 --- a/asm/d/save/d_save/getLineUpItem__17dSv_player_item_cCFi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80033354: -/* 80033354 2C 04 00 18 */ cmpwi r4, 0x18 -/* 80033358 40 80 00 10 */ bge lbl_80033368 -/* 8003335C 7C 63 22 14 */ add r3, r3, r4 -/* 80033360 88 63 00 18 */ lbz r3, 0x18(r3) -/* 80033364 4E 80 00 20 */ blr -lbl_80033368: -/* 80033368 38 60 00 FF */ li r3, 0xff -/* 8003336C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getMixItemIndex__21dSv_player_status_a_cCFi.s b/asm/d/save/d_save/getMixItemIndex__21dSv_player_status_a_cCFi.s deleted file mode 100644 index 02cbb61eeee..00000000000 --- a/asm/d/save/d_save/getMixItemIndex__21dSv_player_status_a_cCFi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80032A8C: -/* 80032A8C 2C 04 00 04 */ cmpwi r4, 4 -/* 80032A90 40 80 00 10 */ bge lbl_80032AA0 -/* 80032A94 7C 63 22 14 */ add r3, r3, r4 -/* 80032A98 88 63 00 0F */ lbz r3, 0xf(r3) -/* 80032A9C 4E 80 00 20 */ blr -lbl_80032AA0: -/* 80032AA0 38 60 00 00 */ li r3, 0 -/* 80032AA4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getRupeeMax__21dSv_player_status_a_cCFv.s b/asm/d/save/d_save/getRupeeMax__21dSv_player_status_a_cCFv.s deleted file mode 100644 index 975d291bbec..00000000000 --- a/asm/d/save/d_save/getRupeeMax__21dSv_player_status_a_cCFv.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_80032AA8: -/* 80032AA8 88 03 00 19 */ lbz r0, 0x19(r3) -/* 80032AAC 28 00 00 03 */ cmplwi r0, 3 -/* 80032AB0 40 80 00 40 */ bge lbl_80032AF0 -/* 80032AB4 2C 00 00 01 */ cmpwi r0, 1 -/* 80032AB8 41 82 00 28 */ beq lbl_80032AE0 -/* 80032ABC 40 80 00 10 */ bge lbl_80032ACC -/* 80032AC0 2C 00 00 00 */ cmpwi r0, 0 -/* 80032AC4 40 80 00 14 */ bge lbl_80032AD8 -/* 80032AC8 48 00 00 28 */ b lbl_80032AF0 -lbl_80032ACC: -/* 80032ACC 2C 00 00 03 */ cmpwi r0, 3 -/* 80032AD0 40 80 00 20 */ bge lbl_80032AF0 -/* 80032AD4 48 00 00 14 */ b lbl_80032AE8 -lbl_80032AD8: -/* 80032AD8 38 60 01 2C */ li r3, 0x12c -/* 80032ADC 4E 80 00 20 */ blr -lbl_80032AE0: -/* 80032AE0 38 60 02 58 */ li r3, 0x258 -/* 80032AE4 4E 80 00 20 */ blr -lbl_80032AE8: -/* 80032AE8 38 60 03 E8 */ li r3, 0x3e8 -/* 80032AEC 4E 80 00 20 */ blr -lbl_80032AF0: -/* 80032AF0 38 60 00 00 */ li r3, 0 -/* 80032AF4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getSave2__10dSv_save_cFi.s b/asm/d/save/d_save/getSave2__10dSv_save_cFi.s deleted file mode 100644 index 3236d34d8ea..00000000000 --- a/asm/d/save/d_save/getSave2__10dSv_save_cFi.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_800350A8: -/* 800350A8 7C 60 1B 78 */ mr r0, r3 -/* 800350AC 54 83 18 38 */ slwi r3, r4, 3 -/* 800350B0 38 63 05 F0 */ addi r3, r3, 0x5f0 -/* 800350B4 7C 60 1A 14 */ add r3, r0, r3 -/* 800350B8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getSelectItemIndex__21dSv_player_status_a_cCFi.s b/asm/d/save/d_save/getSelectItemIndex__21dSv_player_status_a_cCFi.s deleted file mode 100644 index 08459c9cd05..00000000000 --- a/asm/d/save/d_save/getSelectItemIndex__21dSv_player_status_a_cCFi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80032A5C: -/* 80032A5C 2C 04 00 04 */ cmpwi r4, 4 -/* 80032A60 40 80 00 10 */ bge lbl_80032A70 -/* 80032A64 7C 63 22 14 */ add r3, r3, r4 -/* 80032A68 88 63 00 0B */ lbz r3, 0xb(r3) -/* 80032A6C 4E 80 00 20 */ blr -lbl_80032A70: -/* 80032A70 38 60 00 00 */ li r3, 0 -/* 80032A74 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getSound__19dSv_player_config_cFv.s b/asm/d/save/d_save/getSound__19dSv_player_config_cFv.s deleted file mode 100644 index 732dbd32492..00000000000 --- a/asm/d/save/d_save/getSound__19dSv_player_config_cFv.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_80034684: -/* 80034684 88 63 00 01 */ lbz r3, 1(r3) -/* 80034688 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/getVibration__19dSv_player_config_cFv.s b/asm/d/save/d_save/getVibration__19dSv_player_config_cFv.s deleted file mode 100644 index aeec574483b..00000000000 --- a/asm/d/save/d_save/getVibration__19dSv_player_config_cFv.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_80034694: -/* 80034694 88 63 00 03 */ lbz r3, 3(r3) -/* 80034698 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/initZone__10dSv_info_cFv.s b/asm/d/save/d_save/initZone__10dSv_info_cFv.s deleted file mode 100644 index 728710523cb..00000000000 --- a/asm/d/save/d_save/initZone__10dSv_info_cFv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_8003514C: -/* 8003514C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80035150 7C 08 02 A6 */ mflr r0 -/* 80035154 90 01 00 24 */ stw r0, 0x24(r1) -/* 80035158 39 61 00 20 */ addi r11, r1, 0x20 -/* 8003515C 48 32 D0 81 */ bl _savegpr_29 -/* 80035160 7C 7D 1B 78 */ mr r29, r3 -/* 80035164 3B C0 00 00 */ li r30, 0 -/* 80035168 3B E0 00 00 */ li r31, 0 -lbl_8003516C: -/* 8003516C 38 7F 09 B4 */ addi r3, r31, 0x9b4 -/* 80035170 7C 7D 1A 14 */ add r3, r29, r3 -/* 80035174 38 80 FF FF */ li r4, -1 -/* 80035178 4B FF FD CD */ bl init__10dSv_zone_cFi -/* 8003517C 3B DE 00 01 */ addi r30, r30, 1 -/* 80035180 2C 1E 00 20 */ cmpwi r30, 0x20 -/* 80035184 3B FF 00 20 */ addi r31, r31, 0x20 -/* 80035188 41 80 FF E4 */ blt lbl_8003516C -/* 8003518C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80035190 48 32 D0 99 */ bl _restgpr_29 -/* 80035194 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80035198 7C 08 03 A6 */ mtlr r0 -/* 8003519C 38 21 00 20 */ addi r1, r1, 0x20 -/* 800351A0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__10dSv_info_cFv.s b/asm/d/save/d_save/init__10dSv_info_cFv.s deleted file mode 100644 index 6780637cbfd..00000000000 --- a/asm/d/save/d_save/init__10dSv_info_cFv.s +++ /dev/null @@ -1,21 +0,0 @@ -lbl_80034FCC: -/* 80034FCC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80034FD0 7C 08 02 A6 */ mflr r0 -/* 80034FD4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80034FD8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80034FDC 7C 7F 1B 78 */ mr r31, r3 -/* 80034FE0 48 00 00 3D */ bl init__10dSv_save_cFv -/* 80034FE4 38 7F 09 58 */ addi r3, r31, 0x958 -/* 80034FE8 4B FF FA 7D */ bl init__12dSv_memory_cFv -/* 80034FEC 38 7F 09 78 */ addi r3, r31, 0x978 -/* 80034FF0 38 80 FF FF */ li r4, -1 -/* 80034FF4 4B FF FB 21 */ bl init__12dSv_danBit_cFSc -/* 80034FF8 7F E3 FB 78 */ mr r3, r31 -/* 80034FFC 48 00 01 51 */ bl initZone__10dSv_info_cFv -/* 80035000 38 7F 0D D8 */ addi r3, r31, 0xdd8 -/* 80035004 4B FF F9 51 */ bl init__11dSv_event_cFv -/* 80035008 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8003500C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80035010 7C 08 03 A6 */ mtlr r0 -/* 80035014 38 21 00 10 */ addi r1, r1, 0x10 -/* 80035018 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__10dSv_save_cFv.s b/asm/d/save/d_save/init__10dSv_save_cFv.s deleted file mode 100644 index 34ef571a16f..00000000000 --- a/asm/d/save/d_save/init__10dSv_save_cFv.s +++ /dev/null @@ -1,38 +0,0 @@ -lbl_8003501C: -/* 8003501C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80035020 7C 08 02 A6 */ mflr r0 -/* 80035024 90 01 00 24 */ stw r0, 0x24(r1) -/* 80035028 39 61 00 20 */ addi r11, r1, 0x20 -/* 8003502C 48 32 D1 B1 */ bl _savegpr_29 -/* 80035030 7C 7D 1B 78 */ mr r29, r3 -/* 80035034 4B FF F6 71 */ bl init__12dSv_player_cFv -/* 80035038 3B C0 00 00 */ li r30, 0 -/* 8003503C 3B E0 00 00 */ li r31, 0 -lbl_80035040: -/* 80035040 38 7F 01 F0 */ addi r3, r31, 0x1f0 -/* 80035044 7C 7D 1A 14 */ add r3, r29, r3 -/* 80035048 4B FF FA 1D */ bl init__12dSv_memory_cFv -/* 8003504C 3B DE 00 01 */ addi r30, r30, 1 -/* 80035050 2C 1E 00 20 */ cmpwi r30, 0x20 -/* 80035054 3B FF 00 20 */ addi r31, r31, 0x20 -/* 80035058 41 80 FF E8 */ blt lbl_80035040 -/* 8003505C 3B C0 00 00 */ li r30, 0 -/* 80035060 3B E0 00 00 */ li r31, 0 -lbl_80035064: -/* 80035064 38 7F 05 F0 */ addi r3, r31, 0x5f0 -/* 80035068 7C 7D 1A 14 */ add r3, r29, r3 -/* 8003506C 4B FF FA 19 */ bl init__13dSv_memory2_cFv -/* 80035070 3B DE 00 01 */ addi r30, r30, 1 -/* 80035074 2C 1E 00 40 */ cmpwi r30, 0x40 -/* 80035078 3B FF 00 08 */ addi r31, r31, 8 -/* 8003507C 41 80 FF E8 */ blt lbl_80035064 -/* 80035080 38 7D 07 F0 */ addi r3, r29, 0x7f0 -/* 80035084 4B FF F8 D1 */ bl init__11dSv_event_cFv -/* 80035088 38 7D 09 40 */ addi r3, r29, 0x940 -/* 8003508C 4B FF F9 91 */ bl init__14dSv_MiniGame_cFv -/* 80035090 39 61 00 20 */ addi r11, r1, 0x20 -/* 80035094 48 32 D1 95 */ bl _restgpr_29 -/* 80035098 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8003509C 7C 08 03 A6 */ mtlr r0 -/* 800350A0 38 21 00 20 */ addi r1, r1, 0x20 -/* 800350A4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__10dSv_zone_cFi.s b/asm/d/save/d_save/init__10dSv_zone_cFi.s deleted file mode 100644 index fa647f14fc9..00000000000 --- a/asm/d/save/d_save/init__10dSv_zone_cFi.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80034F44: -/* 80034F44 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80034F48 7C 08 02 A6 */ mflr r0 -/* 80034F4C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80034F50 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80034F54 7C 7F 1B 78 */ mr r31, r3 -/* 80034F58 98 83 00 00 */ stb r4, 0(r3) -/* 80034F5C 38 7F 00 02 */ addi r3, r31, 2 -/* 80034F60 4B FF FD 41 */ bl init__13dSv_zoneBit_cFv -/* 80034F64 38 7F 00 10 */ addi r3, r31, 0x10 -/* 80034F68 4B FF FF 4D */ bl init__15dSv_zoneActor_cFv -/* 80034F6C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80034F70 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80034F74 7C 08 03 A6 */ mtlr r0 -/* 80034F78 38 21 00 10 */ addi r1, r1, 0x10 -/* 80034F7C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__11dSv_event_cFv.s b/asm/d/save/d_save/init__11dSv_event_cFv.s deleted file mode 100644 index ad5df97cd50..00000000000 --- a/asm/d/save/d_save/init__11dSv_event_cFv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80034954: -/* 80034954 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80034958 7C 08 02 A6 */ mflr r0 -/* 8003495C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80034960 38 80 00 00 */ li r4, 0 -/* 80034964 38 00 01 00 */ li r0, 0x100 -/* 80034968 7C 09 03 A6 */ mtctr r0 -lbl_8003496C: -/* 8003496C 98 83 00 00 */ stb r4, 0(r3) -/* 80034970 38 63 00 01 */ addi r3, r3, 1 -/* 80034974 42 00 FF F8 */ bdnz lbl_8003496C -/* 80034978 48 00 13 11 */ bl setInitEventBit__Fv -/* 8003497C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80034980 7C 08 03 A6 */ mtlr r0 -/* 80034984 38 21 00 10 */ addi r1, r1, 0x10 -/* 80034988 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__12dSv_danBit_cFSc.s b/asm/d/save/d_save/init__12dSv_danBit_cFSc.s deleted file mode 100644 index 1950752bfcc..00000000000 --- a/asm/d/save/d_save/init__12dSv_danBit_cFSc.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_80034B14: -/* 80034B14 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80034B18 7C 08 02 A6 */ mflr r0 -/* 80034B1C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80034B20 7C 85 07 74 */ extsb r5, r4 -/* 80034B24 88 03 00 00 */ lbz r0, 0(r3) -/* 80034B28 7C 00 07 74 */ extsb r0, r0 -/* 80034B2C 7C 05 00 00 */ cmpw r5, r0 -/* 80034B30 41 82 00 50 */ beq lbl_80034B80 -/* 80034B34 38 A0 00 00 */ li r5, 0 -/* 80034B38 90 A3 00 04 */ stw r5, 4(r3) -/* 80034B3C 90 A3 00 08 */ stw r5, 8(r3) -/* 80034B40 90 A3 00 0C */ stw r5, 0xc(r3) -/* 80034B44 90 A3 00 10 */ stw r5, 0x10(r3) -/* 80034B48 90 A3 00 14 */ stw r5, 0x14(r3) -/* 80034B4C 90 A3 00 18 */ stw r5, 0x18(r3) -/* 80034B50 98 83 00 00 */ stb r4, 0(r3) -/* 80034B54 98 A3 00 01 */ stb r5, 1(r3) -/* 80034B58 38 80 FF FF */ li r4, -1 -/* 80034B5C 38 00 00 10 */ li r0, 0x10 -/* 80034B60 7C 09 03 A6 */ mtctr r0 -lbl_80034B64: -/* 80034B64 38 05 00 1C */ addi r0, r5, 0x1c -/* 80034B68 7C 83 03 2E */ sthx r4, r3, r0 -/* 80034B6C 38 A5 00 02 */ addi r5, r5, 2 -/* 80034B70 42 00 FF F4 */ bdnz lbl_80034B64 -/* 80034B74 4B FF D1 85 */ bl clrSaveFlag__12daObjCarry_cFv -/* 80034B78 38 60 00 01 */ li r3, 1 -/* 80034B7C 48 00 00 0C */ b lbl_80034B88 -lbl_80034B80: -/* 80034B80 4B FF D1 85 */ bl setSaveFlag__12daObjCarry_cFv -/* 80034B84 38 60 00 00 */ li r3, 0 -lbl_80034B88: -/* 80034B88 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80034B8C 7C 08 03 A6 */ mtlr r0 -/* 80034B90 38 21 00 10 */ addi r1, r1, 0x10 -/* 80034B94 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__12dSv_memBit_cFv.s b/asm/d/save/d_save/init__12dSv_memBit_cFv.s deleted file mode 100644 index 3d59b3b77b3..00000000000 --- a/asm/d/save/d_save/init__12dSv_memBit_cFv.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_80034750: -/* 80034750 38 80 00 00 */ li r4, 0 -/* 80034754 7C 85 23 78 */ mr r5, r4 -/* 80034758 38 00 00 02 */ li r0, 2 -/* 8003475C 7C 09 03 A6 */ mtctr r0 -lbl_80034760: -/* 80034760 7C A3 21 2E */ stwx r5, r3, r4 -/* 80034764 38 84 00 04 */ addi r4, r4, 4 -/* 80034768 42 00 FF F8 */ bdnz lbl_80034760 -/* 8003476C 38 80 00 00 */ li r4, 0 -/* 80034770 38 A0 00 00 */ li r5, 0 -/* 80034774 38 00 00 04 */ li r0, 4 -/* 80034778 7C 09 03 A6 */ mtctr r0 -lbl_8003477C: -/* 8003477C 38 04 00 08 */ addi r0, r4, 8 -/* 80034780 7C A3 01 2E */ stwx r5, r3, r0 -/* 80034784 38 84 00 04 */ addi r4, r4, 4 -/* 80034788 42 00 FF F4 */ bdnz lbl_8003477C -/* 8003478C 38 00 00 00 */ li r0, 0 -/* 80034790 90 03 00 18 */ stw r0, 0x18(r3) -/* 80034794 98 03 00 1C */ stb r0, 0x1c(r3) -/* 80034798 98 03 00 1D */ stb r0, 0x1d(r3) -/* 8003479C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__12dSv_memory_cFv.s b/asm/d/save/d_save/init__12dSv_memory_cFv.s deleted file mode 100644 index 085d57fd819..00000000000 --- a/asm/d/save/d_save/init__12dSv_memory_cFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80034A64: -/* 80034A64 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80034A68 7C 08 02 A6 */ mflr r0 -/* 80034A6C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80034A70 4B FF FC E1 */ bl init__12dSv_memBit_cFv -/* 80034A74 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80034A78 7C 08 03 A6 */ mtlr r0 -/* 80034A7C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80034A80 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__12dSv_player_cFv.s b/asm/d/save/d_save/init__12dSv_player_cFv.s deleted file mode 100644 index 889558e6b31..00000000000 --- a/asm/d/save/d_save/init__12dSv_player_cFv.s +++ /dev/null @@ -1,44 +0,0 @@ -lbl_800346A4: -/* 800346A4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800346A8 7C 08 02 A6 */ mflr r0 -/* 800346AC 90 01 00 14 */ stw r0, 0x14(r1) -/* 800346B0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800346B4 7C 7F 1B 78 */ mr r31, r3 -/* 800346B8 4B FF E2 A1 */ bl init__21dSv_player_status_a_cFv -/* 800346BC 38 7F 00 28 */ addi r3, r31, 0x28 -/* 800346C0 4B FF E4 91 */ bl init__21dSv_player_status_b_cFv -/* 800346C4 38 7F 00 40 */ addi r3, r31, 0x40 -/* 800346C8 4B FF E5 45 */ bl init__17dSv_horse_place_cFv -/* 800346CC 38 7F 00 58 */ addi r3, r31, 0x58 -/* 800346D0 4B FF E5 F9 */ bl init__25dSv_player_return_place_cFv -/* 800346D4 38 7F 00 64 */ addi r3, r31, 0x64 -/* 800346D8 4B FF E6 89 */ bl init__33dSv_player_field_last_stay_info_cFv -/* 800346DC 38 7F 00 80 */ addi r3, r31, 0x80 -/* 800346E0 4B FF E7 D1 */ bl init__27dSv_player_last_mark_info_cFv -/* 800346E4 38 7F 00 9C */ addi r3, r31, 0x9c -/* 800346E8 4B FF E8 A9 */ bl init__17dSv_player_item_cFv -/* 800346EC 38 7F 00 CC */ addi r3, r31, 0xcc -/* 800346F0 4B FF F7 51 */ bl init__21dSv_player_get_item_cFv -/* 800346F4 38 7F 00 EC */ addi r3, r31, 0xec -/* 800346F8 4B FF F8 09 */ bl init__24dSv_player_item_record_cFv -/* 800346FC 38 7F 00 F8 */ addi r3, r31, 0xf8 -/* 80034700 4B FF F9 41 */ bl init__21dSv_player_item_max_cFv -/* 80034704 38 7F 01 00 */ addi r3, r31, 0x100 -/* 80034708 4B FF FA A5 */ bl init__20dSv_player_collect_cFv -/* 8003470C 38 7F 01 10 */ addi r3, r31, 0x110 -/* 80034710 4B FF FB A5 */ bl init__17dSv_player_wolf_cFv -/* 80034714 38 7F 01 14 */ addi r3, r31, 0x114 -/* 80034718 4B FF FB C5 */ bl init__16dSv_light_drop_cFv -/* 8003471C 38 7F 01 1C */ addi r3, r31, 0x11c -/* 80034720 4B FF FC BD */ bl init__17dSv_letter_info_cFv -/* 80034724 38 7F 01 6C */ addi r3, r31, 0x16c -/* 80034728 4B FF FD A1 */ bl init__18dSv_fishing_info_cFv -/* 8003472C 38 7F 01 A0 */ addi r3, r31, 0x1a0 -/* 80034730 4B FF FD E9 */ bl init__17dSv_player_info_cFv -/* 80034734 38 7F 01 E0 */ addi r3, r31, 0x1e0 -/* 80034738 4B FF FE 75 */ bl init__19dSv_player_config_cFv -/* 8003473C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80034740 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80034744 7C 08 03 A6 */ mtlr r0 -/* 80034748 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003474C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__13dSv_memory2_cFv.s b/asm/d/save/d_save/init__13dSv_memory2_cFv.s deleted file mode 100644 index d333fd63201..00000000000 --- a/asm/d/save/d_save/init__13dSv_memory2_cFv.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034A84: -/* 80034A84 38 80 00 00 */ li r4, 0 -/* 80034A88 7C 85 23 78 */ mr r5, r4 -/* 80034A8C 38 00 00 02 */ li r0, 2 -/* 80034A90 7C 09 03 A6 */ mtctr r0 -lbl_80034A94: -/* 80034A94 7C A3 21 2E */ stwx r5, r3, r4 -/* 80034A98 38 84 00 04 */ addi r4, r4, 4 -/* 80034A9C 42 00 FF F8 */ bdnz lbl_80034A94 -/* 80034AA0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__13dSv_zoneBit_cFv.s b/asm/d/save/d_save/init__13dSv_zoneBit_cFv.s deleted file mode 100644 index e3ebbc0e724..00000000000 --- a/asm/d/save/d_save/init__13dSv_zoneBit_cFv.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_80034CA0: -/* 80034CA0 38 80 00 00 */ li r4, 0 -/* 80034CA4 7C 85 23 78 */ mr r5, r4 -/* 80034CA8 38 00 00 02 */ li r0, 2 -/* 80034CAC 7C 09 03 A6 */ mtctr r0 -lbl_80034CB0: -/* 80034CB0 7C A3 23 2E */ sthx r5, r3, r4 -/* 80034CB4 38 84 00 02 */ addi r4, r4, 2 -/* 80034CB8 42 00 FF F8 */ bdnz lbl_80034CB0 -/* 80034CBC 38 80 00 00 */ li r4, 0 -/* 80034CC0 38 A0 00 00 */ li r5, 0 -/* 80034CC4 38 00 00 02 */ li r0, 2 -/* 80034CC8 7C 09 03 A6 */ mtctr r0 -lbl_80034CCC: -/* 80034CCC 38 04 00 06 */ addi r0, r4, 6 -/* 80034CD0 7C A3 03 2E */ sthx r5, r3, r0 -/* 80034CD4 38 84 00 02 */ addi r4, r4, 2 -/* 80034CD8 42 00 FF F4 */ bdnz lbl_80034CCC -/* 80034CDC 38 00 00 00 */ li r0, 0 -/* 80034CE0 B0 03 00 04 */ sth r0, 4(r3) -/* 80034CE4 B0 03 00 0A */ sth r0, 0xa(r3) -/* 80034CE8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__14dSv_MiniGame_cFv.s b/asm/d/save/d_save/init__14dSv_MiniGame_cFv.s deleted file mode 100644 index e3605dbfbe4..00000000000 --- a/asm/d/save/d_save/init__14dSv_MiniGame_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80034A1C: -/* 80034A1C 38 80 00 00 */ li r4, 0 -/* 80034A20 98 83 00 00 */ stb r4, 0(r3) -/* 80034A24 38 A0 00 00 */ li r5, 0 -/* 80034A28 38 00 00 03 */ li r0, 3 -/* 80034A2C 7C 09 03 A6 */ mtctr r0 -lbl_80034A30: -/* 80034A30 38 05 00 01 */ addi r0, r5, 1 -/* 80034A34 7C 83 01 AE */ stbx r4, r3, r0 -/* 80034A38 38 A5 00 01 */ addi r5, r5, 1 -/* 80034A3C 42 00 FF F4 */ bdnz lbl_80034A30 -/* 80034A40 3C 80 00 02 */ lis r4, 0x0002 /* 0x0001D4C0@ha */ -/* 80034A44 38 04 D4 C0 */ addi r0, r4, 0xD4C0 /* 0x0001D4C0@l */ -/* 80034A48 90 03 00 04 */ stw r0, 4(r3) -/* 80034A4C 38 00 00 00 */ li r0, 0 -/* 80034A50 90 03 00 08 */ stw r0, 8(r3) -/* 80034A54 90 03 00 0C */ stw r0, 0xc(r3) -/* 80034A58 90 03 00 10 */ stw r0, 0x10(r3) -/* 80034A5C 90 03 00 14 */ stw r0, 0x14(r3) -/* 80034A60 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__15dSv_zoneActor_cFv.s b/asm/d/save/d_save/init__15dSv_zoneActor_cFv.s deleted file mode 100644 index bb87a9864a1..00000000000 --- a/asm/d/save/d_save/init__15dSv_zoneActor_cFv.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034EB4: -/* 80034EB4 38 80 00 00 */ li r4, 0 -/* 80034EB8 7C 85 23 78 */ mr r5, r4 -/* 80034EBC 38 00 00 04 */ li r0, 4 -/* 80034EC0 7C 09 03 A6 */ mtctr r0 -lbl_80034EC4: -/* 80034EC4 7C A3 21 2E */ stwx r5, r3, r4 -/* 80034EC8 38 84 00 04 */ addi r4, r4, 4 -/* 80034ECC 42 00 FF F8 */ bdnz lbl_80034EC4 -/* 80034ED0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__16dSv_light_drop_cFv.s b/asm/d/save/d_save/init__16dSv_light_drop_cFv.s deleted file mode 100644 index c1351dc083c..00000000000 --- a/asm/d/save/d_save/init__16dSv_light_drop_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_800342DC: -/* 800342DC 38 A0 00 00 */ li r5, 0 -/* 800342E0 7C 64 1B 78 */ mr r4, r3 -/* 800342E4 38 00 00 04 */ li r0, 4 -/* 800342E8 7C 09 03 A6 */ mtctr r0 -lbl_800342EC: -/* 800342EC 98 A4 00 00 */ stb r5, 0(r4) -/* 800342F0 38 84 00 01 */ addi r4, r4, 1 -/* 800342F4 42 00 FF F8 */ bdnz lbl_800342EC -/* 800342F8 38 80 00 00 */ li r4, 0 -/* 800342FC 98 83 00 04 */ stb r4, 4(r3) -/* 80034300 38 A0 00 00 */ li r5, 0 -/* 80034304 38 00 00 03 */ li r0, 3 -/* 80034308 7C 09 03 A6 */ mtctr r0 -lbl_8003430C: -/* 8003430C 38 05 00 05 */ addi r0, r5, 5 -/* 80034310 7C 83 01 AE */ stbx r4, r3, r0 -/* 80034314 38 A5 00 01 */ addi r5, r5, 1 -/* 80034318 42 00 FF F4 */ bdnz lbl_8003430C -/* 8003431C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__17dSv_letter_info_cFv.s b/asm/d/save/d_save/init__17dSv_letter_info_cFv.s deleted file mode 100644 index 9ff666d819e..00000000000 --- a/asm/d/save/d_save/init__17dSv_letter_info_cFv.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_800343DC: -/* 800343DC 38 80 00 00 */ li r4, 0 -/* 800343E0 7C 86 23 78 */ mr r6, r4 -/* 800343E4 7C 85 23 78 */ mr r5, r4 -/* 800343E8 38 00 00 02 */ li r0, 2 -/* 800343EC 7C 09 03 A6 */ mtctr r0 -lbl_800343F0: -/* 800343F0 7C E3 22 14 */ add r7, r3, r4 -/* 800343F4 90 C7 00 00 */ stw r6, 0(r7) -/* 800343F8 90 A7 00 08 */ stw r5, 8(r7) -/* 800343FC 38 84 00 04 */ addi r4, r4, 4 -/* 80034400 42 00 FF F0 */ bdnz lbl_800343F0 -/* 80034404 38 A0 00 00 */ li r5, 0 -/* 80034408 38 80 00 00 */ li r4, 0 -/* 8003440C 38 00 00 40 */ li r0, 0x40 -/* 80034410 7C 09 03 A6 */ mtctr r0 -lbl_80034414: -/* 80034414 38 05 00 10 */ addi r0, r5, 0x10 -/* 80034418 7C 83 01 AE */ stbx r4, r3, r0 -/* 8003441C 38 A5 00 01 */ addi r5, r5, 1 -/* 80034420 42 00 FF F4 */ bdnz lbl_80034414 -/* 80034424 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__17dSv_player_item_cFv.s b/asm/d/save/d_save/init__17dSv_player_item_cFv.s deleted file mode 100644 index 66cbfc38d14..00000000000 --- a/asm/d/save/d_save/init__17dSv_player_item_cFv.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80032F90: -/* 80032F90 38 C0 00 00 */ li r6, 0 -/* 80032F94 38 80 00 FF */ li r4, 0xff -/* 80032F98 38 00 00 18 */ li r0, 0x18 -/* 80032F9C 7C 09 03 A6 */ mtctr r0 -lbl_80032FA0: -/* 80032FA0 7C A3 32 14 */ add r5, r3, r6 -/* 80032FA4 98 85 00 00 */ stb r4, 0(r5) -/* 80032FA8 98 85 00 18 */ stb r4, 0x18(r5) -/* 80032FAC 38 C6 00 01 */ addi r6, r6, 1 -/* 80032FB0 42 00 FF F0 */ bdnz lbl_80032FA0 -/* 80032FB4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__17dSv_player_wolf_cFv.s b/asm/d/save/d_save/init__17dSv_player_wolf_cFv.s deleted file mode 100644 index 87c6e3daff0..00000000000 --- a/asm/d/save/d_save/init__17dSv_player_wolf_cFv.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_800342B4: -/* 800342B4 38 A0 00 00 */ li r5, 0 -/* 800342B8 7C 64 1B 78 */ mr r4, r3 -/* 800342BC 38 00 00 03 */ li r0, 3 -/* 800342C0 7C 09 03 A6 */ mtctr r0 -lbl_800342C4: -/* 800342C4 98 A4 00 00 */ stb r5, 0(r4) -/* 800342C8 38 84 00 01 */ addi r4, r4, 1 -/* 800342CC 42 00 FF F8 */ bdnz lbl_800342C4 -/* 800342D0 38 00 00 00 */ li r0, 0 -/* 800342D4 98 03 00 03 */ stb r0, 3(r3) -/* 800342D8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__18dSv_fishing_info_cFv.s b/asm/d/save/d_save/init__18dSv_fishing_info_cFv.s deleted file mode 100644 index e66805efb66..00000000000 --- a/asm/d/save/d_save/init__18dSv_fishing_info_cFv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_800344C8: -/* 800344C8 38 E0 00 00 */ li r7, 0 -/* 800344CC 38 80 00 00 */ li r4, 0 -/* 800344D0 7C 86 23 78 */ mr r6, r4 -/* 800344D4 7C 85 23 78 */ mr r5, r4 -/* 800344D8 38 00 00 10 */ li r0, 0x10 -/* 800344DC 7C 09 03 A6 */ mtctr r0 -lbl_800344E0: -/* 800344E0 7C C3 23 2E */ sthx r6, r3, r4 -/* 800344E4 38 07 00 20 */ addi r0, r7, 0x20 -/* 800344E8 7C A3 01 AE */ stbx r5, r3, r0 -/* 800344EC 38 E7 00 01 */ addi r7, r7, 1 -/* 800344F0 38 84 00 02 */ addi r4, r4, 2 -/* 800344F4 42 00 FF EC */ bdnz lbl_800344E0 -/* 800344F8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__20dSv_player_collect_cFv.s b/asm/d/save/d_save/init__20dSv_player_collect_cFv.s deleted file mode 100644 index 79d0747c216..00000000000 --- a/asm/d/save/d_save/init__20dSv_player_collect_cFv.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_800341AC: -/* 800341AC 38 A0 00 00 */ li r5, 0 -/* 800341B0 7C 64 1B 78 */ mr r4, r3 -/* 800341B4 38 00 00 08 */ li r0, 8 -/* 800341B8 7C 09 03 A6 */ mtctr r0 -lbl_800341BC: -/* 800341BC 98 A4 00 00 */ stb r5, 0(r4) -/* 800341C0 38 84 00 01 */ addi r4, r4, 1 -/* 800341C4 42 00 FF F8 */ bdnz lbl_800341BC -/* 800341C8 38 80 00 00 */ li r4, 0 -/* 800341CC 98 83 00 08 */ stb r4, 8(r3) -/* 800341D0 98 83 00 09 */ stb r4, 9(r3) -/* 800341D4 98 83 00 0A */ stb r4, 0xa(r3) -/* 800341D8 38 00 00 FF */ li r0, 0xff -/* 800341DC 98 03 00 0B */ stb r0, 0xb(r3) -/* 800341E0 98 83 00 0C */ stb r4, 0xc(r3) -/* 800341E4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__21dSv_player_get_item_cFv.s b/asm/d/save/d_save/init__21dSv_player_get_item_cFv.s deleted file mode 100644 index 6d2f0e5470b..00000000000 --- a/asm/d/save/d_save/init__21dSv_player_get_item_cFv.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80033E40: -/* 80033E40 38 80 00 00 */ li r4, 0 -/* 80033E44 7C 85 23 78 */ mr r5, r4 -/* 80033E48 38 00 00 08 */ li r0, 8 -/* 80033E4C 7C 09 03 A6 */ mtctr r0 -lbl_80033E50: -/* 80033E50 7C A3 21 2E */ stwx r5, r3, r4 -/* 80033E54 38 84 00 04 */ addi r4, r4, 4 -/* 80033E58 42 00 FF F8 */ bdnz lbl_80033E50 -/* 80033E5C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__21dSv_player_item_max_cFv.s b/asm/d/save/d_save/init__21dSv_player_item_max_cFv.s deleted file mode 100644 index 123301536a4..00000000000 --- a/asm/d/save/d_save/init__21dSv_player_item_max_cFv.s +++ /dev/null @@ -1,32 +0,0 @@ -lbl_80034040: -/* 80034040 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80034044 7C 08 02 A6 */ mflr r0 -/* 80034048 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003404C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80034050 7C 7F 1B 78 */ mr r31, r3 -/* 80034054 38 80 00 1E */ li r4, 0x1e -/* 80034058 38 00 00 07 */ li r0, 7 -/* 8003405C 7C 09 03 A6 */ mtctr r0 -lbl_80034060: -/* 80034060 98 83 00 00 */ stb r4, 0(r3) -/* 80034064 38 63 00 01 */ addi r3, r3, 1 -/* 80034068 42 00 FF F8 */ bdnz lbl_80034060 -/* 8003406C 7F E3 FB 78 */ mr r3, r31 -/* 80034070 38 80 00 70 */ li r4, 0x70 -/* 80034074 38 A0 00 1E */ li r5, 0x1e -/* 80034078 48 00 00 41 */ bl setBombNum__21dSv_player_item_max_cFUcUc -/* 8003407C 7F E3 FB 78 */ mr r3, r31 -/* 80034080 38 80 00 71 */ li r4, 0x71 -/* 80034084 38 A0 00 0F */ li r5, 0xf -/* 80034088 48 00 00 31 */ bl setBombNum__21dSv_player_item_max_cFUcUc -/* 8003408C 7F E3 FB 78 */ mr r3, r31 -/* 80034090 38 80 00 72 */ li r4, 0x72 -/* 80034094 38 A0 00 0A */ li r5, 0xa -/* 80034098 48 00 00 21 */ bl setBombNum__21dSv_player_item_max_cFUcUc -/* 8003409C 38 00 00 00 */ li r0, 0 -/* 800340A0 98 1F 00 07 */ stb r0, 7(r31) -/* 800340A4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800340A8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800340AC 7C 08 03 A6 */ mtlr r0 -/* 800340B0 38 21 00 10 */ addi r1, r1, 0x10 -/* 800340B4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__21dSv_player_status_a_cFv.s b/asm/d/save/d_save/init__21dSv_player_status_a_cFv.s deleted file mode 100644 index 095825de135..00000000000 --- a/asm/d/save/d_save/init__21dSv_player_status_a_cFv.s +++ /dev/null @@ -1,64 +0,0 @@ -lbl_80032958: -/* 80032958 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8003295C 7C 08 02 A6 */ mflr r0 -/* 80032960 90 01 00 24 */ stw r0, 0x24(r1) -/* 80032964 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032968 48 32 F8 75 */ bl _savegpr_29 -/* 8003296C 7C 7D 1B 78 */ mr r29, r3 -/* 80032970 38 00 00 0F */ li r0, 0xf -/* 80032974 B0 03 00 00 */ sth r0, 0(r3) -/* 80032978 38 00 00 0C */ li r0, 0xc -/* 8003297C B0 03 00 02 */ sth r0, 2(r3) -/* 80032980 38 00 00 00 */ li r0, 0 -/* 80032984 B0 03 00 04 */ sth r0, 4(r3) -/* 80032988 B0 03 00 06 */ sth r0, 6(r3) -/* 8003298C B0 03 00 08 */ sth r0, 8(r3) -/* 80032990 98 03 00 0A */ stb r0, 0xa(r3) -/* 80032994 3B C0 00 00 */ li r30, 0 -/* 80032998 3B E0 00 FF */ li r31, 0xff -lbl_8003299C: -/* 8003299C 7C 7D F2 14 */ add r3, r29, r30 -/* 800329A0 9B E3 00 0B */ stb r31, 0xb(r3) -/* 800329A4 9B E3 00 0F */ stb r31, 0xf(r3) -/* 800329A8 7F C3 F3 78 */ mr r3, r30 -/* 800329AC 4B FF B4 49 */ bl dComIfGp_setSelectItem__Fi -/* 800329B0 3B DE 00 01 */ addi r30, r30, 1 -/* 800329B4 2C 1E 00 04 */ cmpwi r30, 4 -/* 800329B8 41 80 FF E4 */ blt lbl_8003299C -/* 800329BC 38 80 00 00 */ li r4, 0 -/* 800329C0 38 60 00 00 */ li r3, 0 -/* 800329C4 38 00 00 06 */ li r0, 6 -/* 800329C8 7C 09 03 A6 */ mtctr r0 -lbl_800329CC: -/* 800329CC 38 04 00 13 */ addi r0, r4, 0x13 -/* 800329D0 7C 7D 01 AE */ stbx r3, r29, r0 -/* 800329D4 38 84 00 01 */ addi r4, r4, 1 -/* 800329D8 42 00 FF F4 */ bdnz lbl_800329CC -/* 800329DC 38 00 00 2E */ li r0, 0x2e -/* 800329E0 98 1D 00 13 */ stb r0, 0x13(r29) -/* 800329E4 38 00 00 FF */ li r0, 0xff -/* 800329E8 98 1D 00 14 */ stb r0, 0x14(r29) -/* 800329EC 98 1D 00 15 */ stb r0, 0x15(r29) -/* 800329F0 98 1D 00 16 */ stb r0, 0x16(r29) -/* 800329F4 98 1D 00 17 */ stb r0, 0x17(r29) -/* 800329F8 38 60 00 00 */ li r3, 0 -/* 800329FC 98 7D 00 19 */ stb r3, 0x19(r29) -/* 80032A00 98 7D 00 1A */ stb r3, 0x1a(r29) -/* 80032A04 98 7D 00 1B */ stb r3, 0x1b(r29) -/* 80032A08 98 7D 00 1C */ stb r3, 0x1c(r29) -/* 80032A0C 98 7D 00 1D */ stb r3, 0x1d(r29) -/* 80032A10 98 7D 00 1E */ stb r3, 0x1e(r29) -/* 80032A14 38 80 00 00 */ li r4, 0 -/* 80032A18 38 00 00 03 */ li r0, 3 -/* 80032A1C 7C 09 03 A6 */ mtctr r0 -lbl_80032A20: -/* 80032A20 38 04 00 1F */ addi r0, r4, 0x1f -/* 80032A24 7C 7D 01 AE */ stbx r3, r29, r0 -/* 80032A28 38 84 00 01 */ addi r4, r4, 1 -/* 80032A2C 42 00 FF F4 */ bdnz lbl_80032A20 -/* 80032A30 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032A34 48 32 F7 F5 */ bl _restgpr_29 -/* 80032A38 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80032A3C 7C 08 03 A6 */ mtlr r0 -/* 80032A40 38 21 00 20 */ addi r1, r1, 0x20 -/* 80032A44 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__21dSv_player_status_b_cFv.s b/asm/d/save/d_save/init__21dSv_player_status_b_cFv.s deleted file mode 100644 index 22d892ba79c..00000000000 --- a/asm/d/save/d_save/init__21dSv_player_status_b_cFv.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_80032B50: -/* 80032B50 38 80 00 00 */ li r4, 0 -/* 80032B54 90 83 00 04 */ stw r4, 4(r3) -/* 80032B58 90 83 00 00 */ stw r4, 0(r3) -/* 80032B5C 98 83 00 08 */ stb r4, 8(r3) -/* 80032B60 98 83 00 09 */ stb r4, 9(r3) -/* 80032B64 98 83 00 0A */ stb r4, 0xa(r3) -/* 80032B68 C0 02 83 58 */ lfs f0, lit_3775(r2) -/* 80032B6C D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80032B70 B0 83 00 10 */ sth r4, 0x10(r3) -/* 80032B74 38 A0 00 00 */ li r5, 0 -/* 80032B78 38 00 00 03 */ li r0, 3 -/* 80032B7C 7C 09 03 A6 */ mtctr r0 -lbl_80032B80: -/* 80032B80 38 05 00 12 */ addi r0, r5, 0x12 -/* 80032B84 7C 83 01 AE */ stbx r4, r3, r0 -/* 80032B88 38 A5 00 01 */ addi r5, r5, 1 -/* 80032B8C 42 00 FF F4 */ bdnz lbl_80032B80 -/* 80032B90 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__24dSv_player_item_record_cFv.s b/asm/d/save/d_save/init__24dSv_player_item_record_cFv.s deleted file mode 100644 index 46dec9b5cf6..00000000000 --- a/asm/d/save/d_save/init__24dSv_player_item_record_cFv.s +++ /dev/null @@ -1,31 +0,0 @@ -lbl_80033F00: -/* 80033F00 38 80 00 00 */ li r4, 0 -/* 80033F04 98 83 00 00 */ stb r4, 0(r3) -/* 80033F08 38 A0 00 00 */ li r5, 0 -/* 80033F0C 38 00 00 03 */ li r0, 3 -/* 80033F10 7C 09 03 A6 */ mtctr r0 -lbl_80033F14: -/* 80033F14 38 05 00 01 */ addi r0, r5, 1 -/* 80033F18 7C 83 01 AE */ stbx r4, r3, r0 -/* 80033F1C 38 A5 00 01 */ addi r5, r5, 1 -/* 80033F20 42 00 FF F4 */ bdnz lbl_80033F14 -/* 80033F24 38 A0 00 00 */ li r5, 0 -/* 80033F28 38 80 00 00 */ li r4, 0 -/* 80033F2C 38 00 00 04 */ li r0, 4 -/* 80033F30 7C 09 03 A6 */ mtctr r0 -lbl_80033F34: -/* 80033F34 38 05 00 04 */ addi r0, r5, 4 -/* 80033F38 7C 83 01 AE */ stbx r4, r3, r0 -/* 80033F3C 38 A5 00 01 */ addi r5, r5, 1 -/* 80033F40 42 00 FF F4 */ bdnz lbl_80033F34 -/* 80033F44 38 80 00 00 */ li r4, 0 -/* 80033F48 98 83 00 08 */ stb r4, 8(r3) -/* 80033F4C 38 A0 00 00 */ li r5, 0 -/* 80033F50 38 00 00 03 */ li r0, 3 -/* 80033F54 7C 09 03 A6 */ mtctr r0 -lbl_80033F58: -/* 80033F58 38 05 00 09 */ addi r0, r5, 9 -/* 80033F5C 7C 83 01 AE */ stbx r4, r3, r0 -/* 80033F60 38 A5 00 01 */ addi r5, r5, 1 -/* 80033F64 42 00 FF F4 */ bdnz lbl_80033F58 -/* 80033F68 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/init__25dSv_player_return_place_cFv.s b/asm/d/save/d_save/init__25dSv_player_return_place_cFv.s deleted file mode 100644 index fce864c947d..00000000000 --- a/asm/d/save/d_save/init__25dSv_player_return_place_cFv.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_80032CC8: -/* 80032CC8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80032CCC 7C 08 02 A6 */ mflr r0 -/* 80032CD0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80032CD4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80032CD8 7C 7F 1B 78 */ mr r31, r3 -/* 80032CDC 3C 80 80 38 */ lis r4, d_save_d_save__stringBase0@ha /* 0x80379234@ha */ -/* 80032CE0 38 84 92 34 */ addi r4, r4, d_save_d_save__stringBase0@l /* 0x80379234@l */ -/* 80032CE4 38 84 00 01 */ addi r4, r4, 1 -/* 80032CE8 48 33 5E 45 */ bl strcpy -/* 80032CEC 38 00 00 01 */ li r0, 1 -/* 80032CF0 98 1F 00 09 */ stb r0, 9(r31) -/* 80032CF4 38 60 00 00 */ li r3, 0 -/* 80032CF8 98 7F 00 08 */ stb r3, 8(r31) -/* 80032CFC 38 00 00 15 */ li r0, 0x15 -/* 80032D00 98 1F 00 0A */ stb r0, 0xa(r31) -/* 80032D04 98 7F 00 0B */ stb r3, 0xb(r31) -/* 80032D08 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80032D0C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80032D10 7C 08 03 A6 */ mtlr r0 -/* 80032D14 38 21 00 10 */ addi r1, r1, 0x10 -/* 80032D18 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isActor__10dSv_info_cCFii.s b/asm/d/save/d_save/isActor__10dSv_info_cCFii.s deleted file mode 100644 index 9501062e7d6..00000000000 --- a/asm/d/save/d_save/isActor__10dSv_info_cCFii.s +++ /dev/null @@ -1,33 +0,0 @@ -lbl_80035724: -/* 80035724 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80035728 7C 08 02 A6 */ mflr r0 -/* 8003572C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80035730 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80035734 93 C1 00 08 */ stw r30, 8(r1) -/* 80035738 7C 7E 1B 78 */ mr r30, r3 -/* 8003573C 7C 9F 23 78 */ mr r31, r4 -/* 80035740 2C 1F FF FF */ cmpwi r31, -1 -/* 80035744 41 82 00 18 */ beq lbl_8003575C -/* 80035748 3C 1F 00 00 */ addis r0, r31, 0 -/* 8003574C 28 00 FF FF */ cmplwi r0, 0xffff -/* 80035750 41 82 00 0C */ beq lbl_8003575C -/* 80035754 2C 05 FF FF */ cmpwi r5, -1 -/* 80035758 40 82 00 0C */ bne lbl_80035764 -lbl_8003575C: -/* 8003575C 38 60 00 00 */ li r3, 0 -/* 80035760 48 00 00 20 */ b lbl_80035780 -lbl_80035764: -/* 80035764 7C A3 2B 78 */ mr r3, r5 -/* 80035768 4B FF 82 49 */ bl getZoneNo__20dStage_roomControl_cFi -/* 8003576C 54 63 28 34 */ slwi r3, r3, 5 -/* 80035770 38 63 09 C4 */ addi r3, r3, 0x9c4 -/* 80035774 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035778 7F E4 FB 78 */ mr r4, r31 -/* 8003577C 4B FF F7 A1 */ bl is__15dSv_zoneActor_cCFi -lbl_80035780: -/* 80035780 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80035784 83 C1 00 08 */ lwz r30, 8(r1) -/* 80035788 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003578C 7C 08 03 A6 */ mtlr r0 -/* 80035790 38 21 00 10 */ addi r1, r1, 0x10 -/* 80035794 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isCollectCrystal__20dSv_player_collect_cCFUc.s b/asm/d/save/d_save/isCollectCrystal__20dSv_player_collect_cCFUc.s deleted file mode 100644 index bd3f5fc3f2b..00000000000 --- a/asm/d/save/d_save/isCollectCrystal__20dSv_player_collect_cCFUc.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_8003424C: -/* 8003424C 88 A3 00 09 */ lbz r5, 9(r3) -/* 80034250 38 60 00 01 */ li r3, 1 -/* 80034254 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034258 7C 60 00 30 */ slw r0, r3, r0 -/* 8003425C 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80034260 7C A3 00 38 */ and r3, r5, r0 -/* 80034264 30 03 FF FF */ addic r0, r3, -1 -/* 80034268 7C 60 19 10 */ subfe r3, r0, r3 -/* 8003426C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isCollectMirror__20dSv_player_collect_cCFUc.s b/asm/d/save/d_save/isCollectMirror__20dSv_player_collect_cCFUc.s deleted file mode 100644 index 9072d50cc6c..00000000000 --- a/asm/d/save/d_save/isCollectMirror__20dSv_player_collect_cCFUc.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034290: -/* 80034290 88 A3 00 0A */ lbz r5, 0xa(r3) -/* 80034294 38 60 00 01 */ li r3, 1 -/* 80034298 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 8003429C 7C 60 00 30 */ slw r0, r3, r0 -/* 800342A0 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 800342A4 7C A3 00 38 */ and r3, r5, r0 -/* 800342A8 30 03 FF FF */ addic r0, r3, -1 -/* 800342AC 7C 60 19 10 */ subfe r3, r0, r3 -/* 800342B0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isCollect__20dSv_player_collect_cCFiUc.s b/asm/d/save/d_save/isCollect__20dSv_player_collect_cCFiUc.s deleted file mode 100644 index 84be07359f9..00000000000 --- a/asm/d/save/d_save/isCollect__20dSv_player_collect_cCFiUc.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034208: -/* 80034208 38 C0 00 01 */ li r6, 1 -/* 8003420C 54 A0 06 3E */ clrlwi r0, r5, 0x18 -/* 80034210 7C C0 00 30 */ slw r0, r6, r0 -/* 80034214 54 05 06 3E */ clrlwi r5, r0, 0x18 -/* 80034218 7C 03 20 AE */ lbzx r0, r3, r4 -/* 8003421C 7C A3 00 38 */ and r3, r5, r0 -/* 80034220 30 03 FF FF */ addic r0, r3, -1 -/* 80034224 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034228 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isDarkClearLV__21dSv_player_status_b_cCFi.s b/asm/d/save/d_save/isDarkClearLV__21dSv_player_status_b_cCFi.s deleted file mode 100644 index 0f6d8d20c81..00000000000 --- a/asm/d/save/d_save/isDarkClearLV__21dSv_player_status_b_cCFi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80032BB0: -/* 80032BB0 88 63 00 09 */ lbz r3, 9(r3) -/* 80032BB4 38 00 00 01 */ li r0, 1 -/* 80032BB8 7C 00 20 30 */ slw r0, r0, r4 -/* 80032BBC 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80032BC0 7C 63 00 38 */ and r3, r3, r0 -/* 80032BC4 30 03 FF FF */ addic r0, r3, -1 -/* 80032BC8 7C 60 19 10 */ subfe r3, r0, r3 -/* 80032BCC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isDungeonItem__12dSv_memBit_cCFi.s b/asm/d/save/d_save/isDungeonItem__12dSv_memBit_cCFi.s deleted file mode 100644 index 40535b1a1ac..00000000000 --- a/asm/d/save/d_save/isDungeonItem__12dSv_memBit_cCFi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80034934: -/* 80034934 88 63 00 1D */ lbz r3, 0x1d(r3) -/* 80034938 38 00 00 01 */ li r0, 1 -/* 8003493C 7C 00 20 30 */ slw r0, r0, r4 -/* 80034940 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80034944 7C 63 00 38 */ and r3, r3, r0 -/* 80034948 30 03 FF FF */ addic r0, r3, -1 -/* 8003494C 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034950 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isEventBit__11dSv_event_cCFUs.s b/asm/d/save/d_save/isEventBit__11dSv_event_cCFUs.s deleted file mode 100644 index 45ce451ed3a..00000000000 --- a/asm/d/save/d_save/isEventBit__11dSv_event_cCFUs.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_800349BC: -/* 800349BC 54 85 06 3E */ clrlwi r5, r4, 0x18 -/* 800349C0 54 80 C6 3E */ rlwinm r0, r4, 0x18, 0x18, 0x1f -/* 800349C4 7C 03 00 AE */ lbzx r0, r3, r0 -/* 800349C8 7C A0 00 39 */ and. r0, r5, r0 -/* 800349CC 41 82 00 0C */ beq lbl_800349D8 -/* 800349D0 38 60 00 01 */ li r3, 1 -/* 800349D4 4E 80 00 20 */ blr -lbl_800349D8: -/* 800349D8 38 60 00 00 */ li r3, 0 -/* 800349DC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isItem__10dSv_info_cCFii.s b/asm/d/save/d_save/isItem__10dSv_info_cCFii.s deleted file mode 100644 index e0c5702b3bd..00000000000 --- a/asm/d/save/d_save/isItem__10dSv_info_cCFii.s +++ /dev/null @@ -1,52 +0,0 @@ -lbl_80035590: -/* 80035590 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80035594 7C 08 02 A6 */ mflr r0 -/* 80035598 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003559C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800355A0 93 C1 00 08 */ stw r30, 8(r1) -/* 800355A4 7C 7E 1B 78 */ mr r30, r3 -/* 800355A8 7C 9F 23 78 */ mr r31, r4 -/* 800355AC 2C 1F FF FF */ cmpwi r31, -1 -/* 800355B0 41 82 00 0C */ beq lbl_800355BC -/* 800355B4 2C 1F 00 FF */ cmpwi r31, 0xff -/* 800355B8 40 82 00 0C */ bne lbl_800355C4 -lbl_800355BC: -/* 800355BC 38 60 00 00 */ li r3, 0 -/* 800355C0 48 00 00 6C */ b lbl_8003562C -lbl_800355C4: -/* 800355C4 2C 1F 00 80 */ cmpwi r31, 0x80 -/* 800355C8 40 80 00 10 */ bge lbl_800355D8 -/* 800355CC 38 7E 09 78 */ addi r3, r30, 0x978 -/* 800355D0 4B FF F6 A5 */ bl isItem__12dSv_danBit_cCFi -/* 800355D4 48 00 00 58 */ b lbl_8003562C -lbl_800355D8: -/* 800355D8 2C 1F 00 A0 */ cmpwi r31, 0xa0 -/* 800355DC 40 80 00 14 */ bge lbl_800355F0 -/* 800355E0 38 7E 09 58 */ addi r3, r30, 0x958 -/* 800355E4 38 9F FF 80 */ addi r4, r31, -128 -/* 800355E8 4B FF F3 05 */ bl isItem__12dSv_memBit_cCFi -/* 800355EC 48 00 00 40 */ b lbl_8003562C -lbl_800355F0: -/* 800355F0 7C A3 2B 78 */ mr r3, r5 -/* 800355F4 4B FF 83 BD */ bl getZoneNo__20dStage_roomControl_cFi -/* 800355F8 2C 1F 00 C0 */ cmpwi r31, 0xc0 -/* 800355FC 40 80 00 1C */ bge lbl_80035618 -/* 80035600 54 63 28 34 */ slwi r3, r3, 5 -/* 80035604 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 80035608 7C 7E 1A 14 */ add r3, r30, r3 -/* 8003560C 38 9F FF 60 */ addi r4, r31, -160 -/* 80035610 4B FF F8 41 */ bl isItem__13dSv_zoneBit_cCFi -/* 80035614 48 00 00 18 */ b lbl_8003562C -lbl_80035618: -/* 80035618 54 63 28 34 */ slwi r3, r3, 5 -/* 8003561C 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 80035620 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035624 38 9F FF 40 */ addi r4, r31, -192 -/* 80035628 4B FF F8 71 */ bl isOneItem__13dSv_zoneBit_cCFi -lbl_8003562C: -/* 8003562C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80035630 83 C1 00 08 */ lwz r30, 8(r1) -/* 80035634 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80035638 7C 08 03 A6 */ mtlr r0 -/* 8003563C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80035640 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isItem__12dSv_danBit_cCFi.s b/asm/d/save/d_save/isItem__12dSv_danBit_cCFi.s deleted file mode 100644 index 8897f792010..00000000000 --- a/asm/d/save/d_save/isItem__12dSv_danBit_cCFi.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80034C74: -/* 80034C74 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034C78 54 00 10 3A */ slwi r0, r0, 2 -/* 80034C7C 7C 63 02 14 */ add r3, r3, r0 -/* 80034C80 80 A3 00 0C */ lwz r5, 0xc(r3) -/* 80034C84 38 60 00 01 */ li r3, 1 -/* 80034C88 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034C8C 7C 60 00 30 */ slw r0, r3, r0 -/* 80034C90 7C A3 00 38 */ and r3, r5, r0 -/* 80034C94 30 03 FF FF */ addic r0, r3, -1 -/* 80034C98 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034C9C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isItem__12dSv_memBit_cCFi.s b/asm/d/save/d_save/isItem__12dSv_memBit_cCFi.s deleted file mode 100644 index 1ad2d49b76e..00000000000 --- a/asm/d/save/d_save/isItem__12dSv_memBit_cCFi.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_800348EC: -/* 800348EC 7C 80 2E 70 */ srawi r0, r4, 5 -/* 800348F0 54 00 10 3A */ slwi r0, r0, 2 -/* 800348F4 7C 63 02 14 */ add r3, r3, r0 -/* 800348F8 80 A3 00 18 */ lwz r5, 0x18(r3) -/* 800348FC 38 60 00 01 */ li r3, 1 -/* 80034900 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034904 7C 60 00 30 */ slw r0, r3, r0 -/* 80034908 7C A3 00 38 */ and r3, r5, r0 -/* 8003490C 30 03 FF FF */ addic r0, r3, -1 -/* 80034910 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034914 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isItem__13dSv_zoneBit_cCFi.s b/asm/d/save/d_save/isItem__13dSv_zoneBit_cCFi.s deleted file mode 100644 index 084ad434b0b..00000000000 --- a/asm/d/save/d_save/isItem__13dSv_zoneBit_cCFi.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80034E50: -/* 80034E50 7C 80 26 70 */ srawi r0, r4, 4 -/* 80034E54 54 00 08 3C */ slwi r0, r0, 1 -/* 80034E58 7C 63 02 14 */ add r3, r3, r0 -/* 80034E5C A0 A3 00 06 */ lhz r5, 6(r3) -/* 80034E60 38 60 00 01 */ li r3, 1 -/* 80034E64 54 80 07 3E */ clrlwi r0, r4, 0x1c -/* 80034E68 7C 60 00 30 */ slw r0, r3, r0 -/* 80034E6C 7C A3 00 38 */ and r3, r5, r0 -/* 80034E70 30 03 FF FF */ addic r0, r3, -1 -/* 80034E74 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034E78 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isLetterGetFlag__17dSv_letter_info_cCFi.s b/asm/d/save/d_save/isLetterGetFlag__17dSv_letter_info_cCFi.s deleted file mode 100644 index ab7767b66e9..00000000000 --- a/asm/d/save/d_save/isLetterGetFlag__17dSv_letter_info_cCFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8003444C: -/* 8003444C 38 A0 00 01 */ li r5, 1 -/* 80034450 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034454 7C A5 00 30 */ slw r5, r5, r0 -/* 80034458 7C 80 2E 70 */ srawi r0, r4, 5 -/* 8003445C 54 00 10 3A */ slwi r0, r0, 2 -/* 80034460 7C 03 00 2E */ lwzx r0, r3, r0 -/* 80034464 7C A3 00 38 */ and r3, r5, r0 -/* 80034468 30 03 FF FF */ addic r0, r3, -1 -/* 8003446C 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034470 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isLetterReadFlag__17dSv_letter_info_cCFi.s b/asm/d/save/d_save/isLetterReadFlag__17dSv_letter_info_cCFi.s deleted file mode 100644 index 98f6a1d0aa1..00000000000 --- a/asm/d/save/d_save/isLetterReadFlag__17dSv_letter_info_cCFi.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_8003449C: -/* 8003449C 7C 80 2E 70 */ srawi r0, r4, 5 -/* 800344A0 54 00 10 3A */ slwi r0, r0, 2 -/* 800344A4 7C 63 02 14 */ add r3, r3, r0 -/* 800344A8 80 A3 00 08 */ lwz r5, 8(r3) -/* 800344AC 38 60 00 01 */ li r3, 1 -/* 800344B0 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 800344B4 7C 60 00 30 */ slw r0, r3, r0 -/* 800344B8 7C A3 00 38 */ and r3, r5, r0 -/* 800344BC 30 03 FF FF */ addic r0, r3, -1 -/* 800344C0 7C 60 19 10 */ subfe r3, r0, r3 -/* 800344C4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isLightDropGetFlag__16dSv_light_drop_cCFUc.s b/asm/d/save/d_save/isLightDropGetFlag__16dSv_light_drop_cCFUc.s deleted file mode 100644 index 129bbc0e8be..00000000000 --- a/asm/d/save/d_save/isLightDropGetFlag__16dSv_light_drop_cCFUc.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_8003439C: -/* 8003439C 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 800343A0 28 00 00 04 */ cmplwi r0, 4 -/* 800343A4 41 80 00 14 */ blt lbl_800343B8 -/* 800343A8 28 00 00 06 */ cmplwi r0, 6 -/* 800343AC 41 81 00 0C */ bgt lbl_800343B8 -/* 800343B0 38 60 00 00 */ li r3, 0 -/* 800343B4 4E 80 00 20 */ blr -lbl_800343B8: -/* 800343B8 88 A3 00 04 */ lbz r5, 4(r3) -/* 800343BC 38 60 00 01 */ li r3, 1 -/* 800343C0 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 800343C4 7C 60 00 30 */ slw r0, r3, r0 -/* 800343C8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 800343CC 7C A3 00 38 */ and r3, r5, r0 -/* 800343D0 30 03 FF FF */ addic r0, r3, -1 -/* 800343D4 7C 60 19 10 */ subfe r3, r0, r3 -/* 800343D8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isOneItem__13dSv_zoneBit_cCFi.s b/asm/d/save/d_save/isOneItem__13dSv_zoneBit_cCFi.s deleted file mode 100644 index bbca5e83884..00000000000 --- a/asm/d/save/d_save/isOneItem__13dSv_zoneBit_cCFi.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80034E98: -/* 80034E98 A0 63 00 0A */ lhz r3, 0xa(r3) -/* 80034E9C 38 00 00 01 */ li r0, 1 -/* 80034EA0 7C 00 20 30 */ slw r0, r0, r4 -/* 80034EA4 7C 63 00 38 */ and r3, r3, r0 -/* 80034EA8 30 03 FF FF */ addic r0, r3, -1 -/* 80034EAC 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034EB0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isOneSwitch__13dSv_zoneBit_cCFi.s b/asm/d/save/d_save/isOneSwitch__13dSv_zoneBit_cCFi.s deleted file mode 100644 index 7bd17205886..00000000000 --- a/asm/d/save/d_save/isOneSwitch__13dSv_zoneBit_cCFi.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80034DE0: -/* 80034DE0 A0 63 00 04 */ lhz r3, 4(r3) -/* 80034DE4 38 00 00 01 */ li r0, 1 -/* 80034DE8 7C 00 20 30 */ slw r0, r0, r4 -/* 80034DEC 7C 63 00 38 */ and r3, r3, r0 -/* 80034DF0 30 03 FF FF */ addic r0, r3, -1 -/* 80034DF4 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034DF8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isRegionBit__33dSv_player_field_last_stay_info_cCFi.s b/asm/d/save/d_save/isRegionBit__33dSv_player_field_last_stay_info_cCFi.s deleted file mode 100644 index 76adc3bd8db..00000000000 --- a/asm/d/save/d_save/isRegionBit__33dSv_player_field_last_stay_info_cCFi.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80032E78: -/* 80032E78 2C 04 00 00 */ cmpwi r4, 0 -/* 80032E7C 41 80 00 2C */ blt lbl_80032EA8 -/* 80032E80 2C 04 00 08 */ cmpwi r4, 8 -/* 80032E84 40 80 00 24 */ bge lbl_80032EA8 -/* 80032E88 88 63 00 19 */ lbz r3, 0x19(r3) -/* 80032E8C 38 00 00 01 */ li r0, 1 -/* 80032E90 7C 00 20 30 */ slw r0, r0, r4 -/* 80032E94 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80032E98 7C 63 00 38 */ and r3, r3, r0 -/* 80032E9C 30 03 FF FF */ addic r0, r3, -1 -/* 80032EA0 7C 60 19 10 */ subfe r3, r0, r3 -/* 80032EA4 4E 80 00 20 */ blr -lbl_80032EA8: -/* 80032EA8 38 60 00 00 */ li r3, 0 -/* 80032EAC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isSwitch__10dSv_info_cCFii.s b/asm/d/save/d_save/isSwitch__10dSv_info_cCFii.s deleted file mode 100644 index 50f5c3e72cc..00000000000 --- a/asm/d/save/d_save/isSwitch__10dSv_info_cCFii.s +++ /dev/null @@ -1,60 +0,0 @@ -lbl_80035360: -/* 80035360 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80035364 7C 08 02 A6 */ mflr r0 -/* 80035368 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003536C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80035370 93 C1 00 08 */ stw r30, 8(r1) -/* 80035374 7C 7E 1B 78 */ mr r30, r3 -/* 80035378 7C 9F 23 78 */ mr r31, r4 -/* 8003537C 2C 1F FF FF */ cmpwi r31, -1 -/* 80035380 41 82 00 0C */ beq lbl_8003538C -/* 80035384 2C 1F 00 FF */ cmpwi r31, 0xff -/* 80035388 40 82 00 0C */ bne lbl_80035394 -lbl_8003538C: -/* 8003538C 38 60 00 00 */ li r3, 0 -/* 80035390 48 00 00 84 */ b lbl_80035414 -lbl_80035394: -/* 80035394 2C 1F 00 80 */ cmpwi r31, 0x80 -/* 80035398 40 80 00 10 */ bge lbl_800353A8 -/* 8003539C 38 7E 09 58 */ addi r3, r30, 0x958 -/* 800353A0 4B FF F4 C1 */ bl isSwitch__12dSv_memBit_cCFi -/* 800353A4 48 00 00 70 */ b lbl_80035414 -lbl_800353A8: -/* 800353A8 2C 1F 00 C0 */ cmpwi r31, 0xc0 -/* 800353AC 40 80 00 14 */ bge lbl_800353C0 -/* 800353B0 38 7E 09 78 */ addi r3, r30, 0x978 -/* 800353B4 38 9F FF 80 */ addi r4, r31, -128 -/* 800353B8 4B FF F8 31 */ bl isSwitch__12dSv_danBit_cCFi -/* 800353BC 48 00 00 58 */ b lbl_80035414 -lbl_800353C0: -/* 800353C0 7C A3 2B 78 */ mr r3, r5 -/* 800353C4 4B FF 85 ED */ bl getZoneNo__20dStage_roomControl_cFi -/* 800353C8 2C 03 00 00 */ cmpwi r3, 0 -/* 800353CC 41 80 00 0C */ blt lbl_800353D8 -/* 800353D0 2C 03 00 20 */ cmpwi r3, 0x20 -/* 800353D4 41 80 00 0C */ blt lbl_800353E0 -lbl_800353D8: -/* 800353D8 38 60 00 00 */ li r3, 0 -/* 800353DC 48 00 00 38 */ b lbl_80035414 -lbl_800353E0: -/* 800353E0 2C 1F 00 E0 */ cmpwi r31, 0xe0 -/* 800353E4 40 80 00 1C */ bge lbl_80035400 -/* 800353E8 54 63 28 34 */ slwi r3, r3, 5 -/* 800353EC 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 800353F0 7C 7E 1A 14 */ add r3, r30, r3 -/* 800353F4 38 9F FF 40 */ addi r4, r31, -192 -/* 800353F8 4B FF F9 59 */ bl isSwitch__13dSv_zoneBit_cCFi -/* 800353FC 48 00 00 18 */ b lbl_80035414 -lbl_80035400: -/* 80035400 54 63 28 34 */ slwi r3, r3, 5 -/* 80035404 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 80035408 7C 7E 1A 14 */ add r3, r30, r3 -/* 8003540C 38 9F FF 20 */ addi r4, r31, -224 -/* 80035410 4B FF F9 D1 */ bl isOneSwitch__13dSv_zoneBit_cCFi -lbl_80035414: -/* 80035414 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80035418 83 C1 00 08 */ lwz r30, 8(r1) -/* 8003541C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80035420 7C 08 03 A6 */ mtlr r0 -/* 80035424 38 21 00 10 */ addi r1, r1, 0x10 -/* 80035428 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isSwitch__12dSv_danBit_cCFi.s b/asm/d/save/d_save/isSwitch__12dSv_danBit_cCFi.s deleted file mode 100644 index 4f93305735a..00000000000 --- a/asm/d/save/d_save/isSwitch__12dSv_danBit_cCFi.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80034BE8: -/* 80034BE8 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034BEC 54 00 10 3A */ slwi r0, r0, 2 -/* 80034BF0 7C 63 02 14 */ add r3, r3, r0 -/* 80034BF4 80 A3 00 04 */ lwz r5, 4(r3) -/* 80034BF8 38 60 00 01 */ li r3, 1 -/* 80034BFC 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034C00 7C 60 00 30 */ slw r0, r3, r0 -/* 80034C04 7C A3 00 38 */ and r3, r5, r0 -/* 80034C08 30 03 FF FF */ addic r0, r3, -1 -/* 80034C0C 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034C10 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isSwitch__12dSv_memBit_cCFi.s b/asm/d/save/d_save/isSwitch__12dSv_memBit_cCFi.s deleted file mode 100644 index bb2b96f02c5..00000000000 --- a/asm/d/save/d_save/isSwitch__12dSv_memBit_cCFi.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80034860: -/* 80034860 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034864 54 00 10 3A */ slwi r0, r0, 2 -/* 80034868 7C 63 02 14 */ add r3, r3, r0 -/* 8003486C 80 A3 00 08 */ lwz r5, 8(r3) -/* 80034870 38 60 00 01 */ li r3, 1 -/* 80034874 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034878 7C 60 00 30 */ slw r0, r3, r0 -/* 8003487C 7C A3 00 38 */ and r3, r5, r0 -/* 80034880 30 03 FF FF */ addic r0, r3, -1 -/* 80034884 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034888 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isSwitch__13dSv_zoneBit_cCFi.s b/asm/d/save/d_save/isSwitch__13dSv_zoneBit_cCFi.s deleted file mode 100644 index 4208e6a41f1..00000000000 --- a/asm/d/save/d_save/isSwitch__13dSv_zoneBit_cCFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034D50: -/* 80034D50 38 A0 00 01 */ li r5, 1 -/* 80034D54 54 80 07 3E */ clrlwi r0, r4, 0x1c -/* 80034D58 7C A5 00 30 */ slw r5, r5, r0 -/* 80034D5C 7C 80 26 70 */ srawi r0, r4, 4 -/* 80034D60 54 00 08 3C */ slwi r0, r0, 1 -/* 80034D64 7C 03 02 2E */ lhzx r0, r3, r0 -/* 80034D68 7C A3 00 38 */ and r3, r5, r0 -/* 80034D6C 30 03 FF FF */ addic r0, r3, -1 -/* 80034D70 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034D74 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isTbox__12dSv_memBit_cCFi.s b/asm/d/save/d_save/isTbox__12dSv_memBit_cCFi.s deleted file mode 100644 index 96174904e82..00000000000 --- a/asm/d/save/d_save/isTbox__12dSv_memBit_cCFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_800347E8: -/* 800347E8 38 A0 00 01 */ li r5, 1 -/* 800347EC 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 800347F0 7C A5 00 30 */ slw r5, r5, r0 -/* 800347F4 7C 80 2E 70 */ srawi r0, r4, 5 -/* 800347F8 54 00 10 3A */ slwi r0, r0, 2 -/* 800347FC 7C 03 00 2E */ lwzx r0, r3, r0 -/* 80034800 7C A3 00 38 */ and r3, r5, r0 -/* 80034804 30 03 FF FF */ addic r0, r3, -1 -/* 80034808 7C 60 19 10 */ subfe r3, r0, r3 -/* 8003480C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isTransformLV__21dSv_player_status_b_cCFi.s b/asm/d/save/d_save/isTransformLV__21dSv_player_status_b_cCFi.s deleted file mode 100644 index a5c06600b46..00000000000 --- a/asm/d/save/d_save/isTransformLV__21dSv_player_status_b_cCFi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80032BEC: -/* 80032BEC 88 63 00 08 */ lbz r3, 8(r3) -/* 80032BF0 38 00 00 01 */ li r0, 1 -/* 80032BF4 7C 00 20 30 */ slw r0, r0, r4 -/* 80032BF8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80032BFC 7C 63 00 38 */ and r3, r3, r0 -/* 80032C00 30 03 FF FF */ addic r0, r3, -1 -/* 80032C04 7C 60 19 10 */ subfe r3, r0, r3 -/* 80032C08 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/isVisitedRoom__13dSv_memory2_cFi.s b/asm/d/save/d_save/isVisitedRoom__13dSv_memory2_cFi.s deleted file mode 100644 index 6db90728518..00000000000 --- a/asm/d/save/d_save/isVisitedRoom__13dSv_memory2_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034AEC: -/* 80034AEC 38 A0 00 01 */ li r5, 1 -/* 80034AF0 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034AF4 7C A5 00 30 */ slw r5, r5, r0 -/* 80034AF8 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034AFC 54 00 10 3A */ slwi r0, r0, 2 -/* 80034B00 7C 03 00 2E */ lwzx r0, r3, r0 -/* 80034B04 7C A3 00 38 */ and r3, r5, r0 -/* 80034B08 30 03 FF FF */ addic r0, r3, -1 -/* 80034B0C 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034B10 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/is__15dSv_zoneActor_cCFi.s b/asm/d/save/d_save/is__15dSv_zoneActor_cCFi.s deleted file mode 100644 index d1a5f6dea83..00000000000 --- a/asm/d/save/d_save/is__15dSv_zoneActor_cCFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034F1C: -/* 80034F1C 38 A0 00 01 */ li r5, 1 -/* 80034F20 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034F24 7C A5 00 30 */ slw r5, r5, r0 -/* 80034F28 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034F2C 54 00 10 3A */ slwi r0, r0, 2 -/* 80034F30 7C 03 00 2E */ lwzx r0, r3, r0 -/* 80034F34 7C A3 00 38 */ and r3, r5, r0 -/* 80034F38 30 03 FF FF */ addic r0, r3, -1 -/* 80034F3C 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034F40 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offActor__10dSv_info_cFii.s b/asm/d/save/d_save/offActor__10dSv_info_cFii.s deleted file mode 100644 index 5e211efdd81..00000000000 --- a/asm/d/save/d_save/offActor__10dSv_info_cFii.s +++ /dev/null @@ -1,31 +0,0 @@ -lbl_800356B4: -/* 800356B4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800356B8 7C 08 02 A6 */ mflr r0 -/* 800356BC 90 01 00 14 */ stw r0, 0x14(r1) -/* 800356C0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800356C4 93 C1 00 08 */ stw r30, 8(r1) -/* 800356C8 7C 7E 1B 78 */ mr r30, r3 -/* 800356CC 7C 9F 23 78 */ mr r31, r4 -/* 800356D0 2C 1F FF FF */ cmpwi r31, -1 -/* 800356D4 41 82 00 38 */ beq lbl_8003570C -/* 800356D8 3C 1F 00 00 */ addis r0, r31, 0 -/* 800356DC 28 00 FF FF */ cmplwi r0, 0xffff -/* 800356E0 41 82 00 2C */ beq lbl_8003570C -/* 800356E4 2C 05 FF FF */ cmpwi r5, -1 -/* 800356E8 40 82 00 08 */ bne lbl_800356F0 -/* 800356EC 48 00 00 20 */ b lbl_8003570C -lbl_800356F0: -/* 800356F0 7C A3 2B 78 */ mr r3, r5 -/* 800356F4 4B FF 82 BD */ bl getZoneNo__20dStage_roomControl_cFi -/* 800356F8 54 63 28 34 */ slwi r3, r3, 5 -/* 800356FC 38 63 09 C4 */ addi r3, r3, 0x9c4 -/* 80035700 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035704 7F E4 FB 78 */ mr r4, r31 -/* 80035708 4B FF F7 F1 */ bl off__15dSv_zoneActor_cFi -lbl_8003570C: -/* 8003570C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80035710 83 C1 00 08 */ lwz r30, 8(r1) -/* 80035714 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80035718 7C 08 03 A6 */ mtlr r0 -/* 8003571C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80035720 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offEventBit__11dSv_event_cFUs.s b/asm/d/save/d_save/offEventBit__11dSv_event_cFUs.s deleted file mode 100644 index c522e6d83eb..00000000000 --- a/asm/d/save/d_save/offEventBit__11dSv_event_cFUs.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_800349A4: -/* 800349A4 54 86 C6 3E */ rlwinm r6, r4, 0x18, 0x18, 0x1f -/* 800349A8 7C A3 30 AE */ lbzx r5, r3, r6 -/* 800349AC 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 800349B0 7C A0 00 78 */ andc r0, r5, r0 -/* 800349B4 7C 03 31 AE */ stbx r0, r3, r6 -/* 800349B8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offOneSwitch__13dSv_zoneBit_cFi.s b/asm/d/save/d_save/offOneSwitch__13dSv_zoneBit_cFi.s deleted file mode 100644 index b0b362ff1ae..00000000000 --- a/asm/d/save/d_save/offOneSwitch__13dSv_zoneBit_cFi.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80034DC8: -/* 80034DC8 A0 A3 00 04 */ lhz r5, 4(r3) -/* 80034DCC 38 00 00 01 */ li r0, 1 -/* 80034DD0 7C 00 20 30 */ slw r0, r0, r4 -/* 80034DD4 7C A0 00 78 */ andc r0, r5, r0 -/* 80034DD8 B0 03 00 04 */ sth r0, 4(r3) -/* 80034DDC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offSwitch__10dSv_info_cFii.s b/asm/d/save/d_save/offSwitch__10dSv_info_cFii.s deleted file mode 100644 index 9f132cc37e7..00000000000 --- a/asm/d/save/d_save/offSwitch__10dSv_info_cFii.s +++ /dev/null @@ -1,50 +0,0 @@ -lbl_800352B0: -/* 800352B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800352B4 7C 08 02 A6 */ mflr r0 -/* 800352B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800352BC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800352C0 93 C1 00 08 */ stw r30, 8(r1) -/* 800352C4 7C 7E 1B 78 */ mr r30, r3 -/* 800352C8 7C 9F 23 78 */ mr r31, r4 -/* 800352CC 2C 1F FF FF */ cmpwi r31, -1 -/* 800352D0 41 82 00 78 */ beq lbl_80035348 -/* 800352D4 2C 1F 00 FF */ cmpwi r31, 0xff -/* 800352D8 40 82 00 08 */ bne lbl_800352E0 -/* 800352DC 48 00 00 6C */ b lbl_80035348 -lbl_800352E0: -/* 800352E0 2C 1F 00 80 */ cmpwi r31, 0x80 -/* 800352E4 40 80 00 10 */ bge lbl_800352F4 -/* 800352E8 38 7E 09 58 */ addi r3, r30, 0x958 -/* 800352EC 4B FF F5 4D */ bl offSwitch__12dSv_memBit_cFi -/* 800352F0 48 00 00 58 */ b lbl_80035348 -lbl_800352F4: -/* 800352F4 2C 1F 00 C0 */ cmpwi r31, 0xc0 -/* 800352F8 40 80 00 14 */ bge lbl_8003530C -/* 800352FC 38 7E 09 78 */ addi r3, r30, 0x978 -/* 80035300 38 9F FF 80 */ addi r4, r31, -128 -/* 80035304 4B FF F8 BD */ bl offSwitch__12dSv_danBit_cFi -/* 80035308 48 00 00 40 */ b lbl_80035348 -lbl_8003530C: -/* 8003530C 7C A3 2B 78 */ mr r3, r5 -/* 80035310 4B FF 86 A1 */ bl getZoneNo__20dStage_roomControl_cFi -/* 80035314 2C 1F 00 E0 */ cmpwi r31, 0xe0 -/* 80035318 40 80 00 1C */ bge lbl_80035334 -/* 8003531C 54 63 28 34 */ slwi r3, r3, 5 -/* 80035320 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 80035324 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035328 38 9F FF 40 */ addi r4, r31, -192 -/* 8003532C 4B FF FA 01 */ bl offSwitch__13dSv_zoneBit_cFi -/* 80035330 48 00 00 18 */ b lbl_80035348 -lbl_80035334: -/* 80035334 54 63 28 34 */ slwi r3, r3, 5 -/* 80035338 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 8003533C 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035340 38 9F FF 20 */ addi r4, r31, -224 -/* 80035344 4B FF FA 85 */ bl offOneSwitch__13dSv_zoneBit_cFi -lbl_80035348: -/* 80035348 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8003534C 83 C1 00 08 */ lwz r30, 8(r1) -/* 80035350 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80035354 7C 08 03 A6 */ mtlr r0 -/* 80035358 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003535C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offSwitch__12dSv_danBit_cFi.s b/asm/d/save/d_save/offSwitch__12dSv_danBit_cFi.s deleted file mode 100644 index 7c137b5e6f2..00000000000 --- a/asm/d/save/d_save/offSwitch__12dSv_danBit_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034BC0: -/* 80034BC0 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034BC4 54 00 10 3A */ slwi r0, r0, 2 -/* 80034BC8 7C C3 02 14 */ add r6, r3, r0 -/* 80034BCC 80 A6 00 04 */ lwz r5, 4(r6) -/* 80034BD0 38 60 00 01 */ li r3, 1 -/* 80034BD4 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034BD8 7C 60 00 30 */ slw r0, r3, r0 -/* 80034BDC 7C A0 00 78 */ andc r0, r5, r0 -/* 80034BE0 90 06 00 04 */ stw r0, 4(r6) -/* 80034BE4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offSwitch__12dSv_memBit_cFi.s b/asm/d/save/d_save/offSwitch__12dSv_memBit_cFi.s deleted file mode 100644 index 9e11bdc7999..00000000000 --- a/asm/d/save/d_save/offSwitch__12dSv_memBit_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034838: -/* 80034838 7C 80 2E 70 */ srawi r0, r4, 5 -/* 8003483C 54 00 10 3A */ slwi r0, r0, 2 -/* 80034840 7C C3 02 14 */ add r6, r3, r0 -/* 80034844 80 A6 00 08 */ lwz r5, 8(r6) -/* 80034848 38 60 00 01 */ li r3, 1 -/* 8003484C 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034850 7C 60 00 30 */ slw r0, r3, r0 -/* 80034854 7C A0 00 78 */ andc r0, r5, r0 -/* 80034858 90 06 00 08 */ stw r0, 8(r6) -/* 8003485C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offSwitch__13dSv_zoneBit_cFi.s b/asm/d/save/d_save/offSwitch__13dSv_zoneBit_cFi.s deleted file mode 100644 index 6b6eba1260d..00000000000 --- a/asm/d/save/d_save/offSwitch__13dSv_zoneBit_cFi.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034D2C: -/* 80034D2C 7C 80 26 70 */ srawi r0, r4, 4 -/* 80034D30 54 07 08 3C */ slwi r7, r0, 1 -/* 80034D34 7C C3 3A 2E */ lhzx r6, r3, r7 -/* 80034D38 38 A0 00 01 */ li r5, 1 -/* 80034D3C 54 80 07 3E */ clrlwi r0, r4, 0x1c -/* 80034D40 7C A0 00 30 */ slw r0, r5, r0 -/* 80034D44 7C C0 00 78 */ andc r0, r6, r0 -/* 80034D48 7C 03 3B 2E */ sthx r0, r3, r7 -/* 80034D4C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offTbox__12dSv_memBit_cFi.s b/asm/d/save/d_save/offTbox__12dSv_memBit_cFi.s deleted file mode 100644 index 0212caf3551..00000000000 --- a/asm/d/save/d_save/offTbox__12dSv_memBit_cFi.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_800347C4: -/* 800347C4 7C 80 2E 70 */ srawi r0, r4, 5 -/* 800347C8 54 07 10 3A */ slwi r7, r0, 2 -/* 800347CC 7C C3 38 2E */ lwzx r6, r3, r7 -/* 800347D0 38 A0 00 01 */ li r5, 1 -/* 800347D4 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 800347D8 7C A0 00 30 */ slw r0, r5, r0 -/* 800347DC 7C C0 00 78 */ andc r0, r6, r0 -/* 800347E0 7C 03 39 2E */ stwx r0, r3, r7 -/* 800347E4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/offVisitedRoom__13dSv_memory2_cFi.s b/asm/d/save/d_save/offVisitedRoom__13dSv_memory2_cFi.s deleted file mode 100644 index 66b59299eda..00000000000 --- a/asm/d/save/d_save/offVisitedRoom__13dSv_memory2_cFi.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034AC8: -/* 80034AC8 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034ACC 54 07 10 3A */ slwi r7, r0, 2 -/* 80034AD0 7C C3 38 2E */ lwzx r6, r3, r7 -/* 80034AD4 38 A0 00 01 */ li r5, 1 -/* 80034AD8 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034ADC 7C A0 00 30 */ slw r0, r5, r0 -/* 80034AE0 7C C0 00 78 */ andc r0, r6, r0 -/* 80034AE4 7C 03 39 2E */ stwx r0, r3, r7 -/* 80034AE8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/off__15dSv_zoneActor_cFi.s b/asm/d/save/d_save/off__15dSv_zoneActor_cFi.s deleted file mode 100644 index ebb96b4e99b..00000000000 --- a/asm/d/save/d_save/off__15dSv_zoneActor_cFi.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034EF8: -/* 80034EF8 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034EFC 54 07 10 3A */ slwi r7, r0, 2 -/* 80034F00 7C C3 38 2E */ lwzx r6, r3, r7 -/* 80034F04 38 A0 00 01 */ li r5, 1 -/* 80034F08 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034F0C 7C A0 00 30 */ slw r0, r5, r0 -/* 80034F10 7C C0 00 78 */ andc r0, r6, r0 -/* 80034F14 7C 03 39 2E */ stwx r0, r3, r7 -/* 80034F18 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onActor__10dSv_info_cFii.s b/asm/d/save/d_save/onActor__10dSv_info_cFii.s deleted file mode 100644 index 3a36db8eb5d..00000000000 --- a/asm/d/save/d_save/onActor__10dSv_info_cFii.s +++ /dev/null @@ -1,31 +0,0 @@ -lbl_80035644: -/* 80035644 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80035648 7C 08 02 A6 */ mflr r0 -/* 8003564C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80035650 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80035654 93 C1 00 08 */ stw r30, 8(r1) -/* 80035658 7C 7E 1B 78 */ mr r30, r3 -/* 8003565C 7C 9F 23 78 */ mr r31, r4 -/* 80035660 2C 1F FF FF */ cmpwi r31, -1 -/* 80035664 41 82 00 38 */ beq lbl_8003569C -/* 80035668 3C 1F 00 00 */ addis r0, r31, 0 -/* 8003566C 28 00 FF FF */ cmplwi r0, 0xffff -/* 80035670 41 82 00 2C */ beq lbl_8003569C -/* 80035674 2C 05 FF FF */ cmpwi r5, -1 -/* 80035678 40 82 00 08 */ bne lbl_80035680 -/* 8003567C 48 00 00 20 */ b lbl_8003569C -lbl_80035680: -/* 80035680 7C A3 2B 78 */ mr r3, r5 -/* 80035684 4B FF 83 2D */ bl getZoneNo__20dStage_roomControl_cFi -/* 80035688 54 63 28 34 */ slwi r3, r3, 5 -/* 8003568C 38 63 09 C4 */ addi r3, r3, 0x9c4 -/* 80035690 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035694 7F E4 FB 78 */ mr r4, r31 -/* 80035698 4B FF F8 3D */ bl on__15dSv_zoneActor_cFi -lbl_8003569C: -/* 8003569C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800356A0 83 C1 00 08 */ lwz r30, 8(r1) -/* 800356A4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800356A8 7C 08 03 A6 */ mtlr r0 -/* 800356AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 800356B0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onCollectCrystal__20dSv_player_collect_cFUc.s b/asm/d/save/d_save/onCollectCrystal__20dSv_player_collect_cFUc.s deleted file mode 100644 index 5c51aacc0f9..00000000000 --- a/asm/d/save/d_save/onCollectCrystal__20dSv_player_collect_cFUc.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8003422C: -/* 8003422C 88 C3 00 09 */ lbz r6, 9(r3) -/* 80034230 38 A0 00 01 */ li r5, 1 -/* 80034234 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034238 7C A0 00 30 */ slw r0, r5, r0 -/* 8003423C 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80034240 7C C0 03 78 */ or r0, r6, r0 -/* 80034244 98 03 00 09 */ stb r0, 9(r3) -/* 80034248 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onCollectMirror__20dSv_player_collect_cFUc.s b/asm/d/save/d_save/onCollectMirror__20dSv_player_collect_cFUc.s deleted file mode 100644 index 99b4e212b7d..00000000000 --- a/asm/d/save/d_save/onCollectMirror__20dSv_player_collect_cFUc.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80034270: -/* 80034270 88 C3 00 0A */ lbz r6, 0xa(r3) -/* 80034274 38 A0 00 01 */ li r5, 1 -/* 80034278 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 8003427C 7C A0 00 30 */ slw r0, r5, r0 -/* 80034280 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80034284 7C C0 03 78 */ or r0, r6, r0 -/* 80034288 98 03 00 0A */ stb r0, 0xa(r3) -/* 8003428C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onDarkClearLV__21dSv_player_status_b_cFi.s b/asm/d/save/d_save/onDarkClearLV__21dSv_player_status_b_cFi.s deleted file mode 100644 index 464dc52ef95..00000000000 --- a/asm/d/save/d_save/onDarkClearLV__21dSv_player_status_b_cFi.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80032B94: -/* 80032B94 88 A3 00 09 */ lbz r5, 9(r3) -/* 80032B98 38 00 00 01 */ li r0, 1 -/* 80032B9C 7C 00 20 30 */ slw r0, r0, r4 -/* 80032BA0 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80032BA4 7C A0 03 78 */ or r0, r5, r0 -/* 80032BA8 98 03 00 09 */ stb r0, 9(r3) -/* 80032BAC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onDungeonItem__12dSv_memBit_cFi.s b/asm/d/save/d_save/onDungeonItem__12dSv_memBit_cFi.s deleted file mode 100644 index 79f01b3d370..00000000000 --- a/asm/d/save/d_save/onDungeonItem__12dSv_memBit_cFi.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80034918: -/* 80034918 88 A3 00 1D */ lbz r5, 0x1d(r3) -/* 8003491C 38 00 00 01 */ li r0, 1 -/* 80034920 7C 00 20 30 */ slw r0, r0, r4 -/* 80034924 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80034928 7C A0 03 78 */ or r0, r5, r0 -/* 8003492C 98 03 00 1D */ stb r0, 0x1d(r3) -/* 80034930 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onEventBit__11dSv_event_cFUs.s b/asm/d/save/d_save/onEventBit__11dSv_event_cFUs.s deleted file mode 100644 index ccff8dde08d..00000000000 --- a/asm/d/save/d_save/onEventBit__11dSv_event_cFUs.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_8003498C: -/* 8003498C 54 86 C6 3E */ rlwinm r6, r4, 0x18, 0x18, 0x1f -/* 80034990 7C A3 30 AE */ lbzx r5, r3, r6 -/* 80034994 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034998 7C A0 03 78 */ or r0, r5, r0 -/* 8003499C 7C 03 31 AE */ stbx r0, r3, r6 -/* 800349A0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onItem__10dSv_info_cFii.s b/asm/d/save/d_save/onItem__10dSv_info_cFii.s deleted file mode 100644 index a963cf37177..00000000000 --- a/asm/d/save/d_save/onItem__10dSv_info_cFii.s +++ /dev/null @@ -1,50 +0,0 @@ -lbl_800354E0: -/* 800354E0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800354E4 7C 08 02 A6 */ mflr r0 -/* 800354E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800354EC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800354F0 93 C1 00 08 */ stw r30, 8(r1) -/* 800354F4 7C 7E 1B 78 */ mr r30, r3 -/* 800354F8 7C 9F 23 78 */ mr r31, r4 -/* 800354FC 2C 1F FF FF */ cmpwi r31, -1 -/* 80035500 41 82 00 78 */ beq lbl_80035578 -/* 80035504 2C 1F 00 FF */ cmpwi r31, 0xff -/* 80035508 40 82 00 08 */ bne lbl_80035510 -/* 8003550C 48 00 00 6C */ b lbl_80035578 -lbl_80035510: -/* 80035510 2C 1F 00 80 */ cmpwi r31, 0x80 -/* 80035514 40 80 00 10 */ bge lbl_80035524 -/* 80035518 38 7E 09 78 */ addi r3, r30, 0x978 -/* 8003551C 4B FF F7 31 */ bl onItem__12dSv_danBit_cFi -/* 80035520 48 00 00 58 */ b lbl_80035578 -lbl_80035524: -/* 80035524 2C 1F 00 A0 */ cmpwi r31, 0xa0 -/* 80035528 40 80 00 14 */ bge lbl_8003553C -/* 8003552C 38 7E 09 58 */ addi r3, r30, 0x958 -/* 80035530 38 9F FF 80 */ addi r4, r31, -128 -/* 80035534 4B FF F3 91 */ bl onItem__12dSv_memBit_cFi -/* 80035538 48 00 00 40 */ b lbl_80035578 -lbl_8003553C: -/* 8003553C 7C A3 2B 78 */ mr r3, r5 -/* 80035540 4B FF 84 71 */ bl getZoneNo__20dStage_roomControl_cFi -/* 80035544 2C 1F 00 C0 */ cmpwi r31, 0xc0 -/* 80035548 40 80 00 1C */ bge lbl_80035564 -/* 8003554C 54 63 28 34 */ slwi r3, r3, 5 -/* 80035550 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 80035554 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035558 38 9F FF 60 */ addi r4, r31, -160 -/* 8003555C 4B FF F8 C9 */ bl onItem__13dSv_zoneBit_cFi -/* 80035560 48 00 00 18 */ b lbl_80035578 -lbl_80035564: -/* 80035564 54 63 28 34 */ slwi r3, r3, 5 -/* 80035568 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 8003556C 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035570 38 9F FF 40 */ addi r4, r31, -192 -/* 80035574 4B FF F9 09 */ bl onOneItem__13dSv_zoneBit_cFi -lbl_80035578: -/* 80035578 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8003557C 83 C1 00 08 */ lwz r30, 8(r1) -/* 80035580 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80035584 7C 08 03 A6 */ mtlr r0 -/* 80035588 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003558C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onItem__12dSv_danBit_cFi.s b/asm/d/save/d_save/onItem__12dSv_danBit_cFi.s deleted file mode 100644 index 4256f476a46..00000000000 --- a/asm/d/save/d_save/onItem__12dSv_danBit_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034C4C: -/* 80034C4C 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034C50 54 00 10 3A */ slwi r0, r0, 2 -/* 80034C54 7C C3 02 14 */ add r6, r3, r0 -/* 80034C58 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 80034C5C 38 60 00 01 */ li r3, 1 -/* 80034C60 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034C64 7C 60 00 30 */ slw r0, r3, r0 -/* 80034C68 7C A0 03 78 */ or r0, r5, r0 -/* 80034C6C 90 06 00 0C */ stw r0, 0xc(r6) -/* 80034C70 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onItem__12dSv_memBit_cFi.s b/asm/d/save/d_save/onItem__12dSv_memBit_cFi.s deleted file mode 100644 index 9e917f2bdfa..00000000000 --- a/asm/d/save/d_save/onItem__12dSv_memBit_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_800348C4: -/* 800348C4 7C 80 2E 70 */ srawi r0, r4, 5 -/* 800348C8 54 00 10 3A */ slwi r0, r0, 2 -/* 800348CC 7C C3 02 14 */ add r6, r3, r0 -/* 800348D0 80 A6 00 18 */ lwz r5, 0x18(r6) -/* 800348D4 38 60 00 01 */ li r3, 1 -/* 800348D8 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 800348DC 7C 60 00 30 */ slw r0, r3, r0 -/* 800348E0 7C A0 03 78 */ or r0, r5, r0 -/* 800348E4 90 06 00 18 */ stw r0, 0x18(r6) -/* 800348E8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onItem__13dSv_zoneBit_cFi.s b/asm/d/save/d_save/onItem__13dSv_zoneBit_cFi.s deleted file mode 100644 index bc769d1d9bc..00000000000 --- a/asm/d/save/d_save/onItem__13dSv_zoneBit_cFi.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80034E24: -/* 80034E24 7C 80 26 70 */ srawi r0, r4, 4 -/* 80034E28 54 00 08 3C */ slwi r0, r0, 1 -/* 80034E2C 7C C3 02 14 */ add r6, r3, r0 -/* 80034E30 A0 A6 00 06 */ lhz r5, 6(r6) -/* 80034E34 38 60 00 01 */ li r3, 1 -/* 80034E38 54 80 07 3E */ clrlwi r0, r4, 0x1c -/* 80034E3C 7C 60 00 30 */ slw r0, r3, r0 -/* 80034E40 54 00 04 3E */ clrlwi r0, r0, 0x10 -/* 80034E44 7C A0 03 78 */ or r0, r5, r0 -/* 80034E48 B0 06 00 06 */ sth r0, 6(r6) -/* 80034E4C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onLetterGetFlag__17dSv_letter_info_cFi.s b/asm/d/save/d_save/onLetterGetFlag__17dSv_letter_info_cFi.s deleted file mode 100644 index 7fb22d23de2..00000000000 --- a/asm/d/save/d_save/onLetterGetFlag__17dSv_letter_info_cFi.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034428: -/* 80034428 7C 80 2E 70 */ srawi r0, r4, 5 -/* 8003442C 54 07 10 3A */ slwi r7, r0, 2 -/* 80034430 7C C3 38 2E */ lwzx r6, r3, r7 -/* 80034434 38 A0 00 01 */ li r5, 1 -/* 80034438 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 8003443C 7C A0 00 30 */ slw r0, r5, r0 -/* 80034440 7C C0 03 78 */ or r0, r6, r0 -/* 80034444 7C 03 39 2E */ stwx r0, r3, r7 -/* 80034448 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onLetterReadFlag__17dSv_letter_info_cFi.s b/asm/d/save/d_save/onLetterReadFlag__17dSv_letter_info_cFi.s deleted file mode 100644 index 6c4821f0ff7..00000000000 --- a/asm/d/save/d_save/onLetterReadFlag__17dSv_letter_info_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034474: -/* 80034474 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034478 54 00 10 3A */ slwi r0, r0, 2 -/* 8003447C 7C C3 02 14 */ add r6, r3, r0 -/* 80034480 80 A6 00 08 */ lwz r5, 8(r6) -/* 80034484 38 60 00 01 */ li r3, 1 -/* 80034488 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 8003448C 7C 60 00 30 */ slw r0, r3, r0 -/* 80034490 7C A0 03 78 */ or r0, r5, r0 -/* 80034494 90 06 00 08 */ stw r0, 8(r6) -/* 80034498 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onLightDropGetFlag__16dSv_light_drop_cFUc.s b/asm/d/save/d_save/onLightDropGetFlag__16dSv_light_drop_cFUc.s deleted file mode 100644 index cc784f38a92..00000000000 --- a/asm/d/save/d_save/onLightDropGetFlag__16dSv_light_drop_cFUc.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_80034368: -/* 80034368 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 8003436C 28 00 00 04 */ cmplwi r0, 4 -/* 80034370 41 80 00 0C */ blt lbl_8003437C -/* 80034374 28 00 00 06 */ cmplwi r0, 6 -/* 80034378 4C 81 00 20 */ blelr -lbl_8003437C: -/* 8003437C 88 C3 00 04 */ lbz r6, 4(r3) -/* 80034380 38 A0 00 01 */ li r5, 1 -/* 80034384 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034388 7C A0 00 30 */ slw r0, r5, r0 -/* 8003438C 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80034390 7C C0 03 78 */ or r0, r6, r0 -/* 80034394 98 03 00 04 */ stb r0, 4(r3) -/* 80034398 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onOneItem__13dSv_zoneBit_cFi.s b/asm/d/save/d_save/onOneItem__13dSv_zoneBit_cFi.s deleted file mode 100644 index af1d9438040..00000000000 --- a/asm/d/save/d_save/onOneItem__13dSv_zoneBit_cFi.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80034E7C: -/* 80034E7C A0 A3 00 0A */ lhz r5, 0xa(r3) -/* 80034E80 38 00 00 01 */ li r0, 1 -/* 80034E84 7C 00 20 30 */ slw r0, r0, r4 -/* 80034E88 54 00 04 3E */ clrlwi r0, r0, 0x10 -/* 80034E8C 7C A0 03 78 */ or r0, r5, r0 -/* 80034E90 B0 03 00 0A */ sth r0, 0xa(r3) -/* 80034E94 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onOneSwitch__13dSv_zoneBit_cFi.s b/asm/d/save/d_save/onOneSwitch__13dSv_zoneBit_cFi.s deleted file mode 100644 index 579be1863ce..00000000000 --- a/asm/d/save/d_save/onOneSwitch__13dSv_zoneBit_cFi.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80034DAC: -/* 80034DAC A0 A3 00 04 */ lhz r5, 4(r3) -/* 80034DB0 38 00 00 01 */ li r0, 1 -/* 80034DB4 7C 00 20 30 */ slw r0, r0, r4 -/* 80034DB8 54 00 04 3E */ clrlwi r0, r0, 0x10 -/* 80034DBC 7C A0 03 78 */ or r0, r5, r0 -/* 80034DC0 B0 03 00 04 */ sth r0, 4(r3) -/* 80034DC4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onRegionBit__33dSv_player_field_last_stay_info_cFi.s b/asm/d/save/d_save/onRegionBit__33dSv_player_field_last_stay_info_cFi.s deleted file mode 100644 index 61722af5577..00000000000 --- a/asm/d/save/d_save/onRegionBit__33dSv_player_field_last_stay_info_cFi.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80032E4C: -/* 80032E4C 2C 04 00 00 */ cmpwi r4, 0 -/* 80032E50 4D 80 00 20 */ bltlr -/* 80032E54 2C 04 00 08 */ cmpwi r4, 8 -/* 80032E58 4C 80 00 20 */ bgelr -/* 80032E5C 88 A3 00 19 */ lbz r5, 0x19(r3) -/* 80032E60 38 00 00 01 */ li r0, 1 -/* 80032E64 7C 00 20 30 */ slw r0, r0, r4 -/* 80032E68 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80032E6C 7C A0 03 78 */ or r0, r5, r0 -/* 80032E70 98 03 00 19 */ stb r0, 0x19(r3) -/* 80032E74 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onSwitch__10dSv_info_cFii.s b/asm/d/save/d_save/onSwitch__10dSv_info_cFii.s deleted file mode 100644 index 1af6f8194ba..00000000000 --- a/asm/d/save/d_save/onSwitch__10dSv_info_cFii.s +++ /dev/null @@ -1,50 +0,0 @@ -lbl_80035200: -/* 80035200 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80035204 7C 08 02 A6 */ mflr r0 -/* 80035208 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003520C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80035210 93 C1 00 08 */ stw r30, 8(r1) -/* 80035214 7C 7E 1B 78 */ mr r30, r3 -/* 80035218 7C 9F 23 78 */ mr r31, r4 -/* 8003521C 2C 1F FF FF */ cmpwi r31, -1 -/* 80035220 41 82 00 78 */ beq lbl_80035298 -/* 80035224 2C 1F 00 FF */ cmpwi r31, 0xff -/* 80035228 40 82 00 08 */ bne lbl_80035230 -/* 8003522C 48 00 00 6C */ b lbl_80035298 -lbl_80035230: -/* 80035230 2C 1F 00 80 */ cmpwi r31, 0x80 -/* 80035234 40 80 00 10 */ bge lbl_80035244 -/* 80035238 38 7E 09 58 */ addi r3, r30, 0x958 -/* 8003523C 4B FF F5 D5 */ bl onSwitch__12dSv_memBit_cFi -/* 80035240 48 00 00 58 */ b lbl_80035298 -lbl_80035244: -/* 80035244 2C 1F 00 C0 */ cmpwi r31, 0xc0 -/* 80035248 40 80 00 14 */ bge lbl_8003525C -/* 8003524C 38 7E 09 78 */ addi r3, r30, 0x978 -/* 80035250 38 9F FF 80 */ addi r4, r31, -128 -/* 80035254 4B FF F9 45 */ bl onSwitch__12dSv_danBit_cFi -/* 80035258 48 00 00 40 */ b lbl_80035298 -lbl_8003525C: -/* 8003525C 7C A3 2B 78 */ mr r3, r5 -/* 80035260 4B FF 87 51 */ bl getZoneNo__20dStage_roomControl_cFi -/* 80035264 2C 1F 00 E0 */ cmpwi r31, 0xe0 -/* 80035268 40 80 00 1C */ bge lbl_80035284 -/* 8003526C 54 63 28 34 */ slwi r3, r3, 5 -/* 80035270 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 80035274 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035278 38 9F FF 40 */ addi r4, r31, -192 -/* 8003527C 4B FF FA 89 */ bl onSwitch__13dSv_zoneBit_cFi -/* 80035280 48 00 00 18 */ b lbl_80035298 -lbl_80035284: -/* 80035284 54 63 28 34 */ slwi r3, r3, 5 -/* 80035288 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 8003528C 7C 7E 1A 14 */ add r3, r30, r3 -/* 80035290 38 9F FF 20 */ addi r4, r31, -224 -/* 80035294 4B FF FB 19 */ bl onOneSwitch__13dSv_zoneBit_cFi -lbl_80035298: -/* 80035298 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8003529C 83 C1 00 08 */ lwz r30, 8(r1) -/* 800352A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800352A4 7C 08 03 A6 */ mtlr r0 -/* 800352A8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800352AC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onSwitch__12dSv_danBit_cFi.s b/asm/d/save/d_save/onSwitch__12dSv_danBit_cFi.s deleted file mode 100644 index 0320e6dac36..00000000000 --- a/asm/d/save/d_save/onSwitch__12dSv_danBit_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034B98: -/* 80034B98 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034B9C 54 00 10 3A */ slwi r0, r0, 2 -/* 80034BA0 7C C3 02 14 */ add r6, r3, r0 -/* 80034BA4 80 A6 00 04 */ lwz r5, 4(r6) -/* 80034BA8 38 60 00 01 */ li r3, 1 -/* 80034BAC 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034BB0 7C 60 00 30 */ slw r0, r3, r0 -/* 80034BB4 7C A0 03 78 */ or r0, r5, r0 -/* 80034BB8 90 06 00 04 */ stw r0, 4(r6) -/* 80034BBC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onSwitch__12dSv_memBit_cFi.s b/asm/d/save/d_save/onSwitch__12dSv_memBit_cFi.s deleted file mode 100644 index 8de9ffb6467..00000000000 --- a/asm/d/save/d_save/onSwitch__12dSv_memBit_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034810: -/* 80034810 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034814 54 00 10 3A */ slwi r0, r0, 2 -/* 80034818 7C C3 02 14 */ add r6, r3, r0 -/* 8003481C 80 A6 00 08 */ lwz r5, 8(r6) -/* 80034820 38 60 00 01 */ li r3, 1 -/* 80034824 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034828 7C 60 00 30 */ slw r0, r3, r0 -/* 8003482C 7C A0 03 78 */ or r0, r5, r0 -/* 80034830 90 06 00 08 */ stw r0, 8(r6) -/* 80034834 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onSwitch__13dSv_zoneBit_cFi.s b/asm/d/save/d_save/onSwitch__13dSv_zoneBit_cFi.s deleted file mode 100644 index 6c407394162..00000000000 --- a/asm/d/save/d_save/onSwitch__13dSv_zoneBit_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034D04: -/* 80034D04 7C 80 26 70 */ srawi r0, r4, 4 -/* 80034D08 54 07 08 3C */ slwi r7, r0, 1 -/* 80034D0C 7C C3 3A 2E */ lhzx r6, r3, r7 -/* 80034D10 38 A0 00 01 */ li r5, 1 -/* 80034D14 54 80 07 3E */ clrlwi r0, r4, 0x1c -/* 80034D18 7C A0 00 30 */ slw r0, r5, r0 -/* 80034D1C 54 00 04 3E */ clrlwi r0, r0, 0x10 -/* 80034D20 7C C0 03 78 */ or r0, r6, r0 -/* 80034D24 7C 03 3B 2E */ sthx r0, r3, r7 -/* 80034D28 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onTbox__12dSv_memBit_cFi.s b/asm/d/save/d_save/onTbox__12dSv_memBit_cFi.s deleted file mode 100644 index 2e29e18002a..00000000000 --- a/asm/d/save/d_save/onTbox__12dSv_memBit_cFi.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_800347A0: -/* 800347A0 7C 80 2E 70 */ srawi r0, r4, 5 -/* 800347A4 54 07 10 3A */ slwi r7, r0, 2 -/* 800347A8 7C C3 38 2E */ lwzx r6, r3, r7 -/* 800347AC 38 A0 00 01 */ li r5, 1 -/* 800347B0 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 800347B4 7C A0 00 30 */ slw r0, r5, r0 -/* 800347B8 7C C0 03 78 */ or r0, r6, r0 -/* 800347BC 7C 03 39 2E */ stwx r0, r3, r7 -/* 800347C0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onTransformLV__21dSv_player_status_b_cFi.s b/asm/d/save/d_save/onTransformLV__21dSv_player_status_b_cFi.s deleted file mode 100644 index 98ce4e09d1e..00000000000 --- a/asm/d/save/d_save/onTransformLV__21dSv_player_status_b_cFi.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80032BD0: -/* 80032BD0 88 A3 00 08 */ lbz r5, 8(r3) -/* 80032BD4 38 00 00 01 */ li r0, 1 -/* 80032BD8 7C 00 20 30 */ slw r0, r0, r4 -/* 80032BDC 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80032BE0 7C A0 03 78 */ or r0, r5, r0 -/* 80032BE4 98 03 00 08 */ stb r0, 8(r3) -/* 80032BE8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/onVisitedRoom__13dSv_memory2_cFi.s b/asm/d/save/d_save/onVisitedRoom__13dSv_memory2_cFi.s deleted file mode 100644 index bb01b5d6e09..00000000000 --- a/asm/d/save/d_save/onVisitedRoom__13dSv_memory2_cFi.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034AA4: -/* 80034AA4 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034AA8 54 07 10 3A */ slwi r7, r0, 2 -/* 80034AAC 7C C3 38 2E */ lwzx r6, r3, r7 -/* 80034AB0 38 A0 00 01 */ li r5, 1 -/* 80034AB4 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034AB8 7C A0 00 30 */ slw r0, r5, r0 -/* 80034ABC 7C C0 03 78 */ or r0, r6, r0 -/* 80034AC0 7C 03 39 2E */ stwx r0, r3, r7 -/* 80034AC4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/on__15dSv_zoneActor_cFi.s b/asm/d/save/d_save/on__15dSv_zoneActor_cFi.s deleted file mode 100644 index aae47d55bce..00000000000 --- a/asm/d/save/d_save/on__15dSv_zoneActor_cFi.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034ED4: -/* 80034ED4 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034ED8 54 07 10 3A */ slwi r7, r0, 2 -/* 80034EDC 7C C3 38 2E */ lwzx r6, r3, r7 -/* 80034EE0 38 A0 00 01 */ li r5, 1 -/* 80034EE4 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034EE8 7C A0 00 30 */ slw r0, r5, r0 -/* 80034EEC 7C C0 03 78 */ or r0, r6, r0 -/* 80034EF0 7C 03 39 2E */ stwx r0, r3, r7 -/* 80034EF4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/revOneSwitch__13dSv_zoneBit_cFi.s b/asm/d/save/d_save/revOneSwitch__13dSv_zoneBit_cFi.s deleted file mode 100644 index 255a7c70ac0..00000000000 --- a/asm/d/save/d_save/revOneSwitch__13dSv_zoneBit_cFi.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034DFC: -/* 80034DFC 38 00 00 01 */ li r0, 1 -/* 80034E00 7C 04 20 30 */ slw r4, r0, r4 -/* 80034E04 A0 03 00 04 */ lhz r0, 4(r3) -/* 80034E08 7C 00 22 78 */ xor r0, r0, r4 -/* 80034E0C B0 03 00 04 */ sth r0, 4(r3) -/* 80034E10 A0 03 00 04 */ lhz r0, 4(r3) -/* 80034E14 7C 03 20 38 */ and r3, r0, r4 -/* 80034E18 30 03 FF FF */ addic r0, r3, -1 -/* 80034E1C 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034E20 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/revSwitch__10dSv_info_cFii.s b/asm/d/save/d_save/revSwitch__10dSv_info_cFii.s deleted file mode 100644 index 91f3f3d466f..00000000000 --- a/asm/d/save/d_save/revSwitch__10dSv_info_cFii.s +++ /dev/null @@ -1,52 +0,0 @@ -lbl_8003542C: -/* 8003542C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80035430 7C 08 02 A6 */ mflr r0 -/* 80035434 90 01 00 14 */ stw r0, 0x14(r1) -/* 80035438 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8003543C 93 C1 00 08 */ stw r30, 8(r1) -/* 80035440 7C 7E 1B 78 */ mr r30, r3 -/* 80035444 7C 9F 23 78 */ mr r31, r4 -/* 80035448 2C 1F FF FF */ cmpwi r31, -1 -/* 8003544C 41 82 00 0C */ beq lbl_80035458 -/* 80035450 2C 1F 00 FF */ cmpwi r31, 0xff -/* 80035454 40 82 00 0C */ bne lbl_80035460 -lbl_80035458: -/* 80035458 38 60 00 00 */ li r3, 0 -/* 8003545C 48 00 00 6C */ b lbl_800354C8 -lbl_80035460: -/* 80035460 2C 1F 00 80 */ cmpwi r31, 0x80 -/* 80035464 40 80 00 10 */ bge lbl_80035474 -/* 80035468 38 7E 09 58 */ addi r3, r30, 0x958 -/* 8003546C 4B FF F4 21 */ bl revSwitch__12dSv_memBit_cFi -/* 80035470 48 00 00 58 */ b lbl_800354C8 -lbl_80035474: -/* 80035474 2C 1F 00 C0 */ cmpwi r31, 0xc0 -/* 80035478 40 80 00 14 */ bge lbl_8003548C -/* 8003547C 38 7E 09 78 */ addi r3, r30, 0x978 -/* 80035480 38 9F FF 80 */ addi r4, r31, -128 -/* 80035484 4B FF F7 91 */ bl revSwitch__12dSv_danBit_cFi -/* 80035488 48 00 00 40 */ b lbl_800354C8 -lbl_8003548C: -/* 8003548C 7C A3 2B 78 */ mr r3, r5 -/* 80035490 4B FF 85 21 */ bl getZoneNo__20dStage_roomControl_cFi -/* 80035494 2C 1F 00 E0 */ cmpwi r31, 0xe0 -/* 80035498 40 80 00 1C */ bge lbl_800354B4 -/* 8003549C 54 63 28 34 */ slwi r3, r3, 5 -/* 800354A0 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 800354A4 7C 7E 1A 14 */ add r3, r30, r3 -/* 800354A8 38 9F FF 40 */ addi r4, r31, -192 -/* 800354AC 4B FF F8 CD */ bl revSwitch__13dSv_zoneBit_cFi -/* 800354B0 48 00 00 18 */ b lbl_800354C8 -lbl_800354B4: -/* 800354B4 54 63 28 34 */ slwi r3, r3, 5 -/* 800354B8 38 63 09 B6 */ addi r3, r3, 0x9b6 -/* 800354BC 7C 7E 1A 14 */ add r3, r30, r3 -/* 800354C0 38 9F FF 20 */ addi r4, r31, -224 -/* 800354C4 4B FF F9 39 */ bl revOneSwitch__13dSv_zoneBit_cFi -lbl_800354C8: -/* 800354C8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800354CC 83 C1 00 08 */ lwz r30, 8(r1) -/* 800354D0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800354D4 7C 08 03 A6 */ mtlr r0 -/* 800354D8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800354DC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/revSwitch__12dSv_danBit_cFi.s b/asm/d/save/d_save/revSwitch__12dSv_danBit_cFi.s deleted file mode 100644 index 1673a500f7e..00000000000 --- a/asm/d/save/d_save/revSwitch__12dSv_danBit_cFi.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_80034C14: -/* 80034C14 38 A0 00 01 */ li r5, 1 -/* 80034C18 54 80 06 FE */ clrlwi r0, r4, 0x1b -/* 80034C1C 7C A5 00 30 */ slw r5, r5, r0 -/* 80034C20 7C 80 2E 70 */ srawi r0, r4, 5 -/* 80034C24 54 00 10 3A */ slwi r0, r0, 2 -/* 80034C28 7C 63 02 14 */ add r3, r3, r0 -/* 80034C2C 80 03 00 04 */ lwz r0, 4(r3) -/* 80034C30 7C 00 2A 78 */ xor r0, r0, r5 -/* 80034C34 90 03 00 04 */ stw r0, 4(r3) -/* 80034C38 80 03 00 04 */ lwz r0, 4(r3) -/* 80034C3C 7C 03 28 38 */ and r3, r0, r5 -/* 80034C40 30 03 FF FF */ addic r0, r3, -1 -/* 80034C44 7C 60 19 10 */ subfe r3, r0, r3 -/* 80034C48 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setBombNum__21dSv_player_item_max_cFUcUc.s b/asm/d/save/d_save/setBombNum__21dSv_player_item_max_cFUcUc.s deleted file mode 100644 index 04717da6003..00000000000 --- a/asm/d/save/d_save/setBombNum__21dSv_player_item_max_cFUcUc.s +++ /dev/null @@ -1,21 +0,0 @@ -lbl_800340B8: -/* 800340B8 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 800340BC 2C 00 00 71 */ cmpwi r0, 0x71 -/* 800340C0 41 82 00 28 */ beq lbl_800340E8 -/* 800340C4 40 80 00 10 */ bge lbl_800340D4 -/* 800340C8 2C 00 00 70 */ cmpwi r0, 0x70 -/* 800340CC 40 80 00 14 */ bge lbl_800340E0 -/* 800340D0 4E 80 00 20 */ blr -lbl_800340D4: -/* 800340D4 2C 00 00 73 */ cmpwi r0, 0x73 -/* 800340D8 4C 80 00 20 */ bgelr -/* 800340DC 48 00 00 14 */ b lbl_800340F0 -lbl_800340E0: -/* 800340E0 98 A3 00 01 */ stb r5, 1(r3) -/* 800340E4 4E 80 00 20 */ blr -lbl_800340E8: -/* 800340E8 98 A3 00 02 */ stb r5, 2(r3) -/* 800340EC 4E 80 00 20 */ blr -lbl_800340F0: -/* 800340F0 98 A3 00 06 */ stb r5, 6(r3) -/* 800340F4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setBombNum__24dSv_player_item_record_cFUcUc.s b/asm/d/save/d_save/setBombNum__24dSv_player_item_record_cFUcUc.s deleted file mode 100644 index b5deca47d3f..00000000000 --- a/asm/d/save/d_save/setBombNum__24dSv_player_item_record_cFUcUc.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80033F6C: -/* 80033F6C 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80033F70 7C 63 02 14 */ add r3, r3, r0 -/* 80033F74 98 A3 00 01 */ stb r5, 1(r3) -/* 80033F78 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setBottleNum__24dSv_player_item_record_cFUcUc.s b/asm/d/save/d_save/setBottleNum__24dSv_player_item_record_cFUcUc.s deleted file mode 100644 index f38fc0cce59..00000000000 --- a/asm/d/save/d_save/setBottleNum__24dSv_player_item_record_cFUcUc.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80033F8C: -/* 80033F8C 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80033F90 7C 63 02 14 */ add r3, r3, r0 -/* 80033F94 98 A3 00 04 */ stb r5, 4(r3) -/* 80033F98 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setCollect__20dSv_player_collect_cFiUc.s b/asm/d/save/d_save/setCollect__20dSv_player_collect_cFiUc.s deleted file mode 100644 index 1986ef6e9ff..00000000000 --- a/asm/d/save/d_save/setCollect__20dSv_player_collect_cFiUc.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_800341E8: -/* 800341E8 7C E3 20 AE */ lbzx r7, r3, r4 -/* 800341EC 38 C0 00 01 */ li r6, 1 -/* 800341F0 54 A0 06 3E */ clrlwi r0, r5, 0x18 -/* 800341F4 7C C0 00 30 */ slw r0, r6, r0 -/* 800341F8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 800341FC 7C E0 03 78 */ or r0, r7, r0 -/* 80034200 7C 03 21 AE */ stbx r0, r3, r4 -/* 80034204 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcUcb.s b/asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcUcb.s deleted file mode 100644 index a98d43c4bf5..00000000000 --- a/asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcUcb.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_80033A50: -/* 80033A50 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80033A54 7C 08 02 A6 */ mflr r0 -/* 80033A58 90 01 00 14 */ stw r0, 0x14(r1) -/* 80033A5C 7C 88 23 78 */ mr r8, r4 -/* 80033A60 7C A0 2B 78 */ mr r0, r5 -/* 80033A64 7C C7 33 78 */ mr r7, r6 -/* 80033A68 38 80 00 50 */ li r4, 0x50 -/* 80033A6C 7D 05 43 78 */ mr r5, r8 -/* 80033A70 7C 06 03 78 */ mr r6, r0 -/* 80033A74 4B FF FE 9D */ bl setBombBagItemIn__17dSv_player_item_cFUcUcUcb -/* 80033A78 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80033A7C 7C 08 03 A6 */ mtlr r0 -/* 80033A80 38 21 00 10 */ addi r1, r1, 0x10 -/* 80033A84 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcb.s b/asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcb.s deleted file mode 100644 index d4b564e6599..00000000000 --- a/asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcb.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_80033A20: -/* 80033A20 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80033A24 7C 08 02 A6 */ mflr r0 -/* 80033A28 90 01 00 14 */ stw r0, 0x14(r1) -/* 80033A2C 7C 80 23 78 */ mr r0, r4 -/* 80033A30 7C A6 2B 78 */ mr r6, r5 -/* 80033A34 38 80 00 50 */ li r4, 0x50 -/* 80033A38 7C 05 03 78 */ mr r5, r0 -/* 80033A3C 4B FF FD ED */ bl setBombBagItemIn__17dSv_player_item_cFUcUcb -/* 80033A40 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80033A44 7C 08 03 A6 */ mtlr r0 -/* 80033A48 38 21 00 10 */ addi r1, r1, 0x10 -/* 80033A4C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setEquipBottleItemEmpty__17dSv_player_item_cFUc.s b/asm/d/save/d_save/setEquipBottleItemEmpty__17dSv_player_item_cFUc.s deleted file mode 100644 index 462f3ef2c10..00000000000 --- a/asm/d/save/d_save/setEquipBottleItemEmpty__17dSv_player_item_cFUc.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_800336BC: -/* 800336BC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800336C0 7C 08 02 A6 */ mflr r0 -/* 800336C4 90 01 00 14 */ stw r0, 0x14(r1) -/* 800336C8 38 A0 00 60 */ li r5, 0x60 -/* 800336CC 4B FF FE CD */ bl setEquipBottleItemIn__17dSv_player_item_cFUcUc -/* 800336D0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800336D4 7C 08 03 A6 */ mtlr r0 -/* 800336D8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800336DC 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setEventReg__11dSv_event_cFUsUc.s b/asm/d/save/d_save/setEventReg__11dSv_event_cFUsUc.s deleted file mode 100644 index 069fcfb1d93..00000000000 --- a/asm/d/save/d_save/setEventReg__11dSv_event_cFUsUc.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_800349E0: -/* 800349E0 54 87 C6 3E */ rlwinm r7, r4, 0x18, 0x18, 0x1f -/* 800349E4 7C C3 38 AE */ lbzx r6, r3, r7 -/* 800349E8 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 800349EC 7C C0 00 78 */ andc r0, r6, r0 -/* 800349F0 7C 03 39 AE */ stbx r0, r3, r7 -/* 800349F4 7C 03 38 AE */ lbzx r0, r3, r7 -/* 800349F8 7C 00 2B 78 */ or r0, r0, r5 -/* 800349FC 7C 03 39 AE */ stbx r0, r3, r7 -/* 80034A00 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setLightDropNum__16dSv_light_drop_cFUcUc.s b/asm/d/save/d_save/setLightDropNum__16dSv_light_drop_cFUcUc.s deleted file mode 100644 index 24696d95965..00000000000 --- a/asm/d/save/d_save/setLightDropNum__16dSv_light_drop_cFUcUc.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034320: -/* 80034320 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034324 28 00 00 04 */ cmplwi r0, 4 -/* 80034328 41 80 00 0C */ blt lbl_80034334 -/* 8003432C 28 00 00 06 */ cmplwi r0, 6 -/* 80034330 4C 81 00 20 */ blelr -lbl_80034334: -/* 80034334 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 80034338 7C A3 01 AE */ stbx r5, r3, r0 -/* 8003433C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setMixItemIndex__21dSv_player_status_a_cFiUc.s b/asm/d/save/d_save/setMixItemIndex__21dSv_player_status_a_cFiUc.s deleted file mode 100644 index 2778da59b01..00000000000 --- a/asm/d/save/d_save/setMixItemIndex__21dSv_player_status_a_cFiUc.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80032A78: -/* 80032A78 2C 04 00 04 */ cmpwi r4, 4 -/* 80032A7C 4C 80 00 20 */ bgelr -/* 80032A80 7C 63 22 14 */ add r3, r3, r4 -/* 80032A84 98 A3 00 0F */ stb r5, 0xf(r3) -/* 80032A88 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setRodTypeLevelUp__17dSv_player_item_cFv.s b/asm/d/save/d_save/setRodTypeLevelUp__17dSv_player_item_cFv.s deleted file mode 100644 index 3afbbf9809b..00000000000 --- a/asm/d/save/d_save/setRodTypeLevelUp__17dSv_player_item_cFv.s +++ /dev/null @@ -1,40 +0,0 @@ -lbl_80033CBC: -/* 80033CBC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80033CC0 7C 08 02 A6 */ mflr r0 -/* 80033CC4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80033CC8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80033CCC 88 03 00 14 */ lbz r0, 0x14(r3) -/* 80033CD0 2C 00 00 5B */ cmpwi r0, 0x5b -/* 80033CD4 41 82 00 20 */ beq lbl_80033CF4 -/* 80033CD8 40 80 00 10 */ bge lbl_80033CE8 -/* 80033CDC 2C 00 00 4A */ cmpwi r0, 0x4a -/* 80033CE0 41 82 00 2C */ beq lbl_80033D0C -/* 80033CE4 48 00 00 30 */ b lbl_80033D14 -lbl_80033CE8: -/* 80033CE8 2C 00 00 5D */ cmpwi r0, 0x5d -/* 80033CEC 41 82 00 14 */ beq lbl_80033D00 -/* 80033CF0 48 00 00 24 */ b lbl_80033D14 -lbl_80033CF4: -/* 80033CF4 38 00 00 5E */ li r0, 0x5e -/* 80033CF8 98 03 00 14 */ stb r0, 0x14(r3) -/* 80033CFC 48 00 00 18 */ b lbl_80033D14 -lbl_80033D00: -/* 80033D00 38 00 00 5F */ li r0, 0x5f -/* 80033D04 98 03 00 14 */ stb r0, 0x14(r3) -/* 80033D08 48 00 00 0C */ b lbl_80033D14 -lbl_80033D0C: -/* 80033D0C 38 00 00 5C */ li r0, 0x5c -/* 80033D10 98 03 00 14 */ stb r0, 0x14(r3) -lbl_80033D14: -/* 80033D14 3B E0 00 00 */ li r31, 0 -lbl_80033D18: -/* 80033D18 7F E3 FB 78 */ mr r3, r31 -/* 80033D1C 4B FF A0 D9 */ bl dComIfGp_setSelectItem__Fi -/* 80033D20 3B FF 00 01 */ addi r31, r31, 1 -/* 80033D24 2C 1F 00 04 */ cmpwi r31, 4 -/* 80033D28 41 80 FF F0 */ blt lbl_80033D18 -/* 80033D2C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80033D30 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80033D34 7C 08 03 A6 */ mtlr r0 -/* 80033D38 38 21 00 10 */ addi r1, r1, 0x10 -/* 80033D3C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setRoom__13dSv_restart_cFRC4cXyzsSc.s b/asm/d/save/d_save/setRoom__13dSv_restart_cFRC4cXyzsSc.s deleted file mode 100644 index 70e1c6bfe5e..00000000000 --- a/asm/d/save/d_save/setRoom__13dSv_restart_cFRC4cXyzsSc.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80034F80: -/* 80034F80 98 C3 00 00 */ stb r6, 0(r3) -/* 80034F84 C0 04 00 00 */ lfs f0, 0(r4) -/* 80034F88 D0 03 00 08 */ stfs f0, 8(r3) -/* 80034F8C C0 04 00 04 */ lfs f0, 4(r4) -/* 80034F90 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80034F94 C0 04 00 08 */ lfs f0, 8(r4) -/* 80034F98 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 80034F9C B0 A3 00 06 */ sth r5, 6(r3) -/* 80034FA0 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setSelectItemIndex__21dSv_player_status_a_cFiUc.s b/asm/d/save/d_save/setSelectItemIndex__21dSv_player_status_a_cFiUc.s deleted file mode 100644 index 7759e122dbf..00000000000 --- a/asm/d/save/d_save/setSelectItemIndex__21dSv_player_status_a_cFiUc.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80032A48: -/* 80032A48 2C 04 00 04 */ cmpwi r4, 4 -/* 80032A4C 4C 80 00 20 */ bgelr -/* 80032A50 7C 63 22 14 */ add r3, r3, r4 -/* 80032A54 98 A3 00 0B */ stb r5, 0xb(r3) -/* 80032A58 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/setWarpItemData__27dSv_player_last_mark_info_cFPCcRC4cXyzsScUcUc.s b/asm/d/save/d_save/setWarpItemData__27dSv_player_last_mark_info_cFPCcRC4cXyzsScUcUc.s deleted file mode 100644 index 1f4861b710f..00000000000 --- a/asm/d/save/d_save/setWarpItemData__27dSv_player_last_mark_info_cFPCcRC4cXyzsScUcUc.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_80032F2C: -/* 80032F2C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80032F30 7C 08 02 A6 */ mflr r0 -/* 80032F34 90 01 00 24 */ stw r0, 0x24(r1) -/* 80032F38 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032F3C 48 32 F2 9D */ bl _savegpr_28 -/* 80032F40 7C 7C 1B 78 */ mr r28, r3 -/* 80032F44 7C BD 2B 78 */ mr r29, r5 -/* 80032F48 7C DE 33 78 */ mr r30, r6 -/* 80032F4C 7C FF 3B 78 */ mr r31, r7 -/* 80032F50 38 7C 00 0E */ addi r3, r28, 0xe -/* 80032F54 48 33 5B D9 */ bl strcpy -/* 80032F58 C0 1D 00 00 */ lfs f0, 0(r29) -/* 80032F5C D0 1C 00 00 */ stfs f0, 0(r28) -/* 80032F60 C0 1D 00 04 */ lfs f0, 4(r29) -/* 80032F64 D0 1C 00 04 */ stfs f0, 4(r28) -/* 80032F68 C0 1D 00 08 */ lfs f0, 8(r29) -/* 80032F6C D0 1C 00 08 */ stfs f0, 8(r28) -/* 80032F70 B3 DC 00 0C */ sth r30, 0xc(r28) -/* 80032F74 9B FC 00 17 */ stb r31, 0x17(r28) -/* 80032F78 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032F7C 48 32 F2 A9 */ bl _restgpr_28 -/* 80032F80 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80032F84 7C 08 03 A6 */ mtlr r0 -/* 80032F88 38 21 00 20 */ addi r1, r1, 0x20 -/* 80032F8C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/set__17dSv_horse_place_cFPCcRC4cXyzsSc.s b/asm/d/save/d_save/set__17dSv_horse_place_cFPCcRC4cXyzsSc.s deleted file mode 100644 index 886f2468dc7..00000000000 --- a/asm/d/save/d_save/set__17dSv_horse_place_cFPCcRC4cXyzsSc.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_80032C64: -/* 80032C64 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80032C68 7C 08 02 A6 */ mflr r0 -/* 80032C6C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80032C70 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032C74 48 32 F5 65 */ bl _savegpr_28 -/* 80032C78 7C 7C 1B 78 */ mr r28, r3 -/* 80032C7C 7C BD 2B 78 */ mr r29, r5 -/* 80032C80 7C DE 33 78 */ mr r30, r6 -/* 80032C84 7C FF 3B 78 */ mr r31, r7 -/* 80032C88 38 7C 00 0E */ addi r3, r28, 0xe -/* 80032C8C 48 33 5E A1 */ bl strcpy -/* 80032C90 C0 1D 00 00 */ lfs f0, 0(r29) -/* 80032C94 D0 1C 00 00 */ stfs f0, 0(r28) -/* 80032C98 C0 1D 00 04 */ lfs f0, 4(r29) -/* 80032C9C D0 1C 00 04 */ stfs f0, 4(r28) -/* 80032CA0 C0 1D 00 08 */ lfs f0, 8(r29) -/* 80032CA4 D0 1C 00 08 */ stfs f0, 8(r28) -/* 80032CA8 B3 DC 00 0C */ sth r30, 0xc(r28) -/* 80032CAC 9B FC 00 17 */ stb r31, 0x17(r28) -/* 80032CB0 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032CB4 48 32 F5 71 */ bl _restgpr_28 -/* 80032CB8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80032CBC 7C 08 03 A6 */ mtlr r0 -/* 80032CC0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80032CC4 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/set__17dSv_turnRestart_cFRC4cXyzsScUl.s b/asm/d/save/d_save/set__17dSv_turnRestart_cFRC4cXyzsScUl.s deleted file mode 100644 index 3a3aee574ad..00000000000 --- a/asm/d/save/d_save/set__17dSv_turnRestart_cFRC4cXyzsScUl.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80034FA4: -/* 80034FA4 C0 04 00 00 */ lfs f0, 0(r4) -/* 80034FA8 D0 03 00 00 */ stfs f0, 0(r3) -/* 80034FAC C0 04 00 04 */ lfs f0, 4(r4) -/* 80034FB0 D0 03 00 04 */ stfs f0, 4(r3) -/* 80034FB4 C0 04 00 08 */ lfs f0, 8(r4) -/* 80034FB8 D0 03 00 08 */ stfs f0, 8(r3) -/* 80034FBC B0 A3 00 10 */ sth r5, 0x10(r3) -/* 80034FC0 98 C3 00 12 */ stb r6, 0x12(r3) -/* 80034FC4 90 E3 00 0C */ stw r7, 0xc(r3) -/* 80034FC8 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/set__25dSv_player_return_place_cFPCcScUc.s b/asm/d/save/d_save/set__25dSv_player_return_place_cFPCcScUc.s deleted file mode 100644 index db574124e09..00000000000 --- a/asm/d/save/d_save/set__25dSv_player_return_place_cFPCcScUc.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_80032D1C: -/* 80032D1C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80032D20 7C 08 02 A6 */ mflr r0 -/* 80032D24 90 01 00 24 */ stw r0, 0x24(r1) -/* 80032D28 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032D2C 48 32 F4 B1 */ bl _savegpr_29 -/* 80032D30 7C 7D 1B 78 */ mr r29, r3 -/* 80032D34 7C BE 2B 78 */ mr r30, r5 -/* 80032D38 7C DF 33 78 */ mr r31, r6 -/* 80032D3C 48 33 5D F1 */ bl strcpy -/* 80032D40 9B DD 00 09 */ stb r30, 9(r29) -/* 80032D44 9B FD 00 08 */ stb r31, 8(r29) -/* 80032D48 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032D4C 48 32 F4 DD */ bl _restgpr_29 -/* 80032D50 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80032D54 7C 08 03 A6 */ mtlr r0 -/* 80032D58 38 21 00 20 */ addi r1, r1, 0x20 -/* 80032D5C 4E 80 00 20 */ blr diff --git a/asm/d/save/d_save/set__33dSv_player_field_last_stay_info_cFPCcRC4cXyzsScUc.s b/asm/d/save/d_save/set__33dSv_player_field_last_stay_info_cFPCcRC4cXyzsScUc.s deleted file mode 100644 index 573640e46a0..00000000000 --- a/asm/d/save/d_save/set__33dSv_player_field_last_stay_info_cFPCcRC4cXyzsScUc.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_80032DE0: -/* 80032DE0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80032DE4 7C 08 02 A6 */ mflr r0 -/* 80032DE8 90 01 00 24 */ stw r0, 0x24(r1) -/* 80032DEC 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032DF0 48 32 F3 E5 */ bl _savegpr_27 -/* 80032DF4 7C 7B 1B 78 */ mr r27, r3 -/* 80032DF8 7C BC 2B 78 */ mr r28, r5 -/* 80032DFC 7C DD 33 78 */ mr r29, r6 -/* 80032E00 7C FE 3B 78 */ mr r30, r7 -/* 80032E04 7D 1F 43 78 */ mr r31, r8 -/* 80032E08 38 7B 00 0E */ addi r3, r27, 0xe -/* 80032E0C 48 33 5D 21 */ bl strcpy -/* 80032E10 C0 1C 00 00 */ lfs f0, 0(r28) -/* 80032E14 D0 1B 00 00 */ stfs f0, 0(r27) -/* 80032E18 C0 1C 00 04 */ lfs f0, 4(r28) -/* 80032E1C D0 1B 00 04 */ stfs f0, 4(r27) -/* 80032E20 C0 1C 00 08 */ lfs f0, 8(r28) -/* 80032E24 D0 1B 00 08 */ stfs f0, 8(r27) -/* 80032E28 B3 BB 00 0C */ sth r29, 0xc(r27) -/* 80032E2C 9B DB 00 16 */ stb r30, 0x16(r27) -/* 80032E30 9B FB 00 17 */ stb r31, 0x17(r27) -/* 80032E34 39 61 00 20 */ addi r11, r1, 0x20 -/* 80032E38 48 32 F3 E9 */ bl _restgpr_27 -/* 80032E3C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80032E40 7C 08 03 A6 */ mtlr r0 -/* 80032E44 38 21 00 20 */ addi r1, r1, 0x20 -/* 80032E48 4E 80 00 20 */ blr diff --git a/include/JSystem/J3DGraphAnimator/J3DAnimation.h b/include/JSystem/J3DGraphAnimator/J3DAnimation.h index d3b740a15d1..184cd1a2d78 100644 --- a/include/JSystem/J3DGraphAnimator/J3DAnimation.h +++ b/include/JSystem/J3DGraphAnimator/J3DAnimation.h @@ -3,4 +3,35 @@ #include "dolphin/types.h" +#pragma pack(push, 1) +class J3DFrameCtrl { +public: + void init(s16); + void checkPass(f32); + void update(); + ~J3DFrameCtrl(); + + float getRate() { return mRate; } + void setAttribute(u8 pAttr) { mAttribute = pAttr; } + void setEnd(s16 pEnd) { mEnd = pEnd; } + void setRate(float pRate) { mRate = pRate; } + void setStart(s16 pStart) { + mStart = pStart; + mFrame = pStart; + } + void setFrame(float pFrame) { mFrame = pFrame; } + void setLoop(s16 pLoop) { mLoop = pLoop; } + +private: + void* vtable; + u8 mAttribute; + bool mState; + s16 mStart; + s16 mEnd; + s16 mLoop; + float mRate; + float mFrame; +}; +#pragma pack(pop) + #endif /* J3DANIMATION_H */ diff --git a/include/JSystem/JUtility/JUTFont.h b/include/JSystem/JUtility/JUTFont.h index 9da20150345..8abc6400819 100644 --- a/include/JSystem/JUtility/JUTFont.h +++ b/include/JSystem/JUtility/JUTFont.h @@ -1,6 +1,24 @@ #ifndef JUTFONT_H #define JUTFONT_H +#include "dolphin/gx/GXTexture.h" #include "dolphin/types.h" +namespace JUtility { + +struct TColor : _GXColor { + TColor() { set(-1); } + + TColor(u32 raw) { *(u32*)&r = raw; } + + void set(u32 col) { *(u32*)&r = col; } + + u32 toUInt32() const { return *(u32*)&r; } + + operator u32() const { return toUInt32(); } + void operator=(const TColor& rhs) { ((_GXColor*)this)->operator=(rhs); } +}; + +} // namespace JUtility + #endif /* JUTFONT_H */ diff --git a/include/SSystem/SComponent/c_angle.h b/include/SSystem/SComponent/c_angle.h index a61c4417586..39e0bd0e33a 100644 --- a/include/SSystem/SComponent/c_angle.h +++ b/include/SSystem/SComponent/c_angle.h @@ -93,6 +93,7 @@ public: cSGlobe(float, short, short); cSGlobe(float, const cSAngle&, const cSAngle&); cSGlobe(const cXyz&); + ~cSGlobe(); cSGlobe& Formal(void); void Val(const cSGlobe&); void Val(float, short, short); diff --git a/include/SSystem/SComponent/c_cc_d.h b/include/SSystem/SComponent/c_cc_d.h index f4149343f21..0297ed5e1f5 100644 --- a/include/SSystem/SComponent/c_cc_d.h +++ b/include/SSystem/SComponent/c_cc_d.h @@ -1,6 +1,286 @@ #ifndef C_CC_D_H #define C_CC_D_H +#include "SSystem/SComponent/c_m3d_g_aab.h" +#include "SSystem/SComponent/c_m3d_g_cps.h" +#include "SSystem/SComponent/c_m3d_g_cyl.h" +#include "SSystem/SComponent/c_m3d_g_sph.h" +#include "SSystem/SComponent/c_m3d_g_tri.h" +#include "dolphin/gx/GXTexture.h" #include "dolphin/types.h" +#include "f_op/f_op_actor.h" + +class cCcD_ShapeAttr { +public: + struct Shape {}; + + /* 8008556C */ virtual ~cCcD_ShapeAttr(); + /* 802649D8 */ virtual bool CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; + /* 802649E0 */ virtual bool CrossCo(cCcD_ShapeAttr const&, f32*) const; + /* 80084E38 */ virtual void GetCoCP() const; + /* 80084E2C */ virtual void GetCoCP(); + /* 80263A64 */ virtual void getShapeAccess(cCcD_ShapeAttr::Shape*) const; + + static f32 m_virtual_center[3]; + +private: + /* 0x00 */ cM3dGAab mAab; +}; + +class cCcD_SphAttr; +class cCcD_CylAttr; +class cCcD_TriAttr; +class cCcD_PntAttr; +class cCcD_AabAttr; + +class cCcD_CpsAttr : public cCcD_ShapeAttr { +public: + /* 80085450 */ virtual ~cCcD_CpsAttr(); + /* 80263DC0 */ virtual void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; + /* 80263E04 */ virtual void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; + /* 80084FE4 */ virtual void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; + /* 80084FDC */ virtual bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; + /* 80084FD4 */ virtual bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; + /* 80263D38 */ virtual void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; + /* 80263D7C */ virtual void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; + /* 80263F24 */ virtual void CrossCo(cCcD_CylAttr const&, f32*) const; + /* 80085024 */ virtual bool CrossCo(cCcD_TriAttr const&, f32*) const; + /* 8008502C */ virtual bool CrossCo(cCcD_PntAttr const&, f32*) const; + /* 8008501C */ virtual bool CrossCo(cCcD_AabAttr const&, f32*) const; + /* 80263ED4 */ virtual void CrossCo(cCcD_CpsAttr const&, f32*) const; + /* 80263F74 */ virtual void CrossCo(cCcD_SphAttr const&, f32*) const; + /* 80085034 */ virtual void CrossCo(cCcD_ShapeAttr const&, f32*) const; + /* 80263FC4 */ virtual void CalcAabBox(); + /* 80264014 */ virtual void GetNVec(cXyz const&, cXyz*) const; + +private: + /* 0x20 */ cM3dGCps mCps; +}; + +class cCcD_SphAttr : public cCcD_ShapeAttr { +public: + /* 8008721C */ virtual ~cCcD_SphAttr(); + /* 80264538 */ virtual void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; + /* 802645C0 */ virtual void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; + /* 80084B4C */ virtual bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; + /* 80084B54 */ virtual bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; + /* 80084B5C */ virtual void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; + /* 802644EC */ virtual void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; + /* 8026457C */ virtual void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; + /* 80264688 */ virtual void CrossCo(cCcD_CpsAttr const&, f32*) const; + /* 80084B94 */ virtual bool CrossCo(cCcD_AabAttr const&, f32*) const; + /* 80084B9C */ virtual bool CrossCo(cCcD_TriAttr const&, f32*) const; + /* 80084BA4 */ virtual bool CrossCo(cCcD_PntAttr const&, f32*) const; + /* 80084BAC */ virtual void CrossCo(cCcD_ShapeAttr const&, f32*) const; + /* 80264644 */ virtual void CrossCo(cCcD_SphAttr const&, f32*) const; + /* 802645F8 */ virtual void CrossCo(cCcD_CylAttr const&, f32*) const; + /* 80084B44 */ virtual void GetCoCP() const; + /* 80037A54 */ virtual void GetCoCP(); + /* 802646E0 */ virtual void CalcAabBox(); + /* 8026476C */ virtual void GetNVec(cXyz const&, cXyz*) const; + /* 80264808 */ virtual void getShapeAccess(cCcD_ShapeAttr::Shape*) const; + +private: + /* 0x20 */ cM3dGSph mSph; +}; // Size = 0x30 + +class cCcD_CylAttr : public cCcD_ShapeAttr { +public: + /* 800854E0 */ virtual ~cCcD_CylAttr(); + /* 8026420C */ virtual void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; + /* 802641C8 */ virtual void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; + /* 80084CC8 */ virtual bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; + /* 80264250 */ virtual void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; + /* 80084CD0 */ virtual bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; + /* 80084CD8 */ virtual void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; + /* 8026417C */ virtual void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; + /* 80264288 */ virtual void CrossCo(cCcD_CylAttr const&, f32*) const; + /* 80264310 */ virtual void CrossCo(cCcD_CpsAttr const&, f32*) const; + /* 80084D10 */ virtual bool CrossCo(cCcD_AabAttr const&, f32*) const; + /* 80084D18 */ virtual bool CrossCo(cCcD_TriAttr const&, f32*) const; + /* 80084D20 */ virtual bool CrossCo(cCcD_PntAttr const&, f32*) const; + /* 80084D28 */ virtual void CrossCo(cCcD_ShapeAttr const&, f32*) const; + /* 802642CC */ virtual void CrossCo(cCcD_SphAttr const&, f32*) const; + /* 80084CC0 */ virtual void GetCoCP() const; + /* 80037A4C */ virtual void GetCoCP(); + /* 80264368 */ virtual void CalcAabBox(); + /* 802643D0 */ virtual void GetNVec(cXyz const&, cXyz*) const; + /* 802644B8 */ virtual void getShapeAccess(cCcD_ShapeAttr::Shape*) const; + +private: + /* 0x20 */ cM3dGCyl mCyl; +}; // Size = 0x34 + +class cCcD_TriAttr { + /* 80084E44 */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; + /* 80263A88 */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; + /* 80263BCC */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; + /* 80084E4C */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; + /* 80263B90 */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; + /* 80084E54 */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; + /* 80263B58 */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; + /* 80084E9C */ bool CrossCo(cCcD_AabAttr const&, f32*) const; + /* 80084EBC */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; + /* 80084EA4 */ bool CrossCo(cCcD_TriAttr const&, f32*) const; + /* 80084E8C */ bool CrossCo(cCcD_SphAttr const&, f32*) const; + /* 80084EAC */ bool CrossCo(cCcD_CpsAttr const&, f32*) const; + /* 80084E94 */ bool CrossCo(cCcD_CylAttr const&, f32*) const; + /* 80084EB4 */ bool CrossCo(cCcD_PntAttr const&, f32*) const; + /* 80263C04 */ void CalcAabBox(); + /* 80263C9C */ void GetNVec(cXyz const&, cXyz*) const; + /* 80264938 */ ~cCcD_TriAttr(); +}; + +class cCcD_DivideInfo { +public: + /* 80263358 */ void Set(u32, u32, u32); + /* 80263368 */ void Chk(cCcD_DivideInfo const&) const; + +private: + /* 0x00 */ u32 field_0x0; + /* 0x04 */ u32 field_0x4; + /* 0x08 */ u32 field_0x8; + /* 0x0C */ void* vtable; +}; + +class cCcD_DivideArea { +public: + /* 802633A8 */ void SetArea(cM3dGAab const&); + /* 802634D4 */ void CalcDivideInfo(cCcD_DivideInfo*, cM3dGAab const&, u32); + /* 802636A0 */ void CalcDivideInfoOverArea(cCcD_DivideInfo*, cM3dGAab const&); + +private: + cM3dGAab mAab; + void* vtable; +}; + +struct cCcD_SrcObjTg {}; + +struct cCcD_SrcObjHitInf {}; + +struct cCcD_SrcObjAt {}; + +struct cCcD_SrcObj {}; + +class cCcD_GStts { +public: + /* 800837B0 */ ~cCcD_GStts(); + +private: + /* 0x00 */ void* vtable; +}; // Size = 0x4 + +class cCcD_Stts { +public: + /* 801410A4 */ ~cCcD_Stts(); + /* 80263894 */ bool GetGStts() const; + /* 8026389C */ bool GetGStts(); + /* 802638A4 */ void Init(int, int, void*, unsigned int); + /* 80263904 */ void Ct(); + /* 80263934 */ void PlusCcMove(f32, f32, f32); + /* 8026395C */ void ClrCcMove(); + /* 80263970 */ void PlusDmg(int); + /* 80263984 */ void GetWeightF() const; + /* 802649E8 */ void ClrAt(); + /* 802649EC */ void ClrTg(); + +private: + /* 0x00 */ cXyz field_0x00; + /* 0x0C */ fopAc_ac_c* mActor; + /* 0x10 */ int mApid; + /* 0x14 */ u8 mWeight; + /* 0x15 */ u8 field_0x15; + /* 0x16 */ u8 mTg; + /* 0x18 */ void* vtable; +}; // Size = 0x1C + +class cCcD_ObjCommonBase { +public: + /* 8008409C */ ~cCcD_ObjCommonBase(); + /* 802639B0 */ void ct(); + +private: + /* 0x00 */ int mSPrm; + /* 0x04 */ int mRPrm; + /* 0x08 */ void* mHitObj; // cCcD_Obj* type + /* 0x0C */ void* vtable; +}; + +class cCcD_Obj; +#pragma pack(push, 1) +class cCcD_ObjAt : cCcD_ObjCommonBase { +public: + /* 80084040 */ ~cCcD_ObjAt(); + /* 8026483C */ void SetHit(cCcD_Obj*); + /* 8026484C */ void Set(cCcD_SrcObjAt const&); + /* 80264868 */ void ClrHit(); + +private: + /* 0x10 */ int mType; + /* 0x14 */ u8 mAtp; +}; +#pragma pack(pop) + +class cCcD_ObjTg : cCcD_ObjCommonBase { +public: + /* 80083FE4 */ ~cCcD_ObjTg(); + /* 80264880 */ void Set(cCcD_SrcObjTg const&); + /* 80264894 */ void SetGrp(u32); + /* 802648B0 */ void ClrHit(); + /* 802648C8 */ void SetHit(cCcD_Obj*); + +private: + /* 0x10 */ int mType; +}; + +class cCcD_ObjCo : cCcD_ObjCommonBase { +public: + /* 80083F88 */ ~cCcD_ObjCo(); + /* 802648D8 */ void SetHit(cCcD_Obj*); + /* 802648E8 */ void ClrHit(); + /* 80264900 */ void SetIGrp(u32); + /* 8026491C */ void SetVsGrp(u32); +}; + +class cCcD_ObjHitInf { +public: + /* 80083EC8 */ ~cCcD_ObjHitInf(); + /* 802639C4 */ void Set(cCcD_SrcObjHitInf const&); + +private: + /* 0x000 */ cCcD_ObjAt mObjAt; + /* 0x015 */ u8 field_0x15[3]; // padding? + /* 0x018 */ cCcD_ObjTg mObjTg; + /* 0x02C */ cCcD_ObjCo mObjCo; + /* 0x03C */ void* vtable; +}; // Size = 0x40 + +class cCcD_Obj : cCcD_ObjHitInf { +public: + /* 80083DE0 */ ~cCcD_Obj(); + /* 800851A4 */ bool GetGObjInf() const; + /* 800847C8 */ bool GetGObjInf(); + /* 80084BE8 */ bool GetShapeAttr() const; + /* 80085130 */ bool GetShapeAttr(); + /* 80084BF0 */ void Draw(_GXColor const&); + /* 80263A10 */ void ct(); + /* 80263A1C */ void Set(cCcD_SrcObj const&); + void GetAc(); + +private: + /* 0x040 */ int field_0x40; + /* 0x044 */ cCcD_Stts* mStts; + /* 0x048 */ cCcD_DivideInfo mDivideInfo; +}; // Size = 0x58 + +class cCcD_GObjInf : cCcD_Obj { +public: + /* 80083CE8 */ ~cCcD_GObjInf(); + /* 800851A0 */ void GetGObjInf(); + /* 80084BE4 */ void GetGObjInf() const; + /* 80085138 */ void ClrAtHit(); + /* 80085158 */ void ClrTgHit(); + /* 8008517C */ void ClrCoHit(); +}; #endif /* C_CC_D_H */ diff --git a/include/SSystem/SComponent/c_cc_s.h b/include/SSystem/SComponent/c_cc_s.h index ebf07aa319d..6e8acc2b79d 100644 --- a/include/SSystem/SComponent/c_cc_s.h +++ b/include/SSystem/SComponent/c_cc_s.h @@ -1,6 +1,47 @@ #ifndef C_CC_S_H #define C_CC_S_H +#include "SSystem/SComponent/c_cc_d.h" #include "dolphin/types.h" +class cCcS { +public: + /* 80030BDC */ ~cCcS(); + /* 80264A6C */ cCcS(); + /* 80264A94 */ void Ct(); + /* 80264B60 */ void Dt(); + /* 80264B80 */ void GetWt(u8) const; + /* 80264BA8 */ void Set(cCcD_Obj*); + /* 80264C5C */ void ClrCoHitInf(); + /* 80264CF0 */ void ClrTgHitInf(); + /* 80264D90 */ void ClrAtHitInf(); + /* 80264E2C */ void ChkNoHitAtTg(cCcD_Obj*, cCcD_Obj*); + /* 80264F40 */ void ChkAtTg(); + /* 8026515C */ void ChkNoHitCo(cCcD_Obj*, cCcD_Obj*); + /* 80265230 */ void ChkCo(); + /* 802653A0 */ void CalcTgPlusDmg(cCcD_Obj*, cCcD_Obj*, cCcD_Stts*, cCcD_Stts*); + /* 802653C8 */ void SetAtTgCommonHitInf(cCcD_Obj*, cCcD_Obj*, cXyz*); + /* 802655E4 */ void SetCoCommonHitInf(cCcD_Obj*, cXyz*, cCcD_Obj*, cXyz*, f32); + /* 80265750 */ void SetPosCorrect(cCcD_Obj*, cXyz*, cCcD_Obj*, cXyz*, f32); + /* 80265BB4 */ void CalcArea(); + /* 80265CCC */ void Move(); + /* 80265D30 */ void DrawClear(); + /* 80265DF4 */ void SetCoGCorrectProc(cCcD_Obj*, cCcD_Obj*); + /* 80265DF8 */ void SetCoGObjInf(bool, bool, cCcD_GObjInf*, cCcD_GObjInf*, cCcD_Stts*, + cCcD_Stts*, cCcD_GStts*, cCcD_GStts*); + /* 80265DFC */ void SetAtTgGObjInf(bool, bool, cCcD_Obj*, cCcD_Obj*, cCcD_GObjInf*, + cCcD_GObjInf*, cCcD_Stts*, cCcD_Stts*, cCcD_GStts*, + cCcD_GStts*, cXyz*); + /* 80265E00 */ bool ChkNoHitGAtTg(cCcD_GObjInf const*, cCcD_GObjInf const*, cCcD_GStts*, + cCcD_GStts*); + /* 80265E08 */ bool ChkAtTgHitAfterCross(bool, bool, cCcD_GObjInf const*, cCcD_GObjInf const*, + cCcD_Stts*, cCcD_Stts*, cCcD_GStts*, cCcD_GStts*); + /* 80265E10 */ bool ChkNoHitGCo(cCcD_Obj*, cCcD_Obj*); + /* 80265E18 */ void MoveAfterCheck(); + +private: + u8 field_0x0[10260]; + cCcD_DivideArea mDivideArea; +}; + #endif /* C_CC_S_H */ diff --git a/include/SSystem/SComponent/c_lib.h b/include/SSystem/SComponent/c_lib.h index 10a330ff1b4..9e0780aca99 100644 --- a/include/SSystem/SComponent/c_lib.h +++ b/include/SSystem/SComponent/c_lib.h @@ -48,4 +48,4 @@ void MtxPosition(cXyz*, cXyz*); void MtxPush(void); Mtx* MtxPull(void); -#endif \ No newline at end of file +#endif diff --git a/include/SSystem/SComponent/c_m3d_g_cps.h b/include/SSystem/SComponent/c_m3d_g_cps.h index 6bc09c64626..7bf6132c936 100644 --- a/include/SSystem/SComponent/c_m3d_g_cps.h +++ b/include/SSystem/SComponent/c_m3d_g_cps.h @@ -21,12 +21,6 @@ public: void Set(const cXyz&, const cXyz&, f32); void Set(const cM3dGCpsS&); void SetCps(const cM3dGCps&); - virtual void unk1(void) = 0; - virtual void unk2(void) = 0; - virtual void unk3(void) = 0; - virtual void unk4(void) = 0; - virtual void unk5(void) = 0; - virtual void unk6(void) = 0; }; #endif /* C_M3D_G_CPS_H */ diff --git a/include/Z2AudioLib/Z2StatusMgr.h b/include/Z2AudioLib/Z2StatusMgr.h index 4dae6d28354..1e3a0abea18 100644 --- a/include/Z2AudioLib/Z2StatusMgr.h +++ b/include/Z2AudioLib/Z2StatusMgr.h @@ -1,6 +1,45 @@ #ifndef Z2STATUSMGR_H #define Z2STATUSMGR_H +#include "dolphin/mtx/vec.h" #include "dolphin/types.h" +struct Z2StatusMgr { + Z2StatusMgr(); + void heartGaugeOn(); + void processHeartGaugeSound(); + void talkIn(); + void talkOut(); + void menuIn(); + void menuOut(); + bool isMovieDemo(); + void setDemoName(char*); + void processTime(); + bool checkDayTime(); + void setEventBit(void*); + void setCameraPolygonPos(Vec*); + void setCameraGroupInfo(u8); + void setCameraInWaterDepth(float); + + //! @todo there are a number of inlines only called from rels: see CHN_debug + + u8 mHour; + u8 mMinute; + u8 mWeekday; + u8 field_0x03; + s16 mTime; + u8 field_0x6[2]; + void* mEventBit; + bool mIsMenuIn; + u8 field_0xd[3]; + u32 mCameraMapInfo; + u32 field_0x14; + float mUnderwaterDepth; + float mCameraInWaterDepthRatio; + Vec mPolygonPosition; + u8 mDemoStatus; + u8 mHeartGaugeOn; + u8 padding[2]; +}; + #endif /* Z2STATUSMGR_H */ diff --git a/include/d/a/d_a_item_static.h b/include/d/a/d_a_item_static.h index 4e728a2f362..5fb0b88a160 100644 --- a/include/d/a/d_a_item_static.h +++ b/include/d/a/d_a_item_static.h @@ -1,6 +1,22 @@ #ifndef D_A_D_A_ITEM_STATIC_H #define D_A_D_A_ITEM_STATIC_H +#include "SSystem/SComponent/c_lib.h" #include "dolphin/types.h" +class daItem_c { +public: + u32 startCtrl(); + u32 startControl(); + u32 endControl(); + + void setFlag(u8 pFlag) { cLib_onBit(unk2376, pFlag); } + +private: + u8 unk0[0x948]; + u8 unk2376; + u8 unk2377; + u8 unk2378; +}; + #endif /* D_A_D_A_ITEM_STATIC_H */ diff --git a/include/d/a/d_a_itembase.h b/include/d/a/d_a_itembase.h index b7353ccc077..3cdfec42dd2 100644 --- a/include/d/a/d_a_itembase.h +++ b/include/d/a/d_a_itembase.h @@ -3,4 +3,42 @@ #include "dolphin/types.h" +class daItemBase_c { +public: + u8 getItemNo(); + void hide(); + void show(); + void changeDraw(); + u8 chkDraw(); + void dead(); + u8 chkDead(); + void CreateItemHeap(char const*, s16, s16, s16, s16, s16, s16, s16); + void DeleteBase(char const*); + bool clothCreate(); + bool __CreateHeap(); + void DrawBase(); + void RotateYBase(); + void setListStart(); + void setListEnd(); + void settingBeforeDraw(); + void setTevStr(); + void setShadow(); + void animEntry(); + void animPlay(f32, f32, f32, f32, f32, f32); + void chkFlag(int); + void getTevFrm(); + void getBtpFrm(); + void getShadowSize(); + void getCollisionH(); + void getCollisionR(); + void getData(); + + static u8 const m_data[56]; + +private: + u8 unk0[0x92a]; + u8 mItemNo; + u8 unk2347; +}; + #endif /* D_A_D_A_ITEMBASE_H */ diff --git a/include/d/a/d_a_itembase_static.h b/include/d/a/d_a_itembase_static.h index 019d5a14fe5..bc8924fa938 100644 --- a/include/d/a/d_a_itembase_static.h +++ b/include/d/a/d_a_itembase_static.h @@ -1,6 +1,7 @@ #ifndef D_A_D_A_ITEMBASE_STATIC_H #define D_A_D_A_ITEMBASE_STATIC_H +#include "d/a/d_a_itembase.h" #include "dolphin/types.h" #endif /* D_A_D_A_ITEMBASE_STATIC_H */ diff --git a/include/d/a/d_a_player.h b/include/d/a/d_a_player.h index 86a561d5d4b..872612d20a7 100644 --- a/include/d/a/d_a_player.h +++ b/include/d/a/d_a_player.h @@ -1,6 +1,344 @@ #ifndef D_A_D_A_PLAYER_H #define D_A_D_A_PLAYER_H +#include "JSystem/J3DGraphAnimator/J3DAnimation.h" +#include "d/save/d_save.h" #include "dolphin/types.h" +#include "f_op/f_op_actor.h" + +// todo: remove after moving JKernel +struct JKRHeap { + /* 802CE5CC */ void freeAll(); +}; + +class daPy_anmHeap_c { +public: + enum daAlinkHEAP_TYPE {}; + + daPy_anmHeap_c(u32); + ~daPy_anmHeap_c(); + void initData(); + void mallocBuffer(); + void createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE); + void loadData(u16); + void loadDataIdx(u16); + void loadDataPriIdx(u16); + void loadDataDemoRID(u16, u16); + void setAnimeHeap(); + + u16 getIdx() const { return mIdx; } + void resetIdx() { mIdx = 0xffff; } + void resetPriIdx() { mPriIdx = 0xffff; } + void resetArcNo() { mArcNo = 0xffff; } + +private: + /* 0x00 */ u16 mIdx; + /* 0x02 */ u16 mPriIdx; + /* 0x04 */ u16 mArcNo; + /* 0x06 */ u16 field_0x06; + /* 0x08 */ int mBufferSize; + /* 0x0C */ void* mBuffer; + /* 0x10 */ JKRHeap* mAnimeHeap; +}; // Size = 0x14 + +class daPy_actorKeep_c { +public: + daPy_actorKeep_c(void); + void setActor(void); + void setData(fopAc_ac_c*); + void clearData(void); + + u32 getID(void) const { return mID; } + void setID(u32 id) { mID = id; } + fopAc_ac_c* getActor(void) const { return mActor; } + +private: + u32 mID; + fopAc_ac_c* mActor; +}; + +#pragma pack(push, 1) +class daPy_frameCtrl_c : public J3DFrameCtrl { +public: + bool checkAnmEnd(void); + void updateFrame(void); + void setFrameCtrl(u8, short, short, float, float); + + u16 getEndFlg() { return mEndFlg; } + u16 getNowSetFlg() { return mNowSetFlg; } + void onEndFlg() { mEndFlg = 1; } + void onNowSetFlg() { mNowSetFlg = 1; } + void offNowSetFlg() { mNowSetFlg = 0; } + void offEndFlg() { + mEndFlg = 0; + mNowSetFlg = 0; + } + +private: + /* 0x14 */ u16 mEndFlg; + /* 0x16 */ u16 mNowSetFlg; +}; +#pragma pack(pop) + +class daPy_demo_c { +public: +private: + /* 0x00 */ u16 mDemoType; + /* 0x02 */ s16 mDemoMoveAngle; + /* 0x04 */ s16 mTimer; + /* 0x06 */ s16 mParam2; + /* 0x08 */ int mParam0; + /* 0x0C */ int mParam1; + /* 0x10 */ int mDemoMode; + /* 0x14 */ float mStick; + /* 0x18 */ cXyz mDemoPos0; +}; // Size = 0x24 + +class daPy_py_c : public fopAc_ac_c { +private: + /* 0x0538 */ u8 field_0x538[0x32]; + /* 0x056A */ u8 field_0x56a; + /* 0x056B */ u8 field_0x56b[5]; + /* 0x0570 */ int mNoResetFlg0; + /* 0x0574 */ int mNoResetFlg1; + /* 0x0578 */ int mNoResetFlg2; + /* 0x057C */ int mNoResetFlg3; + /* 0x0580 */ int mResetFlg0; + /* 0x0584 */ int mResetFlg1; + /* 0x0588 */ int mEndResetFlg0; + /* 0x058C */ int mEndResetFlg1; + /* 0x0590 */ int mEndResetFlg2; + /* 0x0594 */ u8 field_0x594[0x10]; + /* 0x05A4 */ cXyz mHeadTopPos; + /* 0x05B0 */ cXyz mItemPos; + /* 0x05BC */ cXyz mSwordTopPos; + /* 0x05C8 */ cXyz mLeftHandPos; + /* 0x05D4 */ cXyz mRightHandPos; + /* 0x05E0 */ cXyz mLeftFootPosP; + /* 0x05EC */ cXyz mRightFootPosP; + /* 0x05F8 */ u8 field_0x5f8[0xC]; + /* 0x0604 */ daPy_demo_c mDemo; + +public: + enum daPy_FLG0 { EquipHeavyBoots = 0x2000000 }; + enum daPy_FLG2 {}; + enum daPy_ERFLG0 {}; + + void setParamData(int, int, int, int); + void checkFishingRodItem(int); + void checkBombItem(int); + void checkBottleItem(int); + void checkDrinkBottleItem(int); + void checkOilBottleItem(int); + void checkOpenBottleItem(int); + void checkBowItem(int); + void checkHookshotItem(int); + void checkTradeItem(int); + BOOL checkDungeonWarpItem(int); + void checkMasterSwordEquip(); + void checkWoodShieldEquip(); + void getAttentionOffsetY(); + void checkNowWolfEyeUp(); + void forceRestartRoom(int, u32, int); + void setFmChainPos(fopAc_ac_c*, cXyz*, int); + void cancelFmChainGrab(); + void setLookPos(cXyz*); + void setPlayerSe(u32); + void linkGrabSubjectNoDraw(fopAc_ac_c*); + void wolfGrabSubjectNoDraw(fopAc_ac_c*); + void checkRoomRestartStart(); + void checkCarryStartLightBallA(); + void checkCarryStartLightBallB(); + float getSpinnerRideSpeed() const; + void checkSpinnerReflectEffect(); + void checkBoomerangCharge(); + bool checkBoomerangChargeTime(); + void getThrowBoomerangActor(); + void cancelBoomerangLockActor(fopAc_ac_c*); + void setPlayerDamage(int, int); + void setMidnaMotionNum(int); + void setMidnaFaceNum(int); + int checkNoResetFlg0(daPy_FLG0) const; + int checkEquipHeavyBoots() const; + u32 checkBoarSingleBattle(void) const; + u32 checkEndResetFlg0(daPy_ERFLG0) const; + + virtual void unk(); + virtual bool getMidnaAtnPos(void) const; + virtual void setMidnaMsgNum(fopAc_ac_c*, u16); + virtual u32 getModelMtx(void); + virtual u32 getInvMtx(void); + virtual cXyz* getShadowTalkAtnPos(void); + virtual float getGroundY(); + virtual u32 getLeftItemMatrix(void); + virtual u32 getRightItemMatrix(void); + virtual u32 getLeftHandMatrix(void); + virtual u32 getRightHandMatrix(void); + virtual u32 getLinkBackBone1Matrix(void); + virtual u32 getWolfMouthMatrix(void); + virtual u32 getWolfBackbone2Matrix(void); + virtual bool getBottleMtx(void); + virtual bool checkPlayerGuard(void) const; + virtual bool checkPlayerFly() const; + virtual bool checkFrontRoll() const; + virtual bool checkWolfDash() const; + virtual bool checkAutoJump(void) const; + virtual bool checkSideStep(void) const; + virtual bool checkWolfTriggerJump(void) const; + virtual bool checkGuardBreakMode(void) const; + virtual bool checkLv3Slide(void) const; + virtual bool checkWolfHowlDemoMode(void) const; + virtual bool checkChainBlockPushPull(void); + virtual bool checkElecDamage(void) const; + virtual bool checkEmptyBottleSwing(void) const; + virtual bool checkBottleSwingMode(void) const; + virtual bool checkHawkWait(void) const; + virtual bool checkGoatThrow(void) const; + virtual bool checkGoatThrowAfter(void) const; + virtual bool checkWolfTagLockJump(void) const; + virtual bool checkWolfTagLockJumpLand(void) const; + virtual bool checkWolfRope(void); + virtual bool checkWolfRopeHang(void) const; + virtual bool checkRollJump(void) const; + virtual bool checkGoronRideWait(void) const; + virtual bool checkWolfChain(void) const; + virtual bool checkWolfWait(void) const; + virtual bool checkWolfJumpAttack(void) const; + virtual bool checkWolfRSit(void) const; + virtual bool checkBubbleFly(void) const; + virtual bool checkBottleDrinkEnd(void) const; + virtual bool checkWolfDig(void) const; + virtual bool checkCutCharge(void) const; + virtual bool checkCutTurnCharge(void) const; + virtual bool checkCutLargeJumpCharge(void) const; + virtual bool getBokoFlamePos(cXyz*); + virtual bool checkComboCutTurn(void) const; + virtual bool checkClimbMove(void) const; + virtual bool checkGrassWhistle(void) const; + virtual bool checkBoarRun(void) const; + virtual bool checkFmChainPut(void) const; + virtual bool checkHorseElecDamage(void) const; + virtual float getBaseAnimeFrameRate(void) const; + virtual float getBaseAnimeFrame(void) const; + virtual float setAnimeFrame(float); + virtual bool checkWolfLock(fopAc_ac_c*) const; + virtual bool cancelWolfLock(fopAc_ac_c*) const; + virtual bool getAtnActorID(void) const; + virtual bool getItemID(void) const; + virtual bool getGrabActorID(void) const; + virtual bool exchangeGrabActor(fopAc_ac_c*); + virtual bool setForceGrab(fopAc_ac_c*, bool, bool); + virtual void setForcePutPos(cXyz const&); + virtual bool checkPlayerNoDraw(void); + virtual bool checkRopeTag(void); + virtual void voiceStart(u32); + virtual void seStartOnlyReverb(u32); + virtual void seStartOnlyReverbLevel(u32); + virtual float setOutPower(float, short, bool); + virtual void setGrabCollisionOffset(float, float, void*); + virtual void onMagneGrab(float, float); + virtual void onFrollCrashFlg(u8, bool); + virtual bool getModelJoboolMtx(u16); + virtual bool getHeadMtx(void); + virtual bool setHookshotCarryOffset(u32, cXyz const*); + virtual bool checkIronBallReturn(void) const; + virtual bool checkIronBallGroundStop(void) const; + virtual bool checkSingleBoarBattleSecondBowReady(void) const; + virtual bool checkPoboolSubWindowMode(void) const; + virtual void setClothesChange(bool); + virtual void setPlayerPosAndAngle(float (*)[4]); + virtual void setPlayerPosAndAngle(cXyz const*, csXyz const*); + virtual void setPlayerPosAndAngle(cXyz const*, short, bool); + virtual bool setThrowDamage(short, float, float, bool, bool, bool); + virtual bool checkSetNpcTks(cXyz*, bool, bool); + virtual bool setRollJump(float, float, short); + virtual void playerStartCollisionSE(u32, u32); + virtual void changeTextureAnime(u16, u16, bool); + virtual void cancelChangeTextureAnime(void); + virtual void cancelDungeonWarpReadyNeck(void); + virtual void onSceneChangeArea(u8, u8, fopAc_ac_c*); + virtual void onSceneChangeAreaJump(u8, u8, fopAc_ac_c*); + virtual void onSceneChangeDead(u8, bool); + virtual bool checkHorseRide() const; + virtual bool checkBoarRide() const; + virtual bool checkCanoeRide() const; + virtual bool checkBoardRide() const; + virtual u32 checkSpinnerRide() const; + virtual bool getSpinnerActor(void); + virtual bool checkHorseRideNotReady(void) const; + virtual bool checkArrowChargeEnd(void) const; + virtual float getSearchBallScale(void) const; + virtual bool checkFastShotTime(void); + virtual bool checkNoEquipItem(void) const; + virtual bool checkFireMaterial(void) const; + virtual bool checkKandelaarSwing(bool) const; + virtual bool getBoardCutTurnOffsetAngleY(void) const; + virtual bool getMagneHitPos(void); + virtual bool getMagneBootsTopVec(void); + virtual bool getKandelaarFlamePos(); + virtual bool checkUseKandelaar(bool); + virtual void setDkCaught(fopAc_ac_c*); + virtual void onPressedDamage(cXyz const&, short); + virtual bool checkPriActorOwn(fopAc_ac_c const*) const; + virtual bool onWolfEnemyBiteAll(fopAc_ac_c*, daPy_FLG2); + virtual bool checkWolfEnemyBiteAllOwn(fopAc_ac_c const*) const; + virtual void setWolfEnemyHangBiteAngle(short); + virtual void setKandelaarMtx(float (*)[4], bool, bool); + virtual bool getStickAngleFromPlayerShape(short*) const; + virtual bool checkSpinnerPathMove(void); + virtual bool checkSpinnerTriggerAttack(void); + virtual void onSpinnerPathForceRemove(void); + virtual bool getIronBallBgHit(void) const; + virtual bool getIronBallCenterPos(void); + virtual bool checkCanoeFishingGetLeft(void) const; + virtual bool checkCanoeFishingGetRight(void) const; + virtual bool checkBeeChildDrink(void) const; + virtual void skipPortalObjWarp(void); + virtual bool checkTreasureRupeeReturn(bool) const; + virtual void setSumouReady(fopAc_ac_c*); + virtual bool checkAcceptDungeonWarpAlink(bool); + virtual bool getSumouCounter(void) const; + virtual bool checkSumouWithstand(void) const; + virtual void cancelGoronThrowEvent(void); + virtual void setSumouGraspCancelCount(bool); + virtual void setSumouPushBackDirection(short); + virtual void setSumouLoseHeadUp(void); + virtual s16 getGiantPuzzleAimAngle(void) const; + virtual void setGoronSideMove(fopAc_ac_c*); + virtual void setCargoCarry(fopAc_ac_c*); + virtual bool getDpdFarFlg(void) const; + virtual bool getHookshotTopPos(void); + virtual bool checkHookshotReturnMode(void) const; + virtual bool checkHookshotShootReturnMode(void) const; + virtual bool checkOctaIealHang(void) const; + virtual void cancelOctaIealHang(void); + virtual void cancelDragonHangBackJump(void); + virtual void setOctaIealWildHang(void); + virtual bool checkDragonHangRide(void) const; + virtual void changeDragonActor(fopAc_ac_c*); + virtual bool getClothesChangeWaitTimer(void) const; + virtual bool getShieldChangeWaitTimer(void) const; + virtual bool getSwordChangeWaitTimer(void) const; + virtual bool checkMetamorphose(void) const; + virtual bool checkWolfDownAttackPullOut(void) const; + virtual bool checkBootsOrArmorHeavy(void) const; + virtual bool getBottleOpenAppearItem(void) const; + virtual bool checkItemSwordEquip(void) const; + virtual float getSinkShapeOffset(void) const; + virtual bool checkSinkDead(void) const; + virtual bool checkHorseStart(void); + virtual bool getWolfHowlMgrP(void); + virtual bool checkWolfHowlSuccessAnime(void) const; + virtual bool checkCopyRodTopUse(void); + virtual bool checkCopyRodEquip(void) const; + virtual bool checkCutJumpMode(void) const; + + inline void onNoResetFlg0(int pFlg) { mNoResetFlg0 |= pFlg; } + inline void onNoResetFlg3(int pFlg) { mNoResetFlg3 |= pFlg; } + inline void offNoResetFlg3(int pFlg) { mNoResetFlg3 &= ~pFlg; } + // inline fopAc_ac_c& getActor() { return mActor; } + + static u8 m_midnaActor[4]; +}; #endif /* D_A_D_A_PLAYER_H */ diff --git a/include/d/bg/d_bg_s.h b/include/d/bg/d_bg_s.h index e7493916eca..fc4b04d1eff 100644 --- a/include/d/bg/d_bg_s.h +++ b/include/d/bg/d_bg_s.h @@ -1,6 +1,118 @@ #ifndef D_BG_D_BG_S_H #define D_BG_D_BG_S_H +#include "SSystem/SComponent/c_bg_s_gnd_chk.h" +#include "SSystem/SComponent/c_bg_s_lin_chk.h" +#include "SSystem/SComponent/c_bg_s_poly_info.h" +#include "d/bg/d_bg_w.h" #include "dolphin/types.h" +#include "f_op/f_op_actor.h" + +struct cBgW_BgId { + /* 802681C8 */ void Release(); + /* 802681D4 */ void ChkUsed() const; +}; + +#pragma pack(push, 1) +class cBgS_ChkElm { + cBgS_ChkElm(void); + ~cBgS_ChkElm(); + void Init(); + void Regist2(dBgW_Base*, unsigned int, void*); + void Release(); + + /* 0x00 */ dBgW_Base* bgw_base_pointer; + /* 0x04 */ u8 used; + /* 0x05 */ u8 padding[3]; + /* 0x08 */ u32 field_0x8; + /* 0x0C */ void* actor_pointer; + /* 0x10 */ u32 field_0x10; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class cBgS { + ~cBgS(); + void Regist(dBgW_Base*, unsigned int, void*); + void Release(dBgW_Base*); + void Ct(); + void Dt(); + void LineCross(cBgS_LinChk*); + void GroundCross(cBgS_GndChk*); + void ConvDzb(void*); + void GetActorPointer(int) const; + void GetBgWBasePointer(cBgS_PolyInfo const&) const; + void ChkPolySafe(cBgS_PolyInfo const&); + void GetGrpRoomId(cBgS_PolyInfo const&) const; + void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; + void GetTriPnt(cBgS_PolyInfo const&, cXyz*, cXyz*, cXyz*) const; + void ShdwDraw(cBgS_ShdwDraw*); + void GetGrpInf(cBgS_PolyInfo const&) const; + + /* 0x0000 */ cBgS_ChkElm cbgs_elements[256]; +}; +#pragma pack(pop) + +class dBgS_HIO { + /* 0x00 */ u8 vtable[4]; + /* 0x04 */ u8 field_0x4[2]; + /* 0x06 */ u16 field_0x6; + /* 0x08 */ u16 field_0x8; + /* 0x0A */ u8 field_0xa[2]; + /* 0x0C */ cXyz field_0xc; + /* 0x18 */ cXyz field_0x18; + /* 0x24 */ cXyz field_0x24; + /* 0x30 */ u8 field_0x30[4]; +}; + +class dBgS_Acch; +#pragma pack(push, 1) +class dBgS { +public: + ~dBgS(); + void Ct(); + void Dt(); + void ClrMoveFlag(); + void Move(); + void Regist(dBgW_Base*, fopAc_ac_c*); + void ChkMoveBG(cBgS_PolyInfo const&); + void ChkMoveBG_NoDABg(cBgS_PolyInfo const&); + void GetExitId(cBgS_PolyInfo const&); + void GetPolyColor(cBgS_PolyInfo const&); + void GetHorseNoEntry(cBgS_PolyInfo const&); + void GetSpecialCode(cBgS_PolyInfo const&); + void GetMagnetCode(cBgS_PolyInfo const&); + void GetMonkeyBarsCode(cBgS_PolyInfo const&); + void GetUnderwaterRoofCode(cBgS_PolyInfo const&); + void GetWallCode(cBgS_PolyInfo const&); + void GetPolyAtt0(cBgS_PolyInfo const&); + void GetPolyAtt1(cBgS_PolyInfo const&); + void GetGroundCode(cBgS_PolyInfo const&); + void GetCamMoveBG(cBgS_PolyInfo const&); + void GetRoomCamId(cBgS_PolyInfo const&); + void GetRoomPathId(cBgS_PolyInfo const&); + void GetRoomPathPntNo(cBgS_PolyInfo const&); + void GetGrpSoundId(cBgS_PolyInfo const&); + void ChkGrpInf(cBgS_PolyInfo const&, u32); + void GetRoomId(cBgS_PolyInfo const&); + void GetPolyAttackThrough(cBgS_PolyInfo const&); + void ChkPolyHSStick(cBgS_PolyInfo const&); + void WallCorrect(dBgS_Acch*); + void WallCorrectSort(dBgS_Acch*); + void RoofChk(dBgS_RoofChk*); + void SplGrpChk(dBgS_SplGrpChk*); + void SphChk(dBgS_SphChk*, void*); + void MoveBgCrrPos(cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*, bool, bool); + void MoveBgTransPos(cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*); + void MoveBgMatrixCrrPos(cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*); + void RideCallBack(cBgS_PolyInfo const&, fopAc_ac_c*); + void ArrowStickCallBack(cBgS_PolyInfo const&, fopAc_ac_c*, cXyz&); + void PushPullCallBack(cBgS_PolyInfo const&, fopAc_ac_c*, s16, dBgW_Base::PushPullLabel); + +private: + /* 0x0000 */ cBgS cbgs; + /* 0x1400 */ void* vtable; +}; +#pragma pack(pop) #endif /* D_BG_D_BG_S_H */ diff --git a/include/d/bg/d_bg_s_acch.h b/include/d/bg/d_bg_s_acch.h index fac211097a9..b47e509e1fd 100644 --- a/include/d/bg/d_bg_s_acch.h +++ b/include/d/bg/d_bg_s_acch.h @@ -1,6 +1,113 @@ #ifndef D_BG_D_BG_S_ACCH_H #define D_BG_D_BG_S_ACCH_H +#include "SSystem/SComponent/c_bg_s_poly_info.h" +#include "SSystem/SComponent/c_m3d_g_cir.h" +#include "SSystem/SComponent/c_m3d_g_cyl.h" +#include "SSystem/SComponent/c_m3d_g_lin.h" +#include "SSystem/SComponent/c_m3d_g_pla.h" +#include "d/a/d_a_player.h" +#include "d/bg/d_bg_s_gnd_chk.h" +#include "d/bg/d_bg_s_roof_chk.h" +#include "d/bg/d_bg_s_wtr_chk.h" #include "dolphin/types.h" +//#include "d/bg/d_bg_s.h" + +class dBgS_AcchCir { +public: + /* 80075EAC */ dBgS_AcchCir(); + /* 80075F14 */ void ClrWallHit(); + /* 80075F40 */ void SetWallR(f32); + /* 80075F48 */ void CalcWallRR(); + /* 80075F58 */ void SetWall(f32, f32); + /* 80075F80 */ void SetWallHDirect(f32); + /* 80077414 */ ~dBgS_AcchCir(); + +private: + /* 0x00 */ cBgS_PolyInfo mPolyInfo; + /* 0x10 */ int mWallHit; + /* 0x14 */ cM3dGCir m3DGCir; + /* 0x28 */ float mWallRR; + /* 0x2C */ float field_0x2c; + /* 0x30 */ float mWallH; + /* 0x34 */ float mWallR; + /* 0x38 */ float mWallHDirect; + /* 0x3C */ s16 mWallAngleY; + /* 0x3E */ u8 padding[2]; +}; + +class dBgS; +class dBgS_Acch { +public: + /* 80075F94 */ ~dBgS_Acch(); + /* 800760A0 */ dBgS_Acch(); + /* 800761CC */ void Init(); + /* 80076288 */ void Set(fopAc_ac_c*, int, dBgS_AcchCir*); + /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); + /* 800762D8 */ void GroundCheckInit(dBgS&); + /* 80076350 */ void GroundCheck(dBgS&); + /* 8007654C */ void GroundRoofProc(dBgS&); + /* 80076624 */ void LineCheck(dBgS&); + /* 80076AAC */ void CrrPos(dBgS&); + /* 80076F84 */ void GetWallAllR(); + /* 80076FC0 */ void SetWallCir(); + /* 8007703C */ void CalcWallBmdCyl(); + /* 80077114 */ void SetGroundUpY(f32); + /* 80077128 */ void GetWallAllLowH(); + /* 80077178 */ void GetWallAllLowH_R(); + /* 800771E4 */ void GetSpeedY(); + /* 80077200 */ void GetWallAddY(Vec&); + /* 80077278 */ void SetNowActorInfo(int, void*, unsigned int); + /* 80077288 */ void SetWallPolyIndex(int, int); + /* 800772E8 */ void CalcMovePosWork(); + /* 8007732C */ void CalcWallRR(); + /* 80077388 */ void SetMoveBGOnly(); + /* 800773A4 */ void ClrMoveBGOnly(); + /* 800773C0 */ void SetGndThinCellingOff(); + /* 800773D0 */ void ClrGndThinCellingOff(); + /* 800773E0 */ void ChkGndThinCellingOff(); + /* 800773EC */ void OnWallSort(); + /* 800773FC */ void ChkWallSort(); + /* 80077408 */ void ChkLineDown(); + +private: + /* 0x000 */ cBgS_Chk field_0x000; + /* 0x014 */ dBgS_Chk field_0x014; + /* 0x02C */ int field_0x2c; + /* 0x030 */ cXyz* mPos; + /* 0x034 */ cXyz* mOldPos; + /* 0x038 */ cXyz* mSpeed; + /* 0x03C */ csXyz* mAngle; + /* 0x040 */ csXyz* mShapeAngle; + /* 0x044 */ cM3dGLin field_0x44; + /* 0x060 */ cM3dGCyl mWallBmdCyl; + /* 0x078 */ int field_0x78; + /* 0x07C */ void* field_0x7c; + /* 0x080 */ u32 field_0x80; + /* 0x084 */ fopAc_ac_c* mMyAc; + /* 0x088 */ int m_tbl_size; + /* 0x08C */ dBgS_AcchCir* field_0x8c; + /* 0x090 */ float field_0x90; + /* 0x094 */ float field_0x94; + /* 0x098 */ float mGroundH; + /* 0x09C */ float field_0x9c; + /* 0x0A0 */ cM3dGPla field_0xa0; + /* 0x0B4 */ u8 field_0xb4[4]; + /* 0x0B8 */ float field_0xb8; + /* 0x0BC */ float field_0xbc; + /* 0x0C0 */ u8 field_0xc0[4]; + /* 0x0C4 */ float mRoofHeight; + /* 0x0C8 */ float mRoofCrrHeight; + /* 0x0CC */ float field_0xcc; + /* 0x0D0 */ float mWaterCheckOffset; + /* 0x0D4 */ int field_0xd4; + /* 0x0D8 */ float field_0xd8; + /* 0x0DC */ dBgS_GndChk mGndChk; + /* 0x130 */ dBgS_RoofChk mRoofChk; + /* 0x180 */ dBgS_WtrChk mWtrChk; + /* 0x1D4 */ u8 mWtrChkMode; +}; + +class dBgS_LinkAcch : public dBgS_Acch {}; #endif /* D_BG_D_BG_S_ACCH_H */ diff --git a/include/d/bg/d_bg_s_chk.h b/include/d/bg/d_bg_s_chk.h index da72ae282f9..549b8c2eedb 100644 --- a/include/d/bg/d_bg_s_chk.h +++ b/include/d/bg/d_bg_s_chk.h @@ -1,6 +1,20 @@ #ifndef D_BG_D_BG_S_CHK_H #define D_BG_D_BG_S_CHK_H +#include "d/bg/d_bg_s_grp_pass_chk.h" +#include "d/bg/d_bg_s_poly_pass_chk.h" #include "dolphin/types.h" +class dBgS_Chk { +public: + /* 8007749C */ dBgS_Chk(); + /* 800774E8 */ ~dBgS_Chk(); + /* 80077560 */ void GetPolyPassChkInfo(); + /* 80077564 */ void GetGrpPassChkInfo(); + +private: + /* 0x000 */ dBgS_PolyPassChk mPolyPassChkInfo; + /* 0x010 */ dBgS_GrpPassChk mGrpPassChkInfo; +}; // Size = 0x18 + #endif /* D_BG_D_BG_S_CHK_H */ diff --git a/include/d/bg/d_bg_s_gnd_chk.h b/include/d/bg/d_bg_s_gnd_chk.h index e3e209a1449..a979022a312 100644 --- a/include/d/bg/d_bg_s_gnd_chk.h +++ b/include/d/bg/d_bg_s_gnd_chk.h @@ -1,6 +1,22 @@ #ifndef D_BG_D_BG_S_GND_CHK_H #define D_BG_D_BG_S_GND_CHK_H +#include "SSystem/SComponent/c_bg_s_gnd_chk.h" +#include "d/bg/d_bg_s_chk.h" #include "dolphin/types.h" +class dBgS_GndChk : public cBgS_GndChk { +public: + /* 8007757C */ dBgS_GndChk(); + virtual void temp(); // temp to build OK + /* 800775F0 */ virtual ~dBgS_GndChk(); + +private: + /* 0x3C */ dBgS_Chk mChk; +}; // Size = 0x54 + +class dBgS_LinkGndChk : dBgS_GndChk {}; + +class dBgS_ObjGndChk : dBgS_GndChk {}; + #endif /* D_BG_D_BG_S_GND_CHK_H */ diff --git a/include/d/bg/d_bg_s_grp_pass_chk.h b/include/d/bg/d_bg_s_grp_pass_chk.h index fecd68bcb7b..09a34359898 100644 --- a/include/d/bg/d_bg_s_grp_pass_chk.h +++ b/include/d/bg/d_bg_s_grp_pass_chk.h @@ -3,4 +3,18 @@ #include "dolphin/types.h" +class cBgS_GrpPassChk { +public: + ~cBgS_GrpPassChk(); +}; + +class dBgS_GrpPassChk : public cBgS_GrpPassChk { +public: + /* 80077BA0 */ dBgS_GrpPassChk(); + /* 80077BC4 */ ~dBgS_GrpPassChk(); + +private: + u32 mGrp; +}; + #endif /* D_BG_D_BG_S_GRP_PASS_CHK_H */ diff --git a/include/d/bg/d_bg_s_poly_pass_chk.h b/include/d/bg/d_bg_s_poly_pass_chk.h index baab8412766..dc20a4bed48 100644 --- a/include/d/bg/d_bg_s_poly_pass_chk.h +++ b/include/d/bg/d_bg_s_poly_pass_chk.h @@ -3,4 +3,61 @@ #include "dolphin/types.h" +class cBgS_PolyPassChk { +public: + ~cBgS_PolyPassChk(); +}; + +class dBgS_PolyPassChk : public cBgS_PolyPassChk { +public: + dBgS_PolyPassChk(); + ~dBgS_PolyPassChk(); + + bool ChkArrow() { return mArrow; } + bool ChkBomb() { return mBomb; } + bool ChkBoomerang() { return mBoomerang; } + bool ChkCam() { return mCamera; } + bool ChkHorse() { return mHorse; } + bool ChkIronBall() { return mIronBall; } + bool ChkLink() { return mLink; } + bool ChkNoHorse(); + bool ChkObj() { return mObject; } + bool ChkRope() { return mRope; } + bool ChkStatue() { return mStatue; } + bool ChkUnderwaterRoof() { return mUnderwaterRoof; } + + void ClrBomb(); + void ClrCam(); + void ClrIronBall(); + void ClrLink(); + void ClrObj(); + void ClrStatue(); + + void SetArrow(); + void SetBomb(); + void SetBoomerang(); + void SetCam(); + void SetHorse(); + void SetIronBall(); + void SetLink(); + void SetObj(); + void SetPassChkInfo(dBgS_PolyPassChk& chk); + void SetRope(); + void SetStatue(); + void SetUnderwaterRoof(); + +private: + bool mObject; + bool mCamera; + bool mLink; + bool mArrow; + bool mBomb; + bool mBoomerang; + bool mRope; + bool mUnderwaterRoof; + bool mHorse; + bool mStatue; + bool mIronBall; +}; + #endif /* D_BG_D_BG_S_POLY_PASS_CHK_H */ diff --git a/include/d/bg/d_bg_s_roof_chk.h b/include/d/bg/d_bg_s_roof_chk.h index 718493410ae..86f823faa80 100644 --- a/include/d/bg/d_bg_s_roof_chk.h +++ b/include/d/bg/d_bg_s_roof_chk.h @@ -1,6 +1,27 @@ #ifndef D_BG_D_BG_S_ROOF_CHK_H #define D_BG_D_BG_S_ROOF_CHK_H +#include "SSystem/SComponent/c_bg_s_chk.h" +#include "SSystem/SComponent/c_bg_s_poly_info.h" +#include "SSystem/SComponent/c_xyz.h" +#include "d/bg/d_bg_s_chk.h" #include "dolphin/types.h" +class dBgS_RoofChk { +public: + /* 80078FF4 */ dBgS_RoofChk(); + /* 80079090 */ ~dBgS_RoofChk(); + /* 80079124 */ void Init(); + +private: + /* 0x00 */ cBgS_PolyInfo field_0x00; + /* 0x10 */ cBgS_Chk field_0x10; + /* 0x24 */ dBgS_Chk field_0x24; + /* 0x3C */ cXyz m_pos; + /* 0x48 */ int field_0x48; + /* 0x4C */ float mNowY; +}; // Size = 0x50 + +class dBgS_LinkRoofChk : dBgS_RoofChk {}; + #endif /* D_BG_D_BG_S_ROOF_CHK_H */ diff --git a/include/d/bg/d_bg_s_spl_grp_chk.h b/include/d/bg/d_bg_s_spl_grp_chk.h index 823e0fa4fce..4fb3645b49a 100644 --- a/include/d/bg/d_bg_s_spl_grp_chk.h +++ b/include/d/bg/d_bg_s_spl_grp_chk.h @@ -1,6 +1,27 @@ #ifndef D_BG_D_BG_S_SPL_GRP_CHK_H #define D_BG_D_BG_S_SPL_GRP_CHK_H +#include "SSystem/SComponent/c_bg_s_chk.h" +#include "SSystem/SComponent/c_bg_s_poly_info.h" +#include "SSystem/SComponent/c_xyz.h" +#include "d/bg/d_bg_s_chk.h" #include "dolphin/types.h" +class dBgS_SplGrpChk { +public: + /* 80078B90 */ void Set(cXyz&, f32); + /* 80078BB0 */ dBgS_SplGrpChk(); + /* 80078C78 */ ~dBgS_SplGrpChk(); + /* 80078D0C */ void Init(); + +private: + /* 0x00 */ cBgS_PolyInfo field_0x00; + /* 0x10 */ cBgS_Chk field_0x10; + /* 0x24 */ dBgS_Chk field_0x24; + /* 0x3C */ cXyz m_ground; + /* 0x48 */ float mRoof; + /* 0x4C */ float mHeight; + /* 0x50 */ int field_0x50; +}; // Size = 0x54 + #endif /* D_BG_D_BG_S_SPL_GRP_CHK_H */ diff --git a/include/d/bg/d_bg_s_wtr_chk.h b/include/d/bg/d_bg_s_wtr_chk.h index 1a17cddbfb2..79a6806bab1 100644 --- a/include/d/bg/d_bg_s_wtr_chk.h +++ b/include/d/bg/d_bg_s_wtr_chk.h @@ -1,6 +1,15 @@ #ifndef D_BG_D_BG_S_WTR_CHK_H #define D_BG_D_BG_S_WTR_CHK_H +#include "d/bg/d_bg_s_spl_grp_chk.h" #include "dolphin/types.h" +class dBgS_WtrChk { +public: + /* 80079164 */ dBgS_WtrChk(); + +private: + /* 0x00 */ dBgS_SplGrpChk mSplGrp; +}; // Size = 0x54 + #endif /* D_BG_D_BG_S_WTR_CHK_H */ diff --git a/include/d/bg/d_bg_w.h b/include/d/bg/d_bg_w.h index fbbef588259..3d7329acef5 100644 --- a/include/d/bg/d_bg_w.h +++ b/include/d/bg/d_bg_w.h @@ -1,6 +1,211 @@ #ifndef D_BG_D_BG_W_H #define D_BG_D_BG_W_H +#include "SSystem/SComponent/c_bg_s_gnd_chk.h" +#include "SSystem/SComponent/c_bg_s_lin_chk.h" +#include "SSystem/SComponent/c_bg_s_poly_info.h" +#include "d/bg/d_bg_s_acch.h" +#include "d/bg/d_bg_s_grp_pass_chk.h" +#include "d/bg/d_bg_s_poly_pass_chk.h" #include "dolphin/types.h" +#include "f_op/f_op_actor.h" + +struct dBgS_CaptPoly {}; + +struct dBgS_SphChk {}; + +struct cM3dGTri { + /* 8007A344 */ ~cM3dGTri(); + /* 8026F85C */ void setBg(Vec const*, Vec const*, Vec const*, cM3dGPla const*); +}; + +struct cM3dGSph {}; + +struct cM3dGAab { + /* 8026EC88 */ void CrossY(cXyz const*) const; + /* 8026ECD0 */ void UnderPlaneYUnder(f32) const; + /* 8026ECE4 */ void TopPlaneYUnder(f32) const; + /* 8026ECF8 */ void ClearForMinMax(); + /* 8026ED1C */ void SetMinMax(cXyz const&); + /* 8026EDA4 */ void SetMin(cXyz const&); + /* 8026EDE4 */ void SetMax(cXyz const&); +}; + +struct cBgW_TriElm { + /* 800796F8 */ ~cBgW_TriElm(); + /* 80079754 */ cBgW_TriElm(); +}; + +struct cBgW_RwgElm { + /* 800791C4 */ cBgW_RwgElm(); + /* 800791D4 */ ~cBgW_RwgElm(); +}; + +struct cBgW_NodeTree { + /* 8007921C */ cBgW_NodeTree(); + /* 80079238 */ ~cBgW_NodeTree(); +}; + +struct cBgW_GrpElm { + /* 8007A184 */ ~cBgW_GrpElm(); + /* 8007A1E4 */ cBgW_GrpElm(); +}; + +struct cBgS_ShdwDraw {}; + +struct cBgD_t {}; + +struct cBgW { + /* 80079294 */ cBgW(); + /* 8007933C */ ~cBgW(); + /* 800793A4 */ void FreeArea(); + /* 800793C4 */ void GlobalVtx(); + /* 80079484 */ void SetVtx(); + /* 80079564 */ void CalcPlane(); + /* 80079668 */ void SetTri(); + /* 80079770 */ void BlckConnect(u16*, int*, int); + /* 800797BC */ void ClassifyPlane(); + /* 8007998C */ void MakeBlckTransMinMax(cXyz*, cXyz*); + /* 800799E0 */ void MakeBlckMinMax(int, cXyz*, cXyz*); + /* 80079A68 */ void MakeBlckBnd(int, cXyz*, cXyz*); + /* 80079BDC */ void MakeNodeTreeRp(int); + /* 80079CC4 */ void MakeNodeTreeGrpRp(int); + /* 80079DF0 */ void MakeNodeTree(); + /* 80079EEC */ void ChkMemoryError(); + /* 80079F38 */ void Set(cBgD_t*, u32, f32 (*)[3][4]); + /* 8007A200 */ void RwgLineCheck(u16, cBgS_LinChk*); + /* 8007A3A0 */ void LineCheckRp(cBgS_LinChk*, int); + /* 8007A52C */ void LineCheckGrpRp(cBgS_LinChk*, int, int); + /* 8007A658 */ void LineCheck(cBgS_LinChk*); + /* 8007A680 */ void RwgGroundCheckCommon(f32, u16, cBgS_GndChk*); + /* 8007A774 */ void RwgGroundCheckGnd(u16, cBgS_GndChk*); + /* 8007A824 */ void RwgGroundCheckWall(u16, cBgS_GndChk*); + /* 8007A8F4 */ void GroundCrossRp(cBgS_GndChk*, int); + /* 8007AA50 */ void GroundCrossGrpRp(cBgS_GndChk*, int, int); + /* 8007AB9C */ void GroundCross(cBgS_GndChk*); + /* 8007ABC4 */ void CopyOldMtx(); + /* 8007AC10 */ void Move(); + /* 8007ADF0 */ void RwgShdwDraw(int, cBgS_ShdwDraw*); + /* 8007AEA4 */ void ShdwDrawRp(cBgS_ShdwDraw*, int); + /* 8007AFC0 */ void ShdwDrawGrpRp(cBgS_ShdwDraw*, int); + /* 8007B084 */ void ShdwDraw(cBgS_ShdwDraw*); + /* 8007B0A8 */ bool ChkPolyThrough(int, cBgS_PolyPassChk*); + /* 8007B0B0 */ void ChkShdwDrawThrough(int, cBgS_PolyPassChk*); + /* 8007B0DC */ bool ChkGrpThrough(int, cBgS_GrpPassChk*, int); + /* 8007B0E4 */ void GetGrpRoomIndex(cBgS_PolyInfo const&) const; + /* 8007B164 */ void GetBnd() const; + /* 8007B17C */ void GetTrans(cXyz*) const; + /* 8007B1B4 */ void GetTriPnt(cBgS_PolyInfo const&, cXyz*, cXyz*, cXyz*) const; + /* 8007B240 */ void GetTopUnder(f32*, f32*) const; + /* 8007B270 */ void GetTriPla(cBgS_PolyInfo const&) const; + /* 8007B2B0 */ void GetGrpInf(cBgS_PolyInfo const&) const; + /* 8007B2F4 */ void GetPolyInfId(int) const; + /* 8007B30C */ void GetPolyInf0(int, u32, u32) const; + /* 8007B360 */ void GetMaskPolyInf0_NoShift(int, u32) const; + /* 8007B654 */ void GetPolyInf1(int, u32, u32) const; + /* 8007B78C */ void GetMaskPolyInf1_NoShift(int, u32) const; + /* 8007B824 */ void GetPolyInf2(int, u32, u32) const; + /* 8007B930 */ void GetTriGrp(int) const; + /* 8007B948 */ void ChkNotReady() const; + /* 8007B958 */ void ChkLock() const; + /* 8007B964 */ void ChkMoveBg() const; +}; + +#pragma pack(push, 1) +class dBgW_Base { +public: + enum PushPullLabel {}; + + /* 8007E5A8 */ dBgW_Base(); + /* 8007E640 */ ~dBgW_Base(); + /* 8007E6D8 */ void CallRideCallBack(fopAc_ac_c*, fopAc_ac_c*); + /* 8007E6DC */ void CallArrowStickCallBack(fopAc_ac_c*, fopAc_ac_c*, cXyz&); + /* 80074AB4 */ void SetOldShapeAngleY(s16); + /* 8007E6E0 */ void CalcDiffShapeAngleY(s16); + +private: + u16 field_0x0; + u8 field_0x2[2]; + void* field_0x4; + u8 field_0x8; + u8 field_0x9; + u8 field_0xa; + u8 field_0xb; + s16 field_0xc; + s16 field_0xe; +}; +#pragma pack(pop) + +class dBgW { +public: + /* 8007B3AC */ void GetExitId(cBgS_PolyInfo const&); + /* 8007B3D8 */ void GetPolyColor(cBgS_PolyInfo const&); + /* 8007B404 */ void GetHorseNoEntry(cBgS_PolyInfo const&); + /* 8007B430 */ void GetSpecialCode(cBgS_PolyInfo const&); + /* 8007B460 */ void GetSpecialCode(int); + /* 8007B488 */ void GetMagnetCode(cBgS_PolyInfo const&); + /* 8007B4B4 */ void GetMonkeyBarsCode(cBgS_PolyInfo const&); + /* 8007B4E0 */ void GetPolyObjThrough(int); + /* 8007B504 */ void GetPolyCamThrough(int); + /* 8007B52C */ void GetPolyLinkThrough(int); + /* 8007B550 */ void GetPolyArrowThrough(int); + /* 8007B574 */ void GetPolyHSStick(int); + /* 8007B598 */ void GetPolyBoomerangThrough(int); + /* 8007B5BC */ void GetPolyRopeThrough(int); + /* 8007B5E0 */ void GetPolyBombThrough(int); + /* 8007B604 */ void GetShdwThrough(int); + /* 8007B630 */ void GetUnderwaterRoofCode(int); + /* 8007B6AC */ void GetLinkNo(cBgS_PolyInfo const&); + /* 8007B6D8 */ void GetWallCode(cBgS_PolyInfo const&); + /* 8007B704 */ void GetPolyAtt0(cBgS_PolyInfo const&); + /* 8007B734 */ void GetPolyAtt1(cBgS_PolyInfo const&); + /* 8007B760 */ void GetGroundCode(cBgS_PolyInfo const&); + /* 8007B7DC */ void GetIronBallThrough(int); + /* 8007B800 */ void GetAttackThrough(int); + /* 8007B87C */ void GetCamMoveBG(cBgS_PolyInfo const&); + /* 8007B8A8 */ void GetRoomCamId(cBgS_PolyInfo const&); + /* 8007B8D8 */ void GetRoomPathId(cBgS_PolyInfo const&); + /* 8007B904 */ void GetRoomPathPntNo(cBgS_PolyInfo const&); + /* 8007B970 */ dBgW(); + /* 8007B9C0 */ void Move(); + /* 8007B9EC */ void positionWallCorrect(dBgS_Acch*, f32, cM3dGPla&, cXyz*, f32); + /* 8007BA40 */ void RwgWallCorrect(dBgS_Acch*, u16); + /* 8007C234 */ void WallCorrectRp(dBgS_Acch*, int); + /* 8007C360 */ void WallCorrectGrpRp(dBgS_Acch*, int, int); + /* 8007C484 */ void WallCorrect(dBgS_Acch*); + /* 8007C4AC */ void RwgWallCorrectSort(dBgS_Acch*, u16); + /* 8007C714 */ void WallCorrectRpSort(dBgS_Acch*, int); + /* 8007C808 */ void WallCorrectGrpRpSort(dBgS_Acch*, int, int); + /* 8007C910 */ void WallCorrectSort(dBgS_Acch*); + /* 8007D0DC */ void RwgRoofChk(u16, dBgS_RoofChk*); + /* 8007D208 */ void RoofChkRp(dBgS_RoofChk*, int); + /* 8007D330 */ void RoofChkGrpRp(dBgS_RoofChk*, int, int); + /* 8007D470 */ void RoofChk(dBgS_RoofChk*); + /* 8007D498 */ void RwgSplGrpChk(u16, dBgS_SplGrpChk*); + /* 8007D5C4 */ void SplGrpChkRp(dBgS_SplGrpChk*, int); + /* 8007D6F0 */ void SplGrpChkGrpRp(dBgS_SplGrpChk*, int, int); + /* 8007D830 */ void SplGrpChk(dBgS_SplGrpChk*); + /* 8007D858 */ void RwgCaptPoly(int, dBgS_CaptPoly&); + /* 8007D8E8 */ void CaptPolyRp(dBgS_CaptPoly&, int); + /* 8007DA04 */ void CaptPolyGrpRp(dBgS_CaptPoly&, int, int); + /* 8007DAF8 */ void CaptPoly(dBgS_CaptPoly&); + /* 8007DB20 */ void RwgSphChk(u16, dBgS_SphChk*, void*); + /* 8007DC70 */ void SphChkRp(dBgS_SphChk*, void*, int); + /* 8007DDE0 */ void SphChkGrpRp(dBgS_SphChk*, void*, int, int); + /* 8007DF00 */ void SphChk(dBgS_SphChk*, void*); + /* 8007DF28 */ void GetPolyGrpRoomInfId(cBgS_PolyInfo const&); + /* 8007DF58 */ void GetGrpSoundId(cBgS_PolyInfo const&); + /* 8007DF88 */ void CrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*); + /* 8007DFC4 */ void TransPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*); + /* 8007E000 */ void MatrixCrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*); + /* 8007E02C */ void ChkPolyThrough(int, cBgS_PolyPassChk*); + /* 8007E360 */ void ChkShdwDrawThrough(int, cBgS_PolyPassChk*); + /* 8007E3D8 */ void ChkGrpThrough(int, cBgS_GrpPassChk*, int); + /* 8007E444 */ void CallRideCallBack(fopAc_ac_c*, fopAc_ac_c*); + /* 8007E474 */ void CallArrowStickCallBack(fopAc_ac_c*, fopAc_ac_c*, cXyz&); + /* 8007E4A4 */ void OffMoveFlag(); + /* 8007E4B4 */ void ChkMoveFlag() const; + /* 8007E548 */ ~dBgW(); +}; #endif /* D_BG_D_BG_W_H */ diff --git a/include/d/cc/d_cc_d.h b/include/d/cc/d_cc_d.h index 5450b06ecaf..f861f758d83 100644 --- a/include/d/cc/d_cc_d.h +++ b/include/d/cc/d_cc_d.h @@ -1,6 +1,191 @@ #ifndef D_CC_D_CC_D_H #define D_CC_D_CC_D_H +#include "SSystem/SComponent/c_cc_d.h" #include "dolphin/types.h" +struct dCcD_SrcTri {}; + +struct dCcD_SrcSph {}; + +struct dCcD_SrcGObjTg {}; + +struct dCcD_SrcGObjInf {}; + +struct dCcD_SrcGObjAt {}; + +struct dCcD_SrcGAtTgCoCommonBase {}; + +struct dCcD_SrcCyl {}; + +struct dCcD_SrcCps {}; + +class dCcD_GStts : cCcD_GStts { +public: + /* 80083760 */ dCcD_GStts(); + /* 800837F8 */ void Ct(); + /* 80083830 */ void Move(); + /* 8008523C */ ~dCcD_GStts(); + +private: + /* 0x04 */ u8 mAt; + /* 0x05 */ u8 mTg; + /* 0x06 */ u8 mRoomId; + /* 0x08 */ u16 field_0x08; + /* 0x0C */ int mAtApid; + /* 0x10 */ int mAtOldApid; + /* 0x14 */ int mTgApid; + /* 0x18 */ int mTgOldApid; + /* 0x1C */ int field_0x1C; +}; // Size = 0x20 + +class dCcD_Stts : cCcD_Stts { +public: + /* 80083850 */ void GetGStts(); + /* 80083860 */ void Init(int, int, fopAc_ac_c*); + /* 800838F4 */ void Ct(); + /* 80083928 */ void ClrAt(); + /* 80083934 */ void ClrTg(); + /* 800851AC */ ~dCcD_Stts(); + +private: + /* 0x1C */ dCcD_GStts mGStts; +}; // Size = 0x3C + +class dCcD_GAtTgCoCommonBase { +public: + /* 8008364C */ void ClrActorInfo(); + /* 80083660 */ void ct(); + /* 80083678 */ void SetHitApid(unsigned int); + /* 80083688 */ void GetAc(); + /* 80083704 */ void Set(dCcD_SrcGAtTgCoCommonBase const&); + /* 80083718 */ void SetEffCounterTimer(); + /* 80083724 */ void SubtractEffCounter(); + /* 80083748 */ void ChkEffCounter(); + /* 80083CA0 */ ~dCcD_GAtTgCoCommonBase(); + +private: + /* 0x00 */ void* mBase; // type dCcD_SrcGAtTgCoCommonBase* + /* 0x04 */ u32 mRPrm; + /* 0x08 */ u32 field_0x08; + /* 0x0C */ u32 field_0x0C; + /* 0x10 */ fopAc_ac_c* mAc; + /* 0x14 */ s8 mEffCounter; + /* 0x15 */ u8 field_0x15[3]; + /* 0x18 */ void* vtable; +}; // Size = 0x1C + +class dCcD_GObjAt : dCcD_GAtTgCoCommonBase { +public: + /* 80083944 */ void Set(dCcD_SrcGObjAt const&); + /* 80083C44 */ ~dCcD_GObjAt(); + +private: + /* 0x1C */ u8 mSe; + /* 0x1D */ u8 mMtrl; + /* 0x1E */ u8 mHitMark; + /* 0x1F */ u8 mSpl; + /* 0x20 */ cXyz mHitPos; + /* 0x2C */ cXyz mVec; + /* 0x38 */ cXyz mRVec; +}; // Size = 0x44 +class dCcD_GObjTg : dCcD_GAtTgCoCommonBase { +public: + /* 800839A0 */ void Set(dCcD_SrcGObjTg const&); + /* 80083BE8 */ ~dCcD_GObjTg(); + +private: + /* 0x1C */ u8 mSe; + /* 0x1D */ u8 mMtrl; + /* 0x1E */ u8 mHitMark; + /* 0x1F */ u8 mSpl; + /* 0x20 */ cXyz mVec; + /* 0x2C */ cXyz mRVec; + /* 0x38 */ cXyz mHitPos; + /* 0x44 */ s16* mShieldFrontRangeYAngle; + /* 0x48 */ s16 mShieldRange; +}; // Size = 0x4A ? +class dCcD_GObjCo : dCcD_GAtTgCoCommonBase { +public: + /* 80083B8C */ ~dCcD_GObjCo(); + +private: +}; // Size = 0x1C ? + +class dCcD_GObjInf : cCcD_GObjInf { +public: + /* 80083A28 */ dCcD_GObjInf(); + /* 800840E4 */ ~dCcD_GObjInf(); + /* 80084268 */ void GetGObjInf(); + /* 8008426C */ void ClrAtHit(); + /* 800842C0 */ void ChkAtHit(); + /* 80084318 */ void ResetAtHit(); + /* 80084358 */ void GetAtHitObj(); + /* 800843A8 */ void GetAtHitGObj(); + /* 800843DC */ void ChkAtNoGuard(); + /* 800843FC */ void ClrTgHit(); + /* 80084460 */ void ChkTgHit(); + /* 800844B8 */ void ResetTgHit(); + /* 800844F8 */ void GetTgHitObj(); + /* 80084548 */ void GetTgHitGObj(); + /* 8008457C */ void GetTgHitObjSe(); + /* 800845B0 */ void getHitSeID(u8, int); + /* 8008460C */ void ClrCoHit(); + /* 80084658 */ void ChkCoHit(); + /* 800846B0 */ void ResetCoHit(); + /* 800846F0 */ void GetCoHitObj(); + /* 80084740 */ void Set(dCcD_SrcGObjInf const&); + + static u8 const m_hitSeID[96]; + +private: + /* 0x058 */ dCcD_GObjAt mGObjAt; + /* 0x09C */ dCcD_GObjTg mGObjTg; + /* 0x0E8 */ dCcD_GObjCo mGObjCo; +}; // Size = 0x104 + +class dCcD_Cyl : dCcD_GObjInf { +public: + /* 800848B4 */ void Set(dCcD_SrcCyl const&); + /* 800848F8 */ void GetShapeAttr(); + /* 80084908 */ void StartCAt(cXyz&); + /* 80084954 */ void MoveCAt(cXyz&); + /* 800849C4 */ void MoveCTg(cXyz&); + /* 80084D60 */ ~dCcD_Cyl(); + +private: + /* 0x104 */ cCcD_CylAttr mCylAttr; +}; // Size = 0x13C + +class dCcD_Sph : dCcD_GObjInf { +public: + /* 80084A34 */ void Set(dCcD_SrcSph const&); + /* 80084A78 */ void StartCAt(cXyz&); + /* 80084AC4 */ void MoveCAt(cXyz&); + /* 80084B34 */ void GetShapeAttr(); + /* 80084BF4 */ ~dCcD_Sph(); + +private: + /* 0x104 */ cCcD_SphAttr mSphAttr; +}; // Size = 0x138 + +class dCcD_Cps : dCcD_GObjInf { +public: + /* 800847D0 */ void Set(dCcD_SrcCps const&); + /* 80084814 */ void GetShapeAttr(); + /* 80084824 */ void CalcAtVec(); + /* 80084854 */ void CalcTgVec(); + /* 8008506C */ ~dCcD_Cps(); + +private: + /* 0x104 */ cCcD_CpsAttr mCpsAttr; +}; // Size = 0x144 + +class dCcD_Tri { +public: + /* 80084884 */ void Set(dCcD_SrcTri const&); + /* 800848A4 */ void GetShapeAttr(); + /* 80084EF4 */ ~dCcD_Tri(); +}; + #endif /* D_CC_D_CC_D_H */ diff --git a/include/d/cc/d_cc_mass_s.h b/include/d/cc/d_cc_mass_s.h index cf8748a101d..9a654a13be6 100644 --- a/include/d/cc/d_cc_mass_s.h +++ b/include/d/cc/d_cc_mass_s.h @@ -1,6 +1,41 @@ #ifndef D_CC_D_CC_MASS_S_H #define D_CC_D_CC_MASS_S_H +#include "SSystem/SComponent/c_cc_d.h" #include "dolphin/types.h" +class dCcMassS_Obj { +public: +private: + u8 field_0x0[12]; + cCcD_DivideInfo cccd_divideinfo; + void* vtable; +}; + +class dCcMassS_Mng { +public: + dCcMassS_Mng(void); + +private: + /* 0x0000 */ cCcD_DivideArea cccd_dividearea; + /* 0x0020 */ u8 field_0x20[36]; + /* 0x0044 */ dCcMassS_Obj dccmasss_obj; + /* 0x0064 */ u8 field_0x64[292]; + /* 0x0188 */ dCcMassS_Obj dccmasss_obj2; + /* 0x01A8 */ u8 field_0x1a8[32]; + /* 0x01C8 */ cCcD_CylAttr cccd_cylattr; + /* 0x0200 */ u8 field_0x200[2]; + /* 0x0202 */ u8 field_0x202; + /* 0x0203 */ u8 field_0x203; + /* 0x0204 */ float cam_x_pos; + /* 0x0208 */ float cam_y_pos; + /* 0x020C */ float cam_z_pos; + /* 0x0210 */ float field_0x210; + /* 0x0214 */ float field_0x214; + /* 0x0218 */ float field_0x218; + /* 0x021C */ u8 field_0x21c[8]; + /* 0x0224 */ cCcD_CpsAttr cccd_cpsattr; + /* 0x0288 */ cCcD_DivideInfo cccd_divideinfo; +}; + #endif /* D_CC_D_CC_MASS_S_H */ diff --git a/include/d/cc/d_cc_s.h b/include/d/cc/d_cc_s.h index 9fb1a51100c..66999bff2e3 100644 --- a/include/d/cc/d_cc_s.h +++ b/include/d/cc/d_cc_s.h @@ -1,6 +1,50 @@ #ifndef D_CC_D_CC_S_H #define D_CC_D_CC_S_H +#include "d/cc/d_cc_d.h" +#include "d/cc/d_cc_mass_s.h" #include "dolphin/types.h" +class dCcS { +public: + /* 8002FF40 */ ~dCcS(); + /* 80085ED4 */ void Ct(); + /* 80085F08 */ void Dt(); + /* 80085F28 */ void ChkShieldFrontRange(cCcD_Obj*, cCcD_Obj*, int, cXyz const*); + /* 800860F8 */ void ChkShield(cCcD_Obj*, cCcD_Obj*, dCcD_GObjInf*, dCcD_GObjInf*, cXyz const*); + /* 800861B0 */ void CalcTgPlusDmg(cCcD_Obj*, cCcD_Obj*, cCcD_Stts*, cCcD_Stts*); + /* 800861B4 */ void ChkAtTgHitAfterCross(bool, bool, cCcD_GObjInf const*, cCcD_GObjInf const*, + cCcD_Stts*, cCcD_Stts*, cCcD_GStts*, cCcD_GStts*); + /* 80086240 */ void SetCoGObjInf(bool, bool, cCcD_GObjInf*, cCcD_GObjInf*, cCcD_Stts*, + cCcD_Stts*, cCcD_GStts*, cCcD_GStts*); + /* 80086360 */ void GetRank(u8); + /* 80086404 */ bool ChkNoHitGCo(cCcD_Obj*, cCcD_Obj*); + /* 8008640C */ void SetPosCorrect(cCcD_Obj*, cXyz*, cCcD_Obj*, cXyz*, f32); + /* 80086754 */ void CalcParticleAngle(dCcD_GObjInf*, cCcD_Stts*, cCcD_Stts*, csXyz*); + /* 8008685C */ void ProcAtTgHitmark(bool, bool, cCcD_Obj*, cCcD_Obj*, dCcD_GObjInf*, + dCcD_GObjInf*, cCcD_Stts*, cCcD_Stts*, dCcD_GStts*, + dCcD_GStts*, cXyz*, bool); + /* 80086AC0 */ void SetAtTgGObjInf(bool, bool, cCcD_Obj*, cCcD_Obj*, cCcD_GObjInf*, + cCcD_GObjInf*, cCcD_Stts*, cCcD_Stts*, cCcD_GStts*, + cCcD_GStts*, cXyz*); + /* 80086D8C */ void ChkCamera(cXyz&, cXyz&, f32, fopAc_ac_c*, fopAc_ac_c*, fopAc_ac_c*); + /* 80086FBC */ void chkCameraPoint(cXyz const&, cCcD_ShapeAttr::Shape*, fopAc_ac_c*, + fopAc_ac_c*); + /* 800872A8 */ void MoveAfterCheck(); + /* 800872AC */ void DrawAfter(); + /* 800872B0 */ void Move(); + /* 800872D0 */ void Draw(); + /* 8008730C */ void MassClear(); + /* 80087330 */ void ChkAtTgMtrlHit(u8, u8); + /* 8008734C */ void ChkNoHitGAtTg(cCcD_GObjInf const*, cCcD_GObjInf const*, cCcD_GStts*, + cCcD_GStts*); + + static u8 m_mtrl_hit_tbl[64]; + +private: + /* 0x0000 */ cCcS cccs; + /* 0x2834 */ u8 field_0x2834[0x18]; + /* 0x284C */ dCcMassS_Mng dccmass_mng; +}; + #endif /* D_CC_D_CC_S_H */ diff --git a/include/d/d_attention.h b/include/d/d_attention.h index d403982af72..2690ea3a7ef 100644 --- a/include/d/d_attention.h +++ b/include/d/d_attention.h @@ -1,6 +1,244 @@ #ifndef D_D_ATTENTION_H #define D_D_ATTENTION_H +#include "SSystem/SComponent/c_angle.h" +#include "d/a/d_a_player.h" +#include "d/save/d_save.h" #include "dolphin/types.h" +#include "m_Do/m_Do_ext.h" + +struct J3DTransformInfo {}; + +class dAttHint_c { +public: + /* 800738B4 */ void getPId(void*); + /* 800738CC */ void convPId(unsigned int); + /* 800738FC */ void request(fopAc_ac_c*, int); + /* 80073958 */ void init(); + /* 80073970 */ void proc(); + +private: + u32 field_0x0; + u32 field_0x4; + u32 field_0x8; +}; + +class dAttCatch_c { +public: + /* 8007398C */ void convPId(unsigned int); + /* 800739BC */ void init(); + /* 800739DC */ void proc(); + /* 80073A08 */ void request(fopAc_ac_c*, u8, f32, f32, f32, s16, int); + +private: + void* field_0x0; + u32 field_0x4; + float field_0x8; + u8 field_0xc; + u8 field_0xd; + u8 field_0xe; + u8 field_0xf; + void* field_0x10; +}; + +class dAttParam_c { +public: + /* 80070038 */ dAttParam_c(s32); + /* 80070110 */ ~dAttParam_c(); + +private: + u8 field_0x0; + u8 field_0x1; + u8 field_0x2; + u8 field_0x3; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + u8 field_0x8; + u8 field_0x9; + u8 field_0xa; + u8 field_0xb; + u8 field_0xc; + u8 field_0xd; + u8 field_0xe; + u8 field_0xf; + u8 field_0x10; + u8 field_0x11; + u8 field_0x12; +}; + +class dAttLook_c { +public: + /* 80073CA4 */ void convPId(unsigned int); + /* 80073CD4 */ void init(); + /* 80073CEC */ void proc(); + /* 80073D08 */ void request(fopAc_ac_c*, f32, f32, f32, s16, int); + +private: + u32 field_0x0; + u32 field_0x4; + float field_0x8; +}; + +#pragma pack(push, 1) +class dAttList_c { +public: + /* 800304D0 */ ~dAttList_c(); + /* 8003050C */ dAttList_c(); + /* 80073864 */ void getActor(); + /* 80073898 */ void setActor(fopAc_ac_c*); + +private: + u8 field_0x0[8]; + cSAngle angle; + u8 field_0xa[10]; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class dAttDraw_c { +public: + /* 8003054C */ ~dAttDraw_c(); + /* 800307F0 */ dAttDraw_c(); + /* 80072DD8 */ void setAnm(u8, f32); + /* 80072FE8 */ void setAlphaAnm(u8, u8); + /* 80073004 */ void alphaAnm(); + /* 800732B0 */ void draw(cXyz&, f32 (*)[4]); + + u8 field_0x0; + u8 field_0x1; + u8 field_0x2; + u8 field_0x3; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + /* 0x008 */ mDoExt_bckAnm bckAnm[2]; + /* 0x040 */ mDoExt_bpkAnm bpkAnm[2]; + /* 0x070 */ mDoExt_brkAnm brkAnm[2]; + /* 0x0A0 */ mDoExt_brkAnm brkAnm2[2]; + /* 0x0D0 */ mDoExt_btkAnm btkAnm[2]; + /* 0x100 */ mDoExt_bckAnm bckAnm2; + /* 0x11C */ mDoExt_bpkAnm bpkAnm2; + /* 0x134 */ mDoExt_brkAnm brkAnm3; + /* 0x14C */ mDoExt_btkAnm btkAnm2; + /* 0x164 */ u8 field_0x164[0xC]; + /* 0x170 */ u8 field_0x170; + /* 0x171 */ u8 field_0x171; + /* 0x172 */ u8 field_0x172; + /* 0x173 */ u8 field_0x173; + /* 0x174 */ u8 field_0x174; + /* 0x175 */ u8 field_0x175; +}; +#pragma pack(pop) + +class dAttDraw_CallBack_c { +public: + /* 80070178 */ void execute(u16, J3DTransformInfo*); + + mDoExt_McaMorfCallBack1_c mDoExt_McaMorfCallback; +}; + +class dAttention_c { +public: + /* 80070198 */ dAttention_c(fopAc_ac_c*, u32); + /* 80070774 */ ~dAttention_c(); + /* 80070844 */ void GetLockonList(s32); + /* 80070880 */ void getActionBtnB(); + /* 80070974 */ void getActionBtnXY(); + /* 80070A70 */ void chkAttMask(u32, u32); + /* 80070E90 */ void calcWeight(int, fopAc_ac_c*, f32, s16, s16, u32*); + /* 800710C0 */ void setList(int, fopAc_ac_c*, f32, f32, cSAngle, u32); + /* 80071240 */ void initList(u32); + /* 800713CC */ void makeList(); + /* 80071424 */ void setOwnerAttentionPos(); + /* 80071488 */ void SelectAttention(fopAc_ac_c*); + /* 800716B8 */ void sortList(); + /* 800718A4 */ void stockAttention(); + /* 80071960 */ void nextAttention(); + /* 80071A68 */ void freeAttention(); + /* 80071A98 */ void chaseAttention(); + /* 80071CC0 */ void EnemyDistance(fopAc_ac_c*); + /* 80071DEC */ void runSoundProc(); + /* 80071E84 */ void runDrawProc(); + /* 800720F4 */ void runDebugDisp(); + /* 800720F8 */ void checkButton(); + /* 800722A0 */ void triggerProc(); + /* 800722EC */ void lostCheck(); + /* 80072344 */ void judgementStatus4Hold(); + /* 800725F0 */ void judgementStatus4Switch(); + /* 80072924 */ void Run(); + /* 80072BD4 */ void Draw(); + /* 80072D80 */ void lockSoundStart(u32); + /* 8007353C */ void LockonTarget(s32); + /* 800735DC */ void LockonReleaseDistanse(); + /* 800736CC */ void LockonTargetPId(s32); + /* 80073734 */ void ActionTarget(s32); + /* 8007378C */ void CheckObjectTarget(s32); + /* 800737E4 */ void LockonTruth(); + /* 80073838 */ void checkDistance(cXyz*, s16, cXyz*, f32, f32, f32, f32); + + static u8 loc_type_tbl[12]; + static u8 act_type_tbl[20]; + static u8 dist_table[6552]; + static u32 loc_type_num; + static u32 act_type_num; + static u32 chk_type_tbl; + static u32 chk_type_num; + +private: + u8 field_0x0[4]; + u32 field_0x4; + dAttDraw_CallBack_c dattdraw_callback; + u32 field_0xc; + u32 field_0x10; + u8 field_0x14[8]; + cXyz field_0x1c; + /* 0x028 */ dAttDraw_c attention_draw[2]; + int field_0x318; + cXyz field_0x31c; + u8 field_0x328[12]; + u32 field_0x334; + /* 0x0338 */ dAttList_c attention_list1[8]; + int* field_0x3d8; + int* field_0x3dc; + /* 0x03E0 */ dAttList_c attention_list2[4]; + int* field_0x430; + int field_0x434; + /* 0x0438 */ dAttList_c attention_list3[4]; + int* field_0x488; + int field_0x48c; + dAttHint_c attention_hint; + dAttCatch_c attention_catch; + u8 field_0x4b0[4]; + dAttLook_c attention_look; + u8 field_0x4c0; + u8 field_0x4c1; + u8 field_0x4c2; + u8 field_0x4c3; + int* field_0x4c4; + u8 field_0x4c8; + u8 field_0x4c9; + u8 field_0x4ca; + u8 field_0x4cb; + u8 field_0x4cc; + u8 field_0x4cd; + u8 field_0x4ce; + u8 field_0x4cf; + /* 0x04D0 */ dAttParam_c attention_param; + u8 field_0x4e3; + u8 field_0x4e4; + u8 field_0x4e5; + int* field_0x4e6; + u8 field_0x4ea; + u8 field_0x4eb; + u8 field_0x4ec; + u8 field_0x4ed; + u8 field_0x4ee; + u8 field_0x4ef; + u8 field_0x4f0[0x18]; + /* 0x0508 */ void* vtable; +}; #endif /* D_D_ATTENTION_H */ diff --git a/include/d/d_stage.h b/include/d/d_stage.h index ba38abe7d1b..cdf860e9973 100644 --- a/include/d/d_stage.h +++ b/include/d/d_stage.h @@ -1,6 +1,441 @@ #ifndef D_D_STAGE_H #define D_D_STAGE_H +#include "d/save/d_save.h" #include "dolphin/types.h" +#include "f_op/f_op_actor.h" + +struct stage_vrboxcol_info_class {}; + +struct stage_vrbox_info_class {}; + +struct stage_tresure_class {}; + +struct stage_tgsc_data_class { + /* 8002847C */ ~stage_tgsc_data_class(); + /* 800284B8 */ stage_tgsc_data_class(); +}; + +struct stage_tgsc_class {}; + +struct stage_stag_info_class {}; + +struct stage_scls_info_dummy_class {}; + +struct stage_pure_lightvec_info_class {}; + +struct stage_pselect_info_class {}; + +struct stage_plight_info_class {}; + +struct stage_palette_info_class {}; + +struct stage_map_info_dummy_class {}; + +struct stage_map_info_class {}; + +struct stage_envr_info_class {}; + +struct stage_camera_class {}; + +struct stage_camera2_data_class {}; + +struct stage_arrow_class {}; + +struct stage_actor_data_class {}; + +struct stage_actor_class {}; + +struct roomRead_class {}; + +struct dStage_FileList2_dt_c {}; + +struct dStage_MemoryMap_c {}; + +struct dStage_dPath_c {}; + +struct dStage_Multi_c {}; + +struct dStage_SoundInfo_c {}; + +struct dStage_FileList_dt_c {}; + +struct dStage_dPnt_c {}; + +struct dStage_FloorInfo_c {}; + +struct dStage_Lbnk_c {}; + +struct dStage_Elst_c {}; + +struct dStage_MemoryConfig_c {}; + +struct dStage_DMap_c {}; + +struct dStage_MapEventInfo_c {}; + +class dStage_stageDt_c { +public: + stage_camera_class* getCamera(void) const; + stage_arrow_class* getArrow(void) const; + stage_actor_class* getPlayer(void) const; + roomRead_class* getRoom(void) const; + stage_map_info_class* getMapInfo(void) const; + stage_map_info_dummy_class* getMapInfoBase(void) const; + stage_palette_info_class* getPaletteInfo(void) const; + stage_pselect_info_class* getPselectInfo(void) const; + stage_envr_info_class* getEnvrInfo(void) const; + stage_vrbox_info_class* getVrboxInfo(void) const; + stage_vrboxcol_info_class* getVrboxcolInfo(void) const; + dStage_FileList2_dt_c* getFileList2Info(void) const; + dStage_FileList_dt_c* getFileListInfo(void) const; + stage_plight_info_class* getPlightInfo(void) const; + dStage_MapEventInfo_c* getMapEventInfo(void) const; + int getPaletteNumInfo(void) const; + int getPselectNumInfo(void) const; + int getEnvrNumInfo(void) const; + int getVrboxNumInfo(void) const; + int getVrboxcolNumInfo(void) const; + int getPlightNumInfo(void) const; + u16 getPlayerNum(void) const; + int getMapInfo2(int) const; + stage_stag_info_class* getStagInfo(void) const; + stage_scls_info_dummy_class* getSclsInfo(void) const; + dStage_Lbnk_c* getLbnk(void) const; + dStage_dPnt_c* getPntInf(void) const; + dStage_dPath_c* getPathInf(void) const; + dStage_dPnt_c* getPnt2Inf(void) const; + dStage_dPath_c* getPath2Inf(void) const; + dStage_SoundInfo_c* getSoundInf(void) const; + dStage_SoundInfo_c* getSoundInfCL(void) const; + dStage_FloorInfo_c* getFloorInfo(void) const; + dStage_MemoryConfig_c* getMemoryConfig(void) const; + dStage_MemoryMap_c* getMemoryMap(void) const; + dStage_Multi_c* getMulti(void) const; + dStage_Multi_c* getOldMulti(void) const; + stage_tresure_class* getTresure(void) const; + dStage_DMap_c* getDMap(void) const; + stage_tgsc_class* getDrTg(void) const; + stage_tgsc_class* getDoor(void) const; + dStage_Elst_c* getElst(void); + stage_pure_lightvec_info_class* getLightVecInfo(void) const; + int getLightVecInfoNum(void) const; + int getMapPath(void); + + void init(void); + void resetOldMulti(void); + + void setCamera(stage_camera_class*); + void setArrow(stage_arrow_class*); + void setPlayer(stage_actor_class*); + void setRoom(roomRead_class*); + void setMapInfo(stage_map_info_class*); + void setMapInfoBase(stage_map_info_dummy_class*); + void setPaletteInfo(stage_palette_info_class*); + void setPselectInfo(stage_pselect_info_class*); + void setEnvrInfo(stage_envr_info_class*); + void setVrboxInfo(stage_vrbox_info_class*); + void setVrboxcolInfo(stage_vrboxcol_info_class*); + void setFileList2Info(dStage_FileList2_dt_c*); + void setFileListInfo(dStage_FileList_dt_c*); + void setPlightInfo(stage_plight_info_class*); + void setMapEventInfo(dStage_MapEventInfo_c*); + void setPaletteNumInfo(int); + void setPselectNumInfo(int); + void setEnvrNumInfo(int); + void setVrboxNumInfo(int); + void setVrboxcolNumInfo(int); + void setPlightNumInfo(int); + void setPlayerNum(u16); + void setStagInfo(stage_stag_info_class*); + void setSclsInfo(stage_scls_info_dummy_class*); + void setLbnk(dStage_Lbnk_c*); + void setPntInfo(dStage_dPnt_c*); + void setPathInfo(dStage_dPath_c*); + void setPnt2Info(dStage_dPnt_c*); + void setPath2Info(dStage_dPath_c*); + void setSoundInf(dStage_SoundInfo_c*); + void setSoundInfCL(dStage_SoundInfo_c*); + void setFloorInfo(dStage_FloorInfo_c*); + void setMemoryConfig(dStage_MemoryConfig_c*); + void setMemoryMap(dStage_MemoryMap_c*); + void setMulti(dStage_Multi_c*); + void setOldMulti(void); + void setTreasure(stage_tresure_class*); + void setDMap(dStage_DMap_c*); + void setDrTg(stage_tgsc_class*); + void setDoor(stage_tgsc_class*); + void setElst(dStage_Elst_c*); + void setLightVecInfo(stage_pure_lightvec_info_class*); + void setLightVecInfoNum(int); + void setTresure(stage_tresure_class*); + void setMapPath(void*); + +private: + u8 field_0x0[0x8]; + stage_camera_class* mCamera; + stage_arrow_class* mArrow; + stage_actor_class* mPlayer; + roomRead_class* mRoom; + stage_map_info_class* mMapInfo; + stage_map_info_dummy_class* mMapInfoBase; + stage_palette_info_class* mPaletteInfo; + stage_pselect_info_class* mPselectInfo; + stage_envr_info_class* mEnvrInfo; + stage_vrbox_info_class* mVrboxInfo; + stage_vrboxcol_info_class* mVrboxcolInfo; + stage_plight_info_class* mPlightInfo; + dStage_MapEventInfo_c* mMapEventInfo; + u32 mPaletteNumInfo; + u32 mPselectNumInfo; + u32 mEnvrNumInfo; + u32 mVrboxNumInfo; + int mVrboxcolNumInfo; + u32 mPlightNumInfo; + u16 mPlayerNum; + u16 field_0x56; + u16 field_0x58; + u16 field_0x5a; + stage_stag_info_class* mStagInfo; + stage_scls_info_dummy_class* mSclsInfo; + dStage_dPnt_c* mPntInfo; + dStage_dPath_c* mPathInfo; + dStage_dPnt_c* mPnt2Inf; + dStage_dPath_c* mPath2Info; + dStage_SoundInfo_c* mSoundInf; + dStage_SoundInfo_c* mSoundInfCL; + dStage_FloorInfo_c* mFloorInfo; + dStage_MemoryConfig_c* mMemoryConfig; + dStage_MemoryMap_c* mMemoryMap; + dStage_Multi_c* mMulti; + dStage_Multi_c* mOldMulti; + stage_tresure_class* mTreasure; + dStage_DMap_c* mDMap; + stage_tgsc_class* mDrTg; + stage_tgsc_class* mDoor; + dStage_Elst_c* mElst; +}; + +class dStage_roomDt_c { +public: + stage_pure_lightvec_info_class* getLightVecInfo(void) const; + int getLightVecInfoNum(void) const; + stage_map_info_class* getMapInfo(void) const; + stage_map_info_dummy_class* getMapInfoBase(void) const; + int getMapPath(void); + stage_vrbox_info_class* getVrboxInfo(void) const; + stage_vrboxcol_info_class* getVrboxcolInfo(void) const; + dStage_FileList2_dt_c* getFileList2Info(void) const; + dStage_FileList_dt_c* getFileListInfo(void) const; + stage_actor_class* getPlayer(void) const; + dStage_dPnt_c* getPnt2Inf(void) const; + dStage_dPath_c* getPath2Inf(void) const; + stage_camera_class* getCamera(void) const; + stage_arrow_class* getArrow(void) const; + dStage_MapEventInfo_c* getMapEventInfo(void) const; + dStage_SoundInfo_c* getSoundInf(void) const; + dStage_SoundInfo_c* getSoundInfCL(void) const; + stage_scls_info_dummy_class* getSclsInfo(void) const; + dStage_Lbnk_c* getLbnk(void) const; + stage_tresure_class* getTresure(void) const; + stage_tgsc_class* getDrTg(void) const; + stage_tgsc_class* getDoor(void) const; + dStage_FloorInfo_c* getFloorInfo(void) const; + u16 getPlayerNum(void) const; + int getEnvrNumInfo(void) const; + int getVrboxNumInfo(void) const; + int getVrboxcolNumInfo(void) const; + int getMapInfo2(int) const; + int getPlightNumInfo(void) const; + stage_stag_info_class* getStagInfo(void) const; + dStage_dPnt_c* getPntInf(void) const; + dStage_dPath_c* getPathInf(void) const; + dStage_MemoryConfig_c* getMemoryConfig(void) const; + dStage_MemoryMap_c* getMemoryMap(void) const; + dStage_Multi_c* getMulti(void) const; + dStage_Multi_c* getOldMulti(void) const; + dStage_DMap_c* getDMap(void) const; + dStage_Elst_c* getElst(void); + roomRead_class* getRoom(void) const; + stage_palette_info_class* getPaletteInfo(void) const; + stage_pselect_info_class* getPselectInfo(void) const; + stage_envr_info_class* getEnvrInfo(void) const; + stage_plight_info_class* getPlightInfo(void) const; + int getPaletteNumInfo(void) const; + int getPselectNumInfo(void) const; + + void initFileList2(void); + void init(void); + + void setLightVecInfo(stage_pure_lightvec_info_class*); + void setLightVecInfoNum(int); + void setMapInfo(stage_map_info_class*); + void setMapInfoBase(stage_map_info_dummy_class*); + void setVrboxInfo(stage_vrbox_info_class*); + void setVrboxcolInfo(stage_vrboxcol_info_class*); + void setFileList2Info(dStage_FileList2_dt_c*); + void setFileListInfo(dStage_FileList_dt_c*); + void setPlayer(stage_actor_class*); + void setPnt2Inf(dStage_dPnt_c*); + void setPath2Info(dStage_dPath_c*); + void setCamera(stage_camera_class*); + void setArrow(stage_arrow_class*); + void setMapEventInfo(dStage_MapEventInfo_c*); + void setSoundInf(dStage_SoundInfo_c*); + void setSoundInfCL(dStage_SoundInfo_c*); + void setSclsInfo(stage_scls_info_dummy_class*); + void setLbnk(dStage_Lbnk_c*); + void setTreasure(stage_tresure_class*); + void setDrTg(stage_tgsc_class*); + void setDoor(stage_tgsc_class*); + void setFloorInfo(dStage_FloorInfo_c*); + void setPlayerNum(u16); + void setVrboxNumInfo(int); + void setVrboxcolNumInfo(int); + void setStagInfo(stage_stag_info_class*); + void setPntInfo(dStage_dPnt_c*); + void setPathInfo(dStage_dPath_c*); + void setPnt2Info(dStage_dPnt_c*); + void setPlightNumInfo(int); + void setMemoryConfig(dStage_MemoryConfig_c*); + void setMemoryMap(dStage_MemoryMap_c*); + void setMulti(dStage_Multi_c*); + void setOldMulti(void); + void resetOldMulti(void); + void setTresure(stage_tresure_class*); + void setDMap(dStage_DMap_c*); + void setMapPath(void*); + void setElst(dStage_Elst_c*); + void setRoom(roomRead_class*); + void setPaletteInfo(stage_palette_info_class*); + void setPselectInfo(stage_pselect_info_class*); + void setEnvrInfo(stage_envr_info_class*); + void setPlightInfo(stage_plight_info_class*); + void setPaletteNumInfo(int); + void setPselectNumInfo(int); + void setEnvrNumInfo(int); + +private: + u8 field_0x0[0x8]; + stage_pure_lightvec_info_class* mLightVecInfo; + int mLightVecInfoNum; + stage_map_info_class* mMapInfo; + stage_map_info_dummy_class* mMapInfoBase; + stage_vrbox_info_class* mVrboxInfo; + stage_vrboxcol_info_class* mVrboxcolInfo; + dStage_FileList2_dt_c* mFileList2Info; + dStage_FileList_dt_c* mFileListInfo; + stage_actor_class* mPlayer; + dStage_dPnt_c* mPnt2Info; + dStage_dPath_c* mPath2Info; + stage_camera_class* mCamera; + stage_arrow_class* mArrow; + dStage_MapEventInfo_c* mMapEventInfo; + dStage_SoundInfo_c* mSoundInf; + dStage_SoundInfo_c* mSoundInfCL; + stage_scls_info_dummy_class* mSclsInfo; + dStage_Lbnk_c* mLbnk; + stage_tresure_class* mTreasure; + stage_tgsc_class* mDrTg; + stage_tgsc_class* mDoor; + dStage_FloorInfo_c* mFloorInfo; + u16 mPlayerNum; + u16 field_0x62; + int mVrboxNumInfo; + int mVrboxcolNumInfo; +}; // Size: 0x6C + +#pragma pack(push, 1) +class dStage_roomControl_c { +public: + struct roomDzs_c { + /* 80024A34 */ void create(u8); + /* 80024ABC */ void remove(); + /* 80024B44 */ void add(u8, u8); + }; + + void init(void); + static int getZoneNo(int room); + /* 80024338 */ void initZone(); + /* 80024384 */ void getStatusRoomDt(int); + /* 800243B0 */ void getMemoryBlock(int); + /* 800243E8 */ void setStayNo(int); + /* 80024424 */ void setNextStayNo(int); + /* 800244E8 */ void checkRoomDisp(int) const; + /* 8002451C */ void loadRoom(int, u8*, bool); + /* 8002471C */ void zoneCountCheck(int) const; + /* 80024844 */ void createMemoryBlock(int, u32); + /* 800248A8 */ void destroyMemoryBlock(); + /* 8002490C */ void setArcBank(int, char const*); + /* 80024940 */ void getArcBank(int); + /* 80024954 */ void resetArchiveBank(int); + /* 80024DB0 */ void SetTimePass(int); + + static u8 mMemoryBlock[76]; + static u8 mArcBank[320]; + static u8 mStatus[65792]; + static u8 mDemoArcName[10 + 2 /* padding */]; + static u8 mProcID[4]; + static u8 mArcBankName[4]; + static u8 mArcBankData[4]; + static u8 m_roomDzs[8]; + +private: + u8 field_0x0[164]; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class dStage_nextStage_c { +public: + void set(const char*, s8, s16, s8, s8, u8); + +private: + char mStage[8]; + s16 mPoint; + u8 mRoomNo; + u8 mLayer; + u8 field_0xc; + u8 field_0xd; + s8 enabled; + u8 wipe; + u8 wipe_speed; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class dStage_startStage_c { +public: + void set(const char*, s8, s16, s8); + inline char* getName() { return mStage; } + +private: + /* 0x0 */ char mStage[8]; + /* 0x8 */ s16 mPoint; + /* 0xA */ s8 mRoomNo; + /* 0xB */ s8 mLayer; + /* 0xC */ s8 mDarkArea; +}; +#pragma pack(pop) + +class dStage_roomStatus_c : dStage_roomDt_c { +private: + /* 0x06C */ u8 mJ3DLightInfo[0xA0 - 0x6C]; + /* 0x0A0 */ u8 unk_A0[0x3F7 - 0xA0]; + /* 0x3F7 */ s8 mZoneNo; + /* 0x3F8 */ u8 unk_3F8[0x404 - 0x3F8]; + +public: + int getZoneNo() const { return mZoneNo; } + /* 80028360 */ ~dStage_roomStatus_c(); + /* 8002839C */ dStage_roomStatus_c(); +}; // Size: 0x404 + +// unknown name +struct objectNameInfo { + char mName[8]; + s16 mProcTypeID; + s8 unkA; +}; // Size: 0xC #endif /* D_D_STAGE_H */ diff --git a/include/d/event/d_event.h b/include/d/event/d_event.h index 530080ff299..e42af8ecebc 100644 --- a/include/d/event/d_event.h +++ b/include/d/event/d_event.h @@ -1,6 +1,301 @@ #ifndef D_EVENT_D_EVENT_H #define D_EVENT_D_EVENT_H +#include "d/a/d_a_itembase.h" +#include "d/a/d_a_player.h" +#include "d/d_stage.h" +#include "d/save/d_save.h" #include "dolphin/types.h" +#pragma pack(push, 1) +class dEvt_order_c { +public: + /* 80030154 */ ~dEvt_order_c(); + /* 800415D4 */ dEvt_order_c(); + +private: + u8 field_0x0; + u8 field_0x1; + u8 field_0x2; + u8 field_0x3; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + u8 field_0x8; + u8 field_0x9; + u8 field_0xa; + u8 field_0xb; + u8 field_0xc; + u8 field_0xd; + u8 field_0xe; + u8 field_0xf; + u8 field_0x10; + u8 field_0x11; + u8 field_0x12; + u8 field_0x13; + u8 field_0x14; + u8 field_0x15; + u8 field_0x16; + u8 field_0x17; + u8 field_0x18; + u8 field_0x19; + u8 field_0x1a; + u8 field_0x1b; + u8 field_0x1c; + u8 field_0x1d; + u8 field_0x1e; + u8 field_0x1f; + u8 field_0x20; + u8 field_0x21; + u8 field_0x22; + u8 field_0x23; + u8 field_0x24; + u8 field_0x25; + u8 field_0x26; + u8 field_0x27; + u8 field_0x28; + u8 field_0x29; + u8 field_0x2a; + u8 field_0x2b; + u8 field_0x2c; + u8 field_0x2d; + u8 field_0x2e; + u8 field_0x2f; + u8 field_0x30; + u8 field_0x31; + u8 field_0x32; + u8 field_0x33; + u8 field_0x34; + u8 field_0x35; + u8 field_0x36; + u8 field_0x37; + u8 field_0x38; + u8 field_0x39; + u8 field_0x3a; + u8 field_0x3b; + u8 field_0x3c; + u8 field_0x3d; + u8 field_0x3e; + u8 field_0x3f; + u8 field_0x40; + u8 field_0x41; + u8 field_0x42; + u8 field_0x43; + u8 field_0x44; + u8 field_0x45; + u8 field_0x46; + u8 field_0x47; + u8 field_0x48; + u8 field_0x49; + u8 field_0x4a; + u8 field_0x4b; + u8 field_0x4c; + u8 field_0x4d; + u8 field_0x4e; + u8 field_0x4f; + u8 field_0x50; + u8 field_0x51; + u8 field_0x52; + u8 field_0x53; + u8 field_0x54; + u8 field_0x55; + u8 field_0x56; + u8 field_0x57; + u8 field_0x58; + u8 field_0x59; + u8 field_0x5a; + u8 field_0x5b; + u8 field_0x5c; + u8 field_0x5d; + u8 field_0x5e; + u8 field_0x5f; + u8 field_0x60; + u8 field_0x61; + u8 field_0x62; + u8 field_0x63; + u8 field_0x64; + u8 field_0x65; + u8 field_0x66; + u8 field_0x67; + u8 field_0x68; + u8 field_0x69; + u8 field_0x6a; + u8 field_0x6b; + u8 field_0x6c; + u8 field_0x6d; + u8 field_0x6e; + u8 field_0x6f; + u8 field_0x70; + u8 field_0x71; + u8 field_0x72; + u8 field_0x73; + u8 field_0x74; + u8 field_0x75; + u8 field_0x76; + u8 field_0x77; + u8 field_0x78; + u8 field_0x79; + u8 field_0x7a; + u8 field_0x7b; + u8 field_0x7c; + u8 field_0x7d; + u8 field_0x7e; + u8 field_0x7f; + u8 field_0x80; + u8 field_0x81; + u8 field_0x82; + u8 field_0x83; + u8 field_0x84; + u8 field_0x85; + u8 field_0x86; + u8 field_0x87; + u8 field_0x88; + u8 field_0x89; + u8 field_0x8a; + u8 field_0x8b; + u8 field_0x8c; + u8 field_0x8d; + u8 field_0x8e; + u8 field_0x8f; + u8 field_0x90; + u8 field_0x91; + u8 field_0x92; + u8 field_0x93; + u8 field_0x94; + u8 field_0x95; + u8 field_0x96; + u8 field_0x97; + u8 field_0x98; + u8 field_0x99; + u8 field_0x9a; + u8 field_0x9b; + u8 field_0x9c; + u8 field_0x9d; + u8 field_0x9e; + u8 field_0x9f; + u8 field_0xa0; + u8 field_0xa1; + u8 field_0xa2; + u8 field_0xa3; + u8 field_0xa4; + u8 field_0xa5; + u8 field_0xa6; + u8 field_0xa7; + u8 field_0xa8; + u8 field_0xa9; + u8 field_0xaa; + u8 field_0xab; + u8 field_0xac; + u8 field_0xad; + u8 field_0xae; + u8 field_0xaf; + u8 field_0xb0; + u8 field_0xb1; + u8 field_0xb2; + u8 field_0xb3; + u8 field_0xb4; + u8 field_0xb5; + u8 field_0xb6; + u8 field_0xb7; + u8 field_0xb8; + u8 field_0xb9; + u8 field_0xba; + u8 field_0xbb; + u8 field_0xbc; + u8 field_0xbd; + u8 field_0xbe; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class dEvt_control_c { +public: + /* 80041580 */ dEvt_control_c(); + /* 800415D8 */ void orderOld(u16, u16, u16, u16, void*, void*, void const*); + /* 80041668 */ void order(u16, u16, u16, u16, void*, void*, s16, u8); + /* 80041804 */ void setParam(dEvt_order_c*); + /* 80041934 */ void beforeFlagProc(dEvt_order_c*); + /* 80041964 */ void afterFlagProc(dEvt_order_c*); + /* 800419A8 */ void commonCheck(dEvt_order_c*, u16, u16); + /* 80041A20 */ void talkCheck(dEvt_order_c*); + /* 80041B58 */ void talkXyCheck(dEvt_order_c*); + /* 80041C90 */ void catchCheck(dEvt_order_c*); + /* 80041D34 */ void talkEnd(); + /* 80041DDC */ void demoCheck(dEvt_order_c*); + /* 80041F18 */ void demoEnd(); + /* 80041FA0 */ void potentialCheck(dEvt_order_c*); + /* 80042014 */ void doorCheck(dEvt_order_c*); + /* 8004212C */ void itemCheck(dEvt_order_c*); + /* 800421C0 */ void endProc(); + /* 80042254 */ void change(); + /* 800422C0 */ void entry(); + /* 80042518 */ void reset(void*); + /* 80042468 */ void reset(); + /* 800425B4 */ void clearSkipSystem(); + /* 8004290C */ void getSkipEventName(); + /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); + /* 80042958 */ void setSkipZev(void*, char*); + /* 800429A8 */ void onSkipFade(); + /* 800429B4 */ void offSkipFade(); + /* 800429D4 */ void skipper(); + /* 80042BBC */ void Step(); + /* 80042FA8 */ void moveApproval(void*); + /* 8004316C */ void compulsory(void*, char const*, u16); + /* 800431E8 */ void remove(); + /* 80043278 */ void getStageEventDt(); + /* 80043280 */ void sceneChange(int); + /* 800432C8 */ void getPId(void*); + /* 800432EC */ void convPId(unsigned int); + /* 8004331C */ void getStbDemoData(char*); + /* 80043500 */ void searchMapEventData(u8, s32); + /* 800434D8 */ void searchMapEventData(u8); + /* 8004360C */ void runningEventID(s16); + /* 8004362C */ void setPt1(void*); + /* 8004365C */ void setPt2(void*); + /* 8004368C */ void setPtT(void*); + /* 800436BC */ void setPtI(void*); + /* 800436EC */ void setPtI_Id(unsigned int); + /* 800436F4 */ void setPtD(void*); + /* 80043724 */ void setGtItm(u8); + +private: + /* 0x000 */ u8 field_0x0[4]; + /* 0x004 */ dEvt_order_c event_order; + /* 0x0C4 */ int mPt1; + /* 0x0C8 */ int mPt2; + /* 0x0CC */ int mPtT; + /* 0x0D0 */ int mPtI; + /* 0x0D4 */ int mPtd; + /* 0x0D8 */ u16 mEventFlag; + /* 0x0DA */ u16 mFlag2; + /* 0x0DC */ u16 mHindFlag; + /* 0x0DE */ u16 field_0xde; + /* 0x0E0 */ u16 field_0xe0; + /* 0x0E2 */ u8 field_0xe2; + /* 0x0E3 */ u8 field_0xe3; + /* 0x0E4 */ u8 mMode; + /* 0x0E5 */ u8 field_0xe5; + /* 0x0E6 */ u8 field_0xe6; + /* 0x0E7 */ u8 field_0xe7; + /* 0x0E8 */ u8 field_0xe8; + /* 0x0E9 */ u8 mDebugStb; + /* 0x0EA */ u8 field_0xea; + /* 0x0EB */ u8 mMapToolId; + /* 0x0EC */ u8 field_0xec; + /* 0x0ED */ u8 field_0xed; + /* 0x0EE */ u8 mPreItemNo; + /* 0x0EF */ u8 mGtItm; + /* 0x0F0 */ float mCullRate; + /* 0x0F4 */ int mStageEventDt; + /* 0x0F8 */ int mChangeOK; + /* 0x0FC */ u8 field_0xfc[20]; + /* 0x110 */ bool mSkipFade; + /* 0x114 */ char mSkipEventName[0x14]; + /* 0x128 */ u8 mCompulsory; + /* 0x129 */ u8 field_0x129; + /* 0x12C */ int field_0x12c; +}; +#pragma pack(pop) + #endif /* D_EVENT_D_EVENT_H */ diff --git a/include/d/event/d_event_data.h b/include/d/event/d_event_data.h index 67d70995c20..71383da85f8 100644 --- a/include/d/event/d_event_data.h +++ b/include/d/event/d_event_data.h @@ -1,6 +1,62 @@ #ifndef D_EVENT_D_EVENT_DATA_H #define D_EVENT_D_EVENT_DATA_H +#include "d/d_stage.h" +#include "d/save/d_save.h" #include "dolphin/types.h" +struct dEvDtStaff_c { + /* 80043FD8 */ void specialProc_WaitStart(int); + /* 8004403C */ void specialProc_WaitProc(int); + /* 80044080 */ void specialProc(); + /* 80044134 */ void init(); + /* 80044170 */ void advanceCut(int); + /* 80044190 */ void specialProcLight(); + /* 80044324 */ void specialProcMessage(); + /* 80044A58 */ void specialProcSound(); + /* 80044CB8 */ void specialProcCreate(); + /* 80044EE4 */ void specialProcDirector(); + /* 80045878 */ void specialProcPackage(); + /* 80045AFC */ void specialProcTimekeeper(); + /* 80045C34 */ void specialProcEffect(); +}; + +struct dEvDtEvent_c { + /* 80043E78 */ void finishCheck(); + /* 80043EFC */ void forceFinish(); + /* 80043F70 */ void specialStaffProc(dEvDtStaff_c*); +}; + +class dEvDtFlag_c { +public: + /* 80043D60 */ void flagCheck(int); + /* 80043DC8 */ void flagSet(int); + /* 80043E30 */ void flagMaxCheck(int); + /* 80043E58 */ void init(); + +private: + u8 field_0x0[320]; +}; +#pragma pack(push, 1) +class dEvDtBase_c { +public: + dEvDtBase_c(); + /* 80046138 */ void init(); + /* 8004616C */ void init(char*, int); + /* 8004628C */ void advanceCut(dEvDtEvent_c*); + /* 800462FC */ void advanceCutLocal(dEvDtStaff_c*); + +private: + u32 field_0x0; + u32 field_0x4; + u32 field_0x8; + u32 field_0xc; + u32 field_0x10; + u32 field_0x14; + u32 field_0x18; + u32 field_0x1c; + u32 field_0x20; +}; +#pragma pack(pop) + #endif /* D_EVENT_D_EVENT_DATA_H */ diff --git a/include/d/event/d_event_manager.h b/include/d/event/d_event_manager.h index db13164478a..e9d571a8190 100644 --- a/include/d/event/d_event_manager.h +++ b/include/d/event/d_event_manager.h @@ -1,6 +1,90 @@ #ifndef D_EVENT_D_EVENT_MANAGER_H #define D_EVENT_D_EVENT_MANAGER_H +#include "d/event/d_event_data.h" #include "dolphin/types.h" +struct dEvDtData_c {}; + +#pragma pack(push, 1) +class dEvent_exception_c { +public: + /* 800463DC */ void init(); + /* 800463F0 */ void setStartDemo(int); + /* 80046480 */ void getEventName(); + +private: + u32 field_0x0; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + u32 field_0x8; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +struct dEvent_manager_c { + /* 800465E8 */ void getSubstance(dEvDtData_c*, int); + /* 80046688 */ dEvent_manager_c(); + /* 80046710 */ void create(); + /* 80046800 */ void setObjectArchive(char*); + /* 80046888 */ void demoInit(); + /* 80046904 */ void roomInit(int); + /* 800469EC */ void roomFinish(int); + /* 80046A58 */ void orderStartDemo(); + /* 80046C0C */ void remove(); + /* 80046CB8 */ void startProc(dEvDtEvent_c*); + /* 80046DA0 */ void closeProc(dEvDtEvent_c*); + /* 80046DAC */ void endProc(s16, int); + /* 80046E64 */ void Sequencer(); + /* 800473FC */ void Experts(); + /* 800474BC */ void getEventData(s16); + /* 80047454 */ void getEventData(s16, int); + /* 80047514 */ void getEventIdx(char const*, u8, s32); + /* 80047698 */ void getEventIdx(fopAc_ac_c*, u8); + /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); + /* 80047930 */ void isMapToolCamera(u8, s32); + /* 80047984 */ void order(s16); + /* 800479F8 */ void startCheck(s16); + /* 80047A38 */ void startCheckOld(char const*); + /* 80047A78 */ void endCheck(s16); + /* 80047ADC */ void endCheckOld(char const*); + /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); + /* 80047D4C */ void getIsAddvance(int); + /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); + /* 80047F5C */ void getMyNowCutName(int); + /* 80047FC8 */ void getMyDataP(int, char const*, int); + /* 800480EC */ void getMySubstanceP(int, char const*, int); + /* 80048144 */ void getMySubstanceNum(int, char const*); + /* 8004817C */ void cutEnd(int); + /* 800481F4 */ void getEventPrio(fopAc_ac_c*, s16); + /* 800482CC */ void issueStaff(char const*); + /* 80048348 */ void cancelStaff(char const*); + /* 800483C4 */ void setGoal(cXyz*); + /* 800483E0 */ void getGoal(); + /* 800483E8 */ void getRunEventName(); + /* 80048520 */ void specialCast_Shutter(s16, int); + /* 80048618 */ void specialCast(char const*, int); + /* 800487F0 */ void ChkPresentEnd(); + /* 8004882C */ void checkStartDemo(); + + /* 0x0000 */ dEvDtBase_c event_data_base[11]; + /* 0x018C */ u32 field_0x18c; + /* 0x0190 */ u32 field_0x190; + /* 0x0194 */ u8 field_0x194[0x8]; + /* 0x019C */ cXyz goal; + /* 0x01A8 */ u8 field_0x1A8[4]; + /* 0x01AA */ u16 field_0x1aa; + /* 0x01AC */ u8 field_0x1ac[0x8]; + /* 0x01B4 */ dEvent_exception_c event_exception; + /* 0x01C0 */ cXyz position; + /* 0x01CC */ u8 field_0x1cc[0x14]; + /* 0x01E0 */ dEvDtFlag_c event_data_flag; + /* 0x0320 */ u8 field_0x320[0x35C]; + /* 0x067C */ void* vtable; + /* 0x0680 */ u8 field_0x680[0x3C]; +}; +#pragma pack(pop) + #endif /* D_EVENT_D_EVENT_MANAGER_H */ diff --git a/include/d/meter/d_meter2_info.h b/include/d/meter/d_meter2_info.h index bd4295b3d11..485852dcbef 100644 --- a/include/d/meter/d_meter2_info.h +++ b/include/d/meter/d_meter2_info.h @@ -2,5 +2,203 @@ #define D_METER_D_METER2_INFO_H #include "dolphin/types.h" +#include "f_op/f_op_actor.h" +//#include "JSystem/JUtility/JUTFont.h" + +struct dSv_event_flag_c { + static u8 saveBitLabels[1644 + 4 /* padding */]; +}; + +struct dMsgObject_c { + /* 802384C4 */ void setLetterNameID(u16); +}; + +struct dMsgFlow_c { + /* 80249F00 */ dMsgFlow_c(); + /* 80249F48 */ ~dMsgFlow_c(); + /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); + /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); + /* 8024A538 */ void getMsgNo(); +}; + +class dMeterMap_c { +public: + /* 8020D900 */ bool isMapOpenCheck(); +}; + +struct J2DPicture {}; + +struct JMSMesgEntry_c {}; + +struct J2DTextBox { + /* 8021C7F4 */ void getFont() const; +}; + +struct JUTFont {}; + +struct dMenu_Letter { + static u8 letter_data[512]; +}; + +struct dItem_data { + static void* item_resource[1530]; +}; + +struct CPaneMgr {}; + +class dMeter2_c {}; + +class dMw_c {}; + +struct ResTIMG {}; + +struct JKRArchive { + /* 802D5B38 */ void getGlbResource(u32, char const*, JKRArchive*); + /* 802D5ECC */ void readIdxResource(void*, u32, u32); +}; + +class dMeter2Info_c { +public: + class WarpInfo_c { + public: + /* 0x00 */ char mStageName[8]; + /* 0x08 */ cXyz mPosition; + /* 0x14 */ s16 mAngle; + /* 0x16 */ u8 mRoomNo; + /* 0x17 */ u8 unk79; + /* 0x18 */ u8 mWarpPlayerNo; + }; + + dMeter2Info_c(); + virtual ~dMeter2Info_c(); + void init(void); + void setFloatingMessage(u16, s16, bool); + void setFloatingFlow(u16, s16, bool); + int isFloatingMessageVisible(void); + int decFloatingMessageTimer(void); + void resetFloatingMessage(void); + void decMsgKeyWaitTimer(void); + void getString(u32, char*, JMSMesgEntry_c*); // define JMSMesgEntry + void getStringKana(u32, char*, JMSMesgEntry_c*); + void getStringKanji(u32, char*, JMSMesgEntry_c*); + double getStringLength(J2DTextBox*, char*); // define J2DTextBox + dMeter2Info_c* getStringLength(JUTFont*, float, float, char*); + void onDirectUseItem(int); + bool isDirectUseItem(int); + int setMeterString(s32); + void resetWarpStatus(void); + void warpInProc(void); + void warpOutProc(void); + void resetMeterString(void); + void setWarpInfo(const char*, const cXyz&, s16, u8, u8, u8); + u8 getItemType(u8); + u8 readItemTexture(u8, void*, J2DPicture*, void*, J2DPicture*, void*, J2DPicture*, void*, + J2DPicture*, int); // define J2DPicture + void setItemColor(u8, J2DPicture*, J2DPicture*, J2DPicture*, J2DPicture*); + s8 get2ndTexture(u8); + s8 get3rdTexture(u8); + s8 get4thTexture(u8); + void set1stColor(u8, J2DPicture*); + void set2ndColor(u8, J2DPicture*); + void set3rdColor(u8, J2DPicture*); + void set4thColor(u8, J2DPicture*); + void setHotSpringTimer(u8); + void decHotSpringTimer(void); + void changeWater(u8); + void setMiniGameItem(u8); + void resetMiniGameItem(bool); + void setMiniGameCount(s8); + void setSaveStageName(const char*); + u8& getDirectUseItem() { return mDirectUseItem; } + dMeterMap_c* getMeterMapClass() { return mMeterMap; } + +private: + /* 0x04 */ u8 unk4[4]; + /* 0x08 */ u32 unk8; + /* 0x0C */ u32 unk12; + /* 0x10 */ void* mMsgResource; + /* 0x14 */ void* mStageMsgResource; + /* 0x18 */ void* mMsgUnitResource; + /* 0x1C */ dMeter2_c* mMeterClass; + /* 0x20 */ dMeterMap_c* mMeterMap; + /* 0x24 */ dMw_c* mMenuWindowClass; + /* 0x28 */ CPaneMgr* mMeterItemPanePtr[4]; + /* 0x38 */ WarpInfo_c mWarpInfo; + /* 0x54 */ float unk84; + /* 0x58 */ float unk88; + /* 0x5C */ float unk92; + /* 0x60 */ float unk96; + /* 0x64 */ float unk100; + /* 0x68 */ float unk104; + /* 0x6C */ float unk108; + /* 0x70 */ float m2DWidth; + /* 0x74 */ float m2DHeight; + /* 0x78 */ float m2DPosH; + /* 0x7C */ float m2DPosV; + /* 0x80 */ float unk128; + /* 0x84 */ u32 mTimeMs; + /* 0x88 */ u32 mMsgTimeMs; + /* 0x8C */ u32 mMeterString; + /* 0x90 */ u32 mTempBits; + /* 0x94 */ s16 mMsgKeyWaitTimer; + /* 0x96 */ u16 mHorseLifeCount; + /* 0x98 */ u16 unk152; + /* 0x9A */ u16 mHotSpringTimer[4]; + /* 0xA2 */ u16 mSub2DStatus; + /* 0xA4 */ u16 mFloatingFlowID; + /* 0xA6 */ u16 mFloatingMessageID; + /* 0xA8 */ s16 mFloatingMessageTimer; + /* 0xAA */ u16 mMapKeyDirection; + /* 0xAC */ u16 mBlinkButton; + /* 0xAE */ u16 mUseButton; + /* 0xB0 */ u16 mGameStatus; + /* 0xB2 */ u16 mTouchKeyCheck; + /* 0xB4 */ u16 mWindowAccept; + /* 0xB6 */ u16 mOilGaugeBackUp; + /* 0xB8 */ u8 mDirectUseItem; + /* 0xB9 */ u8 mWindowStatus; + /* 0xBA */ u8 unk186; + /* 0xBB */ u8 mMaxCount; + /* 0xBC */ u8 mNowCount; + /* 0xBD */ u8 mShopTalkFlag; + /* 0xBE */ u8 unk190; + /* 0xBF */ u8 mMapStatus; + /* 0xC0 */ u8 mWarpStatus; + /* 0xC1 */ u8 mPauseStatus; + /* 0xC2 */ u8 mGameOverType; + /* 0xC3 */ u8 mInsectSelectType; + /* 0xC4 */ u32 unk196; + /* 0xC8 */ u32 unk200; + /* 0xCC */ u8 unk204; + /* 0xCD */ u8 unk205; + /* 0xCE */ u8 unk206; + /* 0xCF */ u8 unk207; + /* 0xD0 */ f64 unk208; + /* 0xD8 */ u8 unk216; + /* 0xD9 */ u8 unk217; + /* 0xDA */ u8 unk218; + /* 0xDB */ u8 unk219; + /* 0xDC */ u8 mRentalBombBag; + /* 0xDD */ u8 mMiniGameItemSetFlag; + /* 0xDE */ u8 mMiniGameCount; + /* 0xDF */ u8 mCollectCursorPosX; + /* 0xE0 */ u8 mCollectCursorPosY; + /* 0xE1 */ u8 mTableMapRegionNo; + /* 0xE2 */ u8 mGoldWolfMapType; + /* 0xE3 */ u8 mLightDropGetFlag[3]; + /* 0xE6 */ u8 mLifeGaugeSE; + /* 0xE7 */ u8 unk231; + /* 0xE8 */ u8 mItemExplainWindowStatus; + /* 0xE9 */ char mSaveStageName[8]; + /* 0xF1 */ u8 mFloatingMessageWakuVisible; + /* 0xF2 */ u8 mMapDrugFlag; + /* 0xF3 */ u8 unk243[5]; +}; + +extern dMeter2Info_c g_meter2_info; + +inline dMeterMap_c* dMeter2Info_getMeterMapClass() { + return g_meter2_info.getMeterMapClass(); +} #endif /* D_METER_D_METER2_INFO_H */ diff --git a/include/d/save/d_save.h b/include/d/save/d_save.h index e43919d1bca..808ccba9da6 100644 --- a/include/d/save/d_save.h +++ b/include/d/save/d_save.h @@ -1,6 +1,931 @@ #ifndef D_SAVE_D_SAVE_H #define D_SAVE_D_SAVE_H +#include "SSystem/SComponent/c_xyz.h" #include "dolphin/types.h" +#define DEFAULT_SELECT_ITEM_INDEX 0 +#define MAX_SELECT_ITEM 3 +#define MAX_EVENTS 256 +#define MAX_ITEM_SLOTS 24 +#define ITEM_XY_MAX_DUMMY 8 +#define LIGHT_DROP_STAGE 4 +#define LETTER_INFO_BIT 64 +#define BOMB_BAG_MAX 3 +#define BOTTLE_MAX 4 + +enum Wallets { WALLET, BIG_WALLET, GIANT_WALLET }; + +enum ItemSlots { + SLOT_0, + SLOT_1, + SLOT_2, + SLOT_3, + SLOT_4, + SLOT_5, + SLOT_6, + SLOT_7, + SLOT_8, + SLOT_9, + SLOT_10, + SLOT_11, + SLOT_12, + SLOT_13, + SLOT_14, + SLOT_15, + SLOT_16, + SLOT_17, + SLOT_18, + SLOT_19, + SLOT_20, + SLOT_21, + SLOT_22, + SLOT_23 +}; + +enum ItemTable { + HEART, + GREEN_RUPEE, + BLUE_RUPEE, + YELLOW_RUPEE, + RED_RUPEE, + PURPLE_RUPEE, + ORANGE_RUPEE, + SILVER_RUPEE, + S_MAGIC, + L_MAGIC, + BOMB_5, + BOMB_10, + BOMB_20, + BOMB_30, + ARROW_10, + ARROW_20, + ARROW_30, + ARROW_1, + PACHINKO_SHOT, + noentry1, + noentry2, + noentry3, + WATER_BOMB_5, + WATER_BOMB_10, + WATER_BOMB_20, + WATER_BOMB_30, + BOMB_INSECT_5, + BOMB_INSECT_10, + BOMB_INSECT_20, + BOMB_INSECT_30, + RECOVERY_FAILY, + TRIPLE_HEART, + SMALL_KEY, + KAKERA_HEART, + UTAWA_HEART, + MAP, + COMPUS, + DUNGEON_EXIT, + BOSS_KEY, + DUNGEON_BACK, + SWORD, + MASTER_SWORD, + WOOD_SHIELD, + SHIELD, + HYLIA_SHIELD, + TKS_LETTER, + WEARS_CASUAL, + WEAR_KOKIRI, + ARMOR, + WEAR_ZORA, + MAGIC_LV1, + DUNGEON_EXIT_2, + WALLET_LV1, + WALLET_LV2, + WALLET_LV3, + noentry4, + noentry5, + noentry6, + noentry7, + noentry8, + noentry9, + ZORAS_JEWEL, + HAWK_EYE, + WOOD_STICK, + BOOMERANG, + SPINNER, + IRONBALL, + BOW, + HOOKSHOT, + HVY_BOOTS, + COPY_ROD, + W_HOOKSHOT, + KANTERA, + LIGHT_SWORD, + FISHING_ROD_1, + PACHINKO, + COPY_ROD_2, + noentry10, + noentry11, + BOMB_BAG_LV2, + BOMB_BAG_LV1, + BOMB_IN_BAG, + noentry12, + LIGHT_ARROW, + ARROW_LV1, + ARROW_LV2, + ARROW_LV3, + noentry13, + LURE_ROD, + BOMB_ARROW, + HAWK_ARROW, + BEE_ROD, + JEWEL_ROD, + WORM_ROD, + JEWEL_BEE_ROD, + JEWEL_WORM_ROD, + EMPTY_BOTTLE, + RED_BOTTLE, + GREEN_BOTTLE, + BLUE_BOTTLE, + MILK_BOTTLE, + HALF_MILK_BOTTLE, + OIL_BOTTLE, + WATER_BOTTLE, + OIL_BOTTLE_2, + RED_BOTTLE_2, + UGLY_SOUP, + HOT_SPRING, + FAIRY, + HOT_SPRING_2, + OIL2, + OIL, + NORMAL_BOMB, + WATER_BOMB, + POKE_BOMB, + FAIRY_DROP, + WORM, + DROP_BOTTLE, + BEE_CHILD, + CHUCHU_RARE, + CHUCHU_RED, + CHUCHU_BLUE, + CHUCHU_GREEN, + CHUCHU_YELLOW, + CHUCHU_PURPLE, + LV1_SOUP, + LV2_SOUP, + LV3_SOUP, + LETTER, + BILL, + WOOD_STATUE, + IRIAS_PENDANT, + HORSE_FLUTE, + noentry14, + noentry15, + noentry16, + noentry17, + noentry18, + noentry19, + noentry20, + noentry21, + noentry22, + noentry23, + noentry24, + RAFRELS_MEMO, + ASHS_SCRIBBLING, + noentry25, + noentry26, + noentry27, + noentry28, + noentry29, + noentry30, + noentry31, + noentry32, + noentry33, + noentry34, + CHUCHU_YELLOW2, + OIL_BOTTLE3, + SHOP_BEE_CHILD, + CHUCHU_BLACK, + LIGHT_DROP, + DROP_CONTAINER, + DROP_CONTAINER02, + DROP_CONTAINER03, + FILLED_CONTAINER, + MIRROR_PIECE_2, + MIRROR_PIECE_3, + MIRROR_PIECE_4, + noentry35, + noentry36, + noentry37, + noentry38, + noentry39, + noentry40, + noentry41, + noentry42, + SMELL_YELIA_POUCH, + SMELL_PUMPKIN, + SMELL_POH, + SMELL_FISH, + SMELL_CHILDREN, + SMELL_MEDICINE, + noentry43, + noentry44, + noentry45, + noentry46, + noentry47, + noentry48, + noentry49, + noentry50, + noentry51, + noentry52, + M_BEETLE, + F_BEETLE, + M_BUTTERFLY, + F_BUTTERFLY, + M_STAG_BEETLE, + F_STAG_BEETLE, + M_GRASSHOPPER, + F_GRASSHOPPER, + M_NANAFUSHI, + F_NANAFUSHI, + M_DANGOMUSHI, + F_DANGOMUSHI, + M_MANTIS, + F_MANTIS, + M_LADYBUG, + F_LADYBUG, + M_SNAIL, + F_SNAIL, + M_DRAGONFLY, + F_DRAGONFLY, + M_ANT, + F_ANT, + M_MAYFLY, + F_MAYFLY, + noentry53, + noentry54, + noentry55, + noentry56, + noentry57, + noentry58, + noentry59, + noentry60, + POU_SPIRIT, + noentry61, + noentry62, + noentry63, + noentry64, + noentry65, + noentry66, + noentry67, + noentry68, + ANCIENT_DOCUMENT, + AIR_LETTER, + ANCIENT_DOCUMENT2, + LV7_DUNGEON_EXIT, + LINKS_SAVINGS, + SMALL_KEY2, + POU_FIRE1, + POU_FIRE2, + POU_FIRE3, + POU_FIRE4, + BOSSRIDER_KEY, + TOMATO_PUREE, + TASTE, + LV5_BOSS_KEY, + SURFBOARD, + KANTERA2, + L2_KEY_PIECES1, + L2_KEY_PIECES2, + L2_KEY_PIECES3, + KEY_OF_CARAVAN, + LV2_BOSS_KEY, + KEY_OF_FILONE, + NO_ITEM +}; + +enum EquipmentBits { CLOTHING_BITFIELD, SWORD_BITFIELD, SHIELD_BITFIELD }; + +enum Swords { ORDON_SWORD_FLAG, MASTER_SWORD_FLAG, WOODEN_SWORD_FLAG, LIGHT_SWORD_FLAG }; + +enum Shields { ORDON_SHIELD_FLAG, HYLIAN_SHIELD_FLAG, WOODEN_SHIELD_FLAG }; + +enum Armors { KOKIRI_CLOTHES_FLAG }; + +enum DungeonItem { MAP_FLAG, COMPASS_FLAG, BOSS_KEY_FLAG, OOCCOO_NOTE_FLAG = 6 }; + +enum AreaVessel { FARON_VESSEL, ELDIN_VESSEL, LANAYRU_VESSEL }; + +class dSv_player_status_a_c { +public: + void init(void); + void setSelectItemIndex(signed int, u8); + u8 getSelectItemIndex(signed int) const; + void setMixItemIndex(signed int, u8); + u8 getMixItemIndex(signed int) const; + u16 getRupeeMax(void) const; + int isMagicFlag(u8) const; + + u16& getMaxLife() { return mMaxHealth; } + u16& getLife() { return mCurrentHealth; } + u16& getRupee() { return mCurrentRupees; } + u16& getOil() { return mCurrentLanternOil; } + u8 getSelectEquip(int item) const { return mEquipment[item]; } + void setWalletLV(u8 lv) { mCurrentWallet = lv; } + void setOil(u16 oil) { mCurrentLanternOil = oil; } + void setMaxOil(u16 max) { mMaxLanternOil = max; } + void setWalletSize(u8 size) { mCurrentWallet = size; } + void setMagic(u8 magic) { mCurrentMagic = magic; } + void setMaxMagic(u8 max) { mMaxMagic = max; } + void setRupee(u16 rupees) { mCurrentRupees = rupees; } + void setLife(u16 life) { mCurrentHealth = life; } + void setMaxLife(u8 max) { mMaxHealth = max; } + void setSelectEquip(int item_index, u8 item) { mEquipment[item_index] = item; } + +private: + u16 mMaxHealth; + u16 mCurrentHealth; + u16 mCurrentRupees; + u16 mMaxLanternOil; + u16 mCurrentLanternOil; + u8 unk10; + u8 mSelectItem[3]; + u8 mMixItem[3]; + u8 unk17; + u8 unk18; + u8 mEquipment[6]; + u8 mCurrentWallet; + u8 mMaxMagic; + u8 mCurrentMagic; + u8 mMagicFlag; + u8 unk29; + u8 unk30; + u8 unk31[3]; + u8 padding[6]; +}; + +class dSv_player_status_b_c { +public: + void init(void); + void onDarkClearLV(int); + BOOL isDarkClearLV(int) const; + void onTransformLV(int); + BOOL isTransformLV(int) const; + +private: + u32 unk0; + u32 unk4; + u8 mTransformLevelFlag; + u8 mDarkClearLevelFlag; + u8 unk10; + u8 unk11; + float mTimeOfDay; + u16 unk16; + u8 unk18[3]; + u8 padding[3]; +}; + +class dSv_horse_place_c { +public: + void init(void); + void set(const char*, const cXyz&, s16, s8); + +private: + cXyz mPosition; + u16 mXRotation; + char mCurrentStage[8]; + u8 mSpawnId; + u8 mRoomId; +}; + +class dSv_player_return_place_c { +public: + void init(void); + void set(const char*, s8, u8); + +private: + char mCurrentStage[8]; + u8 mSpawnId; + u8 mRoomId; + u8 unk10; + u8 unk11; +}; + +class dSv_player_field_last_stay_info_c { +public: + void init(void); + BOOL isRegionBit(int unk) const; + void onRegionBit(int unk); + void set(const char*, const cXyz&, s16, s8, u8); + +private: + cXyz mLastPosition; + s16 mLastAngle; + char mLastStage[8]; + u8 mLastSpawnId; + u8 mLastRoomId; + u8 unk24; + u8 mLastRegion; + u8 unk26[2]; +}; + +class dSv_player_last_mark_info_c { +public: + void init(void); + void setWarpItemData(const char*, const cXyz&, s16, s8, u8, u8); + + const char* getName(void) { return mOoccooStage; } + cXyz getPos(void) { return mOoccooPosition; } + s16 getAngleY(void) { return mOoccooXRotation; } + s8 getRoomNo(void) { return mOoccooRoomId; } + char getWarpAcceptStage(void) { return mWarpAcceptStage; } + +private: + cXyz mOoccooPosition; + s16 mOoccooXRotation; + char mOoccooStage[8]; + u8 mOoccooSpawnId; + s8 mOoccooRoomId; + char mWarpAcceptStage; + u8 unk25[3]; +}; + +class dSv_player_item_c { +public: + void init(void); + void setItem(int, u8); + u8 getItem(int, bool) const; + void setLineUpItem(void); + u8 getLineUpItem(int) const; + void setBottleItemIn(u8, u8); + void setEmptyBottleItemIn(u8); + void setEmptyBottle(void); + void setEmptyBottle(u8); + void setEquipBottleItemIn(u8, u8); + void setEquipBottleItemEmpty(u8); + u8 checkBottle(u8); + int checkInsectBottle(void); + u8 checkEmptyBottle(void); + void setBombBagItemIn(u8, u8, bool); + void setBombBagItemIn(u8, u8, u8, bool); + void setEmptyBombBagItemIn(u8, bool); + void setEmptyBombBagItemIn(u8, u8, bool); + void setEmptyBombBag(void); + void setEmptyBombBag(u8, u8); + u8 checkBombBag(u8); + void setWarashibeItem(u8); + void setRodTypeLevelUp(void); + void setBaitItem(u8); + +private: + u8 mItems[24]; + u8 mItemSlots[24]; +}; + +class dSv_player_get_item_c { +public: + void init(void); + void onFirstBit(u8); + void offFirstBit(u8); + int isFirstBit(u8) const; + +private: + u32 mPauseMenuBitFields[4]; + u8 padding[16]; +}; + +class dSv_player_item_record_c { +public: + void init(void); + void setBombNum(u8, u8); + u8 getBombNum(u8) const; + void setBottleNum(u8, u8); + u8 addBottleNum(u8, s16); + u8 getBottleNum(u8) const; + + void setArrowNum(u8 amount) { mBow = amount; } + +private: + u8 mBow; + u8 mBombBags[3]; + u8 mBottles[4]; + u8 mSlingshot; + u8 unk5[3]; +}; + +class dSv_player_item_max_c { +public: + void init(void); + void setBombNum(u8, u8); + u8 getBombNum(u8) const; + + void setArrowNum(u8 max) { mItemCapacities[0] = max; } + u8 getArrowNum() { return mItemCapacities[0]; } + +private: + u8 mItemCapacities[8]; +}; + +class dSv_player_collect_c { +public: + void init(void); + void setCollect(int, u8); + BOOL isCollect(int, u8) const; + void onCollectCrystal(u8); + BOOL isCollectCrystal(u8) const; + void onCollectMirror(u8); + BOOL isCollectMirror(u8) const; + + u8 getPohNum() { return mPoeCount; } + +private: + u8 unk0[8]; + u8 unk8; + u8 mCrystal; + u8 mMirror; + u8 unk11; + u8 mPoeCount; + u8 padding[3]; +}; + +class dSv_player_wolf_c { +public: + void init(void); + +private: + u8 unk0[3]; + u8 unk3; +}; + +class dSv_light_drop_c { +public: + void init(void); + void setLightDropNum(u8, u8); + u8 getLightDropNum(u8) const; + void onLightDropGetFlag(u8); + BOOL isLightDropGetFlag(u8) const; + +private: + u8 mLightDropCounts[4]; + u8 mLightDropGetFlag; + u8 unk5[3]; +}; + +class dSv_letter_info_c { +public: + void init(void); + void onLetterGetFlag(int); + BOOL isLetterGetFlag(int) const; + void onLetterReadFlag(int); + int isLetterReadFlag(int) const; + +private: + u32 mLetterGetBitfields[2]; + u32 mLetterReadBitfields[2]; + u8 unk16[64]; +}; + +class dSv_fishing_info_c { +public: + void init(void); + void addFishCount(u8); // merged with init in the assembly + +private: + u16 mFishCount[16]; + u8 unk32[16]; + u8 padding[4]; +}; + +class dSv_player_info_c { +public: + void init(void); + char* getLinkName() { return (char*)link_name; } + +private: + u32 unk0; + u32 unk4; + u32 unk8; + u32 unk12; + u16 unk16; + u16 unk18; + u8 link_name[16]; + u8 unk36; + u8 epona_name[16]; + u8 unk53; + u8 unk54; + u8 unk55[5]; + u8 padding[4]; +}; + +class dSv_player_config_c { +public: + void init(void); + u32 checkVibration(void) const; + u8 getSound(void); + void setSound(u8); + u8 getVibration(void); + void setVibration(u8); + +private: + u8 unk0; + u8 mSoundMode; + u8 unk2; + u8 mVibrationStatus; + u8 unk4; + u8 unk5; + u16 unk6; + u8 unk8; + u8 unk9; + u8 unk10; + u8 unk11; + u8 padding[4]; +}; + +class dSv_player_c { +public: + void init(void); + dSv_player_info_c& getPlayerInfo() { return mPlayerInfo; } + dSv_player_status_a_c& getPlayerStatusA() { return player_status_a; } + dSv_player_item_c& getPlayerItem() { return player_item; } + dSv_player_collect_c& getPlayerCollect() { return player_collect; } + dSv_player_item_record_c& getPlayerItemRecord() { return player_item_record; } + dSv_player_item_max_c& getPlayerItemMax() { return player_item_max; } + dSv_player_last_mark_info_c& getPlayerLastMarkInfo() { return player_last_mark; } + dSv_light_drop_c& getLightDrop() { return light_drop; } + dSv_player_get_item_c& getPlayerGetItem() { return player_get_item; } + + void setPlayerStatusAWalletLV(u8 lv) { player_status_a.setWalletLV(lv); } + +private: + dSv_player_status_a_c player_status_a; + dSv_player_status_b_c player_status_b; + dSv_horse_place_c horse_place; + dSv_player_return_place_c player_return; + dSv_player_field_last_stay_info_c player_last_field; + dSv_player_last_mark_info_c player_last_mark; + dSv_player_item_c player_item; + dSv_player_get_item_c player_get_item; + dSv_player_item_record_c player_item_record; + dSv_player_item_max_c player_item_max; + dSv_player_collect_c player_collect; + dSv_player_wolf_c player_wolf; + dSv_light_drop_c light_drop; + dSv_letter_info_c letter_info; + dSv_fishing_info_c fishing_info; + dSv_player_info_c mPlayerInfo; + dSv_player_config_c player_config; +}; + +#pragma pack(push, 1) +class dSv_memBit_c { +public: + void init(void); + void onTbox(int); + void offTbox(int); + BOOL isTbox(int) const; + void onSwitch(int); + void offSwitch(int); + BOOL isSwitch(int) const; + BOOL revSwitch(int); + void onItem(int); + BOOL isItem(int) const; + void onDungeonItem(int); + bool isDungeonItem(int) const; + + u8 getKeyNum() { return small_key_flags; } + void onDungeonItemMap() { onDungeonItem(MAP_FLAG); } + bool isDungeonItemMap() const { return isDungeonItem(MAP_FLAG); } + void onDungeonItemCompass() { onDungeonItem(COMPASS_FLAG); } + void onDungeonItemWarp() { onDungeonItem(OOCCOO_NOTE_FLAG); } + void onDungeonItemBossKey() { onDungeonItem(BOSS_KEY_FLAG); } + bool isDungeonItemBossKey() const { return isDungeonItem(BOSS_KEY_FLAG); } + +private: + u32 area_flags_bitfields1[2]; + u32 area_flags_bitfields2[4]; + u32 rupee_flags_bitfields; + u8 small_key_flags; + u8 dungeons_flags; +}; +#pragma pack(pop) + +class dSv_event_c { +public: + void init(void); + void onEventBit(u16); + void offEventBit(u16); + int isEventBit(u16) const; + void setEventReg(u16, u8); + u8 getEventReg(u16) const; + +private: + u8 events[256]; +}; + +class dSv_MiniGame_c { +public: + void init(void); + +private: + u8 unk0; + u8 unk1[3]; + u32 unk4; + u32 unk8; + u32 unk12; + u32 unk16; + u32 unk20; +}; + +class dSv_memory_c { +public: + dSv_memory_c(void); // the assembly for this is in d_com_inf_game.s + void init(void); + dSv_memBit_c& getTempFlags() { return temp_flags; } + const dSv_memBit_c& getTempFlagsConst() const { return temp_flags; } + +private: + dSv_memBit_c temp_flags; + u8 padding30[2]; +}; + +class dSv_memory2_c { +public: + dSv_memory2_c(void); // the assembly for this is in d_com_inf_game.s + void init(void); + void onVisitedRoom(int); + void offVisitedRoom(int); + BOOL isVisitedRoom(int); + +private: + u32 unk0[2]; +}; + +class dSv_danBit_c { +public: + bool init(s8); + void onSwitch(int); + void offSwitch(int); + BOOL isSwitch(int) const; + BOOL revSwitch(int); + void onItem(int); + BOOL isItem(int) const; + +private: + s8 mStageNum; + u8 unk1; + u8 unk2[2]; + u32 switch_bitfield[2]; + u32 item_bitfield[4]; + s16 unk28[16]; +}; + +class dSv_zoneBit_c { +public: + void init(void); + void clearRoomSwitch(void); + void clearRoomItem(void); + void onSwitch(int); + void offSwitch(int); + BOOL isSwitch(int) const; + BOOL revSwitch(int); + void onOneSwitch(int); + void offOneSwitch(int); + BOOL isOneSwitch(int) const; + BOOL revOneSwitch(int); + void onItem(int); + BOOL isItem(int) const; + void onOneItem(int); + BOOL isOneItem(int) const; + +private: + u16 switch_bitfield[2]; + u16 room_switch; + u16 item_bitfield[2]; + u16 room_item; + u16 unk12; +}; + +class dSv_zoneActor_c { +public: + void init(void); + void on(int); + void off(int); + BOOL is(int) const; + + static const int ACTOR_MAX = 0xFFFF; + +private: + u32 actor_bitfield[4]; +}; + +class dSv_zone_c { +public: + dSv_zone_c(void); // the assembly for this is in d_com_inf_game.s + void init(int); + dSv_zoneBit_c& getZoneBit() { return zone_bit; } + const dSv_zoneBit_c& getZoneBitConst() const { return zone_bit; } + dSv_zoneActor_c& getZoneActor() { return zone_actor; } + const dSv_zoneActor_c& getZoneActorConst() const { return zone_actor; } + + s8& getUnk0() { return unk0; } + +private: + s8 unk0; + u8 unk1; + dSv_zoneBit_c zone_bit; + dSv_zoneActor_c zone_actor; +}; + +class dSv_restart_c { +public: + void setRoom(const cXyz&, s16, s8); + +private: + u8 unk0; + u8 unk1[5]; + s16 mXRotation; + cXyz mPosition; + u8 padding20[16]; +}; + +class dSv_turnRestart_c { +public: + void set(const cXyz&, s16, s8, u32); + +private: + cXyz mPosition; + u32 unk12; + s16 mXRotation; + s8 unk18; +}; + +class dSv_reserve_c { +public: +private: + u8 unk[80]; +}; + +class dSv_save_c { +public: + void init(void); + dSv_memory2_c* getSave2(int); + dSv_player_c& getPlayer() { return player; } + dSv_player_status_a_c& getPlayerStatusA() { return player.getPlayerStatusA(); } + dSv_player_get_item_c& getPlayerGetItem() { return player.getPlayerGetItem(); } + dSv_player_item_record_c& getPlayerItemRecord() { return player.getPlayerItemRecord(); } + dSv_player_item_max_c& getPlayerItemMax() { return player.getPlayerItemMax(); } + dSv_player_last_mark_info_c& getPlayerLastMarkInfo() { return player.getPlayerLastMarkInfo(); } + dSv_player_item_c& getPlayerItem() { return player.getPlayerItem(); } + dSv_player_collect_c& getPlayerCollect() { return player.getPlayerCollect(); } + dSv_light_drop_c& getLightDrop() { return player.getLightDrop(); } + dSv_event_c& getEventFlags() { return event_flags; } + + void setPlayerStatusAWallet(u8 lv) { player.setPlayerStatusAWalletLV(lv); } + + static const int STAGE_MAX = 4; + +private: + dSv_player_c player; + dSv_memory_c area_flags[32]; + dSv_memory2_c unk_flags[64]; + dSv_event_c event_flags; + dSv_reserve_c reserve; + dSv_MiniGame_c minigame_flags; +}; +#pragma pack(push, 1) +class dSv_info_c { +public: + void init(void); + void getSave(int); + void putSave(int); + void initZone(void); + u32 createZone(int); + void onSwitch(int, int); + void offSwitch(int, int); + BOOL isSwitch(int, int) const; + BOOL revSwitch(int, int); + void onItem(int, int); + BOOL isItem(int, int) const; + void onActor(int, int); + void offActor(int, int); + BOOL isActor(int, int) const; + void memory_to_card(char*, int); + void card_to_memory(char*, int); + void initdata_to_card(char*, int); + + dSv_save_c& getSaveFile() { return save_file; } + dSv_memory_c& getMemory() { return memory; } + dSv_zone_c* getZones() { return zones; } + dSv_player_c& getPlayer() { return save_file.getPlayer(); } + dSv_event_c& getEvent() { return events; } + +private: + /* 0x000 */ dSv_save_c save_file; + /* 0x958 */ dSv_memory_c memory; + /* 0x978 */ dSv_danBit_c dungeon_bit; + /* 0x9B4 */ dSv_zone_c zones[32]; + /* 0xDB4 */ dSv_restart_c restart; + /* 0xDD8 */ dSv_event_c events; + /* 0xED8 */ dSv_turnRestart_c turn_restart; +}; +#pragma pack(pop) + #endif /* D_SAVE_D_SAVE_H */ diff --git a/include/dolphin/gx/GXTexture.h b/include/dolphin/gx/GXTexture.h index 2f2bbfb6e04..75bd5ac4aab 100644 --- a/include/dolphin/gx/GXTexture.h +++ b/include/dolphin/gx/GXTexture.h @@ -3,4 +3,25 @@ #include "dolphin/types.h" +struct _GXColor { + void operator=(const _GXColor& rhs) { + r = rhs.r; + g = rhs.g; + b = rhs.b; + a = rhs.a; + } + + u8 r; + u8 g; + u8 b; + u8 a; +}; + +struct GXColorS10 { + s16 r; + s16 g; + s16 b; + s16 a; +}; + #endif /* GXTEXTURE_H */ diff --git a/include/dolphin/mtx/vec.h b/include/dolphin/mtx/vec.h index 2d959e4bd76..3234768cf82 100644 --- a/include/dolphin/mtx/vec.h +++ b/include/dolphin/mtx/vec.h @@ -3,4 +3,14 @@ #include "dolphin/types.h" +struct Vec { + float x, y, z; + float GetX() const { return x; } + float GetY() const { return y; } + float GetZ() const { return z; } + float getXDiff(const Vec* other) const { return x - other->x; } + float getYDiff(const Vec* other) const { return y - other->y; } + float getZDiff(const Vec* other) const { return z - other->z; } +}; + #endif /* VEC_H */ diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index e6a3b3971a0..84640448e07 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -1,6 +1,118 @@ #ifndef M_DO_M_DO_EXT_H #define M_DO_M_DO_EXT_H +#include "JSystem/J3DGraphAnimator/J3DAnimation.h" #include "dolphin/types.h" +struct J3DModelData {}; + +struct J3DModel { + /* 80327100 */ void initialize(); + /* 80327184 */ void entryModelData(J3DModelData*, u32, u32); + /* 803275FC */ void newDifferedDisplayList(u32); + /* 8032767C */ void lock(); + /* 803276B4 */ void unlock(); + /* 803279A0 */ void diff(); +}; + +struct J3DMaterialTable; +struct J3DAnmTextureSRTKey { + /* 8032B0C0 */ void searchUpdateMaterialID(J3DMaterialTable*); +}; + +struct J3DAnmTexPattern { + /* 8032B004 */ void searchUpdateMaterialID(J3DMaterialTable*); +}; + +struct J3DAnmTevRegKey { + /* 8032B780 */ void searchUpdateMaterialID(J3DMaterialTable*); +}; + +struct J3DAnmColor { + /* 8032A8A4 */ void searchUpdateMaterialID(J3DMaterialTable*); +}; + +struct J3DMaterialTable { + /* 8032FAF4 */ void entryMatColorAnimator(J3DAnmColor*); + /* 8032FBC8 */ void entryTexNoAnimator(J3DAnmTexPattern*); + /* 8032FCC4 */ void entryTexMtxAnimator(J3DAnmTextureSRTKey*); + /* 8032FE70 */ void entryTevRegAnimator(J3DAnmTevRegKey*); +}; + +struct J3DAnmTransform {}; + +#pragma pack(push, 1) +class mDoExt_baseAnm { +public: + /* 8000D320 */ void initPlay(s16, int, f32, s16, s16); + /* 8000D428 */ void play(); + +private: + J3DFrameCtrl frame_control; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class mDoExt_btkAnm { +public: + mDoExt_btkAnm(void); + /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); + /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); + +private: + mDoExt_baseAnm base_anm; + u32 field_0x14; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class mDoExt_brkAnm { +public: + mDoExt_brkAnm(void); + /* 8000D70C */ void init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, f32, s16, s16); + /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); + +private: + mDoExt_baseAnm mDoExt_baseAnm; + u32 field_0x14; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class mDoExt_bpkAnm { +public: + mDoExt_bpkAnm(void); + /* 8000D47C */ void init(J3DMaterialTable*, J3DAnmColor*, int, int, f32, s16, s16); + /* 8000D518 */ void entry(J3DMaterialTable*, f32); + +private: + mDoExt_baseAnm mDoExt_baseAnm; + u32 field_0x14; +}; +#pragma pack(pop) + +#pragma pack(push, 1) +class mDoExt_bckAnm { +public: + mDoExt_bckAnm(void); + /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); + /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); + /* 8000D9CC */ void entry(J3DModelData*, f32); + /* 8000D9E8 */ void entryJoint(J3DModelData*, u16, f32); + +private: + mDoExt_baseAnm base_anm; + u8 field_0x14[4]; + u32 field_0x18; +}; // Size = 0x1C +#pragma pack(pop) + +#pragma pack(push, 1) +class mDoExt_McaMorfCallBack1_c { +public: +private: + void* vtable; +}; +#pragma pack(pop) + #endif /* M_DO_M_DO_EXT_H */ diff --git a/libs/JSystem/J3DGraphAnimator/J3DAnimation.cpp b/libs/JSystem/J3DGraphAnimator/J3DAnimation.cpp index 71820d3d834..293aeada7d0 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DAnimation.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DAnimation.cpp @@ -29,12 +29,6 @@ struct J3DModelData {}; struct J3DMaterialTable {}; -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 8032842C */ void checkPass(f32); - /* 803289CC */ void update(); -}; - struct J3DAnmVtxColorKey { /* 8032A4E0 */ J3DAnmVtxColorKey(); /* 8032A53C */ void getColor(u8, u16, _GXColor*) const; @@ -255,6 +249,18 @@ SECTION_SDATA2 static u8 lit_853[4] = { }; /* 803283FC-8032842C 322D3C 0030+00 0/0 25/25 285/285 .text init__12J3DFrameCtrlFs */ +// zero-initialized literal +#ifdef NONMATCHING +void J3DFrameCtrl::init(s16 pEnd) { + mAttribute = 2; + mState = false; + mStart = 0; + mEnd = pEnd; + mLoop = 0; + mRate = 1.0f; + mFrame = 0.0f; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -263,6 +269,7 @@ asm void J3DFrameCtrl::init(s16 param_0) { #include "asm/JSystem/J3DGraphAnimator/J3DAnimation/init__12J3DFrameCtrlFs.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80456438-80456440 004A38 0004+04 2/2 0/0 0/0 .sdata2 @973 */ diff --git a/libs/JSystem/JFramework/JFWDisplay.cpp b/libs/JSystem/JFramework/JFWDisplay.cpp index 773f42b682d..78c8d1f1dae 100644 --- a/libs/JSystem/JFramework/JFWDisplay.cpp +++ b/libs/JSystem/JFramework/JFWDisplay.cpp @@ -6,6 +6,7 @@ #include "JSystem/JFramework/JFWDisplay.h" #include "dol2asm.h" #include "dolphin/types.h" +#include "mtx_vec.h" // // Types: @@ -210,7 +211,6 @@ extern "C" void OSResumeThread(); extern "C" void OSSuspendThread(); extern "C" void OSGetTime(); extern "C" void OSGetTick(); -extern "C" void C_MTXOrtho(); extern "C" void VIFlush(); extern "C" void VIGetRetraceCount(); extern "C" void GXInit(); @@ -313,7 +313,7 @@ asm void JFWDisplay::ctor_subroutine(bool param_0) { /* ############################################################################################## */ /* 803C4020-803C4060 021140 0030+10 1/1 0/0 0/0 .data e_mtx */ -SECTION_DATA static u8 e_mtx[48 + 16 /* padding */] = { +SECTION_DATA static u8 e_mtx[48 + 16 /* padding */] ALIGN_DECL(32) = { 0x3F, 0x80, 0x00, diff --git a/libs/JSystem/JUtility/JUTFont.cpp b/libs/JSystem/JUtility/JUTFont.cpp index a6c63ca33d4..aeb7dd46e48 100644 --- a/libs/JSystem/JUtility/JUTFont.cpp +++ b/libs/JSystem/JUtility/JUTFont.cpp @@ -11,10 +11,6 @@ // Types: // -struct JUtility { - struct TColor {}; -}; - struct JUTFont { /* 802DECF8 */ JUTFont(); /* 802DED24 */ void initialize_state(); diff --git a/libs/SSystem/SComponent/c_angle.cpp b/libs/SSystem/SComponent/c_angle.cpp index 4d194858604..5f5a9e3afe2 100644 --- a/libs/SSystem/SComponent/c_angle.cpp +++ b/libs/SSystem/SComponent/c_angle.cpp @@ -9,6 +9,8 @@ #include "msl_c/math.h" extern f32 cM_atan2f(f32, f32); +extern "C" void Xyz__7cSGlobeCFv(); +extern "C" void __ct__7cSGlobeFfRC7cSAngleRC7cSAngle(); // // Declarations: @@ -340,11 +342,27 @@ void cSGlobe::Polar(cSPolar* csp) const { csp->Val(mRadius, 0x4000 - mAzimuth.Val(), mInclination.Val()); } +/* ############################################################################################## */ +/* 8045523C-80455240 00383C 0004+00 1/1 0/0 0/0 .sdata2 @2744 */ +SECTION_SDATA2 static f32 lit_2744 = 1.0f; + /* 80271B30-80271B7C 004C+00 s=0 e=3 z=0 None .text Norm__7cSGlobeCFv */ +// adding the dtor to class members made this stop matching, idk why +#ifdef NONMATCHING cXyz cSGlobe::Norm(void) const { cSGlobe glob(1.0f, mAzimuth, mInclination); return glob.Xyz(); } +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm cXyz cSGlobe::Norm() const { + nofralloc +#include "asm/SSystem/SComponent/c_angle/Norm__7cSGlobeCFv.s" +} +#pragma pop +#endif /* 80271B7C-80271BA8 002C+00 s=0 e=2 z=0 None .text Invert__7cSGlobeFv */ cSGlobe& cSGlobe::Invert(void) { diff --git a/libs/SSystem/SComponent/c_cc_d.cpp b/libs/SSystem/SComponent/c_cc_d.cpp index 57591073322..9543bb2bd3c 100644 --- a/libs/SSystem/SComponent/c_cc_d.cpp +++ b/libs/SSystem/SComponent/c_cc_d.cpp @@ -7,215 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct cXyz { - /* 80009184 */ ~cXyz(); - - static f32 Zero[3]; -}; - -struct Vec {}; - -struct cM3dGCyl; -struct cM3dGSph { - /* 8026F710 */ void cross(cM3dGSph const*, cXyz*) const; - /* 8026F73C */ void cross(cM3dGCyl const*, cXyz*) const; -}; - -struct cM3dGCyl { - /* 8026F208 */ void cross(cM3dGSph const*, cXyz*) const; - /* 8026F22C */ void cross(cM3dGCyl const*, cXyz*) const; -}; - -struct cM3dGTri { - /* 8026F7B0 */ void cross(cM3dGCyl const*, Vec*) const; -}; - -struct cM3dGCps {}; - -struct cM3dGAab { - /* 8026EC54 */ void Set(cXyz const*, cXyz const*); - /* 8026ECF8 */ void ClearForMinMax(); - /* 8026ED1C */ void SetMinMax(cXyz const&); - /* 8026EE68 */ void PlusR(f32); -}; - -struct cCcD_ShapeAttr { - struct Shape {}; - - /* 80084E38 */ void GetCoCP() const; - /* 80084E2C */ void GetCoCP(); - /* 8008556C */ ~cCcD_ShapeAttr(); - /* 80263A64 */ void getShapeAccess(cCcD_ShapeAttr::Shape*) const; - /* 802649D8 */ bool CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 802649E0 */ bool CrossCo(cCcD_ShapeAttr const&, f32*) const; - - static f32 m_virtual_center[3]; -}; - -struct cCcD_TriAttr; -struct cCcD_SphAttr; -struct cCcD_PntAttr {}; - -struct cCcD_AabAttr {}; - -struct cCcD_CpsAttr; -struct cCcD_CylAttr { - /* 80084CC0 */ void GetCoCP() const; - /* 80037A4C */ void GetCoCP(); - /* 8026420C */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; - /* 802641C8 */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; - /* 80084CC8 */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; - /* 80264250 */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; - /* 80084CD0 */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; - /* 80084CD8 */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 8026417C */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; - /* 80264288 */ void CrossCo(cCcD_CylAttr const&, f32*) const; - /* 80264310 */ void CrossCo(cCcD_CpsAttr const&, f32*) const; - /* 80084D10 */ bool CrossCo(cCcD_AabAttr const&, f32*) const; - /* 80084D18 */ bool CrossCo(cCcD_TriAttr const&, f32*) const; - /* 80084D20 */ bool CrossCo(cCcD_PntAttr const&, f32*) const; - /* 80084D28 */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; - /* 802642CC */ void CrossCo(cCcD_SphAttr const&, f32*) const; - /* 800854E0 */ ~cCcD_CylAttr(); - /* 80264368 */ void CalcAabBox(); - /* 802643D0 */ void GetNVec(cXyz const&, cXyz*) const; - /* 802644B8 */ void getShapeAccess(cCcD_ShapeAttr::Shape*) const; -}; - -struct cCcD_CpsAttr { - /* 80263DC0 */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; - /* 80263E04 */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; - /* 80084FE4 */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 80084FDC */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; - /* 80084FD4 */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; - /* 80263D38 */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; - /* 80263D7C */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; - /* 80263F24 */ void CrossCo(cCcD_CylAttr const&, f32*) const; - /* 80085024 */ bool CrossCo(cCcD_TriAttr const&, f32*) const; - /* 8008502C */ bool CrossCo(cCcD_PntAttr const&, f32*) const; - /* 8008501C */ bool CrossCo(cCcD_AabAttr const&, f32*) const; - /* 80263ED4 */ void CrossCo(cCcD_CpsAttr const&, f32*) const; - /* 80263F74 */ void CrossCo(cCcD_SphAttr const&, f32*) const; - /* 80085034 */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; - /* 80085450 */ ~cCcD_CpsAttr(); - /* 80263FC4 */ void CalcAabBox(); - /* 80264014 */ void GetNVec(cXyz const&, cXyz*) const; -}; - -struct cCcD_SphAttr { - /* 80084B44 */ void GetCoCP() const; - /* 80037A54 */ void GetCoCP(); - /* 80264538 */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; - /* 802645C0 */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; - /* 80084B4C */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; - /* 80084B54 */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; - /* 80084B5C */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 802644EC */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; - /* 8026457C */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; - /* 80264688 */ void CrossCo(cCcD_CpsAttr const&, f32*) const; - /* 80084B94 */ bool CrossCo(cCcD_AabAttr const&, f32*) const; - /* 80084B9C */ bool CrossCo(cCcD_TriAttr const&, f32*) const; - /* 80084BA4 */ bool CrossCo(cCcD_PntAttr const&, f32*) const; - /* 80084BAC */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; - /* 80264644 */ void CrossCo(cCcD_SphAttr const&, f32*) const; - /* 802645F8 */ void CrossCo(cCcD_CylAttr const&, f32*) const; - /* 8008721C */ ~cCcD_SphAttr(); - /* 802646E0 */ void CalcAabBox(); - /* 8026476C */ void GetNVec(cXyz const&, cXyz*) const; - /* 80264808 */ void getShapeAccess(cCcD_ShapeAttr::Shape*) const; -}; - -struct cCcD_TriAttr { - /* 80084E44 */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; - /* 80263A88 */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; - /* 80263BCC */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; - /* 80084E4C */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; - /* 80263B90 */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; - /* 80084E54 */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 80263B58 */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; - /* 80084E9C */ bool CrossCo(cCcD_AabAttr const&, f32*) const; - /* 80084EBC */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; - /* 80084EA4 */ bool CrossCo(cCcD_TriAttr const&, f32*) const; - /* 80084E8C */ bool CrossCo(cCcD_SphAttr const&, f32*) const; - /* 80084EAC */ bool CrossCo(cCcD_CpsAttr const&, f32*) const; - /* 80084E94 */ bool CrossCo(cCcD_CylAttr const&, f32*) const; - /* 80084EB4 */ bool CrossCo(cCcD_PntAttr const&, f32*) const; - /* 80263C04 */ void CalcAabBox(); - /* 80263C9C */ void GetNVec(cXyz const&, cXyz*) const; - /* 80264938 */ ~cCcD_TriAttr(); -}; - -struct cCcD_Stts { - /* 801410A4 */ ~cCcD_Stts(); - /* 80263894 */ bool GetGStts() const; - /* 8026389C */ bool GetGStts(); - /* 802638A4 */ void Init(int, int, void*, unsigned int); - /* 80263904 */ void Ct(); - /* 80263934 */ void PlusCcMove(f32, f32, f32); - /* 8026395C */ void ClrCcMove(); - /* 80263970 */ void PlusDmg(int); - /* 80263984 */ void GetWeightF() const; - /* 802649E8 */ void ClrAt(); - /* 802649EC */ void ClrTg(); -}; - -struct cCcD_SrcObjTg {}; - -struct cCcD_SrcObjHitInf {}; - -struct cCcD_SrcObjAt {}; - -struct cCcD_SrcObj {}; - -struct cCcD_Obj { - /* 80263A10 */ void ct(); - /* 80263A1C */ void Set(cCcD_SrcObj const&); - /* 80263A48 */ void GetAc(); -}; - -struct cCcD_ObjTg { - /* 80264880 */ void Set(cCcD_SrcObjTg const&); - /* 80264894 */ void SetGrp(u32); - /* 802648B0 */ void ClrHit(); - /* 802648C8 */ void SetHit(cCcD_Obj*); -}; - -struct cCcD_ObjHitInf { - /* 802639C4 */ void Set(cCcD_SrcObjHitInf const&); -}; - -struct cCcD_ObjCommonBase { - /* 802639B0 */ void ct(); -}; - -struct cCcD_ObjCo { - /* 802648D8 */ void SetHit(cCcD_Obj*); - /* 802648E8 */ void ClrHit(); - /* 80264900 */ void SetIGrp(u32); - /* 8026491C */ void SetVsGrp(u32); -}; - -struct cCcD_ObjAt { - /* 8026483C */ void SetHit(cCcD_Obj*); - /* 8026484C */ void Set(cCcD_SrcObjAt const&); - /* 80264868 */ void ClrHit(); -}; - -struct cCcD_DivideInfo { - /* 80263358 */ void Set(u32, u32, u32); - /* 80263368 */ void Chk(cCcD_DivideInfo const&) const; -}; - -struct cCcD_DivideArea { - /* 802633A8 */ void SetArea(cM3dGAab const&); - /* 802634D4 */ void CalcDivideInfo(cCcD_DivideInfo*, cM3dGAab const&, u32); - /* 802636A0 */ void CalcDivideInfoOverArea(cCcD_DivideInfo*, cM3dGAab const&); -}; - // // Forward References: // @@ -365,12 +156,6 @@ extern "C" void cross__8cM3dGSphCFPC8cM3dGSphP4cXyz(); extern "C" void cross__8cM3dGSphCFPC8cM3dGCylP4cXyz(); extern "C" void cross__8cM3dGTriCFPC8cM3dGCylP3Vec(); extern "C" void __dl__FPv(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSubtract(); -extern "C" void PSVECScale(); -extern "C" void PSVECNormalize(); -extern "C" void PSVECMag(); -extern "C" void PSVECDotProduct(); extern "C" void __register_global_object(); extern "C" void _savegpr_27(); extern "C" void _savegpr_28(); diff --git a/libs/SSystem/SComponent/c_cc_s.cpp b/libs/SSystem/SComponent/c_cc_s.cpp index 1c164cacc80..3189247eb2e 100644 --- a/libs/SSystem/SComponent/c_cc_s.cpp +++ b/libs/SSystem/SComponent/c_cc_s.cpp @@ -7,91 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct cXyz { - /* 80009184 */ ~cXyz(); -}; - -struct cM3dGAab { - /* 8026ECF8 */ void ClearForMinMax(); - /* 8026ED60 */ void SetMinMax(cM3dGAab const&); - /* 8026EE24 */ void CalcCenter(cXyz*) const; -}; - -struct cCcD_GStts {}; - -struct cCcD_GObjInf {}; - -struct cCcD_Obj { - /* 80263A48 */ void GetAc(); -}; - -struct cCcD_Stts { - /* 80263934 */ void PlusCcMove(f32, f32, f32); - /* 8026395C */ void ClrCcMove(); - /* 80263970 */ void PlusDmg(int); - /* 80263984 */ void GetWeightF() const; -}; - -struct cCcS { - /* 80030BDC */ ~cCcS(); - /* 80264A6C */ cCcS(); - /* 80264A94 */ void Ct(); - /* 80264B60 */ void Dt(); - /* 80264B80 */ void GetWt(u8) const; - /* 80264BA8 */ void Set(cCcD_Obj*); - /* 80264C5C */ void ClrCoHitInf(); - /* 80264CF0 */ void ClrTgHitInf(); - /* 80264D90 */ void ClrAtHitInf(); - /* 80264E2C */ void ChkNoHitAtTg(cCcD_Obj*, cCcD_Obj*); - /* 80264F40 */ void ChkAtTg(); - /* 8026515C */ void ChkNoHitCo(cCcD_Obj*, cCcD_Obj*); - /* 80265230 */ void ChkCo(); - /* 802653A0 */ void CalcTgPlusDmg(cCcD_Obj*, cCcD_Obj*, cCcD_Stts*, cCcD_Stts*); - /* 802653C8 */ void SetAtTgCommonHitInf(cCcD_Obj*, cCcD_Obj*, cXyz*); - /* 802655E4 */ void SetCoCommonHitInf(cCcD_Obj*, cXyz*, cCcD_Obj*, cXyz*, f32); - /* 80265750 */ void SetPosCorrect(cCcD_Obj*, cXyz*, cCcD_Obj*, cXyz*, f32); - /* 80265BB4 */ void CalcArea(); - /* 80265CCC */ void Move(); - /* 80265D30 */ void DrawClear(); - /* 80265DF4 */ void SetCoGCorrectProc(cCcD_Obj*, cCcD_Obj*); - /* 80265DF8 */ void SetCoGObjInf(bool, bool, cCcD_GObjInf*, cCcD_GObjInf*, cCcD_Stts*, - cCcD_Stts*, cCcD_GStts*, cCcD_GStts*); - /* 80265DFC */ void SetAtTgGObjInf(bool, bool, cCcD_Obj*, cCcD_Obj*, cCcD_GObjInf*, - cCcD_GObjInf*, cCcD_Stts*, cCcD_Stts*, cCcD_GStts*, - cCcD_GStts*, cXyz*); - /* 80265E00 */ bool ChkNoHitGAtTg(cCcD_GObjInf const*, cCcD_GObjInf const*, cCcD_GStts*, - cCcD_GStts*); - /* 80265E08 */ bool ChkAtTgHitAfterCross(bool, bool, cCcD_GObjInf const*, cCcD_GObjInf const*, - cCcD_Stts*, cCcD_Stts*, cCcD_GStts*, cCcD_GStts*); - /* 80265E10 */ bool ChkNoHitGCo(cCcD_Obj*, cCcD_Obj*); - /* 80265E18 */ void MoveAfterCheck(); -}; - -struct cCcD_ObjTg { - /* 802648C8 */ void SetHit(cCcD_Obj*); -}; - -struct cCcD_ObjCo { - /* 802648D8 */ void SetHit(cCcD_Obj*); -}; - -struct cCcD_ObjAt { - /* 8026483C */ void SetHit(cCcD_Obj*); -}; - -struct cCcD_DivideInfo { - /* 80263368 */ void Chk(cCcD_DivideInfo const&) const; -}; - -struct cCcD_DivideArea { - /* 802633A8 */ void SetArea(cM3dGAab const&); - /* 802634D4 */ void CalcDivideInfo(cCcD_DivideInfo*, cM3dGAab const&, u32); -}; - // // Forward References: // @@ -146,10 +61,6 @@ extern "C" void SetHit__10cCcD_ObjCoFP8cCcD_Obj(); extern "C" void ClearForMinMax__8cM3dGAabFv(); extern "C" void SetMinMax__8cM3dGAabFRC8cM3dGAab(); extern "C" void CalcCenter__8cM3dGAabCFP4cXyz(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSubtract(); -extern "C" void PSVECScale(); -extern "C" void PSVECMag(); extern "C" void __register_global_object(); extern "C" void _savegpr_21(); extern "C" void _savegpr_22(); diff --git a/libs/Z2AudioLib/Z2StatusMgr.cpp b/libs/Z2AudioLib/Z2StatusMgr.cpp index c76705d3536..abdb41bf279 100644 --- a/libs/Z2AudioLib/Z2StatusMgr.cpp +++ b/libs/Z2AudioLib/Z2StatusMgr.cpp @@ -11,26 +11,6 @@ // Types: // -struct Vec {}; - -struct Z2StatusMgr { - /* 802B5F1C */ Z2StatusMgr(); - /* 802B5F70 */ void heartGaugeOn(); - /* 802B5F7C */ void processHeartGaugeSound(); - /* 802B60CC */ void talkIn(); - /* 802B6104 */ void talkOut(); - /* 802B613C */ void menuIn(); - /* 802B617C */ void menuOut(); - /* 802B61BC */ void isMovieDemo(); - /* 802B61E8 */ void setDemoName(char*); - /* 802B671C */ void processTime(); - /* 802B6734 */ void checkDayTime(); - /* 802B6758 */ void setEventBit(void*); - /* 802B6760 */ void setCameraPolygonPos(Vec*); - /* 802B6784 */ void setCameraGroupInfo(u8); - /* 802B6788 */ void setCameraInWaterDepth(f32); -}; - struct Z2SeqMgr { /* 802AF49C */ void subBgmStart(u32); /* 802AF884 */ void subBgmStop(); @@ -87,10 +67,10 @@ extern "C" void talkIn__11Z2StatusMgrFv(); extern "C" void talkOut__11Z2StatusMgrFv(); extern "C" void menuIn__11Z2StatusMgrFv(); extern "C" void menuOut__11Z2StatusMgrFv(); -extern "C" void isMovieDemo__11Z2StatusMgrFv(); +extern "C" bool isMovieDemo__11Z2StatusMgrFv(); extern "C" void setDemoName__11Z2StatusMgrFPc(); extern "C" void processTime__11Z2StatusMgrFv(); -extern "C" void checkDayTime__11Z2StatusMgrFv(); +extern "C" bool checkDayTime__11Z2StatusMgrFv(); extern "C" void setEventBit__11Z2StatusMgrFPv(); extern "C" void setCameraPolygonPos__11Z2StatusMgrFP3Vec(); extern "C" void setCameraGroupInfo__11Z2StatusMgrFUc(); @@ -130,8 +110,8 @@ extern "C" extern u8 data_80450B40[4]; extern "C" extern u8 data_80450B60[4]; extern "C" extern u8 data_80450B7C[4]; extern "C" extern u8 data_80450B80[4]; -extern "C" extern u8 data_80450B84[4]; -extern "C" extern u8 data_80450B88[4]; +extern "C" extern Z2SeqMgr* data_80450B84; +extern "C" extern Z2SeMgr* data_80450B88; extern "C" extern u8 struct_80451124[4]; extern "C" u8 mLinkPtr__14Z2CreatureLink[4 + 4 /* padding */]; @@ -152,6 +132,29 @@ SECTION_SDATA2 static u8 lit_3396[4] = { }; /* 802B5F1C-802B5F70 2B085C 0054+00 0/0 1/1 0/0 .text __ct__11Z2StatusMgrFv */ +// needs other functions decompiled first +#ifdef NONMATCHING +Z2StatusMgr::Z2StatusMgr() { + data_80450B7C = this; + mHour = 0; + mMinute = 0; + mWeekday = 0; + field_0x03 = 0; + mTime = 3072; + mEventBit = (void*)0; + mIsMenuIn = false; + mCameraMapInfo = 0; + float polygon_pos_init = lit_3395; + mPolygonPosition.x = polygon_pos_init; + mPolygonPosition.y = polygon_pos_init; + mPolygonPosition.z = polygon_pos_init; + float depth_init = 0.0f; + mUnderwaterDepth = depth_init; + mCameraInWaterDepthRatio = depth_init; + mDemoStatus = 0; + mHeartGaugeOn = 0; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -160,16 +163,12 @@ asm Z2StatusMgr::Z2StatusMgr() { #include "asm/Z2AudioLib/Z2StatusMgr/__ct__11Z2StatusMgrFv.s" } #pragma pop +#endif /* 802B5F70-802B5F7C 2B08B0 000C+00 0/0 1/1 0/0 .text heartGaugeOn__11Z2StatusMgrFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2StatusMgr::heartGaugeOn() { - nofralloc -#include "asm/Z2AudioLib/Z2StatusMgr/heartGaugeOn__11Z2StatusMgrFv.s" +void Z2StatusMgr::heartGaugeOn() { + mHeartGaugeOn = 2; } -#pragma pop /* ############################################################################################## */ /* 80455A20-80455A24 004020 0004+00 3/3 0/0 0/0 .sdata2 @3467 */ @@ -189,54 +188,57 @@ asm void Z2StatusMgr::processHeartGaugeSound() { #pragma pop /* 802B60CC-802B6104 2B0A0C 0038+00 0/0 1/1 0/0 .text talkIn__11Z2StatusMgrFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2StatusMgr::talkIn() { - nofralloc -#include "asm/Z2AudioLib/Z2StatusMgr/talkIn__11Z2StatusMgrFv.s" +void Z2StatusMgr::talkIn() { + if (!isMovieDemo()) { + data_80450B84->talkInBgm(); + data_80450B88->talkInSe(); + } } -#pragma pop /* 802B6104-802B613C 2B0A44 0038+00 0/0 1/1 0/0 .text talkOut__11Z2StatusMgrFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2StatusMgr::talkOut() { - nofralloc -#include "asm/Z2AudioLib/Z2StatusMgr/talkOut__11Z2StatusMgrFv.s" +void Z2StatusMgr::talkOut() { + if (!isMovieDemo()) { + data_80450B84->talkOutBgm(); + data_80450B88->talkOutSe(); + } } -#pragma pop /* 802B613C-802B617C 2B0A7C 0040+00 0/0 1/1 0/0 .text menuIn__11Z2StatusMgrFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2StatusMgr::menuIn() { - nofralloc -#include "asm/Z2AudioLib/Z2StatusMgr/menuIn__11Z2StatusMgrFv.s" +void Z2StatusMgr::menuIn() { + data_80450B84->menuInBgm(); + data_80450B88->menuInSe(); + + mIsMenuIn = true; } -#pragma pop /* 802B617C-802B61BC 2B0ABC 0040+00 0/0 3/3 0/0 .text menuOut__11Z2StatusMgrFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2StatusMgr::menuOut() { - nofralloc -#include "asm/Z2AudioLib/Z2StatusMgr/menuOut__11Z2StatusMgrFv.s" +void Z2StatusMgr::menuOut() { + data_80450B84->menuOutBgm(); + data_80450B88->talkOutSe(); + + mIsMenuIn = false; } -#pragma pop /* 802B61BC-802B61E8 2B0AFC 002C+00 2/2 1/1 0/0 .text isMovieDemo__11Z2StatusMgrFv */ +#ifdef NONMATCHING +bool Z2StatusMgr::isMovieDemo(void) { + bool isMovieDemo = false; + + if (mDemoStatus == 2 || mDemoStatus == 8 || mDemoStatus == 9) { + isMovieDemo = true; + } + return isMovieDemo; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void Z2StatusMgr::isMovieDemo() { +asm bool Z2StatusMgr::isMovieDemo() { nofralloc #include "asm/Z2AudioLib/Z2StatusMgr/isMovieDemo__11Z2StatusMgrFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 8039BC88-8039BC88 0282E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -409,44 +411,36 @@ asm void Z2StatusMgr::setDemoName(char* param_0) { #pragma pop /* 802B671C-802B6734 2B105C 0018+00 0/0 1/1 0/0 .text processTime__11Z2StatusMgrFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2StatusMgr::processTime() { - nofralloc -#include "asm/Z2AudioLib/Z2StatusMgr/processTime__11Z2StatusMgrFv.s" +void Z2StatusMgr::processTime() { + u16 temp = mHour * 256; + mTime = temp + mMinute; } -#pragma pop /* 802B6734-802B6758 2B1074 0024+00 0/0 5/5 0/0 .text checkDayTime__11Z2StatusMgrFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2StatusMgr::checkDayTime() { - nofralloc -#include "asm/Z2AudioLib/Z2StatusMgr/checkDayTime__11Z2StatusMgrFv.s" +bool Z2StatusMgr::checkDayTime() { + if (mHour >= 6 && mHour < 19) { + return true; + } else { + return false; + } } -#pragma pop /* 802B6758-802B6760 -00001 0008+00 0/0 0/0 0/0 .text setEventBit__11Z2StatusMgrFPv */ -void Z2StatusMgr::setEventBit(void* param_0) { - *(u32*)(((u8*)this) + 8) /* this->field_0x8 */ = (u32)(param_0); +void Z2StatusMgr::setEventBit(void* pBit) { + mEventBit = pBit; } /* 802B6760-802B6784 2B10A0 0024+00 0/0 1/1 0/0 .text setCameraPolygonPos__11Z2StatusMgrFP3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2StatusMgr::setCameraPolygonPos(Vec* param_0) { - nofralloc -#include "asm/Z2AudioLib/Z2StatusMgr/setCameraPolygonPos__11Z2StatusMgrFP3Vec.s" +void Z2StatusMgr::setCameraPolygonPos(Vec* pPolygonPos) { + if (pPolygonPos == 0) { + return; + } else { + mPolygonPosition = *pPolygonPos; + } } -#pragma pop /* 802B6784-802B6788 2B10C4 0004+00 0/0 1/1 0/0 .text setCameraGroupInfo__11Z2StatusMgrFUc */ -void Z2StatusMgr::setCameraGroupInfo(u8 param_0) { - /* empty function */ -} +void Z2StatusMgr::setCameraGroupInfo(u8 param_0) {} /* ############################################################################################## */ /* 80455A30-80455A34 004030 0004+00 1/1 0/0 0/0 .sdata2 @3798 */ diff --git a/src/d/a/d_a_item_static.cpp b/src/d/a/d_a_item_static.cpp index 958b43e4ec0..c2e77329d8a 100644 --- a/src/d/a/d_a_item_static.cpp +++ b/src/d/a/d_a_item_static.cpp @@ -7,16 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct daItem_c { - /* 80037BE0 */ void startCtrl(); - /* 80037BF4 */ void startControl(); - /* 80037C04 */ void endControl(); -}; - // // Forward References: // @@ -25,40 +15,17 @@ extern "C" void startCtrl__8daItem_cFv(); extern "C" void startControl__8daItem_cFv(); extern "C" void endControl__8daItem_cFv(); -// -// External References: -// - -// -// Declarations: -// - -/* 80037BE0-80037BF4 032520 0014+00 0/0 0/0 1/1 .text startCtrl__8daItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItem_c::startCtrl() { - nofralloc -#include "asm/d/a/d_a_item_static/startCtrl__8daItem_cFv.s" +u32 daItem_c::startCtrl() { + setFlag(4); + return 1; } -#pragma pop -/* 80037BF4-80037C04 032534 0010+00 0/0 0/0 1/1 .text startControl__8daItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItem_c::startControl() { - nofralloc -#include "asm/d/a/d_a_item_static/startControl__8daItem_cFv.s" +u32 daItem_c::startControl() { + unk2378 = 1; + return 1; } -#pragma pop -/* 80037C04-80037C14 032544 0010+00 0/0 0/0 1/1 .text endControl__8daItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItem_c::endControl() { - nofralloc -#include "asm/d/a/d_a_item_static/endControl__8daItem_cFv.s" +u32 daItem_c::endControl() { + unk2378 = 0; + return 1; } -#pragma pop diff --git a/src/d/a/d_a_itembase.cpp b/src/d/a/d_a_itembase.cpp index 813f406afb3..969955a6dc0 100644 --- a/src/d/a/d_a_itembase.cpp +++ b/src/d/a/d_a_itembase.cpp @@ -58,29 +58,6 @@ struct mDoExt_baseAnm { struct fopAc_ac_c {}; -struct daItemBase_c { - /* 80144724 */ void DeleteBase(char const*); - /* 8014474C */ bool clothCreate(); - /* 80144754 */ bool __CreateHeap(); - /* 8014475C */ void CreateItemHeap(char const*, s16, s16, s16, s16, s16, s16, s16); - /* 80144B94 */ void DrawBase(); - /* 80144C30 */ void RotateYBase(); - /* 80144C7C */ void setListStart(); - /* 80144CA0 */ void setListEnd(); - /* 80144CC4 */ void settingBeforeDraw(); - /* 80144D18 */ void setTevStr(); - /* 80144D70 */ void setShadow(); - /* 80144EDC */ void animEntry(); - /* 8014503C */ void animPlay(f32, f32, f32, f32, f32, f32); - /* 80145144 */ void chkFlag(int); - /* 80145164 */ void getTevFrm(); - /* 80145180 */ void getBtpFrm(); - /* 8014519C */ void getShadowSize(); - /* 801451B4 */ void getCollisionH(); - /* 801451D0 */ void getCollisionR(); - /* 8015B0B8 */ void getData(); -}; - struct dKy_tevstr_c {}; struct cXyz {}; diff --git a/src/d/a/d_a_itembase_static.cpp b/src/d/a/d_a_itembase_static.cpp index 327104d9e2d..b8e002a6cbe 100644 --- a/src/d/a/d_a_itembase_static.cpp +++ b/src/d/a/d_a_itembase_static.cpp @@ -4,6 +4,7 @@ // #include "d/a/d_a_itembase_static.h" +#include "SSystem/SComponent/c_lib.h" #include "dol2asm.h" #include "dolphin/types.h" @@ -13,19 +14,6 @@ struct fopAc_ac_c {}; -struct daItemBase_c { - /* 80037A5C */ void getItemNo(); - /* 80037A64 */ void hide(); - /* 80037A74 */ void show(); - /* 80037A84 */ void changeDraw(); - /* 80037ACC */ void chkDraw(); - /* 80037AE4 */ void dead(); - /* 80037AF4 */ void chkDead(); - /* 8014475C */ void CreateItemHeap(char const*, s16, s16, s16, s16, s16, s16, s16); - - static u8 const m_data[56]; -}; - struct dItem_data { static void* item_resource[1530]; static void* field_item_res[1020]; @@ -58,75 +46,37 @@ extern "C" void* field_item_res__10dItem_data[1020]; // Declarations: // -/* 80037A5C-80037A64 03239C 0008+00 2/2 2/2 2/2 .text getItemNo__12daItemBase_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItemBase_c::getItemNo() { - nofralloc -#include "asm/d/a/d_a_itembase_static/getItemNo__12daItemBase_cFv.s" +u8 daItemBase_c::getItemNo() { + return mItemNo; } -#pragma pop -/* 80037A64-80037A74 0323A4 0010+00 1/1 5/5 12/12 .text hide__12daItemBase_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItemBase_c::hide() { - nofralloc -#include "asm/d/a/d_a_itembase_static/hide__12daItemBase_cFv.s" +void daItemBase_c::hide() { + cLib_offBit(unk2347, 1); } -#pragma pop -/* 80037A74-80037A84 0323B4 0010+00 1/1 7/7 13/13 .text show__12daItemBase_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItemBase_c::show() { - nofralloc -#include "asm/d/a/d_a_itembase_static/show__12daItemBase_cFv.s" +void daItemBase_c::show() { + cLib_onBit(unk2347, 1); } -#pragma pop -/* 80037A84-80037ACC 0323C4 0048+00 0/0 1/1 0/0 .text changeDraw__12daItemBase_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItemBase_c::changeDraw() { - nofralloc -#include "asm/d/a/d_a_itembase_static/changeDraw__12daItemBase_cFv.s" +void daItemBase_c::changeDraw() { + if (chkDraw()) { + hide(); + } else { + show(); + } } -#pragma pop -/* 80037ACC-80037AE4 03240C 0018+00 1/1 1/1 9/9 .text chkDraw__12daItemBase_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItemBase_c::chkDraw() { - nofralloc -#include "asm/d/a/d_a_itembase_static/chkDraw__12daItemBase_cFv.s" +u8 daItemBase_c::chkDraw() { + return cLib_checkBit(unk2347, 1) != 0; } -#pragma pop -/* 80037AE4-80037AF4 032424 0010+00 0/0 3/3 0/0 .text dead__12daItemBase_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItemBase_c::dead() { - nofralloc -#include "asm/d/a/d_a_itembase_static/dead__12daItemBase_cFv.s" +void daItemBase_c::dead() { + cLib_onBit(unk2347, 2); } -#pragma pop -/* 80037AF4-80037B0C 032434 0018+00 0/0 0/0 1/1 .text chkDead__12daItemBase_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daItemBase_c::chkDead() { - nofralloc -#include "asm/d/a/d_a_itembase_static/chkDead__12daItemBase_cFv.s" +u8 daItemBase_c::chkDead() { + return cLib_checkBit(unk2347, 2) != 0; } -#pragma pop /* 80037B0C-80037B78 03244C 006C+00 0/0 0/0 1/1 .text CheckItemCreateHeap__FP10fopAc_ac_c */ diff --git a/src/d/a/d_a_player.cpp b/src/d/a/d_a_player.cpp index a45287152f3..06e3e9b8236 100644 --- a/src/d/a/d_a_player.cpp +++ b/src/d/a/d_a_player.cpp @@ -17,8 +17,6 @@ struct mDoMtx_stack_c { static u8 now[48]; }; -struct fopAc_ac_c {}; - struct ResTIMG {}; struct daPy_sightPacket_c { @@ -28,80 +26,12 @@ struct daPy_sightPacket_c { /* 8015F384 */ void setSightImage(ResTIMG*); }; -struct cXyz {}; - -struct daPy_py_c { - /* 8015EA0C */ void setParamData(int, int, int, int); - /* 8015EA20 */ void checkFishingRodItem(int); - /* 8015EA48 */ void checkBombItem(int); - /* 8015EA88 */ void checkBottleItem(int); - /* 8015EAD8 */ void checkDrinkBottleItem(int); - /* 8015EB40 */ void checkOilBottleItem(int); - /* 8015EB68 */ void checkOpenBottleItem(int); - /* 8015EB90 */ void checkBowItem(int); - /* 8015EBB8 */ void checkHookshotItem(int); - /* 8015EBD8 */ void checkTradeItem(int); - /* 8015EC28 */ void checkDungeonWarpItem(int); - /* 8015F398 */ void checkMasterSwordEquip(); - /* 8015F3C4 */ void checkWoodShieldEquip(); - /* 8015F3FC */ void getAttentionOffsetY(); - /* 8015F424 */ void checkNowWolfEyeUp(); - /* 8015F438 */ void forceRestartRoom(int, u32, int); - /* 8015F478 */ void setFmChainPos(fopAc_ac_c*, cXyz*, int); - /* 8015F4B8 */ void cancelFmChainGrab(); - /* 8015F4F0 */ void setLookPos(cXyz*); - /* 8015F520 */ void setPlayerSe(u32); - /* 8015F55C */ void linkGrabSubjectNoDraw(fopAc_ac_c*); - /* 8015F60C */ void wolfGrabSubjectNoDraw(fopAc_ac_c*); - /* 8015F660 */ void checkRoomRestartStart(); - /* 8015F698 */ void checkCarryStartLightBallA(); - /* 8015F730 */ void checkCarryStartLightBallB(); - /* 8015F7C8 */ void getSpinnerRideSpeed() const; - /* 8015F814 */ void checkSpinnerReflectEffect(); - /* 8015F89C */ void checkBoomerangCharge(); - /* 8015F8C8 */ bool checkBoomerangChargeTime(); - /* 8015F8D0 */ void getThrowBoomerangActor(); - /* 8015F8E4 */ void cancelBoomerangLockActor(fopAc_ac_c*); - /* 8015F914 */ void setPlayerDamage(int, int); - /* 8015F954 */ void setMidnaMotionNum(int); - /* 8015F968 */ void setMidnaFaceNum(int); - - static u8 m_midnaActor[4]; -}; - -struct daPy_frameCtrl_c { - /* 8015E4CC */ void checkAnmEnd(); - /* 8015E510 */ void updateFrame(); - /* 8015E544 */ void setFrameCtrl(u8, s16, s16, f32, f32); -}; - struct daPy_boomerangMove_c { /* 8015E5B0 */ void initOffset(cXyz const*); /* 8015E654 */ void posMove(cXyz*, s16*, fopAc_ac_c*, s16); /* 8015E87C */ void bgCheckAfterOffset(cXyz const*); }; -struct daPy_anmHeap_c { - struct daAlinkHEAP_TYPE {}; - - /* 8015ED10 */ daPy_anmHeap_c(u32); - /* 8015ED50 */ ~daPy_anmHeap_c(); - /* 8015EDAC */ void initData(); - /* 8015EDC4 */ void mallocBuffer(); - /* 8015EE00 */ void createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE); - /* 8015EF84 */ void loadData(u16); - /* 8015F068 */ void loadDataIdx(u16); - /* 8015F0D0 */ void loadDataPriIdx(u16); - /* 8015F118 */ void loadDataDemoRID(u16, u16); - /* 8015F168 */ void setAnimeHeap(); -}; - -struct daPy_actorKeep_c { - /* 8015EC48 */ void setActor(); - /* 8015ECB8 */ void setData(fopAc_ac_c*); - /* 8015ECFC */ void clearData(); -}; - struct daAlink_c { /* 800A0744 */ void setLookPosFromOut(cXyz*); /* 800BDF60 */ void startRestartRoom(u32, int, int, int); @@ -129,18 +59,12 @@ struct dDlst_list_c { /* 80056794 */ void set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*); }; -struct Vec {}; - struct JMath { static u8 sincosTable_[65536]; }; struct JKRSolidHeap {}; -struct JKRHeap { - /* 802CE5CC */ void freeAll(); -}; - struct JKRArchive { /* 802D5ECC */ void readIdxResource(void*, u32, u32); }; @@ -153,10 +77,6 @@ struct J3DShape { static u8 sOldVcdVatCmd[4]; }; -struct J3DFrameCtrl { - /* 803289CC */ void update(); -}; - struct J3DAnmTransform { /* 80328E40 */ J3DAnmTransform(s16, f32*, s16*, f32*); }; @@ -276,9 +196,6 @@ extern "C" void __ct__15J3DAnmTransformFsPfPsPf(); extern "C" void __ct__19J3DAnmTextureSRTKeyFv(); extern "C" void __ct__16J3DAnmTexPatternFv(); extern "C" void load__20J3DAnmLoaderDataBaseFPCv24J3DAnmLoaderDataBaseFlag(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSVECSquareDistance(); extern "C" void GXSetVtxDesc(); extern "C" void GXClearVtxDesc(); extern "C" void GXSetVtxAttrFmt(); @@ -317,32 +234,43 @@ SECTION_SDATA2 static f32 lit_4215[1 + 1 /* padding */] = { 0.0f, }; -/* 8015E4CC-8015E510 158E0C 0044+00 0/0 235/235 6/6 .text checkAnmEnd__16daPy_frameCtrl_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daPy_frameCtrl_c::checkAnmEnd() { - nofralloc -#include "asm/d/a/d_a_player/checkAnmEnd__16daPy_frameCtrl_cFv.s" +bool daPy_frameCtrl_c::checkAnmEnd() { + if (getEndFlg() != 0 && getNowSetFlg() == 0) { + return true; + } + if (getRate() == lit_4215[0]) { + onEndFlg(); + onNowSetFlg(); + } + return false; } -#pragma pop -/* 8015E510-8015E544 158E50 0034+00 0/0 1/1 2/2 .text updateFrame__16daPy_frameCtrl_cFv - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daPy_frameCtrl_c::updateFrame() { - nofralloc -#include "asm/d/a/d_a_player/updateFrame__16daPy_frameCtrl_cFv.s" +void daPy_frameCtrl_c::updateFrame() { + update(); + offNowSetFlg(); } -#pragma pop /* ############################################################################################## */ /* 80453608-80453610 001C08 0008+00 2/2 0/0 0/0 .sdata2 @4237 */ SECTION_SDATA2 static f64 lit_4237 = 4503601774854144.0 /* cast s32 to float */; /* 8015E544-8015E5B0 158E84 006C+00 0/0 1/1 6/6 .text setFrameCtrl__16daPy_frameCtrl_cFUcssff */ +// compiler generated literal from short to float conversion +#ifdef NONMATCHING +void daPy_frameCtrl_c::setFrameCtrl(u8 pAttribute, s16 pStart, s16 pEnd, f32 pRate, f32 pFrame) { + setAttribute(pAttribute); + setEnd(pEnd); + setRate(pRate); + setStart(pStart); + setFrame(pFrame); + if (pRate >= lit_4215[0]) { + setLoop(pStart); + } else { + setLoop(pEnd); + } + offEndFlg(); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -352,6 +280,7 @@ asm void daPy_frameCtrl_c::setFrameCtrl(u8 param_0, s16 param_1, s16 param_2, f3 #include "asm/d/a/d_a_player/setFrameCtrl__16daPy_frameCtrl_cFUcssff.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80453610-80453614 001C10 0004+00 1/1 0/0 0/0 .sdata2 @4247 */ @@ -447,6 +376,17 @@ asm void daPy_py_c::setParamData(int param_0, int param_1, int param_2, int para /* 8015EA20-8015EA48 159360 0028+00 0/0 10/10 3/3 .text checkFishingRodItem__9daPy_py_cFi */ +#ifdef NONMATCHING +BOOL daPy_py_c::checkFishingRodItem(int i_item_id) { + bool is_fishing_item = false; + + if (i_item_id == FISHING_ROD_1 || i_item_id < BEE_ROD || i_item_id <= JEWEL_WORM_ROD) { + is_fishing_item = true; + } + + return is_fishing_item; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -455,6 +395,7 @@ asm void daPy_py_c::checkFishingRodItem(int param_0) { #include "asm/d/a/d_a_player/checkFishingRodItem__9daPy_py_cFi.s" } #pragma pop +#endif /* 8015EA48-8015EA88 159388 0040+00 0/0 3/3 0/0 .text checkBombItem__9daPy_py_cFi */ #pragma push @@ -541,14 +482,25 @@ asm void daPy_py_c::checkTradeItem(int param_0) { /* 8015EC28-8015EC48 159568 0020+00 0/0 2/2 0/0 .text checkDungeonWarpItem__9daPy_py_cFi */ +// regalloc +#ifdef NONMATCHING +BOOL daPy_py_c::checkDungeonWarpItem(int i_item_id) { + bool isDungeonWarpItem = false; + if (i_item_id == DUNGEON_EXIT || i_item_id == DUNGEON_BACK) { + isDungeonWarpItem = true; + } + return isDungeonWarpItem; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::checkDungeonWarpItem(int param_0) { +asm BOOL daPy_py_c::checkDungeonWarpItem(int param_0) { nofralloc #include "asm/d/a/d_a_player/checkDungeonWarpItem__9daPy_py_cFi.s" } #pragma pop +#endif /* 8015EC48-8015ECB8 159588 0070+00 0/0 10/10 3/3 .text setActor__16daPy_actorKeep_cFv */ #pragma push @@ -571,26 +523,15 @@ asm void daPy_actorKeep_c::setData(fopAc_ac_c* param_0) { } #pragma pop -/* 8015ECFC-8015ED10 15963C 0014+00 2/2 41/41 12/12 .text clearData__16daPy_actorKeep_cFv - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daPy_actorKeep_c::clearData() { - nofralloc -#include "asm/d/a/d_a_player/clearData__16daPy_actorKeep_cFv.s" +void daPy_actorKeep_c::clearData() { + mID = 0xffffffff; + mActor = NULL; } -#pragma pop -/* 8015ED10-8015ED50 159650 0040+00 0/0 2/2 2/2 .text __ct__14daPy_anmHeap_cFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daPy_anmHeap_c::daPy_anmHeap_c(u32 param_0) { - nofralloc -#include "asm/d/a/d_a_player/__ct__14daPy_anmHeap_cFUl.s" +daPy_anmHeap_c::daPy_anmHeap_c(u32 pBufferSize) { + initData(); + mBufferSize = pBufferSize; } -#pragma pop /* 8015ED50-8015EDAC 159690 005C+00 0/0 2/2 2/2 .text __dt__14daPy_anmHeap_cFv */ #pragma push @@ -602,15 +543,11 @@ asm daPy_anmHeap_c::~daPy_anmHeap_c() { } #pragma pop -/* 8015EDAC-8015EDC4 1596EC 0018+00 1/1 0/0 1/1 .text initData__14daPy_anmHeap_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daPy_anmHeap_c::initData() { - nofralloc -#include "asm/d/a/d_a_player/initData__14daPy_anmHeap_cFv.s" +void daPy_anmHeap_c::initData() { + resetIdx(); + resetPriIdx(); + resetArcNo(); } -#pragma pop /* 8015EDC4-8015EE00 159704 003C+00 0/0 1/1 1/1 .text mallocBuffer__14daPy_anmHeap_cFv */ #pragma push @@ -1153,16 +1090,15 @@ asm void daPy_py_c::checkCarryStartLightBallB() { } #pragma pop -/* 8015F7C8-8015F814 15A108 004C+00 0/0 0/0 2/2 .text getSpinnerRideSpeed__9daPy_py_cCFv - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daPy_py_c::getSpinnerRideSpeed() const { - nofralloc -#include "asm/d/a/d_a_player/getSpinnerRideSpeed__9daPy_py_cCFv.s" +float daPy_py_c::getSpinnerRideSpeed() const { + float rideSpeed; + if (checkSpinnerRide()) { + rideSpeed = mSpeedF; + } else { + rideSpeed = lit_4215[0]; + } + return rideSpeed; } -#pragma pop /* 8015F814-8015F89C 15A154 0088+00 0/0 0/0 1/1 .text checkSpinnerReflectEffect__9daPy_py_cFv */ #pragma push diff --git a/src/d/bg/d_bg_s.cpp b/src/d/bg/d_bg_s.cpp index cc972c76f12..874d4d9d060 100644 --- a/src/d/bg/d_bg_s.cpp +++ b/src/d/bg/d_bg_s.cpp @@ -7,143 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct fopAc_ac_c {}; - -struct dBgW_Base { - struct PushPullLabel {}; - - /* 80074AB4 */ void SetOldShapeAngleY(s16); - /* 8007E6E0 */ void CalcDiffShapeAngleY(s16); -}; - -struct dBgW {}; - -struct dBgS_SplGrpChk { - /* 80078D0C */ void Init(); -}; - -struct dBgS_SphChk {}; - -struct dBgS_RoofChk { - /* 80079124 */ void Init(); -}; - -struct dBgS_Acch { - /* 80077278 */ void SetNowActorInfo(int, void*, unsigned int); - /* 800772E8 */ void CalcMovePosWork(); - /* 8007732C */ void CalcWallRR(); -}; - -struct cBgS_PolyInfo { - /* 802680F8 */ void ChkSetInfo() const; - /* 80268120 */ void ClearPi(); - /* 8026816C */ void SetActorInfo(int, void*, unsigned int); - /* 8026817C */ void ChkSafe(void const*, unsigned int) const; - /* 802681AC */ void ChkBgIndex() const; -}; - -struct csXyz {}; - -struct cXyz {}; - -struct dBgS { - /* 80030C50 */ ~dBgS(); - /* 800748FC */ void Ct(); - /* 8007491C */ void Dt(); - /* 8007493C */ void ClrMoveFlag(); - /* 800749A8 */ void Move(); - /* 80074A08 */ void Regist(dBgW_Base*, fopAc_ac_c*); - /* 80074ABC */ void ChkMoveBG(cBgS_PolyInfo const&); - /* 80074B40 */ void ChkMoveBG_NoDABg(cBgS_PolyInfo const&); - /* 80074B98 */ void GetExitId(cBgS_PolyInfo const&); - /* 80074BE8 */ void GetPolyColor(cBgS_PolyInfo const&); - /* 80074C6C */ void GetHorseNoEntry(cBgS_PolyInfo const&); - /* 80074CBC */ void GetSpecialCode(cBgS_PolyInfo const&); - /* 80074D0C */ void GetMagnetCode(cBgS_PolyInfo const&); - /* 80074D5C */ void GetMonkeyBarsCode(cBgS_PolyInfo const&); - /* 80074DAC */ void GetUnderwaterRoofCode(cBgS_PolyInfo const&); - /* 80074E00 */ void GetWallCode(cBgS_PolyInfo const&); - /* 80074E50 */ void GetPolyAtt0(cBgS_PolyInfo const&); - /* 80074EA0 */ void GetPolyAtt1(cBgS_PolyInfo const&); - /* 80074EF0 */ void GetGroundCode(cBgS_PolyInfo const&); - /* 80074F40 */ void GetCamMoveBG(cBgS_PolyInfo const&); - /* 80074F90 */ void GetRoomCamId(cBgS_PolyInfo const&); - /* 80074FE0 */ void GetRoomPathId(cBgS_PolyInfo const&); - /* 80075030 */ void GetRoomPathPntNo(cBgS_PolyInfo const&); - /* 80075080 */ void GetGrpSoundId(cBgS_PolyInfo const&); - /* 800750D0 */ void ChkGrpInf(cBgS_PolyInfo const&, u32); - /* 80075100 */ void GetRoomId(cBgS_PolyInfo const&); - /* 8007519C */ void GetPolyAttackThrough(cBgS_PolyInfo const&); - /* 800751F8 */ void ChkPolyHSStick(cBgS_PolyInfo const&); - /* 8007524C */ void WallCorrect(dBgS_Acch*); - /* 80075374 */ void WallCorrectSort(dBgS_Acch*); - /* 8007549C */ void RoofChk(dBgS_RoofChk*); - /* 80075564 */ void SplGrpChk(dBgS_SplGrpChk*); - /* 80075688 */ void SphChk(dBgS_SphChk*, void*); - /* 80075774 */ void MoveBgCrrPos(cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*, bool, bool); - /* 80075880 */ void MoveBgTransPos(cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*); - /* 8007595C */ void MoveBgMatrixCrrPos(cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*); - /* 80075B84 */ void RideCallBack(cBgS_PolyInfo const&, fopAc_ac_c*); - /* 80075BF4 */ void ArrowStickCallBack(cBgS_PolyInfo const&, fopAc_ac_c*, cXyz&); - /* 80075C6C */ void PushPullCallBack(cBgS_PolyInfo const&, fopAc_ac_c*, s16, - dBgW_Base::PushPullLabel); -}; - -struct cM3dGPla {}; - -struct cBgW_BgId { - /* 802681C8 */ void Release(); - /* 802681D4 */ void ChkUsed() const; -}; - -struct cBgW { - /* 8007B17C */ void GetTrans(cXyz*) const; -}; - -struct cBgS_ShdwDraw {}; - -struct cBgS_LinChk { - /* 80267F40 */ void PreCalc(); -}; - -struct cBgS_GndChk { - /* 80267D44 */ void PreCheck(); -}; - -struct cBgS_ChkElm { - /* 8002FEF8 */ ~cBgS_ChkElm(); - /* 800740F4 */ void Init(); - /* 80074110 */ void Regist2(dBgW_Base*, unsigned int, void*); - /* 80074128 */ void Release(); -}; - -struct cBgS_Chk { - /* 80267BDC */ void ChkSameActorPid(unsigned int) const; -}; - -struct cBgS { - /* 80030CCC */ ~cBgS(); - /* 80074144 */ void Regist(dBgW_Base*, unsigned int, void*); - /* 80074250 */ void Release(dBgW_Base*); - /* 800742E4 */ void Ct(); - /* 80074338 */ void Dt(); - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); - /* 80074578 */ void ConvDzb(void*); - /* 80074618 */ void GetActorPointer(int) const; - /* 80074628 */ void GetBgWBasePointer(cBgS_PolyInfo const&) const; - /* 80074660 */ void ChkPolySafe(cBgS_PolyInfo const&); - /* 800746F4 */ void GetGrpRoomId(cBgS_PolyInfo const&) const; - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; - /* 800747F0 */ void GetTriPnt(cBgS_PolyInfo const&, cXyz*, cXyz*, cXyz*) const; - /* 80074840 */ void ShdwDraw(cBgS_ShdwDraw*); - /* 800748AC */ void GetGrpInf(cBgS_PolyInfo const&) const; -}; - // // Forward References: // @@ -247,9 +110,6 @@ extern "C" void ChkUsed__9cBgW_BgIdCFv(); extern "C" void cBgW_CheckBGround__Ff(); extern "C" void cBgW_CheckBRoof__Ff(); extern "C" void cBgW_CheckBWall__Ff(); -extern "C" void PSMTXInverse(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); extern "C" void _savegpr_22(); extern "C" void _savegpr_24(); extern "C" void _savegpr_25(); diff --git a/src/d/bg/d_bg_s_acch.cpp b/src/d/bg/d_bg_s_acch.cpp index 30c4606e6c8..87ca3f2bdb9 100644 --- a/src/d/bg/d_bg_s_acch.cpp +++ b/src/d/bg/d_bg_s_acch.cpp @@ -7,153 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct fopAc_ac_c {}; - -struct daPy_py_c { - /* 80077494 */ bool checkPlayerFly() const; -}; - -struct dBgS_WtrChk { - /* 80079164 */ dBgS_WtrChk(); -}; - -struct cXyz {}; - -struct dBgS_SplGrpChk { - /* 80078B90 */ void Set(cXyz&, f32); - /* 80078C78 */ ~dBgS_SplGrpChk(); -}; - -struct dBgS_RoofChk { - /* 80078FF4 */ dBgS_RoofChk(); - /* 80079090 */ ~dBgS_RoofChk(); -}; - -struct dBgS_PolyPassChk { - /* 80078E0C */ void SetPassChkInfo(dBgS_PolyPassChk&); - /* 80078EEC */ void SetUnderwaterRoof(); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_Chk { - /* 8007749C */ dBgS_Chk(); - /* 800774E8 */ ~dBgS_Chk(); - /* 80077560 */ void GetPolyPassChkInfo(); - /* 80077564 */ void GetGrpPassChkInfo(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F14 */ void ClrWallHit(); - /* 80075F40 */ void SetWallR(f32); - /* 80075F48 */ void CalcWallRR(); - /* 80075F58 */ void SetWall(f32, f32); - /* 80075F80 */ void SetWallHDirect(f32); - /* 80077414 */ ~dBgS_AcchCir(); -}; - -struct csXyz {}; - -struct Vec {}; - -struct cBgS_PolyInfo { - /* 80268074 */ cBgS_PolyInfo(); - /* 802680B0 */ ~cBgS_PolyInfo(); - /* 80268120 */ void ClearPi(); - /* 8026816C */ void SetActorInfo(int, void*, unsigned int); -}; - -struct dBgS_Acch; -struct dBgS { - /* 8007524C */ void WallCorrect(dBgS_Acch*); - /* 80075374 */ void WallCorrectSort(dBgS_Acch*); - /* 8007549C */ void RoofChk(dBgS_RoofChk*); - /* 80075564 */ void SplGrpChk(dBgS_SplGrpChk*); - /* 80075774 */ void MoveBgCrrPos(cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*, bool, bool); - /* 80075B84 */ void RideCallBack(cBgS_PolyInfo const&, fopAc_ac_c*); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 800761CC */ void Init(); - /* 80076288 */ void Set(fopAc_ac_c*, int, dBgS_AcchCir*); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 800762D8 */ void GroundCheckInit(dBgS&); - /* 80076350 */ void GroundCheck(dBgS&); - /* 8007654C */ void GroundRoofProc(dBgS&); - /* 80076624 */ void LineCheck(dBgS&); - /* 80076AAC */ void CrrPos(dBgS&); - /* 80076F84 */ void GetWallAllR(); - /* 80076FC0 */ void SetWallCir(); - /* 8007703C */ void CalcWallBmdCyl(); - /* 80077114 */ void SetGroundUpY(f32); - /* 80077128 */ void GetWallAllLowH(); - /* 80077178 */ void GetWallAllLowH_R(); - /* 800771E4 */ void GetSpeedY(); - /* 80077200 */ void GetWallAddY(Vec&); - /* 80077278 */ void SetNowActorInfo(int, void*, unsigned int); - /* 80077288 */ void SetWallPolyIndex(int, int); - /* 800772E8 */ void CalcMovePosWork(); - /* 8007732C */ void CalcWallRR(); - /* 80077388 */ void SetMoveBGOnly(); - /* 800773A4 */ void ClrMoveBGOnly(); - /* 800773C0 */ void SetGndThinCellingOff(); - /* 800773D0 */ void ClrGndThinCellingOff(); - /* 800773E0 */ void ChkGndThinCellingOff(); - /* 800773EC */ void OnWallSort(); - /* 800773FC */ void ChkWallSort(); - /* 80077408 */ void ChkLineDown(); -}; - -struct cM3dGPla { - /* 8026F5D4 */ void getCrossYLessD(Vec const&, f32*) const; -}; - -struct cM3dGLin { - /* 8026F2E8 */ void SetStartEnd(cXyz const&, cXyz const&); -}; - -struct cM3dGCyl { - /* 8026F180 */ void Set(cXyz const&, f32, f32); -}; - -struct cM3dGCir { - /* 8026EEB4 */ cM3dGCir(); - /* 8026EF18 */ ~cM3dGCir(); - /* 8026EF74 */ void Set(f32, f32, f32, f32); -}; - -struct cBgS_LinChk { - /* 80267D5C */ cBgS_LinChk(); - /* 80267DBC */ ~cBgS_LinChk(); - /* 80267ED0 */ void Set2(cXyz const*, cXyz const*, unsigned int); -}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS_Chk { - /* 80267B4C */ cBgS_Chk(); - /* 80267B70 */ ~cBgS_Chk(); - /* 80267BB8 */ void SetExtChk(cBgS_Chk&); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); - /* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const; -}; - // // Forward References: // @@ -245,8 +98,6 @@ extern "C" void Set__8cM3dGCylFRC4cXyzff(); extern "C" void SetStartEnd__8cM3dGLinFRC4cXyzRC4cXyz(); extern "C" void getCrossYLessD__8cM3dGPlaCFRC3VecPf(); extern "C" void __dl__FPv(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSquareDistance(); extern "C" void __register_global_object(); extern "C" void _savegpr_25(); extern "C" void _savegpr_29(); @@ -258,7 +109,7 @@ extern "C" extern void* __vt__8cM3dGCyl[3]; extern "C" extern void* __vt__8cM3dGLin[3]; extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 data_80450F68[8]; -extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; +extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */]; // // // Declarations: diff --git a/src/d/bg/d_bg_s_chk.cpp b/src/d/bg/d_bg_s_chk.cpp index c12d5e5c613..5cd536c8142 100644 --- a/src/d/bg/d_bg_s_chk.cpp +++ b/src/d/bg/d_bg_s_chk.cpp @@ -7,27 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct dBgS_PolyPassChk { - /* 80078D64 */ dBgS_PolyPassChk(); - /* 80078DB0 */ ~dBgS_PolyPassChk(); -}; - -struct dBgS_GrpPassChk { - /* 80077BA0 */ dBgS_GrpPassChk(); - /* 80077BC4 */ ~dBgS_GrpPassChk(); -}; - -struct dBgS_Chk { - /* 8007749C */ dBgS_Chk(); - /* 800774E8 */ ~dBgS_Chk(); - /* 80077560 */ void GetPolyPassChkInfo(); - /* 80077564 */ void GetGrpPassChkInfo(); -}; - // // Forward References: // diff --git a/src/d/bg/d_bg_s_gnd_chk.cpp b/src/d/bg/d_bg_s_gnd_chk.cpp index c96d66d3df9..e980aaa35f5 100644 --- a/src/d/bg/d_bg_s_gnd_chk.cpp +++ b/src/d/bg/d_bg_s_gnd_chk.cpp @@ -11,11 +11,6 @@ // Types: // -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); - /* 80078E80 */ void SetCam(); -}; - struct dBgS_ObjGndChk_Wtr { /* 80077678 */ dBgS_ObjGndChk_Wtr(); /* 80077710 */ ~dBgS_ObjGndChk_Wtr(); @@ -30,18 +25,6 @@ struct dBgS_ObjGndChk_All { /* 800778E8 */ ~dBgS_ObjGndChk_All(); }; -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_Chk { - /* 8007749C */ dBgS_Chk(); - /* 800774E8 */ ~dBgS_Chk(); - /* 80077560 */ void GetPolyPassChkInfo(); - /* 80077564 */ void GetGrpPassChkInfo(); -}; - struct dBgS_CamGndChk_Wtr { /* 80077A00 */ dBgS_CamGndChk_Wtr(); /* 80077A98 */ ~dBgS_CamGndChk_Wtr(); @@ -51,11 +34,6 @@ struct dBgS_CamGndChk { /* 80077988 */ ~dBgS_CamGndChk(); }; -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); - /* 80267C94 */ ~cBgS_GndChk(); -}; - // // Forward References: // diff --git a/src/d/bg/d_bg_s_grp_pass_chk.cpp b/src/d/bg/d_bg_s_grp_pass_chk.cpp index 9ff940898d5..3576dc35005 100644 --- a/src/d/bg/d_bg_s_grp_pass_chk.cpp +++ b/src/d/bg/d_bg_s_grp_pass_chk.cpp @@ -7,19 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct dBgS_GrpPassChk { - /* 80077BA0 */ dBgS_GrpPassChk(); - /* 80077BC4 */ ~dBgS_GrpPassChk(); -}; - -struct cBgS_GrpPassChk { - /* 80077C20 */ ~cBgS_GrpPassChk(); -}; - // // Forward References: // diff --git a/src/d/bg/d_bg_s_poly_pass_chk.cpp b/src/d/bg/d_bg_s_poly_pass_chk.cpp index 7322e12c87b..1397001e419 100644 --- a/src/d/bg/d_bg_s_poly_pass_chk.cpp +++ b/src/d/bg/d_bg_s_poly_pass_chk.cpp @@ -7,38 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct dBgS_PolyPassChk { - /* 80078D64 */ dBgS_PolyPassChk(); - /* 80078DB0 */ ~dBgS_PolyPassChk(); - /* 80078E0C */ void SetPassChkInfo(dBgS_PolyPassChk&); - /* 80078E68 */ void SetObj(); - /* 80078E74 */ void ClrObj(); - /* 80078E80 */ void SetCam(); - /* 80078E8C */ void ClrCam(); - /* 80078E98 */ void SetLink(); - /* 80078EA4 */ void ClrLink(); - /* 80078EB0 */ void SetArrow(); - /* 80078EBC */ void SetBomb(); - /* 80078EC8 */ void ClrBomb(); - /* 80078ED4 */ void SetBoomerang(); - /* 80078EE0 */ void SetRope(); - /* 80078EEC */ void SetUnderwaterRoof(); - /* 80078EF8 */ void SetHorse(); - /* 80078F04 */ void ChkNoHorse(); - /* 80078F7C */ void SetStatue(); - /* 80078F88 */ void ClrStatue(); - /* 80078F94 */ void SetIronBall(); - /* 80078FA0 */ void ClrIronBall(); -}; - -struct cBgS_PolyPassChk { - /* 80078FAC */ ~cBgS_PolyPassChk(); -}; - // // Forward References: // @@ -258,7 +226,7 @@ asm void dBgS_PolyPassChk::SetHorse() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dBgS_PolyPassChk::ChkNoHorse() { +asm bool dBgS_PolyPassChk::ChkNoHorse() { nofralloc #include "asm/d/bg/d_bg_s_poly_pass_chk/ChkNoHorse__16dBgS_PolyPassChkFv.s" } diff --git a/src/d/bg/d_bg_s_roof_chk.cpp b/src/d/bg/d_bg_s_roof_chk.cpp index 93b3d452995..b7dc29e9437 100644 --- a/src/d/bg/d_bg_s_roof_chk.cpp +++ b/src/d/bg/d_bg_s_roof_chk.cpp @@ -7,34 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct dBgS_RoofChk { - /* 80078FF4 */ dBgS_RoofChk(); - /* 80079090 */ ~dBgS_RoofChk(); - /* 80079124 */ void Init(); -}; - -struct dBgS_Chk { - /* 8007749C */ dBgS_Chk(); - /* 800774E8 */ ~dBgS_Chk(); - /* 80077560 */ void GetPolyPassChkInfo(); - /* 80077564 */ void GetGrpPassChkInfo(); -}; - -struct cBgS_PolyInfo { - /* 80268074 */ cBgS_PolyInfo(); - /* 802680B0 */ ~cBgS_PolyInfo(); - /* 80268120 */ void ClearPi(); -}; - -struct cBgS_Chk { - /* 80267B4C */ cBgS_Chk(); - /* 80267B70 */ ~cBgS_Chk(); -}; - // // Forward References: // diff --git a/src/d/bg/d_bg_s_spl_grp_chk.cpp b/src/d/bg/d_bg_s_spl_grp_chk.cpp index 4aed24a3f0b..a37da2496bd 100644 --- a/src/d/bg/d_bg_s_spl_grp_chk.cpp +++ b/src/d/bg/d_bg_s_spl_grp_chk.cpp @@ -7,37 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct cXyz {}; - -struct dBgS_SplGrpChk { - /* 80078B90 */ void Set(cXyz&, f32); - /* 80078BB0 */ dBgS_SplGrpChk(); - /* 80078C78 */ ~dBgS_SplGrpChk(); - /* 80078D0C */ void Init(); -}; - -struct dBgS_Chk { - /* 8007749C */ dBgS_Chk(); - /* 800774E8 */ ~dBgS_Chk(); - /* 80077560 */ void GetPolyPassChkInfo(); - /* 80077564 */ void GetGrpPassChkInfo(); -}; - -struct cBgS_PolyInfo { - /* 80268074 */ cBgS_PolyInfo(); - /* 802680B0 */ ~cBgS_PolyInfo(); - /* 80268120 */ void ClearPi(); -}; - -struct cBgS_Chk { - /* 80267B4C */ cBgS_Chk(); - /* 80267B70 */ ~cBgS_Chk(); -}; - // // Forward References: // diff --git a/src/d/bg/d_bg_s_wtr_chk.cpp b/src/d/bg/d_bg_s_wtr_chk.cpp index c148afb4285..20f10e438db 100644 --- a/src/d/bg/d_bg_s_wtr_chk.cpp +++ b/src/d/bg/d_bg_s_wtr_chk.cpp @@ -7,18 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct dBgS_WtrChk { - /* 80079164 */ dBgS_WtrChk(); -}; - -struct dBgS_SplGrpChk { - /* 80078BB0 */ dBgS_SplGrpChk(); -}; - // // Forward References: // diff --git a/src/d/bg/d_bg_w.cpp b/src/d/bg/d_bg_w.cpp index 8d2acb60024..d61171e3282 100644 --- a/src/d/bg/d_bg_w.cpp +++ b/src/d/bg/d_bg_w.cpp @@ -11,230 +11,6 @@ // Types: // -struct fopAc_ac_c {}; - -struct cXyz {}; - -struct dBgW_Base { - /* 8007E5A8 */ dBgW_Base(); - /* 8007E640 */ ~dBgW_Base(); - /* 8007E6D8 */ void CallRideCallBack(fopAc_ac_c*, fopAc_ac_c*); - /* 8007E6DC */ void CallArrowStickCallBack(fopAc_ac_c*, fopAc_ac_c*, cXyz&); -}; - -struct cBgS_PolyInfo {}; - -struct csXyz {}; - -struct cBgS_GrpPassChk {}; - -struct cBgS_PolyPassChk {}; - -struct dBgS_CaptPoly {}; - -struct Vec {}; - -struct dBgS_Acch { - /* 800771E4 */ void GetSpeedY(); - /* 80077200 */ void GetWallAddY(Vec&); - /* 80077288 */ void SetWallPolyIndex(int, int); - /* 800772E8 */ void CalcMovePosWork(); -}; - -struct dBgS_SphChk {}; - -struct dBgS_RoofChk {}; - -struct cM3dGPla { - /* 8026F57C */ void getCrossY(cXyz const&, f32*) const; -}; - -struct dBgS_SplGrpChk {}; - -struct dBgW { - /* 8007B3AC */ void GetExitId(cBgS_PolyInfo const&); - /* 8007B3D8 */ void GetPolyColor(cBgS_PolyInfo const&); - /* 8007B404 */ void GetHorseNoEntry(cBgS_PolyInfo const&); - /* 8007B430 */ void GetSpecialCode(cBgS_PolyInfo const&); - /* 8007B460 */ void GetSpecialCode(int); - /* 8007B488 */ void GetMagnetCode(cBgS_PolyInfo const&); - /* 8007B4B4 */ void GetMonkeyBarsCode(cBgS_PolyInfo const&); - /* 8007B4E0 */ void GetPolyObjThrough(int); - /* 8007B504 */ void GetPolyCamThrough(int); - /* 8007B52C */ void GetPolyLinkThrough(int); - /* 8007B550 */ void GetPolyArrowThrough(int); - /* 8007B574 */ void GetPolyHSStick(int); - /* 8007B598 */ void GetPolyBoomerangThrough(int); - /* 8007B5BC */ void GetPolyRopeThrough(int); - /* 8007B5E0 */ void GetPolyBombThrough(int); - /* 8007B604 */ void GetShdwThrough(int); - /* 8007B630 */ void GetUnderwaterRoofCode(int); - /* 8007B6AC */ void GetLinkNo(cBgS_PolyInfo const&); - /* 8007B6D8 */ void GetWallCode(cBgS_PolyInfo const&); - /* 8007B704 */ void GetPolyAtt0(cBgS_PolyInfo const&); - /* 8007B734 */ void GetPolyAtt1(cBgS_PolyInfo const&); - /* 8007B760 */ void GetGroundCode(cBgS_PolyInfo const&); - /* 8007B7DC */ void GetIronBallThrough(int); - /* 8007B800 */ void GetAttackThrough(int); - /* 8007B87C */ void GetCamMoveBG(cBgS_PolyInfo const&); - /* 8007B8A8 */ void GetRoomCamId(cBgS_PolyInfo const&); - /* 8007B8D8 */ void GetRoomPathId(cBgS_PolyInfo const&); - /* 8007B904 */ void GetRoomPathPntNo(cBgS_PolyInfo const&); - /* 8007B970 */ dBgW(); - /* 8007B9C0 */ void Move(); - /* 8007B9EC */ void positionWallCorrect(dBgS_Acch*, f32, cM3dGPla&, cXyz*, f32); - /* 8007BA40 */ void RwgWallCorrect(dBgS_Acch*, u16); - /* 8007C234 */ void WallCorrectRp(dBgS_Acch*, int); - /* 8007C360 */ void WallCorrectGrpRp(dBgS_Acch*, int, int); - /* 8007C484 */ void WallCorrect(dBgS_Acch*); - /* 8007C4AC */ void RwgWallCorrectSort(dBgS_Acch*, u16); - /* 8007C714 */ void WallCorrectRpSort(dBgS_Acch*, int); - /* 8007C808 */ void WallCorrectGrpRpSort(dBgS_Acch*, int, int); - /* 8007C910 */ void WallCorrectSort(dBgS_Acch*); - /* 8007D0DC */ void RwgRoofChk(u16, dBgS_RoofChk*); - /* 8007D208 */ void RoofChkRp(dBgS_RoofChk*, int); - /* 8007D330 */ void RoofChkGrpRp(dBgS_RoofChk*, int, int); - /* 8007D470 */ void RoofChk(dBgS_RoofChk*); - /* 8007D498 */ void RwgSplGrpChk(u16, dBgS_SplGrpChk*); - /* 8007D5C4 */ void SplGrpChkRp(dBgS_SplGrpChk*, int); - /* 8007D6F0 */ void SplGrpChkGrpRp(dBgS_SplGrpChk*, int, int); - /* 8007D830 */ void SplGrpChk(dBgS_SplGrpChk*); - /* 8007D858 */ void RwgCaptPoly(int, dBgS_CaptPoly&); - /* 8007D8E8 */ void CaptPolyRp(dBgS_CaptPoly&, int); - /* 8007DA04 */ void CaptPolyGrpRp(dBgS_CaptPoly&, int, int); - /* 8007DAF8 */ void CaptPoly(dBgS_CaptPoly&); - /* 8007DB20 */ void RwgSphChk(u16, dBgS_SphChk*, void*); - /* 8007DC70 */ void SphChkRp(dBgS_SphChk*, void*, int); - /* 8007DDE0 */ void SphChkGrpRp(dBgS_SphChk*, void*, int, int); - /* 8007DF00 */ void SphChk(dBgS_SphChk*, void*); - /* 8007DF28 */ void GetPolyGrpRoomInfId(cBgS_PolyInfo const&); - /* 8007DF58 */ void GetGrpSoundId(cBgS_PolyInfo const&); - /* 8007DF88 */ void CrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*); - /* 8007DFC4 */ void TransPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*); - /* 8007E000 */ void MatrixCrrPos(cBgS_PolyInfo const&, void*, bool, cXyz*, csXyz*, csXyz*); - /* 8007E02C */ void ChkPolyThrough(int, cBgS_PolyPassChk*); - /* 8007E360 */ void ChkShdwDrawThrough(int, cBgS_PolyPassChk*); - /* 8007E3D8 */ void ChkGrpThrough(int, cBgS_GrpPassChk*, int); - /* 8007E444 */ void CallRideCallBack(fopAc_ac_c*, fopAc_ac_c*); - /* 8007E474 */ void CallArrowStickCallBack(fopAc_ac_c*, fopAc_ac_c*, cXyz&); - /* 8007E4A4 */ void OffMoveFlag(); - /* 8007E4B4 */ void ChkMoveFlag() const; - /* 8007E548 */ ~dBgW(); -}; - -struct dBgS_PolyPassChk { - /* 80078F04 */ void ChkNoHorse(); -}; - -struct cM3dGTri { - /* 8007A344 */ ~cM3dGTri(); - /* 8026F85C */ void setBg(Vec const*, Vec const*, Vec const*, cM3dGPla const*); -}; - -struct cM3dGSph {}; - -struct cM3dGLin { - /* 8026F3C0 */ void SetEnd(cXyz const&); -}; - -struct cM3dGCyl {}; - -struct cM3dGAab { - /* 8026EC88 */ void CrossY(cXyz const*) const; - /* 8026ECD0 */ void UnderPlaneYUnder(f32) const; - /* 8026ECE4 */ void TopPlaneYUnder(f32) const; - /* 8026ECF8 */ void ClearForMinMax(); - /* 8026ED1C */ void SetMinMax(cXyz const&); - /* 8026EDA4 */ void SetMin(cXyz const&); - /* 8026EDE4 */ void SetMax(cXyz const&); -}; - -struct cM2dGCir {}; - -struct cBgW_TriElm { - /* 800796F8 */ ~cBgW_TriElm(); - /* 80079754 */ cBgW_TriElm(); -}; - -struct cBgW_RwgElm { - /* 800791C4 */ cBgW_RwgElm(); - /* 800791D4 */ ~cBgW_RwgElm(); -}; - -struct cBgW_NodeTree { - /* 8007921C */ cBgW_NodeTree(); - /* 80079238 */ ~cBgW_NodeTree(); -}; - -struct cBgW_GrpElm { - /* 8007A184 */ ~cBgW_GrpElm(); - /* 8007A1E4 */ cBgW_GrpElm(); -}; - -struct cBgS_ShdwDraw {}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk {}; - -struct cBgD_t {}; - -struct cBgW { - /* 80079294 */ cBgW(); - /* 8007933C */ ~cBgW(); - /* 800793A4 */ void FreeArea(); - /* 800793C4 */ void GlobalVtx(); - /* 80079484 */ void SetVtx(); - /* 80079564 */ void CalcPlane(); - /* 80079668 */ void SetTri(); - /* 80079770 */ void BlckConnect(u16*, int*, int); - /* 800797BC */ void ClassifyPlane(); - /* 8007998C */ void MakeBlckTransMinMax(cXyz*, cXyz*); - /* 800799E0 */ void MakeBlckMinMax(int, cXyz*, cXyz*); - /* 80079A68 */ void MakeBlckBnd(int, cXyz*, cXyz*); - /* 80079BDC */ void MakeNodeTreeRp(int); - /* 80079CC4 */ void MakeNodeTreeGrpRp(int); - /* 80079DF0 */ void MakeNodeTree(); - /* 80079EEC */ void ChkMemoryError(); - /* 80079F38 */ void Set(cBgD_t*, u32, f32 (*)[3][4]); - /* 8007A200 */ void RwgLineCheck(u16, cBgS_LinChk*); - /* 8007A3A0 */ void LineCheckRp(cBgS_LinChk*, int); - /* 8007A52C */ void LineCheckGrpRp(cBgS_LinChk*, int, int); - /* 8007A658 */ void LineCheck(cBgS_LinChk*); - /* 8007A680 */ void RwgGroundCheckCommon(f32, u16, cBgS_GndChk*); - /* 8007A774 */ void RwgGroundCheckGnd(u16, cBgS_GndChk*); - /* 8007A824 */ void RwgGroundCheckWall(u16, cBgS_GndChk*); - /* 8007A8F4 */ void GroundCrossRp(cBgS_GndChk*, int); - /* 8007AA50 */ void GroundCrossGrpRp(cBgS_GndChk*, int, int); - /* 8007AB9C */ void GroundCross(cBgS_GndChk*); - /* 8007ABC4 */ void CopyOldMtx(); - /* 8007AC10 */ void Move(); - /* 8007ADF0 */ void RwgShdwDraw(int, cBgS_ShdwDraw*); - /* 8007AEA4 */ void ShdwDrawRp(cBgS_ShdwDraw*, int); - /* 8007AFC0 */ void ShdwDrawGrpRp(cBgS_ShdwDraw*, int); - /* 8007B084 */ void ShdwDraw(cBgS_ShdwDraw*); - /* 8007B0A8 */ bool ChkPolyThrough(int, cBgS_PolyPassChk*); - /* 8007B0B0 */ void ChkShdwDrawThrough(int, cBgS_PolyPassChk*); - /* 8007B0DC */ bool ChkGrpThrough(int, cBgS_GrpPassChk*, int); - /* 8007B0E4 */ void GetGrpRoomIndex(cBgS_PolyInfo const&) const; - /* 8007B164 */ void GetBnd() const; - /* 8007B17C */ void GetTrans(cXyz*) const; - /* 8007B1B4 */ void GetTriPnt(cBgS_PolyInfo const&, cXyz*, cXyz*, cXyz*) const; - /* 8007B240 */ void GetTopUnder(f32*, f32*) const; - /* 8007B270 */ void GetTriPla(cBgS_PolyInfo const&) const; - /* 8007B2B0 */ void GetGrpInf(cBgS_PolyInfo const&) const; - /* 8007B2F4 */ void GetPolyInfId(int) const; - /* 8007B30C */ void GetPolyInf0(int, u32, u32) const; - /* 8007B360 */ void GetMaskPolyInf0_NoShift(int, u32) const; - /* 8007B654 */ void GetPolyInf1(int, u32, u32) const; - /* 8007B78C */ void GetMaskPolyInf1_NoShift(int, u32) const; - /* 8007B824 */ void GetPolyInf2(int, u32, u32) const; - /* 8007B930 */ void GetTriGrp(int) const; - /* 8007B948 */ void ChkNotReady() const; - /* 8007B958 */ void ChkLock() const; - /* 8007B964 */ void ChkMoveBg() const; -}; - struct JMath { static u8 sincosTable_[65536]; }; @@ -420,11 +196,6 @@ extern "C" void setBg__8cM3dGTriFPC3VecPC3VecPC3VecPC8cM3dGPla(); extern "C" void* __nw__FUl(); extern "C" void* __nwa__FUl(); extern "C" void __dl__FPv(); -extern "C" void PSMTXIdentity(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECDotProduct(); extern "C" void __construct_new_array(); extern "C" void __ptmf_scall(); extern "C" void _savegpr_22(); diff --git a/src/d/cc/d_cc_d.cpp b/src/d/cc/d_cc_d.cpp index b5830240b9f..2abe026d1ec 100644 --- a/src/d/cc/d_cc_d.cpp +++ b/src/d/cc/d_cc_d.cpp @@ -7,313 +7,6 @@ #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct fopAc_ac_c {}; - -struct dCcD_SrcTri {}; - -struct dCcD_Tri { - /* 80084884 */ void Set(dCcD_SrcTri const&); - /* 800848A4 */ void GetShapeAttr(); - /* 80084EF4 */ ~dCcD_Tri(); -}; - -struct dCcD_Stts { - /* 80083850 */ void GetGStts(); - /* 80083860 */ void Init(int, int, fopAc_ac_c*); - /* 800838F4 */ void Ct(); - /* 80083928 */ void ClrAt(); - /* 80083934 */ void ClrTg(); - /* 800851AC */ ~dCcD_Stts(); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_SrcGObjTg {}; - -struct dCcD_SrcGObjInf {}; - -struct dCcD_SrcGObjAt {}; - -struct dCcD_SrcGAtTgCoCommonBase {}; - -struct dCcD_SrcCyl {}; - -struct dCcD_SrcCps {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - - static f32 Zero[3]; -}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); - /* 80084A78 */ void StartCAt(cXyz&); - /* 80084AC4 */ void MoveCAt(cXyz&); - /* 80084B34 */ void GetShapeAttr(); - /* 80084BF4 */ ~dCcD_Sph(); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 800837F8 */ void Ct(); - /* 80083830 */ void Move(); - /* 8008523C */ ~dCcD_GStts(); -}; - -struct dCcD_GObjTg { - /* 800839A0 */ void Set(dCcD_SrcGObjTg const&); - /* 80083BE8 */ ~dCcD_GObjTg(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800840E4 */ ~dCcD_GObjInf(); - /* 80084268 */ void GetGObjInf(); - /* 8008426C */ void ClrAtHit(); - /* 800842C0 */ void ChkAtHit(); - /* 80084318 */ void ResetAtHit(); - /* 80084358 */ void GetAtHitObj(); - /* 800843A8 */ void GetAtHitGObj(); - /* 800843DC */ void ChkAtNoGuard(); - /* 800843FC */ void ClrTgHit(); - /* 80084460 */ void ChkTgHit(); - /* 800844B8 */ void ResetTgHit(); - /* 800844F8 */ void GetTgHitObj(); - /* 80084548 */ void GetTgHitGObj(); - /* 8008457C */ void GetTgHitObjSe(); - /* 800845B0 */ void getHitSeID(u8, int); - /* 8008460C */ void ClrCoHit(); - /* 80084658 */ void ChkCoHit(); - /* 800846B0 */ void ResetCoHit(); - /* 800846F0 */ void GetCoHitObj(); - /* 80084740 */ void Set(dCcD_SrcGObjInf const&); - - static u8 const m_hitSeID[96]; -}; - -struct dCcD_GObjCo { - /* 80083B8C */ ~dCcD_GObjCo(); -}; - -struct dCcD_GObjAt { - /* 80083944 */ void Set(dCcD_SrcGObjAt const&); - /* 80083C44 */ ~dCcD_GObjAt(); -}; - -struct dCcD_GAtTgCoCommonBase { - /* 8008364C */ void ClrActorInfo(); - /* 80083660 */ void ct(); - /* 80083678 */ void SetHitApid(unsigned int); - /* 80083688 */ void GetAc(); - /* 80083704 */ void Set(dCcD_SrcGAtTgCoCommonBase const&); - /* 80083718 */ void SetEffCounterTimer(); - /* 80083724 */ void SubtractEffCounter(); - /* 80083748 */ void ChkEffCounter(); - /* 80083CA0 */ ~dCcD_GAtTgCoCommonBase(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); - /* 800848F8 */ void GetShapeAttr(); - /* 80084908 */ void StartCAt(cXyz&); - /* 80084954 */ void MoveCAt(cXyz&); - /* 800849C4 */ void MoveCTg(cXyz&); - /* 80084D60 */ ~dCcD_Cyl(); -}; - -struct dCcD_Cps { - /* 800847D0 */ void Set(dCcD_SrcCps const&); - /* 80084814 */ void GetShapeAttr(); - /* 80084824 */ void CalcAtVec(); - /* 80084854 */ void CalcTgVec(); - /* 8008506C */ ~dCcD_Cps(); -}; - -struct cM3dGSphS {}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F6A8 */ void Set(cM3dGSphS const&); -}; - -struct cM3dGCylS {}; - -struct cM3dGCyl { - /* 8026F114 */ void Set(cM3dGCylS const&); - /* 8026F1DC */ void SetC(cXyz const&); -}; - -struct cM3dGCpsS {}; - -struct cM3dGCps { - /* 8026EFA4 */ ~cM3dGCps(); - /* 8026F03C */ void Set(cM3dGCpsS const&); -}; - -struct cCcD_ShapeAttr { - struct Shape {}; - - /* 80084E38 */ void GetCoCP() const; - /* 80084E2C */ void GetCoCP(); - /* 80263A64 */ void getShapeAccess(cCcD_ShapeAttr::Shape*) const; - - static f32 m_virtual_center[3]; -}; - -struct cCcD_TriAttr; -struct cCcD_PntAttr {}; - -struct cCcD_AabAttr {}; - -struct cCcD_SphAttr; -struct cCcD_CpsAttr; -struct cCcD_CylAttr { - /* 80084CC0 */ void GetCoCP() const; - /* 80037A4C */ void GetCoCP(); - /* 8026420C */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; - /* 80084CC8 */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; - /* 802641C8 */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; - /* 80084CD0 */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; - /* 80264250 */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; - /* 80084CD8 */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 8026417C */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; - /* 80264288 */ void CrossCo(cCcD_CylAttr const&, f32*) const; - /* 80084D10 */ bool CrossCo(cCcD_AabAttr const&, f32*) const; - /* 80264310 */ void CrossCo(cCcD_CpsAttr const&, f32*) const; - /* 80084D18 */ bool CrossCo(cCcD_TriAttr const&, f32*) const; - /* 80084D20 */ bool CrossCo(cCcD_PntAttr const&, f32*) const; - /* 80084D28 */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; - /* 802642CC */ void CrossCo(cCcD_SphAttr const&, f32*) const; - /* 80264368 */ void CalcAabBox(); - /* 802643D0 */ void GetNVec(cXyz const&, cXyz*) const; - /* 802644B8 */ void getShapeAccess(cCcD_ShapeAttr::Shape*) const; -}; - -struct cCcD_CpsAttr { - /* 80263DC0 */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; - /* 80084FE4 */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 80263E04 */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; - /* 80263D7C */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; - /* 80084FD4 */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; - /* 80263D38 */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; - /* 80084FDC */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; - /* 80085024 */ bool CrossCo(cCcD_TriAttr const&, f32*) const; - /* 80263F24 */ void CrossCo(cCcD_CylAttr const&, f32*) const; - /* 8008502C */ bool CrossCo(cCcD_PntAttr const&, f32*) const; - /* 8008501C */ bool CrossCo(cCcD_AabAttr const&, f32*) const; - /* 80085034 */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; - /* 80263ED4 */ void CrossCo(cCcD_CpsAttr const&, f32*) const; - /* 80263F74 */ void CrossCo(cCcD_SphAttr const&, f32*) const; - /* 80263FC4 */ void CalcAabBox(); - /* 80264014 */ void GetNVec(cXyz const&, cXyz*) const; -}; - -struct cCcD_SphAttr { - /* 80084B44 */ void GetCoCP() const; - /* 80037A54 */ void GetCoCP(); - /* 80264538 */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; - /* 802645C0 */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; - /* 80084B4C */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; - /* 80084B54 */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; - /* 80084B5C */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 802644EC */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; - /* 8026457C */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; - /* 80264688 */ void CrossCo(cCcD_CpsAttr const&, f32*) const; - /* 80084B94 */ bool CrossCo(cCcD_AabAttr const&, f32*) const; - /* 80084B9C */ bool CrossCo(cCcD_TriAttr const&, f32*) const; - /* 80084BA4 */ bool CrossCo(cCcD_PntAttr const&, f32*) const; - /* 80084BAC */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; - /* 80264644 */ void CrossCo(cCcD_SphAttr const&, f32*) const; - /* 802645F8 */ void CrossCo(cCcD_CylAttr const&, f32*) const; - /* 802646E0 */ void CalcAabBox(); - /* 8026476C */ void GetNVec(cXyz const&, cXyz*) const; - /* 80264808 */ void getShapeAccess(cCcD_ShapeAttr::Shape*) const; -}; - -struct cCcD_TriAttr { - /* 80084E44 */ bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const; - /* 80263A88 */ void CrossAtTg(cCcD_CpsAttr const&, cXyz*) const; - /* 80084E4C */ bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const; - /* 80263BCC */ void CrossAtTg(cCcD_TriAttr const&, cXyz*) const; - /* 80263B90 */ void CrossAtTg(cCcD_SphAttr const&, cXyz*) const; - /* 80084E54 */ void CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const; - /* 80263B58 */ void CrossAtTg(cCcD_CylAttr const&, cXyz*) const; - /* 80084EBC */ void CrossCo(cCcD_ShapeAttr const&, f32*) const; - /* 80084EA4 */ bool CrossCo(cCcD_TriAttr const&, f32*) const; - /* 80084E8C */ bool CrossCo(cCcD_SphAttr const&, f32*) const; - /* 80084EAC */ bool CrossCo(cCcD_CpsAttr const&, f32*) const; - /* 80084E94 */ bool CrossCo(cCcD_CylAttr const&, f32*) const; - /* 80084EB4 */ bool CrossCo(cCcD_PntAttr const&, f32*) const; - /* 80084E9C */ bool CrossCo(cCcD_AabAttr const&, f32*) const; - /* 80263C04 */ void CalcAabBox(); - /* 80263C9C */ void GetNVec(cXyz const&, cXyz*) const; -}; - -struct cCcD_Stts { - /* 80263894 */ bool GetGStts() const; - /* 802638A4 */ void Init(int, int, void*, unsigned int); - /* 80263904 */ void Ct(); -}; - -struct cCcD_SrcObj {}; - -struct cCcD_ObjTg { - /* 80083FE4 */ ~cCcD_ObjTg(); - /* 802648B0 */ void ClrHit(); -}; - -struct cCcD_ObjHitInf { - /* 80083EC8 */ ~cCcD_ObjHitInf(); -}; - -struct cCcD_ObjCommonBase { - /* 8008409C */ ~cCcD_ObjCommonBase(); - /* 802639B0 */ void ct(); -}; - -struct cCcD_ObjCo { - /* 80083F88 */ ~cCcD_ObjCo(); - /* 802648E8 */ void ClrHit(); -}; - -struct cCcD_ObjAt { - /* 80084040 */ ~cCcD_ObjAt(); - /* 80264868 */ void ClrHit(); -}; - -struct _GXColor {}; - -struct cCcD_Obj { - /* 80083DE0 */ ~cCcD_Obj(); - /* 800851A4 */ bool GetGObjInf() const; - /* 800847C8 */ bool GetGObjInf(); - /* 80084BE8 */ bool GetShapeAttr() const; - /* 80085130 */ bool GetShapeAttr(); - /* 80084BF0 */ void Draw(_GXColor const&); - /* 80263A10 */ void ct(); - /* 80263A1C */ void Set(cCcD_SrcObj const&); -}; - -struct cCcD_GStts { - /* 800837B0 */ ~cCcD_GStts(); -}; - -struct cCcD_GObjInf { - /* 80083CE8 */ ~cCcD_GObjInf(); - /* 800851A0 */ void GetGObjInf(); - /* 80084BE4 */ void GetGObjInf() const; - /* 80085138 */ void ClrAtHit(); - /* 80085158 */ void ClrTgHit(); - /* 8008517C */ void ClrCoHit(); -}; - // // Forward References: // @@ -508,7 +201,6 @@ extern "C" void SetC__8cM3dGCylFRC4cXyz(); extern "C" void SetC__8cM3dGSphFRC4cXyz(); extern "C" void Set__8cM3dGSphFRC9cM3dGSphS(); extern "C" void __dl__FPv(); -extern "C" void PSVECSubtract(); extern "C" void _savegpr_29(); extern "C" void _restgpr_29(); extern "C" extern void* __vt__8cM3dGPla[3]; diff --git a/src/d/cc/d_cc_mass_s.cpp b/src/d/cc/d_cc_mass_s.cpp index 769d615c954..5521a4e2d7c 100644 --- a/src/d/cc/d_cc_mass_s.cpp +++ b/src/d/cc/d_cc_mass_s.cpp @@ -3,7 +3,7 @@ // Translation Unit: d/cc/d_cc_mass_s // -#include "d/cc/d_cc_mass_s.h" +//#include "d/cc/d_cc_mass_s.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/src/d/cc/d_cc_s.cpp b/src/d/cc/d_cc_s.cpp index eb8135f5bf5..d19fc7b5c23 100644 --- a/src/d/cc/d_cc_s.cpp +++ b/src/d/cc/d_cc_s.cpp @@ -3,7 +3,7 @@ // Translation Unit: d/cc/d_cc_s // -#include "d/cc/d_cc_s.h" +//#include "d/cc/d_cc_s.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/src/d/d_attention.cpp b/src/d/d_attention.cpp index 8da86e4662d..fbb3255147a 100644 --- a/src/d/d_attention.cpp +++ b/src/d/d_attention.cpp @@ -11,185 +11,21 @@ // Types: // -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct J3DMaterialTable {}; - -struct J3DAnmTextureSRTKey {}; - -struct mDoExt_btkAnm { - /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DAnmTevRegKey {}; - -struct mDoExt_brkAnm { - /* 8000D70C */ void init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, f32, s16, s16); - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DAnmColor {}; - -struct mDoExt_bpkAnm { - /* 8000D47C */ void init(J3DMaterialTable*, J3DAnmColor*, int, int, f32, s16, s16); - /* 8000D518 */ void entry(J3DMaterialTable*, f32); -}; - -struct J3DModelData {}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); - /* 8000D9CC */ void entry(J3DModelData*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - struct mDoCPd_c { static u8 m_cpadInfo[256]; }; -struct fopAc_ac_c {}; - -struct daPy_py_c { - /* 8015F3FC */ void getAttentionOffsetY(); -}; - -struct dSv_danBit_c { - /* 80034BE8 */ void isSwitch(int) const; -}; - struct dRes_info_c {}; struct dRes_control_c { /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); }; -struct cSAngle { - /* 80270F68 */ cSAngle(cSAngle const&); - /* 80270F98 */ cSAngle(s16); - /* 802710E8 */ void Inv() const; - /* 80271228 */ void operator-(s16) const; -}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; -}; - -struct dAttention_c { - /* 80070198 */ dAttention_c(fopAc_ac_c*, u32); - /* 80070774 */ ~dAttention_c(); - /* 80070844 */ void GetLockonList(s32); - /* 80070880 */ void getActionBtnB(); - /* 80070974 */ void getActionBtnXY(); - /* 80070A70 */ void chkAttMask(u32, u32); - /* 80070E90 */ void calcWeight(int, fopAc_ac_c*, f32, s16, s16, u32*); - /* 800710C0 */ void setList(int, fopAc_ac_c*, f32, f32, cSAngle, u32); - /* 80071240 */ void initList(u32); - /* 800713CC */ void makeList(); - /* 80071424 */ void setOwnerAttentionPos(); - /* 80071488 */ void SelectAttention(fopAc_ac_c*); - /* 800716B8 */ void sortList(); - /* 800718A4 */ void stockAttention(); - /* 80071960 */ void nextAttention(); - /* 80071A68 */ void freeAttention(); - /* 80071A98 */ void chaseAttention(); - /* 80071CC0 */ void EnemyDistance(fopAc_ac_c*); - /* 80071DEC */ void runSoundProc(); - /* 80071E84 */ void runDrawProc(); - /* 800720F4 */ void runDebugDisp(); - /* 800720F8 */ void checkButton(); - /* 800722A0 */ void triggerProc(); - /* 800722EC */ void lostCheck(); - /* 80072344 */ void judgementStatus4Hold(); - /* 800725F0 */ void judgementStatus4Switch(); - /* 80072924 */ void Run(); - /* 80072BD4 */ void Draw(); - /* 80072D80 */ void lockSoundStart(u32); - /* 8007353C */ void LockonTarget(s32); - /* 800735DC */ void LockonReleaseDistanse(); - /* 800736CC */ void LockonTargetPId(s32); - /* 80073734 */ void ActionTarget(s32); - /* 8007378C */ void CheckObjectTarget(s32); - /* 800737E4 */ void LockonTruth(); - /* 80073838 */ void checkDistance(cXyz*, s16, cXyz*, f32, f32, f32, f32); - - static u8 loc_type_tbl[12]; - static u8 act_type_tbl[20]; - static u8 dist_table[6552]; - static u32 loc_type_num; - static u32 act_type_num; - static u32 chk_type_tbl; - static u32 chk_type_num; -}; - -struct dAttParam_c { - /* 80070038 */ dAttParam_c(s32); - /* 80070110 */ ~dAttParam_c(); -}; - -struct dAttLook_c { - /* 80073CA4 */ void convPId(unsigned int); - /* 80073CD4 */ void init(); - /* 80073CEC */ void proc(); - /* 80073D08 */ void request(fopAc_ac_c*, f32, f32, f32, s16, int); -}; - -struct dAttList_c { - /* 800304D0 */ ~dAttList_c(); - /* 8003050C */ dAttList_c(); - /* 80073864 */ void getActor(); - /* 80073898 */ void setActor(fopAc_ac_c*); -}; - -struct dAttHint_c { - /* 800738B4 */ void getPId(void*); - /* 800738CC */ void convPId(unsigned int); - /* 800738FC */ void request(fopAc_ac_c*, int); - /* 80073958 */ void init(); - /* 80073970 */ void proc(); -}; - -struct dAttDraw_c { - /* 8003054C */ ~dAttDraw_c(); - /* 800307F0 */ dAttDraw_c(); - /* 80072DD8 */ void setAnm(u8, f32); - /* 80072FE8 */ void setAlphaAnm(u8, u8); - /* 80073004 */ void alphaAnm(); - /* 800732B0 */ void draw(cXyz&, f32 (*)[4]); -}; - -struct J3DTransformInfo {}; - -struct dAttDraw_CallBack_c { - /* 80070178 */ void execute(u16, J3DTransformInfo*); -}; - struct dAttDrawParam_c { /* 80070158 */ dAttDrawParam_c(); /* 80073FC4 */ ~dAttDrawParam_c(); }; -struct dAttCatch_c { - /* 8007398C */ void convPId(unsigned int); - /* 800739BC */ void init(); - /* 800739DC */ void proc(); - /* 80073A08 */ void request(fopAc_ac_c*, u8, f32, f32, f32, s16, int); -}; - -struct cSGlobe { - /* 8007167C */ ~cSGlobe(); - /* 80271880 */ cSGlobe(cXyz const&); -}; - struct Z2SeqMgr { /* 802B5E88 */ void bgmNowBattle(f32); }; @@ -212,8 +48,6 @@ struct J3DTevBlock { /* 800732AC */ void setTevKColor(u32, J3DGXColor const*); }; -struct J3DModel {}; - // // Forward References: // @@ -340,12 +174,6 @@ extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void bgmNowBattle__8Z2SeqMgrFf(); extern "C" void __dl__FPv(); extern "C" void DCStoreRangeNoSync(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXConcat(); -extern "C" void PSMTXInverse(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareMag(); extern "C" void __register_global_object(); extern "C" void __destroy_arr(); extern "C" void __construct_array(); diff --git a/src/d/d_stage.cpp b/src/d/d_stage.cpp index 8905ad11e39..3b55a306d3e 100644 --- a/src/d/d_stage.cpp +++ b/src/d/d_stage.cpp @@ -11,61 +11,12 @@ // Types: // -struct stage_vrboxcol_info_class {}; - -struct stage_vrbox_info_class {}; - -struct stage_tresure_class {}; - -struct stage_tgsc_data_class { - /* 8002847C */ ~stage_tgsc_data_class(); - /* 800284B8 */ stage_tgsc_data_class(); -}; - -struct stage_tgsc_class {}; - -struct stage_stag_info_class {}; - -struct stage_scls_info_dummy_class {}; - -struct stage_pure_lightvec_info_class {}; - -struct stage_pselect_info_class {}; - -struct stage_plight_info_class {}; - -struct stage_palette_info_class {}; - -struct stage_map_info_dummy_class {}; - -struct stage_map_info_class {}; - -struct stage_envr_info_class {}; - -struct stage_camera_class {}; - -struct stage_camera2_data_class {}; - -struct stage_arrow_class {}; - -struct stage_actor_data_class {}; - -struct stage_actor_class {}; - -struct roomRead_class {}; - struct mDoRst { static u8 mResetData[4 + 4 /* padding */]; }; -struct layer_class {}; - -struct fopAc_ac_c {}; - struct fopAcM_prm_class {}; -struct cXyz {}; - struct daSus_c { /* 80031434 */ void check(s8, cXyz const&); /* 800315A4 */ void execute(); @@ -77,287 +28,10 @@ struct dTres_c { /* 8009BCB4 */ void addData(dTres_c::list_class*, s8); }; -struct dSv_zoneBit_c { - /* 80034CEC */ void clearRoomSwitch(); - /* 80034CF8 */ void clearRoomItem(); -}; - -struct dSv_info_c { - /* 800350BC */ void getSave(int); - /* 800350F0 */ void putSave(int); - /* 8003514C */ void initZone(); - /* 80035724 */ void isActor(int, int) const; -}; - -struct dSv_danBit_c { - /* 80034B14 */ void init(s8); -}; - struct dSvBit_HIO_c { /* 8025C1F8 */ void init(); }; -struct dStage_startStage_c { - /* 8002419C */ void set(char const*, s8, s16, s8); -}; - -struct dStage_FileList2_dt_c {}; - -struct dStage_MemoryMap_c {}; - -struct dStage_dPath_c {}; - -struct dStage_Multi_c {}; - -struct dStage_SoundInfo_c {}; - -struct dStage_FileList_dt_c {}; - -struct dStage_dPnt_c {}; - -struct dStage_FloorInfo_c {}; - -struct dStage_Lbnk_c {}; - -struct dStage_Elst_c {}; - -struct dStage_MemoryConfig_c {}; - -struct dStage_DMap_c {}; - -struct dStage_MapEventInfo_c {}; - -struct dStage_stageDt_c { - /* 8002483C */ void getStagInfo() const; - /* 80024C1C */ void init(); - /* 80024DB8 */ void getRoom() const; - /* 8002500C */ void getPlayer() const; - /* 80025404 */ void getMapInfo2(int) const; - /* 80025490 */ void getMapInfoBase() const; - /* 8002582C */ void resetOldMulti(); - /* 80026AE8 */ void getElst(); - /* 80026FDC */ void setOldMulti(); - /* 800272E8 */ void getSclsInfo() const; - /* 80027E10 */ void setCamera(stage_camera_class*); - /* 80027E18 */ void getCamera() const; - /* 80027E20 */ void setArrow(stage_arrow_class*); - /* 80027E28 */ void getArrow() const; - /* 80027E30 */ void setPlayer(stage_actor_class*); - /* 80027E38 */ void setPlayerNum(u16); - /* 80027E40 */ void getPlayerNum() const; - /* 80027E48 */ void setRoom(roomRead_class*); - /* 80027E50 */ void setMapInfo(stage_map_info_class*); - /* 80027E58 */ void getMapInfo() const; - /* 80027E60 */ void setMapInfoBase(stage_map_info_dummy_class*); - /* 80027E68 */ void setPaletteInfo(stage_palette_info_class*); - /* 80027E70 */ void getPaletteInfo() const; - /* 80027E78 */ void setPselectInfo(stage_pselect_info_class*); - /* 80027E80 */ void getPselectInfo() const; - /* 80027E88 */ void setEnvrInfo(stage_envr_info_class*); - /* 80027E90 */ void getEnvrInfo() const; - /* 80027E98 */ void setVrboxInfo(stage_vrbox_info_class*); - /* 80027EA0 */ void getVrboxInfo() const; - /* 80027EA8 */ void setVrboxcolInfo(stage_vrboxcol_info_class*); - /* 80027EB0 */ void getVrboxcolInfo() const; - /* 80027EB8 */ void setPlightInfo(stage_plight_info_class*); - /* 80027EC0 */ void getPlightInfo() const; - /* 80027EC8 */ void setPaletteNumInfo(int); - /* 80027ED0 */ void getPaletteNumInfo() const; - /* 80027ED8 */ void setPselectNumInfo(int); - /* 80027EE0 */ void getPselectNumInfo() const; - /* 80027EE8 */ void setEnvrNumInfo(int); - /* 80027EF0 */ void getEnvrNumInfo() const; - /* 80027EF8 */ void setVrboxNumInfo(int); - /* 80027F00 */ void getVrboxNumInfo() const; - /* 80027F08 */ void setVrboxcolNumInfo(int); - /* 80027F10 */ void getVrboxcolNumInfo() const; - /* 80027F18 */ void setLightVecInfo(stage_pure_lightvec_info_class*); - /* 80027F4C */ void getLightVecInfo() const; - /* 80027F80 */ void setLightVecInfoNum(int); - /* 80027FB4 */ void getLightVecInfoNum() const; - /* 80027FE8 */ void setPlightNumInfo(int); - /* 80027FF0 */ void getPlightNumInfo() const; - /* 80027FF8 */ void setStagInfo(stage_stag_info_class*); - /* 80028000 */ void setSclsInfo(stage_scls_info_dummy_class*); - /* 80028008 */ void setPntInfo(dStage_dPnt_c*); - /* 80028010 */ void getPntInf() const; - /* 80028018 */ void setPathInfo(dStage_dPath_c*); - /* 80028020 */ void getPathInf() const; - /* 80028028 */ void setPnt2Info(dStage_dPnt_c*); - /* 80028030 */ void getPnt2Inf() const; - /* 80028038 */ void setPath2Info(dStage_dPath_c*); - /* 80028040 */ void getPath2Inf() const; - /* 80028048 */ void setSoundInf(dStage_SoundInfo_c*); - /* 80028050 */ void getSoundInf() const; - /* 80028058 */ void setSoundInfCL(dStage_SoundInfo_c*); - /* 80028060 */ void getSoundInfCL() const; - /* 80028068 */ void setMapEventInfo(dStage_MapEventInfo_c*); - /* 80028070 */ void getMapEventInfo() const; - /* 80028078 */ void setFileList2Info(dStage_FileList2_dt_c*); - /* 800280AC */ void getFileList2Info() const; - /* 800280E0 */ void setFileListInfo(dStage_FileList_dt_c*); - /* 80028114 */ void getFileListInfo() const; - /* 80028148 */ void setFloorInfo(dStage_FloorInfo_c*); - /* 80028150 */ void getFloorInfo() const; - /* 80028158 */ void setMemoryConfig(dStage_MemoryConfig_c*); - /* 80028160 */ void getMemoryConfig() const; - /* 80028168 */ void setMemoryMap(dStage_MemoryMap_c*); - /* 80028170 */ void getMemoryMap() const; - /* 80028178 */ void setMulti(dStage_Multi_c*); - /* 80028180 */ void getMulti() const; - /* 80028188 */ void getOldMulti() const; - /* 80028190 */ void setLbnk(dStage_Lbnk_c*); - /* 800281C4 */ void getLbnk() const; - /* 800281F8 */ void setTresure(stage_tresure_class*); - /* 80028200 */ void getTresure() const; - /* 80028208 */ void setDMap(dStage_DMap_c*); - /* 80028210 */ void getDMap() const; - /* 80028218 */ void setDrTg(stage_tgsc_class*); - /* 80028220 */ void getDrTg() const; - /* 80028228 */ void setDoor(stage_tgsc_class*); - /* 80028230 */ void getDoor() const; - /* 80028238 */ void setMapPath(void*); - /* 8002823C */ bool getMapPath(); - /* 80028244 */ void setElst(dStage_Elst_c*); -}; - -struct dStage_roomStatus_c { - /* 80028360 */ ~dStage_roomStatus_c(); - /* 8002839C */ dStage_roomStatus_c(); -}; - -struct dStage_roomDt_c { - /* 800193FC */ void getFileListInfo() const; - /* 80024CA8 */ void initFileList2(); - /* 80024CB4 */ void init(); - /* 80025004 */ void getPlayer() const; - /* 80025370 */ void getMapInfo2(int) const; - /* 800253FC */ void getMapInfoBase() const; - /* 800272E0 */ void getSclsInfo() const; - /* 80027524 */ void setCamera(stage_camera_class*); - /* 8002752C */ void getCamera() const; - /* 80027534 */ void setArrow(stage_arrow_class*); - /* 8002753C */ void getArrow() const; - /* 80027544 */ void setPlayer(stage_actor_class*); - /* 8002754C */ void setPlayerNum(u16); - /* 80027554 */ void getPlayerNum() const; - /* 8002755C */ void setRoom(roomRead_class*); - /* 80027590 */ void getRoom() const; - /* 800275C4 */ void setMapInfo(stage_map_info_class*); - /* 800275CC */ void getMapInfo() const; - /* 800275D4 */ void setMapInfoBase(stage_map_info_dummy_class*); - /* 800275DC */ void setPaletteInfo(stage_palette_info_class*); - /* 80027610 */ void getPaletteInfo() const; - /* 80027644 */ void setPselectInfo(stage_pselect_info_class*); - /* 80027678 */ void getPselectInfo() const; - /* 800276AC */ void setEnvrInfo(stage_envr_info_class*); - /* 800276E0 */ void getEnvrInfo() const; - /* 80027714 */ void setVrboxInfo(stage_vrbox_info_class*); - /* 8002771C */ void getVrboxInfo() const; - /* 80027724 */ void setVrboxcolInfo(stage_vrboxcol_info_class*); - /* 8002772C */ void getVrboxcolInfo() const; - /* 80027734 */ void setPlightInfo(stage_plight_info_class*); - /* 80027768 */ void getPlightInfo() const; - /* 8002779C */ void setPaletteNumInfo(int); - /* 800277D0 */ void getPaletteNumInfo() const; - /* 80027804 */ void setPselectNumInfo(int); - /* 80027838 */ void getPselectNumInfo() const; - /* 8002786C */ void setEnvrNumInfo(int); - /* 800278A0 */ void getEnvrNumInfo() const; - /* 800278D4 */ void setVrboxNumInfo(int); - /* 800278DC */ void getVrboxNumInfo() const; - /* 800278E4 */ void setVrboxcolNumInfo(int); - /* 800278EC */ void getVrboxcolNumInfo() const; - /* 800278F4 */ void setPlightNumInfo(int); - /* 80027928 */ void getPlightNumInfo() const; - /* 8002795C */ void setLightVecInfo(stage_pure_lightvec_info_class*); - /* 80027964 */ void getLightVecInfo() const; - /* 8002796C */ void setLightVecInfoNum(int); - /* 80027974 */ void getLightVecInfoNum() const; - /* 8002797C */ void setStagInfo(stage_stag_info_class*); - /* 800279B0 */ void getStagInfo() const; - /* 800279E4 */ void setSclsInfo(stage_scls_info_dummy_class*); - /* 800279EC */ void setPntInfo(dStage_dPnt_c*); - /* 80027A20 */ void getPntInf() const; - /* 80027A54 */ void setPathInfo(dStage_dPath_c*); - /* 80027A88 */ void getPathInf() const; - /* 80027ABC */ void setPnt2Info(dStage_dPnt_c*); - /* 80027AC4 */ void getPnt2Inf() const; - /* 80027ACC */ void setPath2Info(dStage_dPath_c*); - /* 80027AD4 */ void getPath2Inf() const; - /* 80027ADC */ void setSoundInf(dStage_SoundInfo_c*); - /* 80027AE4 */ void getSoundInf() const; - /* 80027AEC */ void setSoundInfCL(dStage_SoundInfo_c*); - /* 80027AF4 */ void getSoundInfCL() const; - /* 80027AFC */ void setMapEventInfo(dStage_MapEventInfo_c*); - /* 80027B04 */ void getMapEventInfo() const; - /* 80027B0C */ void setFileList2Info(dStage_FileList2_dt_c*); - /* 80027B14 */ void getFileList2Info() const; - /* 80027B1C */ void setFileListInfo(dStage_FileList_dt_c*); - /* 80027B24 */ void setFloorInfo(dStage_FloorInfo_c*); - /* 80027B2C */ void getFloorInfo() const; - /* 80027B34 */ void setMemoryConfig(dStage_MemoryConfig_c*); - /* 80027B64 */ void getMemoryConfig() const; - /* 80027B98 */ void setMemoryMap(dStage_MemoryMap_c*); - /* 80027BC8 */ void getMemoryMap() const; - /* 80027BFC */ void setMulti(dStage_Multi_c*); - /* 80027C2C */ void getMulti() const; - /* 80027C60 */ void setOldMulti(); - /* 80027C90 */ void resetOldMulti(); - /* 80027CC0 */ void getOldMulti() const; - /* 80027CF4 */ void setLbnk(dStage_Lbnk_c*); - /* 80027CFC */ void getLbnk() const; - /* 80027D04 */ void setTresure(stage_tresure_class*); - /* 80027D0C */ void getTresure() const; - /* 80027D14 */ void setDMap(dStage_DMap_c*); - /* 80027D18 */ bool getDMap() const; - /* 80027D20 */ void setDrTg(stage_tgsc_class*); - /* 80027D28 */ void getDrTg() const; - /* 80027D30 */ void setDoor(stage_tgsc_class*); - /* 80027D38 */ void getDoor() const; - /* 80027D40 */ void setMapPath(void*); - /* 80027D70 */ void getMapPath(); - /* 80027DA4 */ void setElst(dStage_Elst_c*); - /* 80027DD8 */ void getElst(); -}; - -struct dStage_roomControl_c { - struct roomDzs_c { - /* 80024A34 */ void create(u8); - /* 80024ABC */ void remove(); - /* 80024B44 */ void add(u8, u8); - }; - - /* 800241E8 */ void init(); - /* 80024338 */ void initZone(); - /* 80024384 */ void getStatusRoomDt(int); - /* 800243B0 */ void getMemoryBlock(int); - /* 800243E8 */ void setStayNo(int); - /* 80024424 */ void setNextStayNo(int); - /* 800244E8 */ void checkRoomDisp(int) const; - /* 8002451C */ void loadRoom(int, u8*, bool); - /* 8002471C */ void zoneCountCheck(int) const; - /* 80024844 */ void createMemoryBlock(int, u32); - /* 800248A8 */ void destroyMemoryBlock(); - /* 8002490C */ void setArcBank(int, char const*); - /* 80024940 */ void getArcBank(int); - /* 80024954 */ void resetArchiveBank(int); - /* 80024DB0 */ void SetTimePass(int); - - static u8 mMemoryBlock[76]; - static u8 mArcBank[320]; - static u8 mStatus[65792]; - static u8 mDemoArcName[10 + 2 /* padding */]; - static u8 mProcID[4]; - static u8 mArcBankName[4]; - static u8 mArcBankData[4]; - static u8 m_roomDzs[8]; -}; - -struct dStage_nextStage_c { - /* 80023E28 */ void set(char const*, s8, s16, s8, s8, u8); -}; - struct dStage_dt_c {}; struct dStage_KeepDoorInfo { @@ -1966,7 +1640,7 @@ asm void dStage_roomControl_c::zoneCountCheck(int param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getStagInfo() const { +asm stage_stag_info_class* dStage_stageDt_c::getStagInfo() const { nofralloc #include "asm/d/d_stage/getStagInfo__16dStage_stageDt_cCFv.s" } @@ -2154,7 +1828,7 @@ asm void dStage_roomControl_c::SetTimePass(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getRoom() const { +asm roomRead_class* dStage_stageDt_c::getRoom() const { nofralloc #include "asm/d/d_stage/getRoom__16dStage_stageDt_cCFv.s" } @@ -2232,7 +1906,7 @@ static asm void dStage_cameraCreate(stage_camera2_data_class* param_0, int param #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPlayer() const { +asm stage_actor_class* dStage_roomDt_c::getPlayer() const { nofralloc #include "asm/d/d_stage/getPlayer__15dStage_roomDt_cCFv.s" } @@ -2242,7 +1916,7 @@ asm void dStage_roomDt_c::getPlayer() const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPlayer() const { +asm stage_actor_class* dStage_stageDt_c::getPlayer() const { nofralloc #include "asm/d/d_stage/getPlayer__16dStage_stageDt_cCFv.s" } @@ -2302,7 +1976,7 @@ static asm void dStage_arrowInit(dStage_dt_c* param_0, void* param_1, int param_ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getMapInfo2(int param_0) const { +asm int dStage_roomDt_c::getMapInfo2(int param_0) const { nofralloc #include "asm/d/d_stage/getMapInfo2__15dStage_roomDt_cCFi.s" } @@ -2312,7 +1986,7 @@ asm void dStage_roomDt_c::getMapInfo2(int param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getMapInfoBase() const { +asm stage_map_info_dummy_class* dStage_roomDt_c::getMapInfoBase() const { nofralloc #include "asm/d/d_stage/getMapInfoBase__15dStage_roomDt_cCFv.s" } @@ -2323,7 +1997,7 @@ asm void dStage_roomDt_c::getMapInfoBase() const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getMapInfo2(int param_0) const { +asm int dStage_stageDt_c::getMapInfo2(int param_0) const { nofralloc #include "asm/d/d_stage/getMapInfo2__16dStage_stageDt_cCFi.s" } @@ -2333,7 +2007,7 @@ asm void dStage_stageDt_c::getMapInfo2(int param_0) const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getMapInfoBase() const { +asm stage_map_info_dummy_class* dStage_stageDt_c::getMapInfoBase() const { nofralloc #include "asm/d/d_stage/getMapInfoBase__16dStage_stageDt_cCFv.s" } @@ -2980,7 +2654,7 @@ static asm void layerTableLoader(void* param_0, dStage_dt_c* param_1, int param_ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getElst() { +asm dStage_Elst_c* dStage_stageDt_c::getElst() { nofralloc #include "asm/d/d_stage/getElst__16dStage_stageDt_cFv.s" } @@ -3153,7 +2827,7 @@ asm void dStage_changeScene(int param_0, f32 param_1, u32 param_2, s8 param_3, s #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getSclsInfo() const { +asm stage_scls_info_dummy_class* dStage_roomDt_c::getSclsInfo() const { nofralloc #include "asm/d/d_stage/getSclsInfo__15dStage_roomDt_cCFv.s" } @@ -3164,7 +2838,7 @@ asm void dStage_roomDt_c::getSclsInfo() const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getSclsInfo() const { +asm stage_scls_info_dummy_class* dStage_stageDt_c::getSclsInfo() const { nofralloc #include "asm/d/d_stage/getSclsInfo__16dStage_stageDt_cCFv.s" } @@ -3209,7 +2883,7 @@ void dStage_roomDt_c::setCamera(stage_camera_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getCamera() const { +asm stage_camera_class* dStage_roomDt_c::getCamera() const { nofralloc #include "asm/d/d_stage/getCamera__15dStage_roomDt_cCFv.s" } @@ -3225,7 +2899,7 @@ void dStage_roomDt_c::setArrow(stage_arrow_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getArrow() const { +asm stage_arrow_class* dStage_roomDt_c::getArrow() const { nofralloc #include "asm/d/d_stage/getArrow__15dStage_roomDt_cCFv.s" } @@ -3248,7 +2922,7 @@ void dStage_roomDt_c::setPlayerNum(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPlayerNum() const { +asm u16 dStage_roomDt_c::getPlayerNum() const { nofralloc #include "asm/d/d_stage/getPlayerNum__15dStage_roomDt_cCFv.s" } @@ -3276,7 +2950,7 @@ asm void dStage_roomDt_c::setRoom(roomRead_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getRoom() const { +asm roomRead_class* dStage_roomDt_c::getRoom() const { nofralloc #include "asm/d/d_stage/getRoom__15dStage_roomDt_cCFv.s" } @@ -3292,7 +2966,7 @@ void dStage_roomDt_c::setMapInfo(stage_map_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getMapInfo() const { +asm stage_map_info_class* dStage_roomDt_c::getMapInfo() const { nofralloc #include "asm/d/d_stage/getMapInfo__15dStage_roomDt_cCFv.s" } @@ -3326,7 +3000,7 @@ asm void dStage_roomDt_c::setPaletteInfo(stage_palette_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPaletteInfo() const { +asm stage_palette_info_class* dStage_roomDt_c::getPaletteInfo() const { nofralloc #include "asm/d/d_stage/getPaletteInfo__15dStage_roomDt_cCFv.s" } @@ -3354,7 +3028,7 @@ asm void dStage_roomDt_c::setPselectInfo(stage_pselect_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPselectInfo() const { +asm stage_pselect_info_class* dStage_roomDt_c::getPselectInfo() const { nofralloc #include "asm/d/d_stage/getPselectInfo__15dStage_roomDt_cCFv.s" } @@ -3383,7 +3057,7 @@ asm void dStage_roomDt_c::setEnvrInfo(stage_envr_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getEnvrInfo() const { +asm stage_envr_info_class* dStage_roomDt_c::getEnvrInfo() const { nofralloc #include "asm/d/d_stage/getEnvrInfo__15dStage_roomDt_cCFv.s" } @@ -3400,7 +3074,7 @@ void dStage_roomDt_c::setVrboxInfo(stage_vrbox_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getVrboxInfo() const { +asm stage_vrbox_info_class* dStage_roomDt_c::getVrboxInfo() const { nofralloc #include "asm/d/d_stage/getVrboxInfo__15dStage_roomDt_cCFv.s" } @@ -3416,7 +3090,7 @@ void dStage_roomDt_c::setVrboxcolInfo(stage_vrboxcol_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getVrboxcolInfo() const { +asm stage_vrboxcol_info_class* dStage_roomDt_c::getVrboxcolInfo() const { nofralloc #include "asm/d/d_stage/getVrboxcolInfo__15dStage_roomDt_cCFv.s" } @@ -3445,7 +3119,7 @@ asm void dStage_roomDt_c::setPlightInfo(stage_plight_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPlightInfo() const { +asm stage_plight_info_class* dStage_roomDt_c::getPlightInfo() const { nofralloc #include "asm/d/d_stage/getPlightInfo__15dStage_roomDt_cCFv.s" } @@ -3472,7 +3146,7 @@ asm void dStage_roomDt_c::setPaletteNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPaletteNumInfo() const { +asm int dStage_roomDt_c::getPaletteNumInfo() const { nofralloc #include "asm/d/d_stage/getPaletteNumInfo__15dStage_roomDt_cCFv.s" } @@ -3499,7 +3173,7 @@ asm void dStage_roomDt_c::setPselectNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPselectNumInfo() const { +asm int dStage_roomDt_c::getPselectNumInfo() const { nofralloc #include "asm/d/d_stage/getPselectNumInfo__15dStage_roomDt_cCFv.s" } @@ -3527,7 +3201,7 @@ asm void dStage_roomDt_c::setEnvrNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getEnvrNumInfo() const { +asm int dStage_roomDt_c::getEnvrNumInfo() const { nofralloc #include "asm/d/d_stage/getEnvrNumInfo__15dStage_roomDt_cCFv.s" } @@ -3542,7 +3216,7 @@ void dStage_roomDt_c::setVrboxNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getVrboxNumInfo() const { +asm int dStage_roomDt_c::getVrboxNumInfo() const { nofralloc #include "asm/d/d_stage/getVrboxNumInfo__15dStage_roomDt_cCFv.s" } @@ -3557,7 +3231,7 @@ void dStage_roomDt_c::setVrboxcolNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getVrboxcolNumInfo() const { +asm int dStage_roomDt_c::getVrboxcolNumInfo() const { nofralloc #include "asm/d/d_stage/getVrboxcolNumInfo__15dStage_roomDt_cCFv.s" } @@ -3584,7 +3258,7 @@ asm void dStage_roomDt_c::setPlightNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPlightNumInfo() const { +asm int dStage_roomDt_c::getPlightNumInfo() const { nofralloc #include "asm/d/d_stage/getPlightNumInfo__15dStage_roomDt_cCFv.s" } @@ -3600,7 +3274,7 @@ void dStage_roomDt_c::setLightVecInfo(stage_pure_lightvec_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getLightVecInfo() const { +asm stage_pure_lightvec_info_class* dStage_roomDt_c::getLightVecInfo() const { nofralloc #include "asm/d/d_stage/getLightVecInfo__15dStage_roomDt_cCFv.s" } @@ -3615,7 +3289,7 @@ void dStage_roomDt_c::setLightVecInfoNum(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getLightVecInfoNum() const { +asm int dStage_roomDt_c::getLightVecInfoNum() const { nofralloc #include "asm/d/d_stage/getLightVecInfoNum__15dStage_roomDt_cCFv.s" } @@ -3644,7 +3318,7 @@ asm void dStage_roomDt_c::setStagInfo(stage_stag_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getStagInfo() const { +asm stage_stag_info_class* dStage_roomDt_c::getStagInfo() const { nofralloc #include "asm/d/d_stage/getStagInfo__15dStage_roomDt_cCFv.s" } @@ -3685,7 +3359,7 @@ SECTION_DEAD static char const* const stringBase_80378CD8 = "Room non Pnts data #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPntInf() const { +asm dStage_dPnt_c* dStage_roomDt_c::getPntInf() const { nofralloc #include "asm/d/d_stage/getPntInf__15dStage_roomDt_cCFv.s" } @@ -3713,7 +3387,7 @@ asm void dStage_roomDt_c::setPathInfo(dStage_dPath_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPathInf() const { +asm dStage_dPath_c* dStage_roomDt_c::getPathInf() const { nofralloc #include "asm/d/d_stage/getPathInf__15dStage_roomDt_cCFv.s" } @@ -3729,7 +3403,7 @@ void dStage_roomDt_c::setPnt2Info(dStage_dPnt_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPnt2Inf() const { +asm dStage_dPnt_c* dStage_roomDt_c::getPnt2Inf() const { nofralloc #include "asm/d/d_stage/getPnt2Inf__15dStage_roomDt_cCFv.s" } @@ -3746,7 +3420,7 @@ void dStage_roomDt_c::setPath2Info(dStage_dPath_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getPath2Inf() const { +asm dStage_dPath_c* dStage_roomDt_c::getPath2Inf() const { nofralloc #include "asm/d/d_stage/getPath2Inf__15dStage_roomDt_cCFv.s" } @@ -3763,7 +3437,7 @@ void dStage_roomDt_c::setSoundInf(dStage_SoundInfo_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getSoundInf() const { +asm dStage_SoundInfo_c* dStage_roomDt_c::getSoundInf() const { nofralloc #include "asm/d/d_stage/getSoundInf__15dStage_roomDt_cCFv.s" } @@ -3780,7 +3454,7 @@ void dStage_roomDt_c::setSoundInfCL(dStage_SoundInfo_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getSoundInfCL() const { +asm dStage_SoundInfo_c* dStage_roomDt_c::getSoundInfCL() const { nofralloc #include "asm/d/d_stage/getSoundInfCL__15dStage_roomDt_cCFv.s" } @@ -3796,7 +3470,7 @@ void dStage_roomDt_c::setMapEventInfo(dStage_MapEventInfo_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getMapEventInfo() const { +asm dStage_MapEventInfo_c* dStage_roomDt_c::getMapEventInfo() const { nofralloc #include "asm/d/d_stage/getMapEventInfo__15dStage_roomDt_cCFv.s" } @@ -3812,7 +3486,7 @@ void dStage_roomDt_c::setFileList2Info(dStage_FileList2_dt_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getFileList2Info() const { +asm dStage_FileList2_dt_c* dStage_roomDt_c::getFileList2Info() const { nofralloc #include "asm/d/d_stage/getFileList2Info__15dStage_roomDt_cCFv.s" } @@ -3835,7 +3509,7 @@ void dStage_roomDt_c::setFloorInfo(dStage_FloorInfo_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getFloorInfo() const { +asm dStage_FloorInfo_c* dStage_roomDt_c::getFloorInfo() const { nofralloc #include "asm/d/d_stage/getFloorInfo__15dStage_roomDt_cCFv.s" } @@ -3863,7 +3537,7 @@ asm void dStage_roomDt_c::setMemoryConfig(dStage_MemoryConfig_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getMemoryConfig() const { +asm dStage_MemoryConfig_c* dStage_roomDt_c::getMemoryConfig() const { nofralloc #include "asm/d/d_stage/getMemoryConfig__15dStage_roomDt_cCFv.s" } @@ -3892,7 +3566,7 @@ asm void dStage_roomDt_c::setMemoryMap(dStage_MemoryMap_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getMemoryMap() const { +asm dStage_MemoryMap_c* dStage_roomDt_c::getMemoryMap() const { nofralloc #include "asm/d/d_stage/getMemoryMap__15dStage_roomDt_cCFv.s" } @@ -3920,7 +3594,7 @@ asm void dStage_roomDt_c::setMulti(dStage_Multi_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getMulti() const { +asm dStage_Multi_c* dStage_roomDt_c::getMulti() const { nofralloc #include "asm/d/d_stage/getMulti__15dStage_roomDt_cCFv.s" } @@ -3959,7 +3633,7 @@ asm void dStage_roomDt_c::resetOldMulti() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getOldMulti() const { +asm dStage_Multi_c* dStage_roomDt_c::getOldMulti() const { nofralloc #include "asm/d/d_stage/getOldMulti__15dStage_roomDt_cCFv.s" } @@ -3975,7 +3649,7 @@ void dStage_roomDt_c::setLbnk(dStage_Lbnk_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getLbnk() const { +asm dStage_Lbnk_c* dStage_roomDt_c::getLbnk() const { nofralloc #include "asm/d/d_stage/getLbnk__15dStage_roomDt_cCFv.s" } @@ -3991,7 +3665,7 @@ void dStage_roomDt_c::setTresure(stage_tresure_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getTresure() const { +asm stage_tresure_class* dStage_roomDt_c::getTresure() const { nofralloc #include "asm/d/d_stage/getTresure__15dStage_roomDt_cCFv.s" } @@ -4004,7 +3678,7 @@ void dStage_roomDt_c::setDMap(dStage_DMap_c* param_0) { } /* 80027D18-80027D20 022658 0008+00 1/0 0/0 0/0 .text getDMap__15dStage_roomDt_cCFv */ -bool dStage_roomDt_c::getDMap() const { +dStage_DMap_c* dStage_roomDt_c::getDMap() const { return false; } @@ -4018,7 +3692,7 @@ void dStage_roomDt_c::setDrTg(stage_tgsc_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getDrTg() const { +asm stage_tgsc_class* dStage_roomDt_c::getDrTg() const { nofralloc #include "asm/d/d_stage/getDrTg__15dStage_roomDt_cCFv.s" } @@ -4034,7 +3708,7 @@ void dStage_roomDt_c::setDoor(stage_tgsc_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getDoor() const { +asm stage_tgsc_class* dStage_roomDt_c::getDoor() const { nofralloc #include "asm/d/d_stage/getDoor__15dStage_roomDt_cCFv.s" } @@ -4061,7 +3735,7 @@ asm void dStage_roomDt_c::setMapPath(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getMapPath() { +asm int dStage_roomDt_c::getMapPath() { nofralloc #include "asm/d/d_stage/getMapPath__15dStage_roomDt_cFv.s" } @@ -4096,7 +3770,7 @@ SECTION_DEAD static char const* const stringBase_80378DA8 = "Room no Elst Data!! #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_roomDt_c::getElst() { +asm dStage_Elst_c* dStage_roomDt_c::getElst() { nofralloc #include "asm/d/d_stage/getElst__15dStage_roomDt_cFv.s" } @@ -4112,7 +3786,7 @@ void dStage_stageDt_c::setCamera(stage_camera_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getCamera() const { +asm stage_camera_class* dStage_stageDt_c::getCamera() const { nofralloc #include "asm/d/d_stage/getCamera__16dStage_stageDt_cCFv.s" } @@ -4128,7 +3802,7 @@ void dStage_stageDt_c::setArrow(stage_arrow_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getArrow() const { +asm stage_arrow_class* dStage_stageDt_c::getArrow() const { nofralloc #include "asm/d/d_stage/getArrow__16dStage_stageDt_cCFv.s" } @@ -4151,7 +3825,7 @@ void dStage_stageDt_c::setPlayerNum(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPlayerNum() const { +asm u16 dStage_stageDt_c::getPlayerNum() const { nofralloc #include "asm/d/d_stage/getPlayerNum__16dStage_stageDt_cCFv.s" } @@ -4174,7 +3848,7 @@ void dStage_stageDt_c::setMapInfo(stage_map_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getMapInfo() const { +asm stage_map_info_class* dStage_stageDt_c::getMapInfo() const { nofralloc #include "asm/d/d_stage/getMapInfo__16dStage_stageDt_cCFv.s" } @@ -4196,7 +3870,7 @@ void dStage_stageDt_c::setPaletteInfo(stage_palette_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPaletteInfo() const { +asm stage_palette_info_class* dStage_stageDt_c::getPaletteInfo() const { nofralloc #include "asm/d/d_stage/getPaletteInfo__16dStage_stageDt_cCFv.s" } @@ -4212,7 +3886,7 @@ void dStage_stageDt_c::setPselectInfo(stage_pselect_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPselectInfo() const { +asm stage_pselect_info_class* dStage_stageDt_c::getPselectInfo() const { nofralloc #include "asm/d/d_stage/getPselectInfo__16dStage_stageDt_cCFv.s" } @@ -4229,7 +3903,7 @@ void dStage_stageDt_c::setEnvrInfo(stage_envr_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getEnvrInfo() const { +asm stage_envr_info_class* dStage_stageDt_c::getEnvrInfo() const { nofralloc #include "asm/d/d_stage/getEnvrInfo__16dStage_stageDt_cCFv.s" } @@ -4246,7 +3920,7 @@ void dStage_stageDt_c::setVrboxInfo(stage_vrbox_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getVrboxInfo() const { +asm stage_vrbox_info_class* dStage_stageDt_c::getVrboxInfo() const { nofralloc #include "asm/d/d_stage/getVrboxInfo__16dStage_stageDt_cCFv.s" } @@ -4262,7 +3936,7 @@ void dStage_stageDt_c::setVrboxcolInfo(stage_vrboxcol_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getVrboxcolInfo() const { +asm stage_vrboxcol_info_class* dStage_stageDt_c::getVrboxcolInfo() const { nofralloc #include "asm/d/d_stage/getVrboxcolInfo__16dStage_stageDt_cCFv.s" } @@ -4278,7 +3952,7 @@ void dStage_stageDt_c::setPlightInfo(stage_plight_info_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPlightInfo() const { +asm stage_plight_info_class* dStage_stageDt_c::getPlightInfo() const { nofralloc #include "asm/d/d_stage/getPlightInfo__16dStage_stageDt_cCFv.s" } @@ -4293,7 +3967,7 @@ void dStage_stageDt_c::setPaletteNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPaletteNumInfo() const { +asm int dStage_stageDt_c::getPaletteNumInfo() const { nofralloc #include "asm/d/d_stage/getPaletteNumInfo__16dStage_stageDt_cCFv.s" } @@ -4308,7 +3982,7 @@ void dStage_stageDt_c::setPselectNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPselectNumInfo() const { +asm int dStage_stageDt_c::getPselectNumInfo() const { nofralloc #include "asm/d/d_stage/getPselectNumInfo__16dStage_stageDt_cCFv.s" } @@ -4323,7 +3997,7 @@ void dStage_stageDt_c::setEnvrNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getEnvrNumInfo() const { +asm int dStage_stageDt_c::getEnvrNumInfo() const { nofralloc #include "asm/d/d_stage/getEnvrNumInfo__16dStage_stageDt_cCFv.s" } @@ -4338,7 +4012,7 @@ void dStage_stageDt_c::setVrboxNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getVrboxNumInfo() const { +asm int dStage_stageDt_c::getVrboxNumInfo() const { nofralloc #include "asm/d/d_stage/getVrboxNumInfo__16dStage_stageDt_cCFv.s" } @@ -4353,7 +4027,7 @@ void dStage_stageDt_c::setVrboxcolNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getVrboxcolNumInfo() const { +asm int dStage_stageDt_c::getVrboxcolNumInfo() const { nofralloc #include "asm/d/d_stage/getVrboxcolNumInfo__16dStage_stageDt_cCFv.s" } @@ -4381,7 +4055,7 @@ asm void dStage_stageDt_c::setLightVecInfo(stage_pure_lightvec_info_class* param #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getLightVecInfo() const { +asm stage_pure_lightvec_info_class* dStage_stageDt_c::getLightVecInfo() const { nofralloc #include "asm/d/d_stage/getLightVecInfo__16dStage_stageDt_cCFv.s" } @@ -4408,7 +4082,7 @@ asm void dStage_stageDt_c::setLightVecInfoNum(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getLightVecInfoNum() const { +asm int dStage_stageDt_c::getLightVecInfoNum() const { nofralloc #include "asm/d/d_stage/getLightVecInfoNum__16dStage_stageDt_cCFv.s" } @@ -4423,7 +4097,7 @@ void dStage_stageDt_c::setPlightNumInfo(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPlightNumInfo() const { +asm int dStage_stageDt_c::getPlightNumInfo() const { nofralloc #include "asm/d/d_stage/getPlightNumInfo__16dStage_stageDt_cCFv.s" } @@ -4451,7 +4125,7 @@ void dStage_stageDt_c::setPntInfo(dStage_dPnt_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPntInf() const { +asm dStage_dPnt_c* dStage_stageDt_c::getPntInf() const { nofralloc #include "asm/d/d_stage/getPntInf__16dStage_stageDt_cCFv.s" } @@ -4468,7 +4142,7 @@ void dStage_stageDt_c::setPathInfo(dStage_dPath_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPathInf() const { +asm dStage_dPath_c* dStage_stageDt_c::getPathInf() const { nofralloc #include "asm/d/d_stage/getPathInf__16dStage_stageDt_cCFv.s" } @@ -4485,7 +4159,7 @@ void dStage_stageDt_c::setPnt2Info(dStage_dPnt_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPnt2Inf() const { +asm dStage_dPnt_c* dStage_stageDt_c::getPnt2Inf() const { nofralloc #include "asm/d/d_stage/getPnt2Inf__16dStage_stageDt_cCFv.s" } @@ -4502,7 +4176,7 @@ void dStage_stageDt_c::setPath2Info(dStage_dPath_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getPath2Inf() const { +asm dStage_dPath_c* dStage_stageDt_c::getPath2Inf() const { nofralloc #include "asm/d/d_stage/getPath2Inf__16dStage_stageDt_cCFv.s" } @@ -4519,7 +4193,7 @@ void dStage_stageDt_c::setSoundInf(dStage_SoundInfo_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getSoundInf() const { +asm dStage_SoundInfo_c* dStage_stageDt_c::getSoundInf() const { nofralloc #include "asm/d/d_stage/getSoundInf__16dStage_stageDt_cCFv.s" } @@ -4535,7 +4209,7 @@ void dStage_stageDt_c::setSoundInfCL(dStage_SoundInfo_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getSoundInfCL() const { +asm dStage_SoundInfo_c* dStage_stageDt_c::getSoundInfCL() const { nofralloc #include "asm/d/d_stage/getSoundInfCL__16dStage_stageDt_cCFv.s" } @@ -4551,7 +4225,7 @@ void dStage_stageDt_c::setMapEventInfo(dStage_MapEventInfo_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getMapEventInfo() const { +asm dStage_MapEventInfo_c* dStage_stageDt_c::getMapEventInfo() const { nofralloc #include "asm/d/d_stage/getMapEventInfo__16dStage_stageDt_cCFv.s" } @@ -4579,7 +4253,7 @@ asm void dStage_stageDt_c::setFileList2Info(dStage_FileList2_dt_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getFileList2Info() const { +asm dStage_FileList2_dt_c* dStage_stageDt_c::getFileList2Info() const { nofralloc #include "asm/d/d_stage/getFileList2Info__16dStage_stageDt_cCFv.s" } @@ -4607,7 +4281,7 @@ asm void dStage_stageDt_c::setFileListInfo(dStage_FileList_dt_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getFileListInfo() const { +asm dStage_FileList_dt_c* dStage_stageDt_c::getFileListInfo() const { nofralloc #include "asm/d/d_stage/getFileListInfo__16dStage_stageDt_cCFv.s" } @@ -4624,7 +4298,7 @@ void dStage_stageDt_c::setFloorInfo(dStage_FloorInfo_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getFloorInfo() const { +asm dStage_FloorInfo_c* dStage_stageDt_c::getFloorInfo() const { nofralloc #include "asm/d/d_stage/getFloorInfo__16dStage_stageDt_cCFv.s" } @@ -4640,7 +4314,7 @@ void dStage_stageDt_c::setMemoryConfig(dStage_MemoryConfig_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getMemoryConfig() const { +asm dStage_MemoryConfig_c* dStage_stageDt_c::getMemoryConfig() const { nofralloc #include "asm/d/d_stage/getMemoryConfig__16dStage_stageDt_cCFv.s" } @@ -4657,7 +4331,7 @@ void dStage_stageDt_c::setMemoryMap(dStage_MemoryMap_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getMemoryMap() const { +asm dStage_MemoryMap_c* dStage_stageDt_c::getMemoryMap() const { nofralloc #include "asm/d/d_stage/getMemoryMap__16dStage_stageDt_cCFv.s" } @@ -4673,7 +4347,7 @@ void dStage_stageDt_c::setMulti(dStage_Multi_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getMulti() const { +asm dStage_Multi_c* dStage_stageDt_c::getMulti() const { nofralloc #include "asm/d/d_stage/getMulti__16dStage_stageDt_cCFv.s" } @@ -4684,7 +4358,7 @@ asm void dStage_stageDt_c::getMulti() const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getOldMulti() const { +asm dStage_Multi_c* dStage_stageDt_c::getOldMulti() const { nofralloc #include "asm/d/d_stage/getOldMulti__16dStage_stageDt_cCFv.s" } @@ -4714,7 +4388,7 @@ asm void dStage_stageDt_c::setLbnk(dStage_Lbnk_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getLbnk() const { +asm dStage_Lbnk_c* dStage_stageDt_c::getLbnk() const { nofralloc #include "asm/d/d_stage/getLbnk__16dStage_stageDt_cCFv.s" } @@ -4731,7 +4405,7 @@ void dStage_stageDt_c::setTresure(stage_tresure_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getTresure() const { +asm stage_tresure_class* dStage_stageDt_c::getTresure() const { nofralloc #include "asm/d/d_stage/getTresure__16dStage_stageDt_cCFv.s" } @@ -4747,7 +4421,7 @@ void dStage_stageDt_c::setDMap(dStage_DMap_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getDMap() const { +asm dStage_DMap_c* dStage_stageDt_c::getDMap() const { nofralloc #include "asm/d/d_stage/getDMap__16dStage_stageDt_cCFv.s" } @@ -4763,7 +4437,7 @@ void dStage_stageDt_c::setDrTg(stage_tgsc_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getDrTg() const { +asm stage_tgsc_class* dStage_stageDt_c::getDrTg() const { nofralloc #include "asm/d/d_stage/getDrTg__16dStage_stageDt_cCFv.s" } @@ -4779,7 +4453,7 @@ void dStage_stageDt_c::setDoor(stage_tgsc_class* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dStage_stageDt_c::getDoor() const { +asm stage_tgsc_class* dStage_stageDt_c::getDoor() const { nofralloc #include "asm/d/d_stage/getDoor__16dStage_stageDt_cCFv.s" } @@ -4792,7 +4466,7 @@ void dStage_stageDt_c::setMapPath(void* param_0) { } /* 8002823C-80028244 022B7C 0008+00 1/0 0/0 0/0 .text getMapPath__16dStage_stageDt_cFv */ -bool dStage_stageDt_c::getMapPath() { +int dStage_stageDt_c::getMapPath() { return false; } diff --git a/src/d/event/d_event.cpp b/src/d/event/d_event.cpp index 8cc11630c79..0124fc232d5 100644 --- a/src/d/event/d_event.cpp +++ b/src/d/event/d_event.cpp @@ -19,39 +19,14 @@ struct mDoCPd_c { static u8 m_cpadInfo[256]; }; -struct fopAc_ac_c {}; - -struct daPy_py_c { - static u8 m_midnaActor[4]; -}; - -struct daItemBase_c { - /* 80037AE4 */ void dead(); -}; - struct dVibration_c { /* 8006FD94 */ void StopQuake(int); }; -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - struct dSv_event_tmp_flag_c { static u8 const tempBitLabels[370 + 2 /* padding */]; }; -struct dSv_event_c { - /* 800349A4 */ void offEventBit(u16); -}; - -struct dStage_roomControl_c { - /* 80024384 */ void getStatusRoomDt(int); - - static u8 mDemoArcName[10 + 2 /* padding */]; -}; - struct dRes_info_c {}; struct dRes_control_c { @@ -64,11 +39,6 @@ struct dMsgObject_c { /* 80238098 */ void endFlowGroup(); }; -struct dEvt_order_c { - /* 80030154 */ ~dEvt_order_c(); - /* 800415D4 */ dEvt_order_c(); -}; - struct dEvt_info_c { /* 800433F0 */ dEvt_info_c(); /* 80043428 */ void setEventName(char*); @@ -76,56 +46,6 @@ struct dEvt_info_c { /* 800434CC */ void beforeProc(); }; -struct dEvt_control_c { - /* 80041580 */ dEvt_control_c(); - /* 800415D8 */ void orderOld(u16, u16, u16, u16, void*, void*, void const*); - /* 80041668 */ void order(u16, u16, u16, u16, void*, void*, s16, u8); - /* 80041804 */ void setParam(dEvt_order_c*); - /* 80041934 */ void beforeFlagProc(dEvt_order_c*); - /* 80041964 */ void afterFlagProc(dEvt_order_c*); - /* 800419A8 */ void commonCheck(dEvt_order_c*, u16, u16); - /* 80041A20 */ void talkCheck(dEvt_order_c*); - /* 80041B58 */ void talkXyCheck(dEvt_order_c*); - /* 80041C90 */ void catchCheck(dEvt_order_c*); - /* 80041D34 */ void talkEnd(); - /* 80041DDC */ void demoCheck(dEvt_order_c*); - /* 80041F18 */ void demoEnd(); - /* 80041FA0 */ void potentialCheck(dEvt_order_c*); - /* 80042014 */ void doorCheck(dEvt_order_c*); - /* 8004212C */ void itemCheck(dEvt_order_c*); - /* 800421C0 */ void endProc(); - /* 80042254 */ void change(); - /* 800422C0 */ void entry(); - /* 80042518 */ void reset(void*); - /* 80042468 */ void reset(); - /* 800425B4 */ void clearSkipSystem(); - /* 8004290C */ void getSkipEventName(); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); - /* 80042958 */ void setSkipZev(void*, char*); - /* 800429A8 */ void onSkipFade(); - /* 800429B4 */ void offSkipFade(); - /* 800429D4 */ void skipper(); - /* 80042BBC */ void Step(); - /* 80042FA8 */ void moveApproval(void*); - /* 8004316C */ void compulsory(void*, char const*, u16); - /* 800431E8 */ void remove(); - /* 80043278 */ void getStageEventDt(); - /* 80043280 */ void sceneChange(int); - /* 800432C8 */ void getPId(void*); - /* 800432EC */ void convPId(unsigned int); - /* 8004331C */ void getStbDemoData(char*); - /* 80043500 */ void searchMapEventData(u8, s32); - /* 800434D8 */ void searchMapEventData(u8); - /* 8004360C */ void runningEventID(s16); - /* 8004362C */ void setPt1(void*); - /* 8004365C */ void setPt2(void*); - /* 8004368C */ void setPtT(void*); - /* 800436BC */ void setPtI(void*); - /* 800436EC */ void setPtI_Id(unsigned int); - /* 800436F4 */ void setPtD(void*); - /* 80043724 */ void setGtItm(u8); -}; - struct dEvent_manager_c { /* 80046800 */ void setObjectArchive(char*); /* 80046DAC */ void endProc(s16, int); diff --git a/src/d/event/d_event_data.cpp b/src/d/event/d_event_data.cpp index 2bd1f95b0dd..fca799ff895 100644 --- a/src/d/event/d_event_data.cpp +++ b/src/d/event/d_event_data.cpp @@ -20,10 +20,6 @@ struct mDoGph_gInf_c { static f32 mFadeRate; }; -struct fopAc_ac_c {}; - -struct cXyz {}; - struct dVibration_c { /* 8006FA24 */ void StartShock(int, int, cXyz); /* 8006FB10 */ void StartQuake(int, int, cXyz); @@ -39,16 +35,6 @@ struct dSv_event_flag_c { static u8 saveBitLabels[1644 + 4 /* padding */]; }; -struct dSv_event_c { - /* 8003498C */ void onEventBit(u16); - /* 800349A4 */ void offEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dStage_roomControl_c { - /* 80024384 */ void getStatusRoomDt(int); -}; - struct dMsgObject_c { /* 8023806C */ void demoMessageGroup(); }; @@ -75,46 +61,10 @@ struct dEvent_manager_c { /* 8004817C */ void cutEnd(int); }; -struct dEvDtStaff_c { - /* 80043FD8 */ void specialProc_WaitStart(int); - /* 8004403C */ void specialProc_WaitProc(int); - /* 80044080 */ void specialProc(); - /* 80044134 */ void init(); - /* 80044170 */ void advanceCut(int); - /* 80044190 */ void specialProcLight(); - /* 80044324 */ void specialProcMessage(); - /* 80044A58 */ void specialProcSound(); - /* 80044CB8 */ void specialProcCreate(); - /* 80044EE4 */ void specialProcDirector(); - /* 80045878 */ void specialProcPackage(); - /* 80045AFC */ void specialProcTimekeeper(); - /* 80045C34 */ void specialProcEffect(); -}; - -struct dEvDtFlag_c { - /* 80043D60 */ void flagCheck(int); - /* 80043DC8 */ void flagSet(int); - /* 80043E30 */ void flagMaxCheck(int); - /* 80043E58 */ void init(); -}; - -struct dEvDtEvent_c { - /* 80043E78 */ void finishCheck(); - /* 80043EFC */ void forceFinish(); - /* 80043F70 */ void specialStaffProc(dEvDtStaff_c*); -}; - struct dEvDtCut_c { /* 800460A8 */ void startCheck(); }; -struct dEvDtBase_c { - /* 80046138 */ void init(); - /* 8004616C */ void init(char*, int); - /* 8004628C */ void advanceCut(dEvDtEvent_c*); - /* 800462FC */ void advanceCutLocal(dEvDtStaff_c*); -}; - struct dDlst_list_c { /* 800568D8 */ void wipeIn(f32); @@ -134,8 +84,6 @@ struct dCamera_c { /* 80181170 */ void StartBlure(int, fopAc_ac_c*, f32, f32); }; -struct csXyz {}; - struct Z2SeqMgr { /* 802AF408 */ void bgmStop(u32, s32); /* 802AFE18 */ void bgmStreamPlay(); @@ -143,8 +91,6 @@ struct Z2SeqMgr { struct JAISoundID {}; -struct Vec {}; - struct Z2SeMgr { /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); }; diff --git a/src/d/event/d_event_manager.cpp b/src/d/event/d_event_manager.cpp index 5e605a8de0b..c9a46f132be 100644 --- a/src/d/event/d_event_manager.cpp +++ b/src/d/event/d_event_manager.cpp @@ -11,18 +11,6 @@ // Types: // -struct fopAc_ac_c {}; - -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dStage_roomControl_c { - /* 80024384 */ void getStatusRoomDt(int); - - static u8 mDemoArcName[10 + 2 /* padding */]; -}; - struct dRes_info_c {}; struct dRes_control_c { @@ -43,88 +31,6 @@ struct dEvt_control_c { /* 800436F4 */ void setPtD(void*); }; -struct dEvDtStaff_c { - /* 80044134 */ void init(); -}; - -struct dEvDtEvent_c { - /* 80043E78 */ void finishCheck(); - /* 80043F70 */ void specialStaffProc(dEvDtStaff_c*); -}; - -struct dEvDtData_c {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; -}; - -struct dEvent_manager_c { - /* 800465E8 */ void getSubstance(dEvDtData_c*, int); - /* 80046688 */ dEvent_manager_c(); - /* 80046710 */ void create(); - /* 80046800 */ void setObjectArchive(char*); - /* 80046888 */ void demoInit(); - /* 80046904 */ void roomInit(int); - /* 800469EC */ void roomFinish(int); - /* 80046A58 */ void orderStartDemo(); - /* 80046C0C */ void remove(); - /* 80046CB8 */ void startProc(dEvDtEvent_c*); - /* 80046DA0 */ void closeProc(dEvDtEvent_c*); - /* 80046DAC */ void endProc(s16, int); - /* 80046E64 */ void Sequencer(); - /* 800473FC */ void Experts(); - /* 800474BC */ void getEventData(s16); - /* 80047454 */ void getEventData(s16, int); - /* 80047514 */ void getEventIdx(char const*, u8, s32); - /* 80047698 */ void getEventIdx(fopAc_ac_c*, u8); - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047930 */ void isMapToolCamera(u8, s32); - /* 80047984 */ void order(s16); - /* 800479F8 */ void startCheck(s16); - /* 80047A38 */ void startCheckOld(char const*); - /* 80047A78 */ void endCheck(s16); - /* 80047ADC */ void endCheckOld(char const*); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 80047F5C */ void getMyNowCutName(int); - /* 80047FC8 */ void getMyDataP(int, char const*, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 80048144 */ void getMySubstanceNum(int, char const*); - /* 8004817C */ void cutEnd(int); - /* 800481F4 */ void getEventPrio(fopAc_ac_c*, s16); - /* 800482CC */ void issueStaff(char const*); - /* 80048348 */ void cancelStaff(char const*); - /* 800483C4 */ void setGoal(cXyz*); - /* 800483E0 */ void getGoal(); - /* 800483E8 */ void getRunEventName(); - /* 80048520 */ void specialCast_Shutter(s16, int); - /* 80048618 */ void specialCast(char const*, int); - /* 800487F0 */ void ChkPresentEnd(); - /* 8004882C */ void checkStartDemo(); -}; - -struct dEvent_exception_c { - /* 800463DC */ void init(); - /* 800463F0 */ void setStartDemo(int); - /* 80046480 */ void getEventName(); -}; - -struct dEvDtFlag_c { - /* 80043DC8 */ void flagSet(int); - /* 80043E58 */ void init(); -}; - -struct dEvDtBase_c { - /* 80030190 */ ~dEvDtBase_c(); - /* 8004616C */ void init(char*, int); - /* 80046138 */ void init(); - /* 8004628C */ void advanceCut(dEvDtEvent_c*); - /* 800466E0 */ dEvDtBase_c(); -}; - struct dCamera_c { /* 80180A40 */ void EventRecoverNotime(); /* 80181E98 */ void Center(); @@ -250,7 +156,6 @@ extern "C" void Center__9dCamera_cFv(); extern "C" void __mi__4cXyzCFRC3Vec(); extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void setDemoName__11Z2StatusMgrFPc(); -extern "C" void PSVECSquareMag(); extern "C" void __construct_array(); extern "C" void _savegpr_20(); extern "C" void _savegpr_22(); diff --git a/src/d/meter/d_meter2_info.cpp b/src/d/meter/d_meter2_info.cpp index 67ab32b3d93..8a65704cc4b 100644 --- a/src/d/meter/d_meter2_info.cpp +++ b/src/d/meter/d_meter2_info.cpp @@ -4,139 +4,10 @@ // #include "d/meter/d_meter2_info.h" +#include "d/save/d_save.h" #include "dol2asm.h" #include "dolphin/types.h" - -// -// Types: -// - -struct fopAc_ac_c {}; - -struct dSv_player_status_a_c { - /* 80032A5C */ void getSelectItemIndex(int) const; -}; - -struct dSv_player_item_record_c { - /* 80033F6C */ void setBombNum(u8, u8); - /* 80033F7C */ void getBombNum(u8) const; -}; - -struct dSv_player_item_c { - /* 80032FB8 */ void setItem(int, u8); - /* 80033030 */ void getItem(int, bool) const; -}; - -struct dSv_player_get_item_c { - /* 80033E94 */ void offFirstBit(u8); -}; - -struct dSv_light_drop_c { - /* 8003439C */ void isLightDropGetFlag(u8) const; -}; - -struct dSv_letter_info_c { - /* 80034428 */ void onLetterGetFlag(int); - /* 8003444C */ void isLetterGetFlag(int) const; -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dMsgObject_c { - /* 802384C4 */ void setLetterNameID(u16); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F48 */ ~dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); - /* 8024A538 */ void getMsgNo(); -}; - -struct dMeterMap_c { - /* 8020D900 */ void isMapOpenCheck(); -}; - -struct J2DPicture {}; - -struct JMSMesgEntry_c {}; - -struct J2DTextBox { - /* 8021C7F4 */ void getFont() const; -}; - -struct JUTFont {}; - -struct cXyz {}; - -struct dMeter2Info_c { - /* 8021BDDC */ dMeter2Info_c(); - /* 8021BE20 */ ~dMeter2Info_c(); - /* 8021BE68 */ void init(); - /* 8021C0E0 */ void setFloatingMessage(u16, s16, bool); - /* 8021C11C */ void setFloatingFlow(u16, s16, bool); - /* 8021C1DC */ void isFloatingMessageVisible(); - /* 8021C1F0 */ void decFloatingMessageTimer(); - /* 8021C218 */ void resetFloatingMessage(); - /* 8021C238 */ void decMsgKeyWaitTimer(); - /* 8021C250 */ void getString(u32, char*, JMSMesgEntry_c*); - /* 8021C370 */ void getStringKana(u32, char*, JMSMesgEntry_c*); - /* 8021C544 */ void getStringKanji(u32, char*, JMSMesgEntry_c*); - /* 8021C6A4 */ void getStringLength(J2DTextBox*, char*); - /* 8021C7FC */ void getStringLength(JUTFont*, f32, f32, char*); - /* 8021C934 */ void onDirectUseItem(int); - /* 8021C950 */ void isDirectUseItem(int); - /* 8021C970 */ void setMeterString(s32); - /* 8021C9DC */ void resetWarpStatus(); - /* 8021CA04 */ void warpInProc(); - /* 8021CA70 */ void warpOutProc(); - /* 8021CC00 */ void resetMeterString(); - /* 8021CC0C */ void setWarpInfo(char const*, cXyz const&, s16, u8, u8, u8); - /* 8021CC80 */ void getItemType(u8); - /* 8021CF08 */ void readItemTexture(u8, void*, J2DPicture*, void*, J2DPicture*, void*, - J2DPicture*, void*, J2DPicture*, int); - /* 8021D36C */ void setItemColor(u8, J2DPicture*, J2DPicture*, J2DPicture*, J2DPicture*); - /* 8021D44C */ void get2ndTexture(u8); - /* 8021D4B8 */ void get3rdTexture(u8); - /* 8021D4FC */ void get4thTexture(u8); - /* 8021D524 */ void set1stColor(u8, J2DPicture*); - /* 8021D644 */ void set2ndColor(u8, J2DPicture*); - /* 8021D764 */ void set3rdColor(u8, J2DPicture*); - /* 8021DB64 */ void set4thColor(u8, J2DPicture*); - /* 8021DCC4 */ void setHotSpringTimer(u8); - /* 8021DCE0 */ void decHotSpringTimer(); - /* 8021DD5C */ void changeWater(u8); - /* 8021DE18 */ void setMiniGameItem(u8); - /* 8021E0C4 */ void resetMiniGameItem(bool); - /* 8021E268 */ void setMiniGameCount(s8); - /* 8021E290 */ void setSaveStageName(char const*); -}; - -struct dMenu_Letter { - static u8 letter_data[512]; -}; - -struct dItem_data { - static void* item_resource[1530]; -}; - -struct csXyz { - /* 802673F4 */ csXyz(s16, s16, s16); -}; - -struct ResTIMG {}; - -struct JKRArchive { - /* 802D5B38 */ void getGlbResource(u32, char const*, JKRArchive*); - /* 802D5ECC */ void readIdxResource(void*, u32, u32); -}; +#include "msl_c/string.h" // // Forward References: @@ -208,7 +79,6 @@ extern "C" u8 letter_data__12dMenu_Letter[512]; // External References: // -SECTION_INIT void memcpy(); extern "C" void dComIfGs_setSelectItemIndex__FiUc(); extern "C" void dComIfGs_setMixItemIndex__FiUc(); extern "C" void dComIfGs_getMixItemIndex__Fi(); @@ -253,8 +123,6 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" void strcpy(); extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" void* item_resource__10dItem_data[1530]; extern "C" extern u8 g_dComIfG_gameInfo[122384]; @@ -335,17 +203,17 @@ SECTION_DATA static void* lit_4572[37] = { }; /* 803BF7F4-803BF81C -00001 0028+00 1/1 0/0 0/0 .data tex_name$5183 */ -SECTION_DATA static void* tex_name_5183[10] = { - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x1A), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x43), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x6C), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x95), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0xBE), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0xE7), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x110), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x139), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x162), - (void*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x18B), +SECTION_DATA static char* tex_name_5183[10] = { + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x1A), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x43), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x6C), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x95), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0xBE), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0xE7), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x110), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x139), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x162), + (char*)(((char*)&d_meter_d_meter2_info__stringBase0) + 0x18B), }; /* 803BF81C-803BFA1C 01C93C 0200+00 3/3 6/6 0/0 .data letter_data__12dMenu_Letter */ @@ -392,14 +260,10 @@ SECTION_DATA extern void* __vt__13dMeter2Info_c[3] = { }; /* 8021BDDC-8021BE20 21671C 0044+00 1/1 0/0 0/0 .text __ct__13dMeter2Info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dMeter2Info_c::dMeter2Info_c() { - nofralloc -#include "asm/d/meter/d_meter2_info/__ct__13dMeter2Info_cFv.s" +dMeter2Info_c::dMeter2Info_c() { + init(); + mTempBits = 0; } -#pragma pop /* 8021BE20-8021BE68 216760 0048+00 2/1 0/0 0/0 .text __dt__13dMeter2Info_cFv */ #pragma push @@ -477,7 +341,7 @@ asm void dMeter2Info_c::setFloatingFlow(u16 param_0, s16 param_1, bool param_2) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Info_c::isFloatingMessageVisible() { +asm int dMeter2Info_c::isFloatingMessageVisible() { nofralloc #include "asm/d/meter/d_meter2_info/isFloatingMessageVisible__13dMeter2Info_cFv.s" } @@ -485,34 +349,31 @@ asm void dMeter2Info_c::isFloatingMessageVisible() { /* 8021C1F0-8021C218 216B30 0028+00 0/0 1/1 0/0 .text decFloatingMessageTimer__13dMeter2Info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::decFloatingMessageTimer() { - nofralloc -#include "asm/d/meter/d_meter2_info/decFloatingMessageTimer__13dMeter2Info_cFv.s" +int dMeter2Info_c::decFloatingMessageTimer() { + if (mFloatingMessageTimer > 0) { + mFloatingMessageTimer--; + } else { + mFloatingMessageTimer = 0; + } + return mFloatingMessageTimer; } -#pragma pop /* 8021C218-8021C238 216B58 0020+00 0/0 3/3 0/0 .text resetFloatingMessage__13dMeter2Info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::resetFloatingMessage() { - nofralloc -#include "asm/d/meter/d_meter2_info/resetFloatingMessage__13dMeter2Info_cFv.s" +void dMeter2Info_c::resetFloatingMessage() { + mFloatingFlowID = -1; + mFloatingMessageID = -1; + mFloatingMessageTimer = 0; + mFloatingMessageWakuVisible = 0; } -#pragma pop /* 8021C238-8021C250 216B78 0018+00 0/0 2/2 0/0 .text decMsgKeyWaitTimer__13dMeter2Info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::decMsgKeyWaitTimer() { - nofralloc -#include "asm/d/meter/d_meter2_info/decMsgKeyWaitTimer__13dMeter2Info_cFv.s" +void dMeter2Info_c::decMsgKeyWaitTimer() { + if (mMsgKeyWaitTimer <= 0) { + return; + } + + mMsgKeyWaitTimer--; } -#pragma pop /* 8021C250-8021C370 216B90 0120+00 0/0 16/16 0/0 .text * getString__13dMeter2Info_cFUlPcP14JMSMesgEntry_c */ @@ -556,7 +417,7 @@ SECTION_SDATA2 static f64 lit_4108 = 4503601774854144.0 /* cast s32 to float */; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Info_c::getStringLength(J2DTextBox* param_0, char* param_1) { +asm double dMeter2Info_c::getStringLength(J2DTextBox* param_0, char* param_1) { nofralloc #include "asm/d/meter/d_meter2_info/getStringLength__13dMeter2Info_cFP10J2DTextBoxPc.s" } @@ -577,7 +438,8 @@ asm void J2DTextBox::getFont() const { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Info_c::getStringLength(JUTFont* param_0, f32 param_1, f32 param_2, char* param_3) { +asm dMeter2Info_c* dMeter2Info_c::getStringLength(JUTFont* param_0, f32 param_1, f32 param_2, + char* param_3) { nofralloc #include "asm/d/meter/d_meter2_info/getStringLength__13dMeter2Info_cFP7JUTFontffPc.s" } @@ -585,40 +447,25 @@ asm void dMeter2Info_c::getStringLength(JUTFont* param_0, f32 param_1, f32 param /* 8021C934-8021C950 217274 001C+00 0/0 2/2 0/0 .text onDirectUseItem__13dMeter2Info_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::onDirectUseItem(int param_0) { - nofralloc -#include "asm/d/meter/d_meter2_info/onDirectUseItem__13dMeter2Info_cFi.s" +void dMeter2Info_c::onDirectUseItem(int param_0) { + mDirectUseItem |= (u8)(1 << param_0); } -#pragma pop /* 8021C950-8021C970 217290 0020+00 0/0 4/4 0/0 .text isDirectUseItem__13dMeter2Info_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::isDirectUseItem(int param_0) { - nofralloc -#include "asm/d/meter/d_meter2_info/isDirectUseItem__13dMeter2Info_cFi.s" +bool dMeter2Info_c::isDirectUseItem(int param_0) { + return (mDirectUseItem & (u8)(1 << param_0)) != 0; } -#pragma pop - -/* ############################################################################################## */ -/* 80430178-80430188 05CE98 000C+04 1/1 0/0 0/0 .bss @3846 */ -static u8 lit_3846[12 + 4 /* padding */]; /* 80430188-80430280 05CEA8 00F8+00 4/4 267/267 70/70 .bss g_meter2_info */ -extern u8 g_meter2_info[248]; -u8 g_meter2_info[248]; +dMeter2Info_c g_meter2_info; /* 8021C970-8021C9DC 2172B0 006C+00 0/0 0/0 5/5 .text setMeterString__13dMeter2Info_cFl */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Info_c::setMeterString(s32 param_0) { +asm int dMeter2Info_c::setMeterString(s32 param_0) { nofralloc #include "asm/d/meter/d_meter2_info/setMeterString__13dMeter2Info_cFl.s" } @@ -657,32 +504,27 @@ asm void dMeter2Info_c::warpOutProc() { /* 8021CC00-8021CC0C 217540 000C+00 0/0 1/1 1/1 .text resetMeterString__13dMeter2Info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::resetMeterString() { - nofralloc -#include "asm/d/meter/d_meter2_info/resetMeterString__13dMeter2Info_cFv.s" +void dMeter2Info_c::resetMeterString() { + mMeterString = 0; } -#pragma pop /* 8021CC0C-8021CC80 21754C 0074+00 1/1 1/1 0/0 .text * setWarpInfo__13dMeter2Info_cFPCcRC4cXyzsUcUcUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::setWarpInfo(char const* param_0, cXyz const& param_1, s16 param_2, - u8 param_3, u8 param_4, u8 param_5) { - nofralloc -#include "asm/d/meter/d_meter2_info/setWarpInfo__13dMeter2Info_cFPCcRC4cXyzsUcUcUc.s" +void dMeter2Info_c::setWarpInfo(const char* i_stageName, const cXyz& i_position, s16 i_angle, + u8 i_roomNo, u8 p5, u8 i_warpPlayerNo) { + strcpy(mWarpInfo.mStageName, i_stageName); + mWarpInfo.mPosition = i_position; + mWarpInfo.mAngle = i_angle; + mWarpInfo.mRoomNo = i_roomNo; + mWarpInfo.unk79 = p5; + mWarpInfo.mWarpPlayerNo = i_warpPlayerNo; } -#pragma pop /* 8021CC80-8021CF08 2175C0 0288+00 2/2 0/0 0/0 .text getItemType__13dMeter2Info_cFUc */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Info_c::getItemType(u8 param_0) { +asm u8 dMeter2Info_c::getItemType(u8 param_0) { nofralloc #include "asm/d/meter/d_meter2_info/getItemType__13dMeter2Info_cFUc.s" } @@ -694,10 +536,9 @@ asm void dMeter2Info_c::getItemType(u8 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Info_c::readItemTexture(u8 param_0, void* param_1, J2DPicture* param_2, - void* param_3, J2DPicture* param_4, void* param_5, - J2DPicture* param_6, void* param_7, J2DPicture* param_8, - int param_9) { +asm u8 dMeter2Info_c::readItemTexture(u8 param_0, void* param_1, J2DPicture* param_2, void* param_3, + J2DPicture* param_4, void* param_5, J2DPicture* param_6, + void* param_7, J2DPicture* param_8, int param_9) { nofralloc #include "asm/d/meter/d_meter2_info/func_8021CF08.s" } @@ -717,67 +558,179 @@ asm void dMeter2Info_c::setItemColor(u8 param_0, J2DPicture* param_1, J2DPicture /* 8021D44C-8021D4B8 217D8C 006C+00 2/1 0/0 0/0 .text get2ndTexture__13dMeter2Info_cFUc */ +// switch label weirdness +#ifdef NONMATCHING +s8 dMeter2Info_c::get2ndTexture(u8 param_0) { + switch (param_0) { + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + return 0x2e; + case 8: + case 9: + case 10: + case 11: + case 12: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + case 19: + case 20: + case 21: + case 22: + case 23: + case 24: + case 25: + case 26: + case 31: + return 0xe; + case 27: + return 0x14; + case 28: + return 0x27; + case 29: + return 0xf; + case 30: + return 0x10; + case 33: + case 34: + case 35: + return 0x69; + case 36: + return 0x2a; + case 32: + default: + return -1; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Info_c::get2ndTexture(u8 param_0) { +asm s8 dMeter2Info_c::get2ndTexture(u8 param_0) { nofralloc #include "asm/d/meter/d_meter2_info/get2ndTexture__13dMeter2Info_cFUc.s" } #pragma pop +#endif /* 8021D4B8-8021D4FC 217DF8 0044+00 1/1 0/0 0/0 .text get3rdTexture__13dMeter2Info_cFUc */ +// one instruction off +#ifdef NONMATCHING +s8 dMeter2Info_c::get3rdTexture(u8 p1) { + switch (p1) { + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + return 0x2e; + case 8: + case 9: + case 10: + case 11: + case 12: + case 13: + case 14: + case 15: + case 16: + case 17: + case 18: + case 19: + case 20: + case 21: + case 22: + case 23: + case 24: + case 25: + case 26: + case 31: + return 0x0e; + default: + return -1; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Info_c::get3rdTexture(u8 param_0) { +asm s8 dMeter2Info_c::get3rdTexture(u8 param_0) { nofralloc #include "asm/d/meter/d_meter2_info/get3rdTexture__13dMeter2Info_cFUc.s" } #pragma pop +#endif /* 8021D4FC-8021D524 217E3C 0028+00 1/1 0/0 0/0 .text get4thTexture__13dMeter2Info_cFUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::get4thTexture(u8 param_0) { - nofralloc -#include "asm/d/meter/d_meter2_info/get4thTexture__13dMeter2Info_cFUc.s" +s8 dMeter2Info_c::get4thTexture(u8 p1) { + switch (p1) { + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + return 0x2e; + default: + return -1; + } } -#pragma pop + +struct TColor { + u8 r; + u8 g; + u8 b; + u8 a; +}; /* ############################################################################################## */ /* 80398A78-80398B0C 0250D8 0094+00 2/2 0/0 0/0 .rodata black_color$4634 */ -SECTION_RODATA static u8 const black_color_4634[148] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0xA0, 0x60, 0x00, - 0x00, 0xA0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x60, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x40, 0x40, - 0x40, 0x00, 0x6E, 0x6E, 0x64, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0xAF, 0x9B, 0x6E, 0x00, 0xAA, 0x9B, 0x6E, 0x00, 0x55, 0x37, 0x14, 0x00, - 0x6E, 0x6E, 0x6E, 0x00, 0x6E, 0x6E, 0x6E, 0x00, 0xFF, 0x58, 0x00, 0x00, 0x6C, 0x3E, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x55, 0x37, 0x14, 0x00, 0x00, 0x00, 0x22, 0x00, 0x2B, 0x18, 0x22, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x46, 0x46, 0x41, 0x00, 0x46, 0x46, 0x41, 0x00, 0x46, 0x46, 0x41, 0x00, - 0x46, 0x46, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +SECTION_RODATA static TColor const black_color_4634[37] = { + {0x00, 0x00, 0x00, 0x00}, {0x00, 0x60, 0x00, 0x00}, {0x00, 0x00, 0xC0, 0x00}, + {0xA0, 0x60, 0x00, 0x00}, {0xA0, 0x00, 0x00, 0x00}, {0x40, 0x00, 0x60, 0x00}, + {0xE0, 0x00, 0x00, 0x00}, {0x40, 0x40, 0x40, 0x00}, {0x6E, 0x6E, 0x64, 0x00}, + {0x32, 0x00, 0x00, 0x00}, {0x00, 0x7F, 0x00, 0x00}, {0x00, 0x00, 0x7F, 0x00}, + {0xAF, 0x9B, 0x6E, 0x00}, {0xAA, 0x9B, 0x6E, 0x00}, {0x55, 0x37, 0x14, 0x00}, + {0x6E, 0x6E, 0x6E, 0x00}, {0x6E, 0x6E, 0x6E, 0x00}, {0xFF, 0x58, 0x00, 0x00}, + {0x6C, 0x3E, 0x00, 0x00}, {0x00, 0x00, 0x00, 0x00}, {0x32, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x7F, 0x00}, {0x00, 0x7F, 0x00, 0x00}, {0x55, 0x37, 0x14, 0x00}, + {0x00, 0x00, 0x22, 0x00}, {0x2B, 0x18, 0x22, 0x00}, {0x00, 0x00, 0x00, 0x00}, + {0x46, 0x46, 0x41, 0x00}, {0x46, 0x46, 0x41, 0x00}, {0x46, 0x46, 0x41, 0x00}, + {0x46, 0x46, 0x41, 0x00}, {0x00, 0x00, 0x00, 0x00}, {0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00}, {0x00, 0x00, 0x00, 0x00}, {0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00}, }; COMPILER_STRIP_GATE(0x80398A78, &black_color_4634); /* 80398B0C-80398BA0 02516C 0094+00 0/1 0/0 0/0 .rodata white_color$4635 */ #pragma push #pragma force_active on -SECTION_RODATA static u8 const white_color_4635[148] = { - 0xFF, 0xFF, 0xFF, 0xFF, 0x60, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, - 0xFF, 0xFF, 0x80, 0x80, 0xFF, 0xBE, 0x40, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0xFF, 0xC0, 0xC0, - 0xC0, 0xFF, 0xF5, 0xF5, 0xFF, 0xFF, 0xFF, 0xD2, 0xAA, 0xFF, 0xEF, 0xF5, 0xC9, 0xFF, 0xB0, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xD7, 0xFF, - 0xF5, 0xF5, 0xFF, 0xFF, 0xF5, 0xF5, 0xFF, 0xFF, 0xFF, 0xFF, 0xC2, 0xFF, 0xFF, 0x9D, 0x00, - 0xFF, 0xC8, 0xC8, 0xC8, 0xFF, 0xFF, 0xD2, 0xAA, 0xFF, 0xB0, 0xFF, 0xFF, 0xFF, 0xEF, 0xF5, - 0xC9, 0xFF, 0xFF, 0xFF, 0xD7, 0xFF, 0xD7, 0xCF, 0xF5, 0xFF, 0xFF, 0xFF, 0x33, 0xFF, 0xC8, - 0xC8, 0xC8, 0xFF, 0xF5, 0xF5, 0xFF, 0xFF, 0xF5, 0xF5, 0xFF, 0xFF, 0xF5, 0xF5, 0xFF, 0xFF, - 0xF5, 0xF5, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, +SECTION_RODATA static TColor const white_color_4635[37] = { + {0xFF, 0xFF, 0xFF, 0xFF}, {0x60, 0xFF, 0x00, 0xFF}, {0x00, 0xFF, 0xFF, 0xFF}, + {0xFF, 0xFF, 0x00, 0xFF}, {0xFF, 0x80, 0x80, 0xFF}, {0xBE, 0x40, 0xFF, 0xFF}, + {0xFF, 0xC0, 0x00, 0xFF}, {0xC0, 0xC0, 0xC0, 0xFF}, {0xF5, 0xF5, 0xFF, 0xFF}, + {0xFF, 0xD2, 0xAA, 0xFF}, {0xEF, 0xF5, 0xC9, 0xFF}, {0xB0, 0xFF, 0xFF, 0xFF}, + {0xFF, 0xFF, 0xF0, 0xFF}, {0xFF, 0xFF, 0xF0, 0xFF}, {0xFF, 0xFF, 0xD7, 0xFF}, + {0xF5, 0xF5, 0xFF, 0xFF}, {0xF5, 0xF5, 0xFF, 0xFF}, {0xFF, 0xFF, 0xC2, 0xFF}, + {0xFF, 0x9D, 0x00, 0xFF}, {0xC8, 0xC8, 0xC8, 0xFF}, {0xFF, 0xD2, 0xAA, 0xFF}, + {0xB0, 0xFF, 0xFF, 0xFF}, {0xEF, 0xF5, 0xC9, 0xFF}, {0xFF, 0xFF, 0xD7, 0xFF}, + {0xD7, 0xCF, 0xF5, 0xFF}, {0xFF, 0xFF, 0x33, 0xFF}, {0xC8, 0xC8, 0xC8, 0xFF}, + {0xF5, 0xF5, 0xFF, 0xFF}, {0xF5, 0xF5, 0xFF, 0xFF}, {0xF5, 0xF5, 0xFF, 0xFF}, + {0xF5, 0xF5, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, }; COMPILER_STRIP_GATE(0x80398B0C, &white_color_4635); #pragma pop @@ -1008,24 +961,22 @@ asm void dMeter2Info_c::set4thColor(u8 param_0, J2DPicture* param_1) { #pragma pop /* 8021DCC4-8021DCE0 218604 001C+00 0/0 2/2 0/0 .text setHotSpringTimer__13dMeter2Info_cFUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::setHotSpringTimer(u8 param_0) { - nofralloc -#include "asm/d/meter/d_meter2_info/setHotSpringTimer__13dMeter2Info_cFUc.s" +void dMeter2Info_c::setHotSpringTimer(u8 p1) { + int i_bottleIdx = p1 - 11; + mHotSpringTimer[i_bottleIdx] = 900; } -#pragma pop /* 8021DCE0-8021DD5C 218620 007C+00 0/0 1/1 0/0 .text decHotSpringTimer__13dMeter2Info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::decHotSpringTimer() { - nofralloc -#include "asm/d/meter/d_meter2_info/decHotSpringTimer__13dMeter2Info_cFv.s" +void dMeter2Info_c::decHotSpringTimer() { + for (int i = 0; i < 4; i++) { + if (mHotSpringTimer[i] != 0) { + mHotSpringTimer[i]--; + if (mHotSpringTimer[i] == 0) { + changeWater(i + 11); + } + } + } } -#pragma pop /* 8021DD5C-8021DE18 21869C 00BC+00 2/2 1/1 0/0 .text changeWater__13dMeter2Info_cFUc */ #pragma push @@ -1059,24 +1010,20 @@ asm void dMeter2Info_c::resetMiniGameItem(bool param_0) { #pragma pop /* 8021E268-8021E290 218BA8 0028+00 0/0 0/0 5/5 .text setMiniGameCount__13dMeter2Info_cFSc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::setMiniGameCount(s8 param_0) { - nofralloc -#include "asm/d/meter/d_meter2_info/setMiniGameCount__13dMeter2Info_cFSc.s" +void dMeter2Info_c::setMiniGameCount(s8 pCount) { + if (pCount < -99) { + pCount = -99; + } + if (pCount > 99) { + pCount = 99; + } + mMiniGameCount = pCount; } -#pragma pop /* 8021E290-8021E2B4 218BD0 0024+00 1/1 2/2 0/0 .text setSaveStageName__13dMeter2Info_cFPCc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_c::setSaveStageName(char const* param_0) { - nofralloc -#include "asm/d/meter/d_meter2_info/setSaveStageName__13dMeter2Info_cFPCc.s" +void dMeter2Info_c::setSaveStageName(const char* i_stageName) { + strcpy(mSaveStageName, i_stageName); } -#pragma pop /* 8021E2B4-8021E2C8 218BF4 0014+00 0/0 0/0 1/1 .text dMeter2Info_getNowLifeGauge__Fv */ #pragma push @@ -1089,38 +1036,23 @@ asm void dMeter2Info_getNowLifeGauge() { #pragma pop /* 8021E2C8-8021E2DC 218C08 0014+00 0/0 11/11 3/3 .text dMeter2Info_getNumberTextureName__Fi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_getNumberTextureName(int param_0) { - nofralloc -#include "asm/d/meter/d_meter2_info/dMeter2Info_getNumberTextureName__Fi.s" -} -#pragma pop - -/* ############################################################################################## */ -/* 80399168-80399168 0257C8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_8039931C = "im_plus_metal_24x24_00.bti"; -#pragma pop +char* dMeter2Info_getNumberTextureName(int pIndex) { + return tex_name_5183[pIndex]; +} // /* 804510B8-804510BC 0005B8 0004+00 1/1 0/0 0/0 .sbss tex_name$5188 */ -static u8 tex_name_5188[4]; +static char* tex_name_5188; /* 804510BC-804510C0 0005BC 0004+00 1/1 0/0 0/0 .sbss None */ -static u8 data_804510BC[4]; +static s8 data_804510BC; -/* 8021E2DC-8021E308 218C1C 002C+00 0/0 0/0 1/1 .text dMeter2Info_getPlusTextureName__Fv - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Info_getPlusTextureName() { - nofralloc -#include "asm/d/meter/d_meter2_info/dMeter2Info_getPlusTextureName__Fv.s" +char* dMeter2Info_getPlusTextureName() { + if (data_804510BC == 0) { + tex_name_5188 = "im_plus_metal_24x24_00.bti"; + data_804510BC = 1; + } + return tex_name_5188; } -#pragma pop /* ############################################################################################## */ /* 804549C0-804549C8 002FC0 0008+00 1/1 0/0 0/0 .sdata2 @5206 */ @@ -1174,6 +1106,11 @@ bool dMeter2Info_is2DActiveTouchArea() { } /* 8021E668-8021E688 218FA8 0020+00 0/0 1/1 0/0 .text dMeter2Info_isMapOpenCheck__Fv */ +#ifdef NONMATCHING +bool dMeter2Info_isMapOpenCheck() { + return dMeter2Info_getMeterMapClass()->isMapOpenCheck(); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1182,8 +1119,19 @@ asm void dMeter2Info_isMapOpenCheck() { #include "asm/d/meter/d_meter2_info/dMeter2Info_isMapOpenCheck__Fv.s" } #pragma pop +#endif /* 8021E688-8021E6E4 218FC8 005C+00 0/0 2/2 0/0 .text dMeter2Info_isItemOpenCheck__Fv */ +#ifdef NONMATCHING +bool dMeter2Info_isItemOpenCheck() { + if (!daPy_getPlayerActorClass()->checkCanoeSlider()) { + if (!daPy_getPlayerActorClass()->getSumouMode() && !dMeter2Info_isSub2DStatus(1)) { + return true; + } + } + return false; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1192,6 +1140,7 @@ asm void dMeter2Info_isItemOpenCheck() { #include "asm/d/meter/d_meter2_info/dMeter2Info_isItemOpenCheck__Fv.s" } #pragma pop +#endif /* 8021E6E4-8021E754 219024 0070+00 1/1 2/2 0/0 .text dMeter2Info_getRecieveLetterNum__Fv */ @@ -1236,29 +1185,10 @@ asm void dMeter2Info_recieveLetter() { #pragma pop /* 8021E9D0-8021E9D4 219310 0004+00 0/0 33/33 0/0 .text dMeter2Info_set2DVibration__Fv */ -void dMeter2Info_set2DVibration() { - /* empty function */ -} +void dMeter2Info_set2DVibration() {} /* 8021E9D4-8021E9D8 219314 0004+00 0/0 12/12 0/0 .text dMeter2Info_set2DVibrationM__Fv */ -void dMeter2Info_set2DVibrationM() { - /* empty function */ -} - -/* 8021E9D8-8021EA14 219318 003C+00 0/0 1/0 0/0 .text __sinit_d_meter2_info_cpp */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void __sinit_d_meter2_info_cpp() { - nofralloc -#include "asm/d/meter/d_meter2_info/__sinit_d_meter2_info_cpp.s" -} -#pragma pop - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x8021E9D8, __sinit_d_meter2_info_cpp); -#pragma pop +void dMeter2Info_set2DVibrationM() {} /* 80399168-80399168 0257C8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/save/d_save.cpp b/src/d/save/d_save.cpp index 20da88fee00..479eccb951b 100644 --- a/src/d/save/d_save.cpp +++ b/src/d/save/d_save.cpp @@ -6,6 +6,7 @@ #include "d/save/d_save.h" #include "dol2asm.h" #include "dolphin/types.h" +#include "msl_c/string.h" // // Types: @@ -16,239 +17,6 @@ struct daObjCarry_c { /* 80031D04 */ void setSaveFlag(); }; -struct dSv_zone_c { - /* 80034F44 */ void init(int); -}; - -struct dSv_zoneBit_c { - /* 80034CA0 */ void init(); - /* 80034CEC */ void clearRoomSwitch(); - /* 80034CF8 */ void clearRoomItem(); - /* 80034D04 */ void onSwitch(int); - /* 80034D2C */ void offSwitch(int); - /* 80034D50 */ void isSwitch(int) const; - /* 80034D78 */ void revSwitch(int); - /* 80034DAC */ void onOneSwitch(int); - /* 80034DC8 */ void offOneSwitch(int); - /* 80034DE0 */ void isOneSwitch(int) const; - /* 80034DFC */ void revOneSwitch(int); - /* 80034E24 */ void onItem(int); - /* 80034E50 */ void isItem(int) const; - /* 80034E7C */ void onOneItem(int); - /* 80034E98 */ void isOneItem(int) const; -}; - -struct dSv_zoneActor_c { - /* 80034EB4 */ void init(); - /* 80034ED4 */ void on(int); - /* 80034EF8 */ void off(int); - /* 80034F1C */ void is(int) const; -}; - -struct cXyz {}; - -struct dSv_turnRestart_c { - /* 80034FA4 */ void set(cXyz const&, s16, s8, u32); -}; - -struct dSv_save_c { - /* 8003501C */ void init(); - /* 800350A8 */ void getSave2(int); -}; - -struct dSv_restart_c { - /* 80034F80 */ void setRoom(cXyz const&, s16, s8); -}; - -struct dSv_player_wolf_c { - /* 800342B4 */ void init(); -}; - -struct dSv_player_status_b_c { - /* 80032B50 */ void init(); - /* 80032B94 */ void onDarkClearLV(int); - /* 80032BB0 */ void isDarkClearLV(int) const; - /* 80032BD0 */ void onTransformLV(int); - /* 80032BEC */ void isTransformLV(int) const; -}; - -struct dSv_player_status_a_c { - /* 80032958 */ void init(); - /* 80032A48 */ void setSelectItemIndex(int, u8); - /* 80032A5C */ void getSelectItemIndex(int) const; - /* 80032A78 */ void setMixItemIndex(int, u8); - /* 80032A8C */ void getMixItemIndex(int) const; - /* 80032AA8 */ void getRupeeMax() const; - /* 80032AF8 */ void isMagicFlag(u8) const; -}; - -struct dSv_player_return_place_c { - /* 80032CC8 */ void init(); - /* 80032D1C */ void set(char const*, s8, u8); -}; - -struct dSv_player_last_mark_info_c { - /* 80032EB0 */ void init(); - /* 80032F2C */ void setWarpItemData(char const*, cXyz const&, s16, s8, u8, u8); -}; - -struct dSv_player_item_record_c { - /* 80033F00 */ void init(); - /* 80033F6C */ void setBombNum(u8, u8); - /* 80033F7C */ void getBombNum(u8) const; - /* 80033F8C */ void setBottleNum(u8, u8); - /* 80033F9C */ void addBottleNum(u8, s16); - /* 80034030 */ void getBottleNum(u8) const; -}; - -struct dSv_player_item_max_c { - /* 80034040 */ void init(); - /* 800340B8 */ void setBombNum(u8, u8); - /* 800340F8 */ void getBombNum(u8) const; -}; - -struct dSv_player_item_c { - /* 80032F90 */ void init(); - /* 80032FB8 */ void setItem(int, u8); - /* 80033030 */ void getItem(int, bool) const; - /* 800332F8 */ void setLineUpItem(); - /* 80033354 */ void getLineUpItem(int) const; - /* 80033370 */ void setBottleItemIn(u8, u8); - /* 80033450 */ void setEmptyBottleItemIn(u8); - /* 80033494 */ void setEmptyBottle(); - /* 80033514 */ void setEmptyBottle(u8); - /* 80033598 */ void setEquipBottleItemIn(u8, u8); - /* 800336BC */ void setEquipBottleItemEmpty(u8); - /* 800336E0 */ void checkBottle(u8); - /* 80033754 */ void checkInsectBottle(); - /* 800337EC */ void checkEmptyBottle(); - /* 80033910 */ void setBombBagItemIn(u8, u8, u8, bool); - /* 80033828 */ void setBombBagItemIn(u8, u8, bool); - /* 80033A20 */ void setEmptyBombBagItemIn(u8, bool); - /* 80033A50 */ void setEmptyBombBagItemIn(u8, u8, bool); - /* 80033A88 */ void setEmptyBombBag(); - /* 80033B08 */ void setEmptyBombBag(u8, u8); - /* 80033BEC */ void checkBombBag(u8); - /* 80033C2C */ void setWarashibeItem(u8); - /* 80033CBC */ void setRodTypeLevelUp(); - /* 80033D40 */ void setBaitItem(u8); -}; - -struct dSv_player_info_c { - /* 80034518 */ void init(); -}; - -struct dSv_player_get_item_c { - /* 80033E40 */ void init(); - /* 80033E60 */ void onFirstBit(u8); - /* 80033E94 */ void offFirstBit(u8); - /* 80033EC8 */ void isFirstBit(u8) const; -}; - -struct dSv_player_field_last_stay_info_c { - /* 80032D60 */ void init(); - /* 80032DE0 */ void set(char const*, cXyz const&, s16, s8, u8); - /* 80032E4C */ void onRegionBit(int); - /* 80032E78 */ void isRegionBit(int) const; -}; - -struct dSv_player_config_c { - /* 800345AC */ void init(); - /* 80034644 */ void checkVibration() const; - /* 80034684 */ void getSound(); - /* 8003468C */ void setSound(u8); - /* 80034694 */ void getVibration(); - /* 8003469C */ void setVibration(u8); -}; - -struct dSv_player_collect_c { - /* 800341AC */ void init(); - /* 800341E8 */ void setCollect(int, u8); - /* 80034208 */ void isCollect(int, u8) const; - /* 8003422C */ void onCollectCrystal(u8); - /* 8003424C */ void isCollectCrystal(u8) const; - /* 80034270 */ void onCollectMirror(u8); - /* 80034290 */ void isCollectMirror(u8) const; -}; - -struct dSv_player_c { - /* 800346A4 */ void init(); -}; - -struct dSv_memory_c { - /* 80030DB0 */ dSv_memory_c(); - /* 80034A64 */ void init(); -}; - -struct dSv_memory2_c { - /* 80030D80 */ dSv_memory2_c(); - /* 80034A84 */ void init(); - /* 80034AA4 */ void onVisitedRoom(int); - /* 80034AC8 */ void offVisitedRoom(int); - /* 80034AEC */ void isVisitedRoom(int); -}; - -struct dSv_memBit_c { - /* 80034750 */ void init(); - /* 800347A0 */ void onTbox(int); - /* 800347C4 */ void offTbox(int); - /* 800347E8 */ void isTbox(int) const; - /* 80034810 */ void onSwitch(int); - /* 80034838 */ void offSwitch(int); - /* 80034860 */ void isSwitch(int) const; - /* 8003488C */ void revSwitch(int); - /* 800348C4 */ void onItem(int); - /* 800348EC */ void isItem(int) const; - /* 80034918 */ void onDungeonItem(int); - /* 80034934 */ void isDungeonItem(int) const; -}; - -struct dSv_light_drop_c { - /* 800342DC */ void init(); - /* 80034320 */ void setLightDropNum(u8, u8); - /* 80034340 */ void getLightDropNum(u8) const; - /* 80034368 */ void onLightDropGetFlag(u8); - /* 8003439C */ void isLightDropGetFlag(u8) const; -}; - -struct dSv_letter_info_c { - /* 800343DC */ void init(); - /* 80034428 */ void onLetterGetFlag(int); - /* 8003444C */ void isLetterGetFlag(int) const; - /* 80034474 */ void onLetterReadFlag(int); - /* 8003449C */ void isLetterReadFlag(int) const; -}; - -struct dSv_info_c { - /* 80034FCC */ void init(); - /* 800350BC */ void getSave(int); - /* 800350F0 */ void putSave(int); - /* 8003514C */ void initZone(); - /* 800351A4 */ void createZone(int); - /* 80035200 */ void onSwitch(int, int); - /* 800352B0 */ void offSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; - /* 8003542C */ void revSwitch(int, int); - /* 800354E0 */ void onItem(int, int); - /* 80035590 */ void isItem(int, int) const; - /* 80035644 */ void onActor(int, int); - /* 800356B4 */ void offActor(int, int); - /* 80035724 */ void isActor(int, int) const; - /* 80035798 */ void memory_to_card(char*, int); - /* 80035A04 */ void card_to_memory(char*, int); - /* 80035BD0 */ void initdata_to_card(char*, int); -}; - -struct dSv_horse_place_c { - /* 80032C0C */ void init(); - /* 80032C64 */ void set(char const*, cXyz const&, s16, s8); -}; - -struct dSv_fishing_info_c { - /* 800344C8 */ void init(); - /* 800344FC */ void addFishCount(u8); -}; - struct dSv_event_tmp_flag_c { static u8 const tempBitLabels[370 + 2 /* padding */]; }; @@ -257,31 +25,8 @@ struct dSv_event_flag_c { static u8 saveBitLabels[1644 + 4 /* padding */]; }; -struct dSv_event_c { - /* 80034954 */ void init(); - /* 8003498C */ void onEventBit(u16); - /* 800349A4 */ void offEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; - /* 800349E0 */ void setEventReg(u16, u8); - /* 80034A04 */ void getEventReg(u16) const; -}; - -struct dSv_danBit_c { - /* 80034B14 */ void init(s8); - /* 80034B98 */ void onSwitch(int); - /* 80034BC0 */ void offSwitch(int); - /* 80034BE8 */ void isSwitch(int) const; - /* 80034C14 */ void revSwitch(int); - /* 80034C4C */ void onItem(int); - /* 80034C74 */ void isItem(int) const; -}; - -struct dSv_MiniGame_c { - /* 80034A1C */ void init(); -}; - struct dStage_roomControl_c { - /* 8002D9B0 */ void getZoneNo(int); + /* 8002D9B0 */ static int getZoneNo(int); }; struct JMSMesgEntry_c {}; @@ -478,7 +223,6 @@ extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; // External References: // -SECTION_INIT void memcpy(); extern "C" void OSReport_Error(); extern "C" void setNowVibration__14dComIfG_play_cFUc(); extern "C" void getNowVibration__14dComIfG_play_cFv(); @@ -486,7 +230,7 @@ extern "C" void getZoneNo__20dStage_roomControl_cFi(); extern "C" void dComIfGs_setSelectItemIndex__FiUc(); extern "C" void dComIfGs_setMixItemIndex__FiUc(); extern "C" void dComIfGs_getMixItemIndex__Fi(); -extern "C" void dComIfGp_setSelectItem__Fi(); +extern "C" void dComIfGp_setSelectItem__Fi(int); extern "C" s32 dComIfGs_getBottleMax__Fv(); extern "C" void dComIfGs_setKeyNum__FiUc(); extern "C" void __ct__13dSv_memory2_cFv(); @@ -513,7 +257,6 @@ extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" void __div2i(); extern "C" void printf(); -extern "C" void strcpy(); extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 g_meter2_info[248]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; @@ -523,143 +266,149 @@ extern "C" u8 sRumbleSupported__10JUTGamePad[4]; // Declarations: // -/* 80032918-80032958 02D258 0040+00 4/4 0/0 0/0 .text dSv_item_rename__FUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void dSv_item_rename(u8 param_0) { - nofralloc -#include "asm/d/save/d_save/dSv_item_rename__FUc.s" +// needs gameinfo +#ifdef NONMATCHING +inline int dComIfGs_isItemFirstBit(u8 i_no) { + return g_dComIfG_gameInfo.getSaveFile().getPlayerGetItem().isFirstBit(i_no); } -#pragma pop +#endif -/* 80032958-80032A48 02D298 00F0+00 1/1 0/0 0/0 .text init__21dSv_player_status_a_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_a_c::init() { - nofralloc -#include "asm/d/save/d_save/init__21dSv_player_status_a_cFv.s" +static u8 dSv_item_rename(u8 item_id) { + switch (item_id) { + case OIL_BOTTLE_2: + return OIL_BOTTLE; + case RED_BOTTLE_2: + return RED_BOTTLE; + case OIL2: + return OIL; + default: + return item_id; + } } -#pragma pop -/* 80032A48-80032A5C 02D388 0014+00 0/0 1/1 0/0 .text - * setSelectItemIndex__21dSv_player_status_a_cFiUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_a_c::setSelectItemIndex(int param_0, u8 param_1) { - nofralloc -#include "asm/d/save/d_save/setSelectItemIndex__21dSv_player_status_a_cFiUc.s" -} -#pragma pop +void dSv_player_status_a_c::init() { + mMaxHealth = 15; + mCurrentHealth = 12; + mCurrentRupees = 0; + mMaxLanternOil = 0; + mCurrentLanternOil = 0; + unk10 = 0; -/* 80032A5C-80032A78 02D39C 001C+00 7/7 20/20 0/0 .text - * getSelectItemIndex__21dSv_player_status_a_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_a_c::getSelectItemIndex(int param_0) const { - nofralloc -#include "asm/d/save/d_save/getSelectItemIndex__21dSv_player_status_a_cCFi.s" -} -#pragma pop + for (int i = 0; i < 4; i++) { + mSelectItem[i] = NO_ITEM; + mMixItem[i + 1] = NO_ITEM; + dComIfGp_setSelectItem__Fi(i); + } -/* 80032A78-80032A8C 02D3B8 0014+00 0/0 1/1 0/0 .text setMixItemIndex__21dSv_player_status_a_cFiUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_a_c::setMixItemIndex(int param_0, u8 param_1) { - nofralloc -#include "asm/d/save/d_save/setMixItemIndex__21dSv_player_status_a_cFiUc.s" -} -#pragma pop + for (int i = 0; i < 6; i++) { + mEquipment[i] = 0; + } -/* 80032A8C-80032AA8 02D3CC 001C+00 0/0 1/1 0/0 .text getMixItemIndex__21dSv_player_status_a_cCFi - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_a_c::getMixItemIndex(int param_0) const { - nofralloc -#include "asm/d/save/d_save/getMixItemIndex__21dSv_player_status_a_cCFi.s" -} -#pragma pop + mEquipment[0] = WEARS_CASUAL; + mEquipment[1] = NO_ITEM; + mEquipment[2] = NO_ITEM; + mEquipment[3] = NO_ITEM; + mEquipment[4] = NO_ITEM; + mCurrentWallet = WALLET; + mMaxMagic = 0; + mCurrentMagic = 0; + mMagicFlag = 0; + unk29 = 0; + unk30 = 0; -/* 80032AA8-80032AF8 02D3E8 0050+00 0/0 4/4 0/0 .text getRupeeMax__21dSv_player_status_a_cCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_a_c::getRupeeMax() const { - nofralloc -#include "asm/d/save/d_save/getRupeeMax__21dSv_player_status_a_cCFv.s" + for (int i = 0; i < 3; i++) { + unk31[i] = 0; + } +} + +void dSv_player_status_a_c::setSelectItemIndex(signed int i_no, u8 item_index) { + if (i_no < ITEM_XY_MAX_DUMMY / 2) { + mSelectItem[i_no] = item_index; + } +} + +u8 dSv_player_status_a_c::getSelectItemIndex(signed int i_no) const { + if (i_no < ITEM_XY_MAX_DUMMY / 2) { + return mSelectItem[i_no]; + } + return 0; +} + +void dSv_player_status_a_c::setMixItemIndex(signed int i_no, u8 item_index) { + if (i_no < ITEM_XY_MAX_DUMMY / 2) { + mMixItem[i_no + 1] = item_index; + } +} + +u8 dSv_player_status_a_c::getMixItemIndex(signed int i_no) const { + if (i_no < ITEM_XY_MAX_DUMMY / 2) { + return mMixItem[i_no + 1]; + } + return 0; +} + +u16 dSv_player_status_a_c::getRupeeMax(void) const { + if (mCurrentWallet < 3) { // if you make this a default, it wont match. Compiler, pls. + switch (mCurrentWallet) { + case WALLET: + return 300; + case BIG_WALLET: + return 600; + case GIANT_WALLET: + return 1000; + } + } + return 0; } -#pragma pop /* 80032AF8-80032B50 02D438 0058+00 0/0 1/1 0/0 .text isMagicFlag__21dSv_player_status_a_cCFUc */ +#ifdef NONMATCHING +BOOL dSv_player_status_a_c::isMagicFlag(u8 i_magic) const { + if (i_magic == 0) { + return dComIfGs_isEventBit__FUs(0x2304); + } + return (mMagicFlag & (u8)(1 << i_magic)) ? TRUE : FALSE; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_player_status_a_c::isMagicFlag(u8 param_0) const { +asm BOOL dSv_player_status_a_c::isMagicFlag(u8 param_0) const { nofralloc #include "asm/d/save/d_save/isMagicFlag__21dSv_player_status_a_cCFUc.s" } #pragma pop +#endif -/* ############################################################################################## */ -/* 80451D58-80451D5C 000358 0004+00 1/1 0/0 0/0 .sdata2 @3775 */ -SECTION_SDATA2 static f32 lit_3775 = 255.0f; +void dSv_player_status_b_c::init() { + unk4 = 0; + unk0 = 0; + mTransformLevelFlag = 0; + mDarkClearLevelFlag = 0; + unk10 = 0; + mTimeOfDay = 255.0f; + unk16 = 0; -/* 80032B50-80032B94 02D490 0044+00 1/1 0/0 0/0 .text init__21dSv_player_status_b_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_b_c::init() { - nofralloc -#include "asm/d/save/d_save/init__21dSv_player_status_b_cFv.s" + for (int i = 0; i < 3; i++) { + unk18[i] = 0; + } } -#pragma pop -/* 80032B94-80032BB0 02D4D4 001C+00 0/0 1/1 0/0 .text onDarkClearLV__21dSv_player_status_b_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_b_c::onDarkClearLV(int param_0) { - nofralloc -#include "asm/d/save/d_save/onDarkClearLV__21dSv_player_status_b_cFi.s" +void dSv_player_status_b_c::onDarkClearLV(int flagOnOff) { + mDarkClearLevelFlag |= (u8)(1 << flagOnOff); } -#pragma pop -/* 80032BB0-80032BD0 02D4F0 0020+00 0/0 4/4 8/8 .text isDarkClearLV__21dSv_player_status_b_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_b_c::isDarkClearLV(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isDarkClearLV__21dSv_player_status_b_cCFi.s" +BOOL dSv_player_status_b_c::isDarkClearLV(int unk) const { + return mDarkClearLevelFlag & (u8)(1 << unk) ? TRUE : FALSE; } -#pragma pop -/* 80032BD0-80032BEC 02D510 001C+00 0/0 1/1 0/0 .text onTransformLV__21dSv_player_status_b_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_b_c::onTransformLV(int param_0) { - nofralloc -#include "asm/d/save/d_save/onTransformLV__21dSv_player_status_b_cFi.s" +void dSv_player_status_b_c::onTransformLV(int flagOnOff) { + mTransformLevelFlag |= (u8)(1 << flagOnOff); } -#pragma pop -/* 80032BEC-80032C0C 02D52C 0020+00 0/0 8/8 9/9 .text isTransformLV__21dSv_player_status_b_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_status_b_c::isTransformLV(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isTransformLV__21dSv_player_status_b_cCFi.s" +BOOL dSv_player_status_b_c::isTransformLV(int unk) const { + return mTransformLevelFlag & (u8)(1 << unk) ? TRUE : FALSE; } -#pragma pop /* ############################################################################################## */ /* 80379234-80379234 005894 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -677,6 +426,22 @@ SECTION_SDATA2 static u8 lit_3813[4] = { }; /* 80032C0C-80032C64 02D54C 0058+00 1/1 0/0 0/0 .text init__17dSv_horse_place_cFv */ +#ifdef NONMATCHING +// zero-initialized literal +void dSv_horse_place_c::init(void) { + f32 position_val; + char* default_stage; + + default_stage = strcpy(mCurrentStage, (char*)lbl_80379234); + position_val = lbl_80451D5C; + mPosition.x = lbl_80451D5C; + mPosition.y = position_val; + mPosition.z = position_val; + mXRotation = 0; + mSpawnId = 0; + mRoomId = 0; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -685,47 +450,54 @@ asm void dSv_horse_place_c::init() { #include "asm/d/save/d_save/init__17dSv_horse_place_cFv.s" } #pragma pop +#endif -/* 80032C64-80032CC8 02D5A4 0064+00 0/0 0/0 1/1 .text set__17dSv_horse_place_cFPCcRC4cXyzsSc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_horse_place_c::set(char const* param_0, cXyz const& param_1, s16 param_2, s8 param_3) { - nofralloc -#include "asm/d/save/d_save/set__17dSv_horse_place_cFPCcRC4cXyzsSc.s" +void dSv_horse_place_c::set(const char* i_name, const cXyz& i_position, s16 i_x_rot, + signed char i_room_id) { + strcpy(mCurrentStage, i_name); + mPosition = i_position; + mXRotation = i_x_rot; + mRoomId = i_room_id; } -#pragma pop -/* ############################################################################################## */ -/* 80379234-80379234 005894 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80379235 = "F_SP108"; -#pragma pop - -/* 80032CC8-80032D1C 02D608 0054+00 1/1 0/0 0/0 .text init__25dSv_player_return_place_cFv - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_return_place_c::init() { - nofralloc -#include "asm/d/save/d_save/init__25dSv_player_return_place_cFv.s" +void dSv_player_return_place_c::init(void) { + strcpy(mCurrentStage, (char*)"F_SP108"); + mRoomId = 1; + mSpawnId = 0; + unk10 = 21; + unk11 = 0; } -#pragma pop -/* 80032D1C-80032D60 02D65C 0044+00 0/0 0/0 1/1 .text set__25dSv_player_return_place_cFPCcScUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_return_place_c::set(char const* param_0, s8 param_1, u8 param_2) { - nofralloc -#include "asm/d/save/d_save/set__25dSv_player_return_place_cFPCcScUc.s" +void dSv_player_return_place_c::set(const char* i_name, s8 i_room_id, u8 i_spawn_id) { + strcpy(mCurrentStage, i_name); + mRoomId = i_room_id; + mSpawnId = i_spawn_id; } -#pragma pop /* 80032D60-80032DE0 02D6A0 0080+00 1/1 0/0 0/0 .text init__33dSv_player_field_last_stay_info_cFv */ +// zero-initialized literal +#ifdef NONMATCHING +void dSv_player_field_last_stay_info_c::init() { + f32 position_val; + + strcpy(mLastStage, (char*)lbl_80379234); + position_val = lbl_80451D5C; + + mLastPosition.x = lbl_80451D5C; + mLastPosition.y = position_val; + mLastPosition.z = position_val; + mLastAngle = 0; + mLastSpawnId = 0; + mLastRoomId = 1; + unk24 = 0; + mLastRegion = 0; + + for (int i = 0; i < 2; i++) { + unk26[i] = 0; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -734,42 +506,57 @@ asm void dSv_player_field_last_stay_info_c::init() { #include "asm/d/save/d_save/init__33dSv_player_field_last_stay_info_cFv.s" } #pragma pop +#endif -/* 80032DE0-80032E4C 02D720 006C+00 0/0 2/2 0/0 .text - * set__33dSv_player_field_last_stay_info_cFPCcRC4cXyzsScUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_field_last_stay_info_c::set(char const* param_0, cXyz const& param_1, - s16 param_2, s8 param_3, u8 param_4) { - nofralloc -#include "asm/d/save/d_save/set__33dSv_player_field_last_stay_info_cFPCcRC4cXyzsScUc.s" -} -#pragma pop +void dSv_player_field_last_stay_info_c::set(const char* i_name, const cXyz& i_last_position, + s16 i_last_angle, signed char i_last_spawn_id, + u8 i_last_room_id) { + strcpy(mLastStage, i_name); -/* 80032E4C-80032E78 02D78C 002C+00 0/0 1/1 0/0 .text - * onRegionBit__33dSv_player_field_last_stay_info_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_field_last_stay_info_c::onRegionBit(int param_0) { - nofralloc -#include "asm/d/save/d_save/onRegionBit__33dSv_player_field_last_stay_info_cFi.s" + mLastPosition = i_last_position; + mLastAngle = i_last_angle; + mLastSpawnId = i_last_spawn_id; + mLastRoomId = i_last_room_id; } -#pragma pop -/* 80032E78-80032EB0 02D7B8 0038+00 0/0 2/2 0/0 .text - * isRegionBit__33dSv_player_field_last_stay_info_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_field_last_stay_info_c::isRegionBit(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isRegionBit__33dSv_player_field_last_stay_info_cCFi.s" +void dSv_player_field_last_stay_info_c::onRegionBit(int i_region_bit) { + if (i_region_bit < 0) { + return; + } + if (8 <= i_region_bit) { + return; + } + mLastRegion |= (u8)(1 << i_region_bit); +} + +BOOL dSv_player_field_last_stay_info_c::isRegionBit(int param_1) const { + if ((param_1 >= 0) && (param_1 < 8)) { + return (mLastRegion & (u8)(1 << param_1)) ? TRUE : FALSE; + } + return false; } -#pragma pop /* 80032EB0-80032F2C 02D7F0 007C+00 1/1 0/0 0/0 .text init__27dSv_player_last_mark_info_cFv */ +// zero-initialized literal +#ifdef NONMATCHING +void dSv_player_last_mark_info_c::init(void) { + f32 position; + + strcpy(mOoccooStage, (char*)lbl_80379234); + position = lbl_80451D5C; + mOoccooPosition.x = lbl_80451D5C; + mOoccooPosition.y = position; + mOoccooPosition.z = position; + mOoccooXRotation = 0; + mOoccooRoomId = 0; + mOoccooSpawnId = 0; + mWarpAcceptStage = -1; + + for (int i = 0; i < 3; i++) { + unk25[i] = 0; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -778,31 +565,43 @@ asm void dSv_player_last_mark_info_c::init() { #include "asm/d/save/d_save/init__27dSv_player_last_mark_info_cFv.s" } #pragma pop +#endif -/* 80032F2C-80032F90 02D86C 0064+00 0/0 1/1 0/0 .text - * setWarpItemData__27dSv_player_last_mark_info_cFPCcRC4cXyzsScUcUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_last_mark_info_c::setWarpItemData(char const* param_0, cXyz const& param_1, - s16 param_2, s8 param_3, u8 param_4, - u8 param_5) { - nofralloc -#include "asm/d/save/d_save/setWarpItemData__27dSv_player_last_mark_info_cFPCcRC4cXyzsScUcUc.s" +void dSv_player_last_mark_info_c::setWarpItemData(const char* i_ooccoo_stage, + const cXyz& i_ooccoo_position, s16 i_ooccoo_angle, + s8 i_ooccoo_room_id, u8 unk1, u8 unk2) { + strcpy(mOoccooStage, i_ooccoo_stage); + mOoccooPosition = i_ooccoo_position; + mOoccooXRotation = i_ooccoo_angle; + mOoccooRoomId = i_ooccoo_room_id; } -#pragma pop -/* 80032F90-80032FB8 02D8D0 0028+00 1/1 0/0 0/0 .text init__17dSv_player_item_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::init() { - nofralloc -#include "asm/d/save/d_save/init__17dSv_player_item_cFv.s" +void dSv_player_item_c::init(void) { + for (int i = 0; i < 24; i++) { + mItems[i] = NO_ITEM; + mItemSlots[i] = NO_ITEM; + } } -#pragma pop /* 80032FB8-80033030 02D8F8 0078+00 11/11 45/45 2/2 .text setItem__17dSv_player_item_cFiUc */ +// need gameinfo inline +#ifdef NONMATCHING +void dSv_player_item_c::setItem(int item_slot, u8 item_id) { + if (item_slot < MAX_ITEM_SLOTS) { + mItems[item_slot] = item_id; + setLineUpItem(); + } + + int select_item_index = DEFAULT_SELECT_ITEM_INDEX; + + do { + if (item_slot == dComIfGs_getSelectItemIndex(select_item_index)) { + dComIfGp_setSelectItem__Fi(select_item_index); + } + select_item_index++; + } while (select_item_index < MAX_SELECT_ITEM); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -811,6 +610,7 @@ asm void dSv_player_item_c::setItem(int param_0, u8 param_1) { #include "asm/d/save/d_save/setItem__17dSv_player_item_cFiUc.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80379234-80379234 005894 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -821,46 +621,109 @@ SECTION_DEAD static char const* const stringBase_8037923D = "合成アイテム /* 80033030-800332F8 02D970 02C8+00 7/7 70/70 2/2 .text getItem__17dSv_player_item_cCFib */ +#ifdef NONMATCHING +u8 dSv_player_item_c::getItem(int item_idx, bool isComboItem) const { + if (item_idx < MAX_ITEM_SLOTS) { + if (isComboItem) { + for (int i = 0; i < 2; i++) { + if ((dComIfGs_getSelectItemIndex(i) == item_idx || + item_idx == dComIfGs_getMixItemIndex__Fi(i)) && + dComIfGs_getMixItemIndex__Fi(i) != NO_ITEM) { + u8 item_id_2 = mItems[dComIfGs_getSelectItemIndex(i)]; + u8 item_id_1 = mItems[dComIfGs_getMixItemIndex(i)]; + + // Get Bomb arrow check: Bow + Normal Bombs + if ((item_id_2 == BOW && item_id_1 == NORMAL_BOMB) || + (item_id_1 == BOW && item_id_2 == NORMAL_BOMB)) { + return BOMB_ARROW; + } + + // Get Bomb arrow check: Bow + Water Bombs + if ((item_id_2 == BOW && item_id_1 == WATER_BOMB) || + (item_id_1 == BOW && item_id_2 == WATER_BOMB)) { + return BOMB_ARROW; + } + + // Get Bomb arrow check: Bow + Bomblings + if ((item_id_2 == BOW && item_id_1 == POKE_BOMB) || + (item_id_1 == BOW && item_id_2 == POKE_BOMB)) { + return BOMB_ARROW; + } + + // Get Hawkeye check + if ((item_id_2 == BOW && item_id_1 == HAWK_EYE) || + (item_id_1 == BOW && item_id_2 == HAWK_EYE)) { + return HAWK_ARROW; + } + + // Get Rod w/ bee larva + if ((item_id_2 == FISHING_ROD_1 && item_id_1 == BEE_CHILD) || + (item_id_1 == FISHING_ROD_1 && item_id_2 == BEE_CHILD)) { + return BEE_ROD; + } + + // Get Rod w/ coral earring + if ((item_id_2 == FISHING_ROD_1 && item_id_1 == ZORAS_JEWEL) || + (item_id_1 == FISHING_ROD_1 && item_id_2 == ZORAS_JEWEL)) { + return JEWEL_ROD; + } + + // Get Rod w/ worm + if ((item_id_2 == FISHING_ROD_1 && item_id_1 == WORM) || + (item_id_1 == FISHING_ROD_1 && item_id_2 == WORM)) { + return WORM_ROD; + } + + if (i == 3) { + if (dComIfGs_getSelectItemIndex(i) == 0 && + dComIfGs_getMixItemIndex__Fi(i) == 0) { + dComIfGs_setSelectItemIndex__FiUc(i, 0xFF); + dComIfGs_setMixItemIndex__FiUc(i, 0xFF); + return 0xFF; + } + } + // 合成アイテム不定===>%d, %d\n + // Uncertain combination item===>%d, %d\n + OSReport_Error(lbl_80379234 + 9, item_id_2, item_id_1); + } + } + } + return mItems[item_idx]; + } else { + return NO_ITEM; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_player_item_c::getItem(int param_0, bool param_1) const { +asm u8 dSv_player_item_c::getItem(int param_0, bool param_1) const { nofralloc #include "asm/d/save/d_save/getItem__17dSv_player_item_cCFib.s" } #pragma pop +#endif -/* ############################################################################################## */ -/* 803A7270-803A7288 004390 0017+01 1/1 0/0 0/0 .data i_item_lst$4006 */ -SECTION_DATA static u8 i_item_lst[23 + 1 /* padding */] = { - 0x0A, - 0x08, - 0x06, - 0x02, - 0x09, - 0x04, - 0x03, - 0x00, - 0x01, - 0x17, - 0x14, - 0x05, - 0x0F, - 0x10, - 0x11, - 0x0B, - 0x0C, - 0x0D, - 0x0E, - 0x13, - 0x12, - 0x16, - 0x15, - /* padding */ - 0x00, -}; +static u8 i_item_lst[23] = {0x0A, 0x08, 0x06, 0x02, 0x09, 0x04, 0x03, 0x00, 0x01, 0x17, 0x14, 0x05, + 0x0F, 0x10, 0x11, 0x0B, 0x0C, 0x0D, 0x0E, 0x13, 0x12, 0x16, 0x15}; /* 800332F8-80033354 02DC38 005C+00 2/2 0/0 0/0 .text setLineUpItem__17dSv_player_item_cFv */ +// this is close +#ifdef NONMATCHING +void dSv_player_item_c::setLineUpItem(void) { + for (int i = 0; i < 24; i++) { + mItemSlots[i] = NO_ITEM; + } + + for (int i = 0; i < 23; i++) { + for (int j = 0; j < 24; j++) { + if (mItems[i_item_lst[j]] != NO_ITEM) { + mItemSlots[i] = i_item_lst[j]; + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -869,18 +732,42 @@ asm void dSv_player_item_c::setLineUpItem() { #include "asm/d/save/d_save/setLineUpItem__17dSv_player_item_cFv.s" } #pragma pop +#endif -/* 80033354-80033370 02DC94 001C+00 0/0 2/2 0/0 .text getLineUpItem__17dSv_player_item_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::getLineUpItem(int param_0) const { - nofralloc -#include "asm/d/save/d_save/getLineUpItem__17dSv_player_item_cCFi.s" +u8 dSv_player_item_c::getLineUpItem(int slot_number) const { + if (slot_number < MAX_ITEM_SLOTS) { + return mItemSlots[slot_number]; + } + return NO_ITEM; } -#pragma pop /* 80033370-80033450 02DCB0 00E0+00 1/1 2/2 0/0 .text setBottleItemIn__17dSv_player_item_cFUcUc */ +#ifdef NONMATCHING +void dSv_player_item_c::setBottleItemIn(u8 i_item_id_1, u8 i_item_id_2) { + u8 current_item_index; + u8 new_item_index; + + current_item_index = dSv_item_rename(i_item_id_1); + new_item_index = dSv_item_rename(i_item_id_2); + + for (int i = 0; i < 4; i++) { + // sanitize input to make sure it's only a bottle + if (current_item_index == items[i + 11]) { + setItem(i + 11, new_item_index); + // if hotsprings water, turn on the timer + if (new_item_index == 107) { + setHotSpringTimer(i + 11); + } + for (int j = 0; j < 4; j++) { + j = getSelectItemIndex(i); + if (i + 11 == j) { + dComIfGp_setSelectItem__Fi(j); + } + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -889,9 +776,17 @@ asm void dSv_player_item_c::setBottleItemIn(u8 param_0, u8 param_1) { #include "asm/d/save/d_save/setBottleItemIn__17dSv_player_item_cFUcUc.s" } #pragma pop +#endif /* 80033450-80033494 02DD90 0044+00 0/0 26/26 0/0 .text * setEmptyBottleItemIn__17dSv_player_item_cFUc */ +// this is 1 instruction off +#ifdef NONMATCHING +void dSv_player_item_c::setEmptyBottleItemIn(u8 i_item_id) { + setBottleItemIn(EMPTY_BOTTLE, dSv_item_rename(i_item_id)); + return; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -900,8 +795,20 @@ asm void dSv_player_item_c::setEmptyBottleItemIn(u8 param_0) { #include "asm/d/save/d_save/setEmptyBottleItemIn__17dSv_player_item_cFUc.s" } #pragma pop +#endif /* 80033494-80033514 02DDD4 0080+00 0/0 1/1 1/1 .text setEmptyBottle__17dSv_player_item_cFv */ +// inline +#ifdef NONMATCHING +void dSv_player_item_c::setEmptyBottle(void) { + for (int i = 0; i < 4; i++) { + if (dComIfGs_getItem((u8)(i + 11), true) == NO_ITEM) { + dComIfGs_setItem((u8)(i + 11), EMPTY_BOTTLE); + return; + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -910,8 +817,20 @@ asm void dSv_player_item_c::setEmptyBottle() { #include "asm/d/save/d_save/setEmptyBottle__17dSv_player_item_cFv.s" } #pragma pop +#endif /* 80033514-80033598 02DE54 0084+00 0/0 3/3 0/0 .text setEmptyBottle__17dSv_player_item_cFUc */ +// need gameinfo inline +#ifdef NONMATCHING +void dSv_player_item_c::setEmptyBottle(u8 item_id) { + for (int i = 0; i < 4; i++) { + if (dComIfGs_getItem((u8)(i + 11), true) == NO_ITEM) { + dComIfGs_setItem((u8)(i + 11), item_id); + return; + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -920,6 +839,7 @@ asm void dSv_player_item_c::setEmptyBottle(u8 param_0) { #include "asm/d/save/d_save/setEmptyBottle__17dSv_player_item_cFUc.s" } #pragma pop +#endif /* 80033598-800336BC 02DED8 0124+00 1/1 3/3 0/0 .text * setEquipBottleItemIn__17dSv_player_item_cFUcUc */ @@ -932,26 +852,22 @@ asm void dSv_player_item_c::setEquipBottleItemIn(u8 param_0, u8 param_1) { } #pragma pop -/* 800336BC-800336E0 02DFFC 0024+00 0/0 4/4 0/0 .text - * setEquipBottleItemEmpty__17dSv_player_item_cFUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::setEquipBottleItemEmpty(u8 param_0) { - nofralloc -#include "asm/d/save/d_save/setEquipBottleItemEmpty__17dSv_player_item_cFUc.s" +void dSv_player_item_c::setEquipBottleItemEmpty(u8 selected_index) { + setEquipBottleItemIn(selected_index, EMPTY_BOTTLE); } -#pragma pop -/* 800336E0-80033754 02E020 0074+00 0/0 30/30 0/0 .text checkBottle__17dSv_player_item_cFUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::checkBottle(u8 param_0) { - nofralloc -#include "asm/d/save/d_save/checkBottle__17dSv_player_item_cFUc.s" +u8 dSv_player_item_c::checkBottle(u8 i_item_id) { + u8 item_id; + u8 num_bottles = 0; + + item_id = dSv_item_rename(i_item_id); + for (int i = 0; i < BOTTLE_MAX; i++) { + if (item_id == mItems[i + SLOT_11]) { + num_bottles++; + } + } + return num_bottles; } -#pragma pop /* ############################################################################################## */ /* 803A7288-803A78F8 0043A8 066C+04 2/2 45/45 148/148 .data saveBitLabels__16dSv_event_flag_c */ @@ -2608,24 +2524,41 @@ SECTION_DATA u8 dSv_event_flag_c::saveBitLabels[1644 + 4 /* padding */] = { }; /* 80033754-800337EC 02E094 0098+00 0/0 1/1 0/0 .text checkInsectBottle__17dSv_player_item_cFv */ +#ifdef NONMATCHING +BOOL dSv_player_item_c::checkInsectBottle() { + int i = 0; + int j = 0; + for (; i < 0x18; i++) { + if (dComIfGs_isItemFirstBit(192 + i) && + !dComIfGs_isEventBit(lbl_803A7288.unk0[0x191 + j])) { + return 1; + } + j += 1; + } + return 0; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_player_item_c::checkInsectBottle() { +asm int dSv_player_item_c::checkInsectBottle() { nofralloc #include "asm/d/save/d_save/checkInsectBottle__17dSv_player_item_cFv.s" } #pragma pop +#endif -/* 800337EC-80033828 02E12C 003C+00 0/0 1/1 1/1 .text checkEmptyBottle__17dSv_player_item_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::checkEmptyBottle() { - nofralloc -#include "asm/d/save/d_save/checkEmptyBottle__17dSv_player_item_cFv.s" +u8 dSv_player_item_c::checkEmptyBottle(void) { + u8 num = 0; + + for (int i = 0; i < BOTTLE_MAX; i++) { + // Loop through the bottle slots (11 - 14) and increment counter for every empty bottle + if (mItems[i + SLOT_11] == EMPTY_BOTTLE) { + num++; + } + } + return num; } -#pragma pop /* 80033828-80033910 02E168 00E8+00 1/1 0/0 0/0 .text setBombBagItemIn__17dSv_player_item_cFUcUcb */ @@ -2649,29 +2582,32 @@ asm void dSv_player_item_c::setBombBagItemIn(u8 param_0, u8 param_1, u8 param_2, } #pragma pop -/* 80033A20-80033A50 02E360 0030+00 0/0 2/2 0/0 .text - * setEmptyBombBagItemIn__17dSv_player_item_cFUcb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::setEmptyBombBagItemIn(u8 param_0, bool param_1) { - nofralloc -#include "asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcb.s" +void dSv_player_item_c::setEmptyBombBagItemIn(u8 param_1, bool param_2) { + setBombBagItemIn(BOMB_BAG_LV1, param_1, param_2); } -#pragma pop -/* 80033A50-80033A88 02E390 0038+00 0/0 1/1 1/1 .text - * setEmptyBombBagItemIn__17dSv_player_item_cFUcUcb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::setEmptyBombBagItemIn(u8 param_0, u8 param_1, bool param_2) { - nofralloc -#include "asm/d/save/d_save/setEmptyBombBagItemIn__17dSv_player_item_cFUcUcb.s" +void dSv_player_item_c::setEmptyBombBagItemIn(u8 param_1, u8 param_2, bool param_3) { + setBombBagItemIn(BOMB_BAG_LV1, param_1, param_2, param_3); } -#pragma pop /* 80033A88-80033B08 02E3C8 0080+00 0/0 2/2 0/0 .text setEmptyBombBag__17dSv_player_item_cFv */ +// this is a few instructions off +#ifdef NONMATCHING +void dSv_player_item_c::setEmptyBombBag(void) { + int current_item_index; + u8 uVar1; + + for (int i = 0; i < 3; i++) { + current_item_index = (u8)(i + 15); + uVar1 = getItem(current_item_index, true); + + if (uVar1 == 0xff) { + setItem(current_item_index, 80); + return; + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -2680,6 +2616,7 @@ asm void dSv_player_item_c::setEmptyBombBag() { #include "asm/d/save/d_save/setEmptyBombBag__17dSv_player_item_cFv.s" } #pragma pop +#endif /* 80033B08-80033BEC 02E448 00E4+00 0/0 3/3 0/0 .text setEmptyBombBag__17dSv_player_item_cFUcUc */ #pragma push @@ -2691,17 +2628,38 @@ asm void dSv_player_item_c::setEmptyBombBag(u8 param_0, u8 param_1) { } #pragma pop -/* 80033BEC-80033C2C 02E52C 0040+00 0/0 1/1 0/0 .text checkBombBag__17dSv_player_item_cFUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::checkBombBag(u8 param_0) { - nofralloc -#include "asm/d/save/d_save/checkBombBag__17dSv_player_item_cFUc.s" +u8 dSv_player_item_c::checkBombBag(u8 param_1) { + u8 counter = 0; + + for (int i = 0; i < BOMB_BAG_MAX; i++) { + // Loop through the bomb bag slots (15 - 17) and increment counter for every match + if (param_1 == mItems[i + SLOT_15]) { + counter++; + } + } + return counter; } -#pragma pop /* 80033C2C-80033CBC 02E56C 0090+00 0/0 2/2 1/1 .text setWarashibeItem__17dSv_player_item_cFUc */ +// need gameinfo inline +#ifdef NONMATCHING +void dSv_player_item_c::setWarashibeItem(u8 i_item_id) { + u32 select_item_index; + + dComIfGs_setItem(SLOT_21, i_item_id); + // inline should be used, but it wrongly swaps instruction order ?? + // dComIfGp_setItem(SLOT_21, i_item_id); + g_dComIfG_gameInfo.setPlayUnkWarashibe1(SLOT_21); + g_dComIfG_gameInfo.setPlayUnkWarashibe2(i_item_id); + + for (int i = 0; i < 4; i++) { + select_item_index = dComIfGs_getSelectItemIndex((u8)i); + if (select_item_index == SLOT_21) { + dComIfGp_setSelectItem__Fi((u8)i); + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -2710,19 +2668,59 @@ asm void dSv_player_item_c::setWarashibeItem(u8 param_0) { #include "asm/d/save/d_save/setWarashibeItem__17dSv_player_item_cFUc.s" } #pragma pop +#endif -/* 80033CBC-80033D40 02E5FC 0084+00 0/0 1/1 0/0 .text setRodTypeLevelUp__17dSv_player_item_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_c::setRodTypeLevelUp() { - nofralloc -#include "asm/d/save/d_save/setRodTypeLevelUp__17dSv_player_item_cFv.s" +void dSv_player_item_c::setRodTypeLevelUp(void) { + int current_fishing_rod_item_id = mItems[SLOT_20]; + + switch (current_fishing_rod_item_id) { + case BEE_ROD: { + mItems[SLOT_20] = JEWEL_BEE_ROD; + break; + } + case WORM_ROD: { + mItems[SLOT_20] = JEWEL_WORM_ROD; + break; + } + case FISHING_ROD_1: { + mItems[SLOT_20] = JEWEL_ROD; + break; + } + } + + for (int i = 0; i < 4; i++) { + dComIfGp_setSelectItem__Fi(i); + } } -#pragma pop /* 80033D40-80033E40 02E680 0100+00 0/0 2/2 0/0 .text setBaitItem__17dSv_player_item_cFUc */ +// need gameinfo inline +#ifdef NONMATCHING +void dSv_player_item_c::setBaitItem(u8 param_1) { + switch (param_1) { + case BEE_CHILD: { + dComIfGs_isItemFirstBit(ZORAS_JEWEL) ? mItems[SLOT_20] = JEWEL_BEE_ROD : + mItems[SLOT_20] = BEE_ROD; + break; + } + case WORM: { + dComIfGs_isItemFirstBit(ZORAS_JEWEL) ? mItems[SLOT_20] = JEWEL_WORM_ROD : + mItems[SLOT_20] = WORM_ROD; + break; + } + case NO_ITEM: { + dComIfGs_isItemFirstBit(ZORAS_JEWEL) ? mItems[SLOT_20] = JEWEL_ROD : + mItems[SLOT_20] = FISHING_ROD_1; + break; + } + } + + for (int i = 0; i < 4; i++) { + dComIfGp_setSelectItem__Fi(i); + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -2731,18 +2729,24 @@ asm void dSv_player_item_c::setBaitItem(u8 param_0) { #include "asm/d/save/d_save/setBaitItem__17dSv_player_item_cFUc.s" } #pragma pop +#endif -/* 80033E40-80033E60 02E780 0020+00 1/1 0/0 0/0 .text init__21dSv_player_get_item_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_get_item_c::init() { - nofralloc -#include "asm/d/save/d_save/init__21dSv_player_get_item_cFv.s" +void dSv_player_get_item_c::init(void) { + for (int i = 0; i < 8; i++) { + mPauseMenuBitFields[i] = 0; + } } -#pragma pop /* 80033E60-80033E94 02E7A0 0034+00 0/0 3/3 1/1 .text onFirstBit__21dSv_player_get_item_cFUc */ +// this is a few instructions off +#ifdef NONMATCHING +void dSv_player_get_item_c::onFirstBit(u8 i_itemno) { + int tmp = (int)i_itemno; + int tmp2 = (i_itemno >> 3) & 0xE0; + // int uVar1 = ; + mPauseMenuBitFields[tmp2] |= 1 << (tmp & 0x1F); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -2751,6 +2755,7 @@ asm void dSv_player_get_item_c::onFirstBit(u8 param_0) { #include "asm/d/save/d_save/onFirstBit__21dSv_player_get_item_cFUc.s" } #pragma pop +#endif /* 80033E94-80033EC8 02E7D4 0034+00 0/0 7/7 1/1 .text offFirstBit__21dSv_player_get_item_cFUc */ #pragma push @@ -2766,314 +2771,282 @@ asm void dSv_player_get_item_c::offFirstBit(u8 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_player_get_item_c::isFirstBit(u8 param_0) const { +asm int dSv_player_get_item_c::isFirstBit(u8 param_0) const { nofralloc #include "asm/d/save/d_save/isFirstBit__21dSv_player_get_item_cCFUc.s" } #pragma pop -/* 80033F00-80033F6C 02E840 006C+00 1/1 0/0 0/0 .text init__24dSv_player_item_record_cFv - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_record_c::init() { - nofralloc -#include "asm/d/save/d_save/init__24dSv_player_item_record_cFv.s" -} -#pragma pop +void dSv_player_item_record_c::init(void) { + mBow = 0; -/* 80033F6C-80033F7C 02E8AC 0010+00 3/3 5/5 0/0 .text setBombNum__24dSv_player_item_record_cFUcUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_record_c::setBombNum(u8 param_0, u8 param_1) { - nofralloc -#include "asm/d/save/d_save/setBombNum__24dSv_player_item_record_cFUcUc.s" -} -#pragma pop + for (int i = 0; i < 3; i++) { + mBombBags[i] = 0; + } -/* 80033F7C-80033F8C 02E8BC 0010+00 0/0 13/13 2/2 .text getBombNum__24dSv_player_item_record_cCFUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_record_c::getBombNum(u8 param_0) const { - nofralloc -#include "asm/d/save/d_save/getBombNum__24dSv_player_item_record_cCFUc.s" -} -#pragma pop + for (int i = 0; i < 4; i++) { + mBottles[i] = 0; + } -/* 80033F8C-80033F9C 02E8CC 0010+00 0/0 2/2 0/0 .text - * setBottleNum__24dSv_player_item_record_cFUcUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_record_c::setBottleNum(u8 param_0, u8 param_1) { - nofralloc -#include "asm/d/save/d_save/setBottleNum__24dSv_player_item_record_cFUcUc.s" + mSlingshot = 0; + + for (int i = 0; i < 3; i++) { + unk5[i] = 0; + } +} + +void dSv_player_item_record_c::setBombNum(u8 i_bagIdx, u8 bag_id) { + mBombBags[i_bagIdx] = bag_id; +} + +u8 dSv_player_item_record_c::getBombNum(u8 i_bagIdx) const { + return mBombBags[i_bagIdx]; +} + +void dSv_player_item_record_c::setBottleNum(u8 i_bottleIdx, u8 bottle_num) { + mBottles[i_bottleIdx] = bottle_num; } -#pragma pop /* 80033F9C-80034030 02E8DC 0094+00 0/0 1/1 0/0 .text addBottleNum__24dSv_player_item_record_cFUcs */ +// need gameinfo inline +#ifdef NONMATCHING +u8 dSv_player_item_record_c::addBottleNum(u8 i_bottleIdx, s16 param_2) { + int iVar3 = mBottles[i_bottleIdx] + param_2; + + dComIfGs_getItem((u8)(i_bottleIdx + 0xB), true); + + if (iVar3 < 0) { + mBottles[i_bottleIdx] = 0; + } else if (iVar3 > dComIfGs_getBottleMax__Fv()) { + mBottles[i_bottleIdx] = dComIfGs_getBottleMax__Fv(); + } else { + mBottles[i_bottleIdx] = iVar3; + } + return mBottles[i_bottleIdx]; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_player_item_record_c::addBottleNum(u8 param_0, s16 param_1) { +asm u8 dSv_player_item_record_c::addBottleNum(u8 param_0, s16 param_1) { nofralloc #include "asm/d/save/d_save/addBottleNum__24dSv_player_item_record_cFUcs.s" } #pragma pop +#endif -/* 80034030-80034040 02E970 0010+00 0/0 4/4 0/0 .text getBottleNum__24dSv_player_item_record_cCFUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_record_c::getBottleNum(u8 param_0) const { - nofralloc -#include "asm/d/save/d_save/getBottleNum__24dSv_player_item_record_cCFUc.s" +u8 dSv_player_item_record_c::getBottleNum(u8 i_bottleIdx) const { + return mBottles[i_bottleIdx]; } -#pragma pop -/* 80034040-800340B8 02E980 0078+00 1/1 0/0 0/0 .text init__21dSv_player_item_max_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_max_c::init() { - nofralloc -#include "asm/d/save/d_save/init__21dSv_player_item_max_cFv.s" +void dSv_player_item_max_c::init(void) { + for (int i = 0; i < 7; i++) { + mItemCapacities[i] = 30; + } + setBombNum(NORMAL_BOMB, 30); + setBombNum(WATER_BOMB, 15); + setBombNum(POKE_BOMB, 10); + mItemCapacities[7] = 0; } -#pragma pop -/* 800340B8-800340F8 02E9F8 0040+00 1/1 0/0 0/0 .text setBombNum__21dSv_player_item_max_cFUcUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_item_max_c::setBombNum(u8 param_0, u8 param_1) { - nofralloc -#include "asm/d/save/d_save/setBombNum__21dSv_player_item_max_cFUcUc.s" +void dSv_player_item_max_c::setBombNum(u8 bomb_id, u8 bomb_max) { + switch (bomb_id) { + case NORMAL_BOMB: + mItemCapacities[1] = bomb_max; + return; + case WATER_BOMB: + mItemCapacities[2] = bomb_max; + return; + case POKE_BOMB: + mItemCapacities[6] = bomb_max; + return; + } } -#pragma pop /* 800340F8-800341AC 02EA38 00B4+00 3/3 14/14 2/2 .text getBombNum__21dSv_player_item_max_cCFUc */ +// need gameinfo inline +#ifdef NONMATCHING +u8 dSv_player_item_max_c::getBombNum(u8 param_1) const { + u8 iVar3; + + iVar3 = 0x1; + if (dComIfGs_isItemFirstBit(BOMB_BAG_LV2)) { + iVar3 = 0x2; + } + + switch (param_1) { + case NORMAL_BOMB: + return (u8)(mItemCapacities[0x1] * iVar3); + case WATER_BOMB: + return (u8)(mItemCapacities[0x2] * iVar3); + case POKE_BOMB: + return (u8)(mItemCapacities[0x6] * iVar3); + default: + return 0; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_player_item_max_c::getBombNum(u8 param_0) const { +asm u8 dSv_player_item_max_c::getBombNum(u8 param_0) const { nofralloc #include "asm/d/save/d_save/getBombNum__21dSv_player_item_max_cCFUc.s" } #pragma pop +#endif -/* 800341AC-800341E8 02EAEC 003C+00 1/1 0/0 0/0 .text init__20dSv_player_collect_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_collect_c::init() { - nofralloc -#include "asm/d/save/d_save/init__20dSv_player_collect_cFv.s" -} -#pragma pop +void dSv_player_collect_c::init(void) { + for (int i = 0; i < 8; i++) { + unk0[i] = 0; + } -/* 800341E8-80034208 02EB28 0020+00 0/0 8/8 0/0 .text setCollect__20dSv_player_collect_cFiUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_collect_c::setCollect(int param_0, u8 param_1) { - nofralloc -#include "asm/d/save/d_save/setCollect__20dSv_player_collect_cFiUc.s" + unk8 = 0; + mCrystal = 0; + mMirror = 0; + unk11 = 0xFF; + mPoeCount = 0; } -#pragma pop -/* 80034208-8003422C 02EB48 0024+00 0/0 4/4 4/4 .text isCollect__20dSv_player_collect_cCFiUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_collect_c::isCollect(int param_0, u8 param_1) const { - nofralloc -#include "asm/d/save/d_save/isCollect__20dSv_player_collect_cCFiUc.s" +void dSv_player_collect_c::setCollect(int param_1, u8 i_item) { + unk0[param_1] |= (u8)(1 << i_item); } -#pragma pop -/* 8003422C-8003424C 02EB6C 0020+00 0/0 1/1 1/1 .text onCollectCrystal__20dSv_player_collect_cFUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_collect_c::onCollectCrystal(u8 param_0) { - nofralloc -#include "asm/d/save/d_save/onCollectCrystal__20dSv_player_collect_cFUc.s" +BOOL dSv_player_collect_c::isCollect(int param_1, u8 i_item) const { + return unk0[param_1] & (u8)(1 << i_item) ? TRUE : FALSE; } -#pragma pop -/* 8003424C-80034270 02EB8C 0024+00 0/0 4/4 0/0 .text isCollectCrystal__20dSv_player_collect_cCFUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_collect_c::isCollectCrystal(u8 param_0) const { - nofralloc -#include "asm/d/save/d_save/isCollectCrystal__20dSv_player_collect_cCFUc.s" +void dSv_player_collect_c::onCollectCrystal(u8 i_item) { + mCrystal |= (u8)(1 << i_item); } -#pragma pop -/* 80034270-80034290 02EBB0 0020+00 0/0 1/1 1/1 .text onCollectMirror__20dSv_player_collect_cFUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_collect_c::onCollectMirror(u8 param_0) { - nofralloc -#include "asm/d/save/d_save/onCollectMirror__20dSv_player_collect_cFUc.s" +BOOL dSv_player_collect_c::isCollectCrystal(u8 i_item) const { + return mCrystal & (u8)(1 << i_item) ? TRUE : FALSE; } -#pragma pop -/* 80034290-800342B4 02EBD0 0024+00 0/0 4/4 0/0 .text isCollectMirror__20dSv_player_collect_cCFUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_collect_c::isCollectMirror(u8 param_0) const { - nofralloc -#include "asm/d/save/d_save/isCollectMirror__20dSv_player_collect_cCFUc.s" +void dSv_player_collect_c::onCollectMirror(u8 i_item) { + mMirror |= (u8)(1 << i_item); } -#pragma pop -/* 800342B4-800342DC 02EBF4 0028+00 1/1 0/0 0/0 .text init__17dSv_player_wolf_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_wolf_c::init() { - nofralloc -#include "asm/d/save/d_save/init__17dSv_player_wolf_cFv.s" +BOOL dSv_player_collect_c::isCollectMirror(u8 i_item) const { + return mMirror & (u8)(1 << i_item) ? TRUE : FALSE; } -#pragma pop -/* 800342DC-80034320 02EC1C 0044+00 1/1 0/0 0/0 .text init__16dSv_light_drop_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_light_drop_c::init() { - nofralloc -#include "asm/d/save/d_save/init__16dSv_light_drop_cFv.s" -} -#pragma pop +void dSv_player_wolf_c::init(void) { + for (int i = 0; i < 3; i++) { + unk0[i] = 0; + } -/* 80034320-80034340 02EC60 0020+00 0/0 0/0 1/1 .text setLightDropNum__16dSv_light_drop_cFUcUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_light_drop_c::setLightDropNum(u8 param_0, u8 param_1) { - nofralloc -#include "asm/d/save/d_save/setLightDropNum__16dSv_light_drop_cFUcUc.s" + unk3 = 0; } -#pragma pop -/* 80034340-80034368 02EC80 0028+00 0/0 11/11 4/4 .text getLightDropNum__16dSv_light_drop_cCFUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_light_drop_c::getLightDropNum(u8 param_0) const { - nofralloc -#include "asm/d/save/d_save/getLightDropNum__16dSv_light_drop_cCFUc.s" -} -#pragma pop +void dSv_light_drop_c::init(void) { + for (int i = 0; i < 4; i++) { + mLightDropCounts[i] = 0; + } -/* 80034368-8003439C 02ECA8 0034+00 0/0 4/4 0/0 .text onLightDropGetFlag__16dSv_light_drop_cFUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_light_drop_c::onLightDropGetFlag(u8 param_0) { - nofralloc -#include "asm/d/save/d_save/onLightDropGetFlag__16dSv_light_drop_cFUc.s" -} -#pragma pop + mLightDropGetFlag = 0; -/* 8003439C-800343DC 02ECDC 0040+00 0/0 8/8 2/2 .text isLightDropGetFlag__16dSv_light_drop_cCFUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_light_drop_c::isLightDropGetFlag(u8 param_0) const { - nofralloc -#include "asm/d/save/d_save/isLightDropGetFlag__16dSv_light_drop_cCFUc.s" + for (int i = 0; i < 3; i++) { + unk5[i] = 0; + } } -#pragma pop -/* 800343DC-80034428 02ED1C 004C+00 1/1 0/0 0/0 .text init__17dSv_letter_info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_letter_info_c::init() { - nofralloc -#include "asm/d/save/d_save/init__17dSv_letter_info_cFv.s" +void dSv_light_drop_c::setLightDropNum(u8 i_nowLevel, u8 param_2) { + if ((i_nowLevel < LIGHT_DROP_STAGE) || (i_nowLevel > 6)) { + mLightDropCounts[i_nowLevel] = param_2; + } } -#pragma pop -/* 80034428-8003444C 02ED68 0024+00 0/0 2/2 0/0 .text onLetterGetFlag__17dSv_letter_info_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_letter_info_c::onLetterGetFlag(int param_0) { - nofralloc -#include "asm/d/save/d_save/onLetterGetFlag__17dSv_letter_info_cFi.s" +u8 dSv_light_drop_c::getLightDropNum(u8 i_nowLevel) const { + if ((i_nowLevel >= LIGHT_DROP_STAGE) && (i_nowLevel <= 6)) { + return 0; + } + return mLightDropCounts[i_nowLevel]; } -#pragma pop -/* 8003444C-80034474 02ED8C 0028+00 0/0 4/4 0/0 .text isLetterGetFlag__17dSv_letter_info_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_letter_info_c::isLetterGetFlag(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isLetterGetFlag__17dSv_letter_info_cCFi.s" +void dSv_light_drop_c::onLightDropGetFlag(u8 i_nowLevel) { + if ((i_nowLevel < LIGHT_DROP_STAGE) || (i_nowLevel > 6)) { + mLightDropGetFlag |= (u8)(1 << i_nowLevel); + } } -#pragma pop -/* 80034474-8003449C 02EDB4 0028+00 0/0 1/1 0/0 .text onLetterReadFlag__17dSv_letter_info_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_letter_info_c::onLetterReadFlag(int param_0) { - nofralloc -#include "asm/d/save/d_save/onLetterReadFlag__17dSv_letter_info_cFi.s" +BOOL dSv_light_drop_c::isLightDropGetFlag(u8 i_nowLevel) const { + if ((i_nowLevel >= LIGHT_DROP_STAGE) && (i_nowLevel <= 6)) { + return 0; + } + return mLightDropGetFlag & (u8)(1 << i_nowLevel) ? TRUE : FALSE; } -#pragma pop -/* 8003449C-800344C8 02EDDC 002C+00 0/0 3/3 0/0 .text isLetterReadFlag__17dSv_letter_info_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_letter_info_c::isLetterReadFlag(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isLetterReadFlag__17dSv_letter_info_cCFi.s" -} -#pragma pop +void dSv_letter_info_c::init(void) { + for (int i = 0; i < 2; i++) { + mLetterGetBitfields[i] = 0; + mLetterReadBitfields[i] = 0; + } -/* 800344C8-800344FC 02EE08 0034+00 1/1 0/0 0/0 .text init__18dSv_fishing_info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_fishing_info_c::init() { - nofralloc -#include "asm/d/save/d_save/init__18dSv_fishing_info_cFv.s" + for (int i = 0; i < LETTER_INFO_BIT; i++) { + unk16[i] = 0; + } } -#pragma pop -/* 800344FC-80034518 02EE3C 001C+00 0/0 0/0 1/1 .text addFishCount__18dSv_fishing_info_cFUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_fishing_info_c::addFishCount(u8 param_0) { - nofralloc -#include "asm/d/save/d_save/addFishCount__18dSv_fishing_info_cFUc.s" +void dSv_letter_info_c::onLetterGetFlag(int i_no) { + mLetterGetBitfields[i_no >> 0x5] |= 0x1 << (i_no & 0x1F); +} + +BOOL dSv_letter_info_c::isLetterGetFlag(int i_no) const { + return mLetterGetBitfields[i_no >> 0x5] & (1 << (i_no & 0x1F)) ? TRUE : FALSE; +} + +void dSv_letter_info_c::onLetterReadFlag(int i_no) { + mLetterReadBitfields[i_no >> 0x5] |= 0x1 << (i_no & 0x1F); +} + +BOOL dSv_letter_info_c::isLetterReadFlag(int i_no) const { + return mLetterReadBitfields[i_no >> 5] & 1 << (i_no & 0x1F) ? TRUE : FALSE; +} + +void dSv_fishing_info_c::init(void) { + for (int i = 0; i < 16; i++) { + mFishCount[i] = 0; + unk32[i] = 0; + } +} + +void dSv_fishing_info_c::addFishCount(u8 fish_index) { + if (mFishCount[fish_index] < 999) { + mFishCount[fish_index] += 1; + } } -#pragma pop /* 80034518-800345AC 02EE58 0094+00 1/1 0/0 0/0 .text init__17dSv_player_info_cFv */ +// a few instructions off +#ifdef NONMATCHING +void dSv_player_info_c::init(void) { + unsigned long a = 0x382; + unsigned long b = 0x383; + + JMSMesgEntry_c* c = 0; + JMSMesgEntry_c* d = 0; + + d_meter2_info::dMeter2Info_c ok; + + ok.getString(a, (char*)link_name, c); + ok.getString(b, (char*)epona_name, d); + + unk4 = 0; + unk0 = 0; + unk12 = 0; + unk8 = 0; + unk16 = 0; + unk18 = 0; + unk54 = 0; + + for (int i = 0; i < 5; i++) { + unk55[i] = 0; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -3082,8 +3055,35 @@ asm void dSv_player_info_c::init() { #include "asm/d/save/d_save/init__17dSv_player_info_cFv.s" } #pragma pop +#endif /* 800345AC-80034644 02EEEC 0098+00 1/1 0/0 0/0 .text init__19dSv_player_config_cFv */ +// needs mAudioMgrPtr setup +#ifdef NONMATCHING +void dSv_player_config_c::init(void) { + u32 os_mSoundMode; + + unk0 = 1; + os_mSoundMode = OSGetSoundMode(); + if (os_mSoundMode == SOUND_MODE_MONO) { + mSoundMode = SOUND_MODE_MONO; + lbl_80451368->setOutputMode(SOUND_MODE_MONO); + } else { + mSoundMode = SOUND_MODE_STEREO; + lbl_80451368->setOutputMode(SOUND_MODE_STEREO); + } + + unk2 = 0; + mVibrationStatus = 1; + unk4 = 0; + unk5 = 0; + unk9 = 0; + unk6 = 0x15e; + unk8 = 0; + unk10 = 0; + unk11 = 1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -3092,625 +3092,394 @@ asm void dSv_player_config_c::init() { #include "asm/d/save/d_save/init__19dSv_player_config_cFv.s" } #pragma pop +#endif /* 80034644-80034684 02EF84 0040+00 0/0 4/4 0/0 .text checkVibration__19dSv_player_config_cCFv */ +// need gameinfo inline +#ifdef NONMATCHING +u32 dSv_player_config_c::checkVibration(void) const { + return _sRumbleSupported & 0x80000000 ? dComIfGp_getNowVibration() : 0; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_player_config_c::checkVibration() const { +asm u32 dSv_player_config_c::checkVibration() const { nofralloc #include "asm/d/save/d_save/checkVibration__19dSv_player_config_cCFv.s" } #pragma pop +#endif -/* 80034684-8003468C 02EFC4 0008+00 1/1 2/2 0/0 .text getSound__19dSv_player_config_cFv - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_config_c::getSound() { - nofralloc -#include "asm/d/save/d_save/getSound__19dSv_player_config_cFv.s" -} -#pragma pop - -/* 8003468C-80034694 -00001 0008+00 0/0 0/0 0/0 .text setSound__19dSv_player_config_cFUc - */ -void dSv_player_config_c::setSound(u8 param_0) { - *(u8*)(((u8*)this) + 1) /* this->field_0x1 */ = (u8)(param_0); +u8 dSv_player_config_c::getSound(void) { + return mSoundMode; } -/* 80034694-8003469C 02EFD4 0008+00 1/1 1/1 0/0 .text getVibration__19dSv_player_config_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_config_c::getVibration() { - nofralloc -#include "asm/d/save/d_save/getVibration__19dSv_player_config_cFv.s" -} -#pragma pop - -/* 8003469C-800346A4 -00001 0008+00 0/0 0/0 0/0 .text setVibration__19dSv_player_config_cFUc */ -void dSv_player_config_c::setVibration(u8 param_0) { - *(u8*)(((u8*)this) + 3) /* this->field_0x3 */ = (u8)(param_0); +void dSv_player_config_c::setSound(u8 i_mSoundMode) { + mSoundMode = i_mSoundMode; } -/* 800346A4-80034750 02EFE4 00AC+00 1/1 0/0 0/0 .text init__12dSv_player_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_player_c::init() { - nofralloc -#include "asm/d/save/d_save/init__12dSv_player_cFv.s" +u8 dSv_player_config_c::getVibration(void) { + return mVibrationStatus; } -#pragma pop -/* 80034750-800347A0 02F090 0050+00 1/1 0/0 0/0 .text init__12dSv_memBit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::init() { - nofralloc -#include "asm/d/save/d_save/init__12dSv_memBit_cFv.s" +void dSv_player_config_c::setVibration(u8 i_mVibrationStatus) { + mVibrationStatus = i_mVibrationStatus; } -#pragma pop -/* 800347A0-800347C4 02F0E0 0024+00 0/0 0/0 15/15 .text onTbox__12dSv_memBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::onTbox(int param_0) { - nofralloc -#include "asm/d/save/d_save/onTbox__12dSv_memBit_cFi.s" +void dSv_player_c::init(void) { + player_status_a.init(); + player_status_b.init(); + horse_place.init(); + player_return.init(); + player_last_field.init(); + player_last_mark.init(); + player_item.init(); + player_get_item.init(); + player_item_record.init(); + player_item_max.init(); + player_collect.init(); + player_wolf.init(); + light_drop.init(); + letter_info.init(); + fishing_info.init(); + mPlayerInfo.init(); + player_config.init(); } -#pragma pop -/* 800347C4-800347E8 02F104 0024+00 0/0 0/0 5/5 .text offTbox__12dSv_memBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::offTbox(int param_0) { - nofralloc -#include "asm/d/save/d_save/offTbox__12dSv_memBit_cFi.s" -} -#pragma pop +void dSv_memBit_c::init(void) { + for (int i = 0; i < 2; i++) { + area_flags_bitfields1[i] = 0; + } -/* 800347E8-80034810 02F128 0028+00 0/0 6/6 7/7 .text isTbox__12dSv_memBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::isTbox(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isTbox__12dSv_memBit_cCFi.s" -} -#pragma pop + for (int i = 0; i < 4; i++) { + area_flags_bitfields2[i] = 0; + } -/* 80034810-80034838 02F150 0028+00 1/1 5/5 18/18 .text onSwitch__12dSv_memBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::onSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/onSwitch__12dSv_memBit_cFi.s" + rupee_flags_bitfields = 0; + small_key_flags = 0; + dungeons_flags = 0; } -#pragma pop -/* 80034838-80034860 02F178 0028+00 1/1 3/3 3/3 .text offSwitch__12dSv_memBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::offSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/offSwitch__12dSv_memBit_cFi.s" +void dSv_memBit_c::onTbox(int i_no) { + area_flags_bitfields1[i_no >> 5] |= 1 << (i_no & 0x1F); } -#pragma pop -/* 80034860-8003488C 02F1A0 002C+00 1/1 11/11 23/23 .text isSwitch__12dSv_memBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::isSwitch(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isSwitch__12dSv_memBit_cCFi.s" +void dSv_memBit_c::offTbox(int i_no) { + area_flags_bitfields1[i_no >> 5] &= ~(1 << (i_no & 0x1F)); +} + +BOOL dSv_memBit_c::isTbox(int i_no) const { + return 1 << (i_no & 0x1f) & area_flags_bitfields1[i_no >> 0x5] ? TRUE : FALSE; +} + +void dSv_memBit_c::onSwitch(int i_no) { + (area_flags_bitfields1 + (i_no >> 0x5))[0x2] |= 0x1 << (i_no & 0x1F); +} +void dSv_memBit_c::offSwitch(int i_no) { + (area_flags_bitfields1 + (i_no >> 0x5))[0x2] &= ~(0x1 << (i_no & 0x1F)); +} + +BOOL dSv_memBit_c::isSwitch(int i_no) const { + return (area_flags_bitfields2[i_no >> 0x5] & 0x1 << (i_no & 0x1F)) ? TRUE : FALSE; } -#pragma pop /* 8003488C-800348C4 02F1CC 0038+00 1/1 0/0 0/0 .text revSwitch__12dSv_memBit_cFi */ +// instruction in wrong place +#ifdef NONMATCHING +BOOL dSv_memBit_c::revSwitch(int i_no) { + unsigned int tmp = 1 << (i_no & 0x1F); + (area_flags_bitfields1 + (i_no >> 0x5))[0x2] ^= tmp; + return (area_flags_bitfields1 + (i_no >> 0x5))[0x2] & tmp ? TRUE : FALSE; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_memBit_c::revSwitch(int param_0) { +asm int dSv_memBit_c::revSwitch(int param_0) { nofralloc #include "asm/d/save/d_save/revSwitch__12dSv_memBit_cFi.s" } #pragma pop +#endif -/* 800348C4-800348EC 02F204 0028+00 1/1 0/0 0/0 .text onItem__12dSv_memBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::onItem(int param_0) { - nofralloc -#include "asm/d/save/d_save/onItem__12dSv_memBit_cFi.s" +void dSv_memBit_c::onItem(int i_no) { + (area_flags_bitfields1 + (i_no >> 0x5))[0x6] |= 0x1 << (i_no & 0x1F); } -#pragma pop -/* 800348EC-80034918 02F22C 002C+00 1/1 2/2 1/1 .text isItem__12dSv_memBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::isItem(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isItem__12dSv_memBit_cCFi.s" +BOOL dSv_memBit_c::isItem(int i_no) const { + return (&rupee_flags_bitfields)[i_no >> 0x5] & 0x1 << (i_no & 0x1F) ? TRUE : FALSE; } -#pragma pop -/* 80034918-80034934 02F258 001C+00 0/0 8/8 18/18 .text onDungeonItem__12dSv_memBit_cFi - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::onDungeonItem(int param_0) { - nofralloc -#include "asm/d/save/d_save/onDungeonItem__12dSv_memBit_cFi.s" +void dSv_memBit_c::onDungeonItem(int i_no) { + dungeons_flags |= (u8)(1 << i_no); } -#pragma pop -/* 80034934-80034954 02F274 0020+00 0/0 27/27 47/47 .text isDungeonItem__12dSv_memBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memBit_c::isDungeonItem(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isDungeonItem__12dSv_memBit_cCFi.s" +bool dSv_memBit_c::isDungeonItem(int i_no) const { + return dungeons_flags & (u8)(1 << i_no) ? true : false; } -#pragma pop -/* 80034954-8003498C 02F294 0038+00 2/2 0/0 0/0 .text init__11dSv_event_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_event_c::init() { - nofralloc -#include "asm/d/save/d_save/init__11dSv_event_cFv.s" +void dSv_event_c::init(void) { + for (int i = 0; i < MAX_EVENTS; i++) { + events[i] = 0; + } + setInitEventBit__Fv(); } -#pragma pop -/* 8003498C-800349A4 02F2CC 0018+00 1/1 27/27 58/58 .text onEventBit__11dSv_event_cFUs */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_event_c::onEventBit(u16 param_0) { - nofralloc -#include "asm/d/save/d_save/onEventBit__11dSv_event_cFUs.s" +void dSv_event_c::onEventBit(u16 i_no) { + events[(i_no >> 8)] |= (u8)i_no; } -#pragma pop -/* 800349A4-800349BC 02F2E4 0018+00 1/1 14/14 23/23 .text offEventBit__11dSv_event_cFUs - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_event_c::offEventBit(u16 param_0) { - nofralloc -#include "asm/d/save/d_save/offEventBit__11dSv_event_cFUs.s" +void dSv_event_c::offEventBit(u16 i_no) { + events[(i_no >> 8)] &= ~(u8)i_no; } -#pragma pop -/* 800349BC-800349E0 02F2FC 0024+00 3/3 77/77 153/153 .text isEventBit__11dSv_event_cCFUs - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_event_c::isEventBit(u16 param_0) const { - nofralloc -#include "asm/d/save/d_save/isEventBit__11dSv_event_cCFUs.s" +BOOL dSv_event_c::isEventBit(u16 i_no) const { + return events[(i_no >> 8)] & (i_no & 0xFF) ? TRUE : FALSE; } -#pragma pop -/* 800349E0-80034A04 02F320 0024+00 0/0 12/12 17/17 .text setEventReg__11dSv_event_cFUsUc - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_event_c::setEventReg(u16 param_0, u8 param_1) { - nofralloc -#include "asm/d/save/d_save/setEventReg__11dSv_event_cFUsUc.s" +void dSv_event_c::setEventReg(u16 param_1, u8 param_2) { + u8 uVar1 = (param_1 >> 8); + events[uVar1] &= ~(u8)param_1; + events[uVar1] |= param_2; } -#pragma pop -/* 80034A04-80034A1C 02F344 0018+00 0/0 19/19 20/20 .text getEventReg__11dSv_event_cCFUs - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_event_c::getEventReg(u16 param_0) const { - nofralloc -#include "asm/d/save/d_save/getEventReg__11dSv_event_cCFUs.s" +u8 dSv_event_c::getEventReg(u16 param_1) const { + return (u8)param_1 & events[param_1 >> 8]; } -#pragma pop -/* 80034A1C-80034A64 02F35C 0048+00 1/1 0/0 0/0 .text init__14dSv_MiniGame_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_MiniGame_c::init() { - nofralloc -#include "asm/d/save/d_save/init__14dSv_MiniGame_cFv.s" +void dSv_MiniGame_c::init(void) { + unk0 = 0; + for (int i = 0; i < 3; i++) { + unk1[i] = 0; + } + unk4 = 120000; + unk8 = 0; + unk12 = 0; + unk16 = 0; + unk20 = 0; } -#pragma pop -/* 80034A64-80034A84 02F3A4 0020+00 2/2 2/2 0/0 .text init__12dSv_memory_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memory_c::init() { - nofralloc -#include "asm/d/save/d_save/init__12dSv_memory_cFv.s" +void dSv_memory_c::init(void) { + temp_flags.init(); } -#pragma pop -/* 80034A84-80034AA4 02F3C4 0020+00 1/1 1/1 0/0 .text init__13dSv_memory2_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memory2_c::init() { - nofralloc -#include "asm/d/save/d_save/init__13dSv_memory2_cFv.s" +void dSv_memory2_c::init(void) { + for (int i = 0; i < 2; i++) { + unk0[i] = 0; + } } -#pragma pop -/* 80034AA4-80034AC8 02F3E4 0024+00 0/0 1/1 1/1 .text onVisitedRoom__13dSv_memory2_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memory2_c::onVisitedRoom(int param_0) { - nofralloc -#include "asm/d/save/d_save/onVisitedRoom__13dSv_memory2_cFi.s" +void dSv_memory2_c::onVisitedRoom(int i_no) { + unk0[i_no >> 5] |= 1 << (i_no & 0x1F); } -#pragma pop -/* 80034AC8-80034AEC 02F408 0024+00 0/0 1/1 1/1 .text offVisitedRoom__13dSv_memory2_cFi - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memory2_c::offVisitedRoom(int param_0) { - nofralloc -#include "asm/d/save/d_save/offVisitedRoom__13dSv_memory2_cFi.s" +void dSv_memory2_c::offVisitedRoom(int i_no) { + unk0[i_no >> 5] &= ~(1 << (i_no & 0x1F)); } -#pragma pop -/* 80034AEC-80034B14 02F42C 0028+00 0/0 4/4 0/0 .text isVisitedRoom__13dSv_memory2_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_memory2_c::isVisitedRoom(int param_0) { - nofralloc -#include "asm/d/save/d_save/isVisitedRoom__13dSv_memory2_cFi.s" +BOOL dSv_memory2_c::isVisitedRoom(int param_1) { + return (1 << (param_1 & 0x1F) & unk0[param_1 >> 5]) ? TRUE : FALSE; } -#pragma pop -/* 80034B14-80034B98 02F454 0084+00 1/1 1/1 0/0 .text init__12dSv_danBit_cFSc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_danBit_c::init(s8 param_0) { - nofralloc -#include "asm/d/save/d_save/init__12dSv_danBit_cFSc.s" -} -#pragma pop +bool dSv_danBit_c::init(s8 i_stage) { + if (i_stage != mStageNum) { + switch_bitfield[0] = 0; + switch_bitfield[1] = 0; + item_bitfield[0] = 0; + item_bitfield[1] = 0; + item_bitfield[2] = 0; + item_bitfield[3] = 0; + mStageNum = i_stage; + unk1 = 0; -/* 80034B98-80034BC0 02F4D8 0028+00 1/1 2/2 26/26 .text onSwitch__12dSv_danBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_danBit_c::onSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/onSwitch__12dSv_danBit_cFi.s" -} -#pragma pop + for (int i = 0; i < 16; i++) { + unk28[i] = 0xFFFF; + } -/* 80034BC0-80034BE8 02F500 0028+00 1/1 1/1 10/10 .text offSwitch__12dSv_danBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_danBit_c::offSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/offSwitch__12dSv_danBit_cFi.s" -} -#pragma pop + clrSaveFlag__12daObjCarry_cFv(); + return true; -/* 80034BE8-80034C14 02F528 002C+00 1/1 6/6 14/14 .text isSwitch__12dSv_danBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_danBit_c::isSwitch(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isSwitch__12dSv_danBit_cCFi.s" + } else { + setSaveFlag__12daObjCarry_cFv(); + return false; + } } -#pragma pop -/* 80034C14-80034C4C 02F554 0038+00 1/1 0/0 0/0 .text revSwitch__12dSv_danBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_danBit_c::revSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/revSwitch__12dSv_danBit_cFi.s" +void dSv_danBit_c::onSwitch(int i_no) { + switch_bitfield[i_no >> 5] |= 1 << (i_no & 0x1F); } -#pragma pop -/* 80034C4C-80034C74 02F58C 0028+00 1/1 0/0 0/0 .text onItem__12dSv_danBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_danBit_c::onItem(int param_0) { - nofralloc -#include "asm/d/save/d_save/onItem__12dSv_danBit_cFi.s" +void dSv_danBit_c::offSwitch(int i_no) { + switch_bitfield[i_no >> 5] &= ~(1 << (i_no & 0x1F)); } -#pragma pop -/* 80034C74-80034CA0 02F5B4 002C+00 1/1 2/2 0/0 .text isItem__12dSv_danBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_danBit_c::isItem(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isItem__12dSv_danBit_cCFi.s" +BOOL dSv_danBit_c::isSwitch(int i_no) const { + return switch_bitfield[i_no >> 0x5] & (0x1 << (i_no & 0x1F)) ? TRUE : FALSE; } -#pragma pop -/* 80034CA0-80034CEC 02F5E0 004C+00 1/1 0/0 0/0 .text init__13dSv_zoneBit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::init() { - nofralloc -#include "asm/d/save/d_save/init__13dSv_zoneBit_cFv.s" +BOOL dSv_danBit_c::revSwitch(int i_no) { + int uVar1 = 1 << (i_no & 0x1F); + switch_bitfield[i_no >> 5] ^= uVar1; + return switch_bitfield[i_no >> 5] & uVar1 ? TRUE : FALSE; } -#pragma pop -/* 80034CEC-80034CF8 02F62C 000C+00 0/0 3/3 0/0 .text clearRoomSwitch__13dSv_zoneBit_cFv - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::clearRoomSwitch() { - nofralloc -#include "asm/d/save/d_save/clearRoomSwitch__13dSv_zoneBit_cFv.s" +void dSv_danBit_c::onItem(int i_no) { + item_bitfield[i_no >> 5] |= 1 << (i_no & 0x1F); } -#pragma pop -/* 80034CF8-80034D04 02F638 000C+00 0/0 3/3 0/0 .text clearRoomItem__13dSv_zoneBit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::clearRoomItem() { - nofralloc -#include "asm/d/save/d_save/clearRoomItem__13dSv_zoneBit_cFv.s" +BOOL dSv_danBit_c::isItem(int i_no) const { + return item_bitfield[i_no >> 5] & 1 << (i_no & 0x1F) ? TRUE : FALSE; } -#pragma pop -/* 80034D04-80034D2C 02F644 0028+00 1/1 1/1 0/0 .text onSwitch__13dSv_zoneBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::onSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/onSwitch__13dSv_zoneBit_cFi.s" -} -#pragma pop +void dSv_zoneBit_c::init(void) { + for (int i = 0; i < 2; i++) { + switch_bitfield[i] = 0; + } -/* 80034D2C-80034D50 02F66C 0024+00 1/1 1/1 0/0 .text offSwitch__13dSv_zoneBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::offSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/offSwitch__13dSv_zoneBit_cFi.s" -} -#pragma pop + for (int i = 0; i < 2; i++) { + item_bitfield[i] = 0; + } -/* 80034D50-80034D78 02F690 0028+00 1/1 1/1 0/0 .text isSwitch__13dSv_zoneBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::isSwitch(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isSwitch__13dSv_zoneBit_cCFi.s" + room_switch = 0; + room_item = 0; +} + +void dSv_zoneBit_c::clearRoomSwitch(void) { + room_switch = 0; +} + +void dSv_zoneBit_c::clearRoomItem(void) { + room_item = 0; +} + +void dSv_zoneBit_c::onSwitch(int i_no) { + switch_bitfield[i_no >> 4] |= (u16)(1 << (i_no & 0xF)); +} + +void dSv_zoneBit_c::offSwitch(int i_no) { + switch_bitfield[i_no >> 4] &= ~(1 << (i_no & 0xF)); +} + +BOOL dSv_zoneBit_c::isSwitch(int i_no) const { + return switch_bitfield[i_no >> 4] & 1 << (i_no & 0xF) ? TRUE : FALSE; } -#pragma pop /* 80034D78-80034DAC 02F6B8 0034+00 1/1 0/0 0/0 .text revSwitch__13dSv_zoneBit_cFi */ +// instruction in wrong place +#ifdef NONMATCHING +BOOL dSv_zoneBit_c::revSwitch(int i_no) { + int uVar1 = 1 << (i_no & 0xF); + switch_bitfield[i_no >> 4] ^= uVar1; + return switch_bitfield[i_no >> 4] & uVar1 ? TRUE : FALSE; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dSv_zoneBit_c::revSwitch(int param_0) { +asm int dSv_zoneBit_c::revSwitch(int param_0) { nofralloc #include "asm/d/save/d_save/revSwitch__13dSv_zoneBit_cFi.s" } #pragma pop +#endif -/* 80034DAC-80034DC8 02F6EC 001C+00 1/1 1/1 0/0 .text onOneSwitch__13dSv_zoneBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::onOneSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/onOneSwitch__13dSv_zoneBit_cFi.s" +void dSv_zoneBit_c::onOneSwitch(int i_no) { + room_switch |= (u16)(1 << i_no); } -#pragma pop -/* 80034DC8-80034DE0 02F708 0018+00 1/1 1/1 0/0 .text offOneSwitch__13dSv_zoneBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::offOneSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/offOneSwitch__13dSv_zoneBit_cFi.s" +void dSv_zoneBit_c::offOneSwitch(int i_no) { + room_switch &= ~(1 << i_no); } -#pragma pop -/* 80034DE0-80034DFC 02F720 001C+00 1/1 1/1 0/0 .text isOneSwitch__13dSv_zoneBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::isOneSwitch(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isOneSwitch__13dSv_zoneBit_cCFi.s" +BOOL dSv_zoneBit_c::isOneSwitch(int i_no) const { + return room_switch & 1 << i_no ? TRUE : FALSE; } -#pragma pop -/* 80034DFC-80034E24 02F73C 0028+00 1/1 0/0 0/0 .text revOneSwitch__13dSv_zoneBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::revOneSwitch(int param_0) { - nofralloc -#include "asm/d/save/d_save/revOneSwitch__13dSv_zoneBit_cFi.s" +BOOL dSv_zoneBit_c::revOneSwitch(int i_no) { + int iVar1 = 1 << i_no; + room_switch ^= iVar1; + return room_switch & iVar1 ? TRUE : FALSE; } -#pragma pop -/* 80034E24-80034E50 02F764 002C+00 1/1 0/0 0/0 .text onItem__13dSv_zoneBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::onItem(int param_0) { - nofralloc -#include "asm/d/save/d_save/onItem__13dSv_zoneBit_cFi.s" +void dSv_zoneBit_c::onItem(int i_no) { + item_bitfield[i_no >> 4] |= (u16)(1 << (i_no & 0xF)); } -#pragma pop -/* 80034E50-80034E7C 02F790 002C+00 1/1 1/1 0/0 .text isItem__13dSv_zoneBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::isItem(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isItem__13dSv_zoneBit_cCFi.s" +BOOL dSv_zoneBit_c::isItem(int i_no) const { + return item_bitfield[i_no >> 4] & 1 << (i_no & 0xF) ? TRUE : FALSE; } -#pragma pop -/* 80034E7C-80034E98 02F7BC 001C+00 1/1 0/0 0/0 .text onOneItem__13dSv_zoneBit_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::onOneItem(int param_0) { - nofralloc -#include "asm/d/save/d_save/onOneItem__13dSv_zoneBit_cFi.s" +void dSv_zoneBit_c::onOneItem(int i_no) { + room_item |= (u16)(1 << i_no); } -#pragma pop -/* 80034E98-80034EB4 02F7D8 001C+00 1/1 1/1 0/0 .text isOneItem__13dSv_zoneBit_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneBit_c::isOneItem(int param_0) const { - nofralloc -#include "asm/d/save/d_save/isOneItem__13dSv_zoneBit_cCFi.s" +BOOL dSv_zoneBit_c::isOneItem(int i_no) const { + return room_item & 1 << i_no ? TRUE : FALSE; } -#pragma pop -/* 80034EB4-80034ED4 02F7F4 0020+00 1/1 0/0 0/0 .text init__15dSv_zoneActor_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneActor_c::init() { - nofralloc -#include "asm/d/save/d_save/init__15dSv_zoneActor_cFv.s" +void dSv_zoneActor_c::init(void) { + for (int i = 0; i < 4; i++) { + actor_bitfield[i] = 0; + } } -#pragma pop -/* 80034ED4-80034EF8 02F814 0024+00 1/1 0/0 0/0 .text on__15dSv_zoneActor_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneActor_c::on(int param_0) { - nofralloc -#include "asm/d/save/d_save/on__15dSv_zoneActor_cFi.s" +void dSv_zoneActor_c::on(int i_id) { + actor_bitfield[i_id >> 5] |= 1 << (i_id & 0x1F); } -#pragma pop -/* 80034EF8-80034F1C 02F838 0024+00 1/1 0/0 0/0 .text off__15dSv_zoneActor_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneActor_c::off(int param_0) { - nofralloc -#include "asm/d/save/d_save/off__15dSv_zoneActor_cFi.s" +void dSv_zoneActor_c::off(int i_id) { + actor_bitfield[i_id >> 5] &= ~(1 << (i_id & 0x1F)); } -#pragma pop -/* 80034F1C-80034F44 02F85C 0028+00 1/1 0/0 0/0 .text is__15dSv_zoneActor_cCFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zoneActor_c::is(int param_0) const { - nofralloc -#include "asm/d/save/d_save/is__15dSv_zoneActor_cCFi.s" +BOOL dSv_zoneActor_c::is(int i_id) const { + return actor_bitfield[i_id >> 5] & 1 << (i_id & 0x1F) ? TRUE : FALSE; } -#pragma pop -/* 80034F44-80034F80 02F884 003C+00 2/2 0/0 0/0 .text init__10dSv_zone_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_zone_c::init(int param_0) { - nofralloc -#include "asm/d/save/d_save/init__10dSv_zone_cFi.s" +void dSv_zone_c::init(int param_1) { + unk0 = param_1; + zone_bit.init(); + zone_actor.init(); } -#pragma pop -/* 80034F80-80034FA4 02F8C0 0024+00 0/0 3/3 14/14 .text setRoom__13dSv_restart_cFRC4cXyzsSc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_restart_c::setRoom(cXyz const& param_0, s16 param_1, s8 param_2) { - nofralloc -#include "asm/d/save/d_save/setRoom__13dSv_restart_cFRC4cXyzsSc.s" +void dSv_restart_c::setRoom(const cXyz& i_position, s16 i_x_rotation, s8 param_3) { + unk0 = param_3; + mPosition = i_position; + mXRotation = i_x_rotation; } -#pragma pop -/* 80034FA4-80034FCC 02F8E4 0028+00 0/0 2/2 0/0 .text set__17dSv_turnRestart_cFRC4cXyzsScUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_turnRestart_c::set(cXyz const& param_0, s16 param_1, s8 param_2, u32 param_3) { - nofralloc -#include "asm/d/save/d_save/set__17dSv_turnRestart_cFRC4cXyzsScUl.s" +void dSv_turnRestart_c::set(const cXyz& i_position, s16 i_x_rotation, s8 param_3, u32 param_4) { + mPosition = i_position; + mXRotation = i_x_rotation; + unk18 = param_3; + unk12 = param_4; } -#pragma pop -/* 80034FCC-8003501C 02F90C 0050+00 0/0 2/2 0/0 .text init__10dSv_info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::init() { - nofralloc -#include "asm/d/save/d_save/init__10dSv_info_cFv.s" +void dSv_info_c::init(void) { + save_file.init(); + memory.init(); + dungeon_bit.init(-1); + initZone(); + events.init(); } -#pragma pop -/* 8003501C-800350A8 02F95C 008C+00 2/2 0/0 0/0 .text init__10dSv_save_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_save_c::init() { - nofralloc -#include "asm/d/save/d_save/init__10dSv_save_cFv.s" -} -#pragma pop +void dSv_save_c::init(void) { + player.init(); + for (int i = 0; i < 0x20; i++) { + area_flags[i].init(); + } -/* 800350A8-800350BC 02F9E8 0014+00 0/0 6/6 1/1 .text getSave2__10dSv_save_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_save_c::getSave2(int param_0) { - nofralloc -#include "asm/d/save/d_save/getSave2__10dSv_save_cFi.s" + for (int i = 0; i < 0x40; i++) { + unk_flags[i].init(); + } + + event_flags.init(); + minigame_flags.init(); +} + +dSv_memory2_c* dSv_save_c::getSave2(int i_stage2No) { + return unk_flags + i_stage2No; } -#pragma pop /* 800350BC-800350F0 02F9FC 0034+00 0/0 1/1 0/0 .text getSave__10dSv_info_cFi */ #pragma push @@ -3732,115 +3501,175 @@ asm void dSv_info_c::putSave(int param_0) { } #pragma pop -/* 8003514C-800351A4 02FA8C 0058+00 1/1 1/1 0/0 .text initZone__10dSv_info_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::initZone() { - nofralloc -#include "asm/d/save/d_save/initZone__10dSv_info_cFv.s" +void dSv_info_c::initZone(void) { + for (int i = 0; i < 0x20; i++) { + zones[i].init(-1); + } } -#pragma pop -/* 800351A4-80035200 02FAE4 005C+00 0/0 1/1 0/0 .text createZone__10dSv_info_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::createZone(int param_0) { - nofralloc -#include "asm/d/save/d_save/createZone__10dSv_info_cFi.s" +u32 dSv_info_c::createZone(int param_1) { + dSv_zone_c* zone = zones; + for (int i = 0; i < 0x20; zone++, i++) { + if (zone->getUnk0() < 0) { + zone->init(param_1); + return i; + } + } + return -1; } -#pragma pop -/* 80035200-800352B0 02FB40 00B0+00 0/0 8/8 352/352 .text onSwitch__10dSv_info_cFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::onSwitch(int param_0, int param_1) { - nofralloc -#include "asm/d/save/d_save/onSwitch__10dSv_info_cFii.s" -} -#pragma pop +void dSv_info_c::onSwitch(int i_no, int i_roomNo) { + if ((i_no == -1) || (i_no == 0xFF)) { + return; + } -/* 800352B0-80035360 02FBF0 00B0+00 0/0 2/2 93/93 .text offSwitch__10dSv_info_cFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::offSwitch(int param_0, int param_1) { - nofralloc -#include "asm/d/save/d_save/offSwitch__10dSv_info_cFii.s" + if (i_no < 0x80) { + memory.getTempFlags().onSwitch(i_no); + } else if (i_no < 0xc0) { + dungeon_bit.onSwitch(i_no - 0x80); + } else { + int zoneId = dStage_roomControl_c::getZoneNo(i_roomNo); + if (i_no < 0xE0) { + zones[zoneId].getZoneBit().onSwitch(i_no - 0xC0); + } else { + zones[zoneId].getZoneBit().onOneSwitch(i_no - 0xE0); + } + } } -#pragma pop -/* 80035360-8003542C 02FCA0 00CC+00 0/0 27/27 734/734 .text isSwitch__10dSv_info_cCFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::isSwitch(int param_0, int param_1) const { - nofralloc -#include "asm/d/save/d_save/isSwitch__10dSv_info_cCFii.s" -} -#pragma pop +void dSv_info_c::offSwitch(int i_no, int i_roomNo) { + if ((i_no == -1) || (i_no == 0xFF)) { + return; + } -/* 8003542C-800354E0 02FD6C 00B4+00 0/0 0/0 2/2 .text revSwitch__10dSv_info_cFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::revSwitch(int param_0, int param_1) { - nofralloc -#include "asm/d/save/d_save/revSwitch__10dSv_info_cFii.s" + if (i_no < 0x80) { + memory.getTempFlags().offSwitch(i_no); + } else if (i_no < 0xc0) { + dungeon_bit.offSwitch(i_no - 0x80); + } else { + int zoneId = dStage_roomControl_c::getZoneNo(i_roomNo); + if (i_no < 0xE0) { + zones[zoneId].getZoneBit().offSwitch(i_no - 0xC0); + } else { + zones[zoneId].getZoneBit().offOneSwitch(i_no - 0xE0); + } + } } -#pragma pop -/* 800354E0-80035590 02FE20 00B0+00 0/0 1/1 3/3 .text onItem__10dSv_info_cFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::onItem(int param_0, int param_1) { - nofralloc -#include "asm/d/save/d_save/onItem__10dSv_info_cFii.s" -} -#pragma pop +BOOL dSv_info_c::isSwitch(int i_no, int i_roomNo) const { + int value; + if ((i_no == -1) || (i_no == 0xFF)) { + return FALSE; + } -/* 80035590-80035644 02FED0 00B4+00 0/0 1/1 3/3 .text isItem__10dSv_info_cCFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::isItem(int param_0, int param_1) const { - nofralloc -#include "asm/d/save/d_save/isItem__10dSv_info_cCFii.s" + if (i_no < 0x80) { + value = memory.getTempFlagsConst().isSwitch(i_no); + } else if (i_no < 0xc0) { + value = dungeon_bit.isSwitch(i_no - 0x80); + } else { + int zoneId = dStage_roomControl_c::getZoneNo(i_roomNo); + if ((zoneId < 0) || (zoneId >= 0x20)) { + value = FALSE; + } else { + if (i_no < 0xE0) { + value = zones[zoneId].getZoneBitConst().isSwitch(i_no - 0xC0); + } else { + value = zones[zoneId].getZoneBitConst().isOneSwitch(i_no - 0xE0); + } + } + } + return value; } -#pragma pop -/* 80035644-800356B4 02FF84 0070+00 0/0 1/1 4/4 .text onActor__10dSv_info_cFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::onActor(int param_0, int param_1) { - nofralloc -#include "asm/d/save/d_save/onActor__10dSv_info_cFii.s" -} -#pragma pop +BOOL dSv_info_c::revSwitch(int i_no, int i_roomNo) { + int value; + if ((i_no == -1) || (i_no == 0xFF)) { + return FALSE; + } -/* 800356B4-80035724 02FFF4 0070+00 0/0 0/0 2/2 .text offActor__10dSv_info_cFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::offActor(int param_0, int param_1) { - nofralloc -#include "asm/d/save/d_save/offActor__10dSv_info_cFii.s" -} -#pragma pop + if (i_no < 0x80) { + value = memory.getTempFlags().revSwitch(i_no); + } else if (i_no < 0xC0) { + value = dungeon_bit.revSwitch(i_no - 0x80); + } else { + int zoneNo = dStage_roomControl_c::getZoneNo(i_roomNo); + if (i_no < 0xE0) { + value = zones[zoneNo].getZoneBit().revSwitch(i_no - 0xC0); + } else { + value = zones[zoneNo].getZoneBit().revOneSwitch(i_no - 0xE0); + } + } -/* 80035724-80035798 030064 0074+00 0/0 3/3 0/0 .text isActor__10dSv_info_cCFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dSv_info_c::isActor(int param_0, int param_1) const { - nofralloc -#include "asm/d/save/d_save/isActor__10dSv_info_cCFii.s" + return value; +} + +void dSv_info_c::onItem(int i_no, int i_roomNo) { + if ((i_no == -1) || (i_no == 0xFF)) { + return; + } + + if (i_no < 0x80) { + dungeon_bit.onItem(i_no); + } else if (i_no < 0xA0) { + memory.getTempFlags().onItem(i_no - 0x80); + } else { + int zoneNo = dStage_roomControl_c::getZoneNo(i_roomNo); + if (i_no < 0xC0) { + zones[zoneNo].getZoneBit().onItem(i_no - 0xA0); + } else { + zones[zoneNo].getZoneBit().onOneItem(i_no - 0xC0); + } + } +} + +BOOL dSv_info_c::isItem(int i_no, int i_roomNo) const { + int value; + if ((i_no == -1) || (i_no == 0xFF)) { + return FALSE; + } + + if (i_no < 0x80) { + value = dungeon_bit.isItem(i_no); + } else if (i_no < 0xA0) { + value = memory.getTempFlagsConst().isItem(i_no - 0x80); + } else { + int zoneNo = dStage_roomControl_c::getZoneNo(i_roomNo); + if (i_no < 0xC0) { + value = zones[zoneNo].getZoneBitConst().isItem(i_no - 0xA0); + } else { + value = zones[zoneNo].getZoneBitConst().isOneItem(i_no - 0xC0); + } + } + + return value; +} + +void dSv_info_c::onActor(int i_id, int i_roomNo) { + if (i_id == -1 || i_id == dSv_zoneActor_c::ACTOR_MAX || i_roomNo == -1) { + return; + } + + int zoneNo = dStage_roomControl_c::getZoneNo(i_roomNo); + zones[zoneNo].getZoneActor().on(i_id); +} + +void dSv_info_c::offActor(int i_id, int i_roomNo) { + if (i_id == -1 || i_id == dSv_zoneActor_c::ACTOR_MAX || i_roomNo == -1) { + return; + } + + int zoneNo = dStage_roomControl_c::getZoneNo(i_roomNo); + zones[zoneNo].getZoneActor().off(i_id); +} + +BOOL dSv_info_c::isActor(int i_id, int i_roomNo) const { + if (i_id == -1 || i_id == dSv_zoneActor_c::ACTOR_MAX || i_roomNo == -1) { + return FALSE; + } + + int ActorZoneNo = dStage_roomControl_c::getZoneNo(i_roomNo); + return zones[ActorZoneNo].getZoneActorConst().is(i_id); } -#pragma pop /* ############################################################################################## */ /* 80379234-80379234 005894 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -3851,6 +3680,51 @@ SECTION_DEAD static char const* const stringBase_8037926C = "SAVE size:%d\n"; #pragma pop /* 80035798-80035A04 0300D8 026C+00 0/0 1/1 0/0 .text memory_to_card__10dSv_info_cFPci */ +#ifdef NONMATCHING +extern u8 lbl_803F6094[0x10100]; +void dSv_info_c::memory_to_card(char* param_1, int param_2) { + BOOL bVar1 = FALSE; + int uVar12 = 0; + BOOL bVar6 = dComIfGs_isEventBit__FUs(0x1B08); + if (!tmp) { + BOOL bVar7 = dComIfGs_isEventBit__FUs(0x1B20); + BOOL tmp = bVar7; + bVar7 = dComIfGs_isEventBit__FUs(0x1B10); + BOOL tmp2 = bVar7; + dComIfGs_offEventBit(0x1B20); + dComIfGs_offEventBit(0x1B10); + } + + BOOL iVar4 = dComIfGs_isItemFirstBit(KANTERA); + + if (iVar4) { + dComIfGs_setItem(SLOT_1, KANTERA); + u16 current_lantern_oil = dComIfGs_getOil(); + u8 oil_gauge_backup = dMeter2Info_getOilGaugeBackUp(); + dComIfGs_setOil(oil_gauge_backup & 0xFFFF); + bVar1 = TRUE; + } + + int uVar3 = g_dComIfG_gameInfo + 0xF2C; + int iVar2 = g_dComIfG_gameInfo + 0xF28; + + u32* ptr = lbl_803F6094 + 0x9f6c; + OSTime time = OSGetTime(); + + OSTime newTime = time >> 0x20; + int newTime2 = newTime - uVar3; + + int newTime3 = newTime2 + g_dComIfG_gameInfo + + 0xF30 + + int newTime4 = g_dComIfG_gameInfo + 0xF78 + + s64 sVar13 = __div2i((int)((ulonglong)uVar8 >> 0x20), (int)uVar8, + 0x0, _DAT_800000f8 >> 0x2); + + BOOL bVar7 = +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -3859,6 +3733,7 @@ asm void dSv_info_c::memory_to_card(char* param_0, int param_1) { #include "asm/d/save/d_save/memory_to_card__10dSv_info_cFPci.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80379234-80379234 005894 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/m_Do/m_Do_ext.cpp b/src/m_Do/m_Do_ext.cpp index 580e0641b59..a41f433bd11 100644 --- a/src/m_Do/m_Do_ext.cpp +++ b/src/m_Do/m_Do_ext.cpp @@ -18,17 +18,6 @@ struct mDoExt_morf_c { /* 8000FBC0 */ void frameUpdate(); }; -struct J3DModelData {}; - -struct J3DModel { - /* 80327100 */ void initialize(); - /* 80327184 */ void entryModelData(J3DModelData*, u32, u32); - /* 803275FC */ void newDifferedDisplayList(u32); - /* 8032767C */ void lock(); - /* 803276B4 */ void unlock(); - /* 803279A0 */ void diff(); -}; - struct Vec {}; struct cXyz { @@ -53,50 +42,11 @@ struct mDoExt_invJntPacket { /* 80012220 */ void draw(); }; -struct J3DMaterialTable; -struct J3DAnmTextureSRTKey { - /* 8032B0C0 */ void searchUpdateMaterialID(J3DMaterialTable*); -}; - -struct J3DAnmTexPattern { - /* 8032B004 */ void searchUpdateMaterialID(J3DMaterialTable*); -}; - -struct J3DAnmTevRegKey { - /* 8032B780 */ void searchUpdateMaterialID(J3DMaterialTable*); -}; - -struct J3DAnmColor { - /* 8032A8A4 */ void searchUpdateMaterialID(J3DMaterialTable*); -}; - -struct J3DMaterialTable { - /* 8032FAF4 */ void entryMatColorAnimator(J3DAnmColor*); - /* 8032FBC8 */ void entryTexNoAnimator(J3DAnmTexPattern*); - /* 8032FCC4 */ void entryTexMtxAnimator(J3DAnmTextureSRTKey*); - /* 8032FE70 */ void entryTevRegAnimator(J3DAnmTevRegKey*); -}; - struct mDoExt_btpAnm { /* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16); /* 8000D5E8 */ void entry(J3DMaterialTable*, s16); }; -struct mDoExt_btkAnm { - /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_brkAnm { - /* 8000D70C */ void init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, f32, s16, s16); - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_bpkAnm { - /* 8000D47C */ void init(J3DMaterialTable*, J3DAnmColor*, int, int, f32, s16, s16); - /* 8000D518 */ void entry(J3DMaterialTable*, f32); -}; - struct J3DAnmCluster {}; struct J3DDeformData { @@ -107,20 +57,6 @@ struct mDoExt_blkAnm { /* 8000DA08 */ void init(J3DDeformData*, J3DAnmCluster*, int, int, f32, s16, s16); }; -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); - /* 8000D9CC */ void entry(J3DModelData*, f32); - /* 8000D9E8 */ void entryJoint(J3DModelData*, u16, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D320 */ void initPlay(s16, int, f32, s16, s16); - /* 8000D428 */ void play(); -}; - struct mDoExt_MtxCalcOldFrame { /* 8000F848 */ void initOldFrameMorf(f32, u16, u16); /* 8000F8CC */ void decOldFrameMorfCounter(); @@ -140,8 +76,6 @@ struct J3DTransformInfo {}; struct mDoExt_McaMorfCallBack2_c {}; -struct mDoExt_McaMorfCallBack1_c {}; - struct Z2Creature { /* 802C0628 */ void initAnime(void*, bool, f32, f32); /* 802C06D0 */ void updateAnime(f32, f32); @@ -529,12 +463,6 @@ struct J3DIndBlock { /* 8000E0A0 */ void setIndTexStageNum(u8); }; -struct J3DFrameCtrl { - /* 8000F9D8 */ ~J3DFrameCtrl(); - /* 803283FC */ void init(s16); - /* 803289CC */ void update(); -}; - struct J3DDisplayListObj { /* 80312618 */ void callDL() const; diff --git a/tools/libdol2asm/executor.template.cpp b/tools/libdol2asm/executor.template.cpp index d98d4af284e..536833b2285 100644 --- a/tools/libdol2asm/executor.template.cpp +++ b/tools/libdol2asm/executor.template.cpp @@ -1,5 +1,5 @@ // -// +// // #include "dol2asm.h" @@ -15,16 +15,15 @@ extern void* const _ctors[]; extern void* const _dtors[]; extern "C" void _prolog() { - ModuleConstructorsX(_ctors); - ModuleProlog(); + ModuleConstructorsX(_ctors); + ModuleProlog(); } extern "C" void _epilog() { - ModuleEpilog(); - ModuleDestructorsX(_dtors); + ModuleEpilog(); + ModuleDestructorsX(_dtors); } extern "C" void _unresolved() { - ModuleUnresolved(); + ModuleUnresolved(); } - diff --git a/tools/libdol2asm/global_destructor_chain.template.cpp b/tools/libdol2asm/global_destructor_chain.template.cpp index 2aca4d45daf..050d2111aed 100644 --- a/tools/libdol2asm/global_destructor_chain.template.cpp +++ b/tools/libdol2asm/global_destructor_chain.template.cpp @@ -6,31 +6,30 @@ #include "dolphin/types.h" struct __destructor_chain { - __destructor_chain* next; - void* destructor; - void* object; + __destructor_chain* next; + void* destructor; + void* object; }; -#define CALL_DTOR(DTOR, OBJECT, VALUE) (((void (*)(void *,short))(DTOR))((OBJECT),VALUE)) +#define CALL_DTOR(DTOR, OBJECT, VALUE) (((void (*)(void*, short))(DTOR))((OBJECT), VALUE)) #define CALL_DTOR_ALL(DTOR, OBJECT) CALL_DTOR(DTOR, OBJECT, (-1)) - static __destructor_chain* __global_destructor_chain; -extern "C" void __register_global_object(void *object, void *destructor, __destructor_chain *link) { - link->next = __global_destructor_chain; - link->destructor = destructor; - link->object = object; - __global_destructor_chain = link; +extern "C" void __register_global_object(void* object, void* destructor, __destructor_chain* link) { + link->next = __global_destructor_chain; + link->destructor = destructor; + link->object = object; + __global_destructor_chain = link; } extern "C" void __destroy_global_chain() { - __destructor_chain* gcd; - while ((gcd=__global_destructor_chain) != NULL) { - __global_destructor_chain = gcd->next; + __destructor_chain* gcd; + while ((gcd = __global_destructor_chain) != NULL) { + __global_destructor_chain = gcd->next; - CALL_DTOR_ALL(gcd->destructor, gcd->object); - } + CALL_DTOR_ALL(gcd->destructor, gcd->object); + } } SECTION_DTORS10 extern void* const __destroy_global_chain_reference = (void*)__destroy_global_chain; \ No newline at end of file