From ba4847e9cc2514fd722d45e54f7af87ee9de5bbd Mon Sep 17 00:00:00 2001 From: TakaRikka <38417346+TakaRikka@users.noreply.github.com> Date: Thu, 7 Mar 2024 19:23:18 -0800 Subject: [PATCH] d_a_shop_item, d_a_b_go, d_a_b_gos OK (#2085) * d_a_shop_item OK * d_a_b_go OK * d_a_b_gos OK * remove asm * some work on d_a_b_oh / d_a_b_zant_sima * d_a_startAndGoal done --- Progress.md | 22 +- .../d_a_b_go/d_a_b_go/__ct__10b_go_classFv.s | 110 -- .../d_a_b_go/__ct__12daB_GO_HIO_cFv.s | 17 - .../d_a_b_go/__dt__12dBgS_ObjAcchFv.s | 30 - .../d_a_b_go/__dt__12daB_GO_HIO_cFv.s | 20 - .../a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGAabFv.s | 20 - .../a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGCylFv.s | 20 - .../a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGSphFv.s | 20 - .../d_a_b_go/d_a_b_go/__sinit_d_a_b_go_cpp.s | 16 - .../d_a_b_go/action__FP10b_go_class.s | 116 -- .../d_a_b_go/anm_init__FP10b_go_classifUcf.s | 44 - .../d_a_b_go/daB_GO_Create__FP10fopAc_ac_c.s | 157 --- .../d_a_b_go/daB_GO_Execute__FP10b_go_class.s | 69 - .../d/a/b/d_a_b_go/d_a_b_go/func_80604020.s | 3 - .../d/a/b/d_a_b_go/d_a_b_go/func_80604028.s | 3 - .../d_a_b_go/h_attack__FP10b_go_class.s | 83 -- .../d_a_b_go/h_wait__FP10b_go_class.s | 57 - .../d_a_b_go/h_walk__FP10b_go_class.s | 75 - .../d_a_b_go/useHeapInit__FP10fopAc_ac_c.s | 67 - .../d_a_b_gos/__ct__11b_gos_classFv.s | 110 -- .../d_a_b_gos/__ct__13daB_GOS_HIO_cFv.s | 13 - .../d_a_b_gos/__dt__12dBgS_ObjAcchFv.s | 30 - .../d_a_b_gos/__dt__13daB_GOS_HIO_cFv.s | 20 - .../b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGAabFv.s | 20 - .../b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGCylFv.s | 20 - .../b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGSphFv.s | 20 - .../d_a_b_gos/__sinit_d_a_b_gos_cpp.s | 16 - .../d_a_b_gos/action__FP11b_gos_class.s | 180 --- .../anm_init__FP11b_gos_classifUcf.s | 44 - .../d_a_b_gos/ball__FP11b_gos_class.s | 69 - .../daB_GOS_Create__FP10fopAc_ac_c.s | 121 -- .../daB_GOS_Delete__FP11b_gos_class.s | 29 - .../d_a_b_gos/daB_GOS_Draw__FP11b_gos_class.s | 54 - .../daB_GOS_Execute__FP11b_gos_class.s | 98 -- .../d/a/b/d_a_b_gos/d_a_b_gos/func_806053A4.s | 3 - .../d/a/b/d_a_b_gos/d_a_b_gos/func_806053AC.s | 3 - .../d_a_b_gos/stick__FP11b_gos_class.s | 132 -- .../d_a_b_gos/useHeapInit__FP10fopAc_ac_c.s | 67 - .../d_a_b_gos/wait__FP11b_gos_class.s | 50 - .../d_a_b_gos/walk__FP11b_gos_class.s | 71 - .../CreateInit__12daShopItem_cFv.s | 83 -- .../d_a_shop_item/__dt__12dBgS_ObjAcchFv.s | 30 - .../d_a_shop_item/__dt__8cM3dGAabFv.s | 20 - .../d_a_shop_item/__dt__8cM3dGCylFv.s | 20 - .../d_a_shop_item/_draw__12daShopItem_cFv.s | 24 - .../_execute__12daShopItem_cFv.s | 22 - .../d_a_shop_item/chkFlag__12daShopItem_cFi.s | 9 - .../d_a_shop_item/daShopItem_Create__FPv.s | 118 -- .../d_a_shop_item/daShopItem_Delete__FPv.s | 16 - .../d_a_shop_item/daShopItem_Draw__FPv.s | 10 - .../d_a_shop_item/daShopItem_Execute__FPv.s | 10 - .../d_a_shop_item/func_8059F420.s | 3 - .../d_a_shop_item/func_8059F428.s | 3 - .../getBtpFrm__12daShopItem_cFv.s | 9 - .../getCollisionH__12daShopItem_cFv.s | 8 - .../getCollisionR__12daShopItem_cFv.s | 8 - .../getHeapSize__12daShopItem_cFv.s | 7 - .../getShadowSize__12daShopItem_cFv.s | 8 - .../getShopArcname__12daShopItem_cFv.s | 180 --- .../getTevFrm__12daShopItem_cFv.s | 9 - .../setShadow__12daShopItem_cFv.s | 36 - .../d_a_shop_item/set_mtx__12daShopItem_cFv.s | 110 -- .../Create__16daStartAndGoal_cFv.s | 44 - .../Delete__16daStartAndGoal_cFv.s | 37 - .../Execute__16daStartAndGoal_cFv.s | 46 - .../__dt__13daNpcF_Path_cFv.s | 27 - .../__dt__16daNpcF_SPCurve_cFv.s | 20 - .../__dt__21daStartAndGoal_Path_cFv.s | 31 - .../actorPosCheck__16daStartAndGoal_cFv.s | 52 - ...hkPassed2__21daStartAndGoal_Path_cF4cXyz.s | 41 - ...tartAndGoal_Delete__FP16daStartAndGoal_c.s | 9 - ...aStartAndGoal_Draw__FP16daStartAndGoal_c.s | 9 - ...artAndGoal_Execute__FP16daStartAndGoal_c.s | 9 - .../daStartAndGoal_create__FP10fopAc_ac_c.s | 9 - .../getType__16daStartAndGoal_cFv.s | 18 - .../init__16daStartAndGoal_cFv.s | 54 - .../isReadyCheck__16daStartAndGoal_cFv.s | 36 - .../isStartCheck__16daStartAndGoal_cFv.s | 10 - .../readyStartTimer__16daStartAndGoal_cFv.s | 34 - include/JSystem/JGadget/search.h | 2 +- include/JSystem/JMath/JMATrigonometric.h | 4 +- .../JSystem/JStudio/JStudio/functionvalue.h | 1 + include/JSystem/JStudio/JStudio/stb.h | 2 +- include/d/a/d_a_itembase.h | 4 +- include/d/a/d_a_npc.h | 22 +- include/d/a/d_a_shop_item_static.h | 60 + include/d/com/d_com_inf_game.h | 1 + include/d/d_stage.h | 2 +- include/d/d_timer.h | 6 +- include/dolphin/os.h | 2 + include/global.h | 1 - include/rel/d/a/b/d_a_b_go/d_a_b_go.h | 37 + include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h | 39 +- include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h | 2 +- .../d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h | 10 +- include/rel/d/a/d_a_shop_item/d_a_shop_item.h | 12 +- include/rel/d/a/d_a_spinner/d_a_spinner.h | 2 +- libs/JSystem/JAudio2/JAISound.cpp | 2 +- libs/JSystem/JAudio2/JASWaveArcLoader.cpp | 2 +- libs/JSystem/JAudio2/JAUStreamFileTable.cpp | 2 +- .../JStudio/JStudio/stb-data-parse.cpp | 1 + libs/dolphin/gx/GXTransform.c | 5 +- rel/d/a/b/d_a_b_go/d_a_b_go.cpp | 871 +++--------- rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp | 1031 ++++++-------- rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp | 236 ++-- rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp | 1226 +++++++++++++++++ rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.cpp | 277 ++-- rel/d/a/d_a_midna/d_a_midna.cpp | 11 - rel/d/a/d_a_shop_item/d_a_shop_item.cpp | 892 ++++-------- rel/d/a/d_a_spinner/d_a_spinner.cpp | 2 +- rel/d/a/d_a_startAndGoal/Makefile | 1 + rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp | 512 +++---- src/d/a/d_a_itembase.cpp | 2 +- src/d/a/d_a_npc.cpp | 2 +- src/d/a/d_a_shop_item_static.cpp | 23 +- src/d/d_timer.cpp | 6 +- 116 files changed, 2764 insertions(+), 5897 deletions(-) delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__10b_go_classFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__12daB_GO_HIO_cFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12dBgS_ObjAcchFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12daB_GO_HIO_cFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGAabFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGCylFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGSphFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/__sinit_d_a_b_go_cpp.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/action__FP10b_go_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/anm_init__FP10b_go_classifUcf.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Create__FP10fopAc_ac_c.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Execute__FP10b_go_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604020.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604028.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_attack__FP10b_go_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_wait__FP10b_go_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_walk__FP10b_go_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_go/d_a_b_go/useHeapInit__FP10fopAc_ac_c.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__11b_gos_classFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__13daB_GOS_HIO_cFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__12dBgS_ObjAcchFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__13daB_GOS_HIO_cFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGAabFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGCylFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGSphFv.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__sinit_d_a_b_gos_cpp.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/action__FP11b_gos_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/anm_init__FP11b_gos_classifUcf.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/ball__FP11b_gos_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Create__FP10fopAc_ac_c.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Delete__FP11b_gos_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Draw__FP11b_gos_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Execute__FP11b_gos_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053A4.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053AC.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/stick__FP11b_gos_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/useHeapInit__FP10fopAc_ac_c.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/wait__FP11b_gos_class.s delete mode 100644 asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/walk__FP11b_gos_class.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/CreateInit__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__12dBgS_ObjAcchFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGAabFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGCylFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/_draw__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/_execute__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/chkFlag__12daShopItem_cFi.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Create__FPv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Delete__FPv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Draw__FPv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Execute__FPv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F420.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F428.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/getBtpFrm__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionH__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionR__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/getHeapSize__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShadowSize__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShopArcname__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/getTevFrm__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/setShadow__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_shop_item/d_a_shop_item/set_mtx__12daShopItem_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Create__16daStartAndGoal_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Delete__16daStartAndGoal_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Execute__16daStartAndGoal_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__13daNpcF_Path_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__16daNpcF_SPCurve_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__21daStartAndGoal_Path_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/actorPosCheck__16daStartAndGoal_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/chkPassed2__21daStartAndGoal_Path_cF4cXyz.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Delete__FP16daStartAndGoal_c.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Draw__FP16daStartAndGoal_c.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Execute__FP16daStartAndGoal_c.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_create__FP10fopAc_ac_c.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/getType__16daStartAndGoal_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/init__16daStartAndGoal_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isReadyCheck__16daStartAndGoal_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isStartCheck__16daStartAndGoal_cFv.s delete mode 100644 asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/readyStartTimer__16daStartAndGoal_cFv.s create mode 100644 rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp diff --git a/Progress.md b/Progress.md index 8c0b905c58..8a1392df7a 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 97.972973% | 9280 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 47.083756% | 1693388 | 3596544 +.text | 47.114341% | 1694488 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 52.660948% | 2117324 | 4020672 +Total | 52.688307% | 2118424 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 52.660948% | 2117324 | 4020672 -RELs | 36.218319% | 4165224 | 11500324 -Total | 40.477737% | 6282548 | 15520996 +main.dol | 52.688307% | 2118424 | 4020672 +RELs | 36.377062% | 4183480 | 11500324 +Total | 40.602446% | 6301904 | 15520996 ## RELs @@ -43,8 +43,8 @@ d_a_b_ds | 26.627364% | 26016 | 97704 d_a_b_gg | 22.324410% | 17380 | 77852 d_a_b_gm | 30.376176% | 11628 | 38280 d_a_b_gnd | 25.489573% | 19264 | 75576 -d_a_b_go | 44.671347% | 2800 | 6268 -d_a_b_gos | 43.551689% | 3404 | 7816 +d_a_b_go | 100.000000% | 6268 | 6268 +d_a_b_gos | 100.000000% | 7816 | 7816 d_a_b_mgn | 26.103833% | 15064 | 57708 d_a_b_ob | 26.856326% | 15784 | 58772 d_a_b_oh | 35.387431% | 4640 | 13112 @@ -692,11 +692,11 @@ d_a_ppolamp | 42.341463% | 1736 | 4100 d_a_scene_exit | 61.359223% | 1264 | 2060 d_a_scene_exit2 | 100.000000% | 3028 | 3028 d_a_set_bgobj | 100.000000% | 1108 | 1108 -d_a_shop_item | 43.088737% | 2020 | 4688 +d_a_shop_item | 100.000000% | 4688 | 4688 d_a_skip_2D | 100.000000% | 1332 | 1332 d_a_spinner | 34.295011% | 6324 | 18440 d_a_sq | 35.488722% | 3776 | 10640 -d_a_startAndGoal | 41.918528% | 1276 | 3044 +d_a_startAndGoal | 100.000000% | 3044 | 3044 d_a_suspend | 100.000000% | 896 | 896 d_a_swBall | 33.297414% | 1236 | 3712 d_a_swLBall | 33.651805% | 1268 | 3768 @@ -777,7 +777,7 @@ d_a_tag_wljump | 45.248380% | 1676 | 3704 d_a_tag_yami | 42.650334% | 1532 | 3592 d_a_talk | 100.000000% | 1840 | 1840 d_a_tbox | 30.165503% | 9332 | 30936 -d_a_tbox2 | 42.486445% | 4388 | 10328 +d_a_tbox2 | 100.000000% | 10328 | 10328 d_a_tboxSw | 100.000000% | 1016 | 1016 d_a_title | 39.558574% | 2796 | 7068 d_a_vrbox | 100.000000% | 2152 | 2152 @@ -785,4 +785,4 @@ d_a_vrbox2 | 44.907111% | 2804 | 6244 d_a_warp_bug | 100.000000% | 2024 | 2024 d_a_ykgr | 44.400631% | 2252 | 5072 f_pc_profile_lst | 100.000000% | 28156 | 28156 -Total | 36.218319% | 4165224 | 11500324 +Total | 36.377062% | 4183480 | 11500324 diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__10b_go_classFv.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__10b_go_classFv.s deleted file mode 100644 index 562a2f9c8c..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__10b_go_classFv.s +++ /dev/null @@ -1,110 +0,0 @@ -lbl_80603CA0: -/* 80603CA0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80603CA4 7C 08 02 A6 */ mflr r0 -/* 80603CA8 90 01 00 24 */ stw r0, 0x24(r1) -/* 80603CAC 39 61 00 20 */ addi r11, r1, 0x20 -/* 80603CB0 4B D5 E5 25 */ bl _savegpr_27 -/* 80603CB4 7C 7F 1B 78 */ mr r31, r3 -/* 80603CB8 4B A1 4E AD */ bl __ct__10fopAc_ac_cFv -/* 80603CBC 38 7F 05 B8 */ addi r3, r31, 0x5b8 -/* 80603CC0 4B CB D2 A5 */ bl __ct__15Z2CreatureEnemyFv -/* 80603CC4 38 7F 06 94 */ addi r3, r31, 0x694 -/* 80603CC8 4B A7 21 E5 */ bl __ct__12dBgS_AcchCirFv -/* 80603CCC 3B 9F 06 D4 */ addi r28, r31, 0x6d4 -/* 80603CD0 7F 83 E3 78 */ mr r3, r28 -/* 80603CD4 4B A7 23 CD */ bl __ct__9dBgS_AcchFv -/* 80603CD8 3C 60 80 60 */ lis r3, __vt__12dBgS_ObjAcch@ha /* 0x80604108@ha */ -/* 80603CDC 38 63 41 08 */ addi r3, r3, __vt__12dBgS_ObjAcch@l /* 0x80604108@l */ -/* 80603CE0 90 7C 00 10 */ stw r3, 0x10(r28) -/* 80603CE4 38 03 00 0C */ addi r0, r3, 0xc -/* 80603CE8 90 1C 00 14 */ stw r0, 0x14(r28) -/* 80603CEC 38 03 00 18 */ addi r0, r3, 0x18 -/* 80603CF0 90 1C 00 24 */ stw r0, 0x24(r28) -/* 80603CF4 38 7C 00 14 */ addi r3, r28, 0x14 -/* 80603CF8 4B A7 51 71 */ bl SetObj__16dBgS_PolyPassChkFv -/* 80603CFC 3C 60 80 3C */ lis r3, __vt__9cCcD_Stts@ha /* 0x803C3728@ha */ -/* 80603D00 38 03 37 28 */ addi r0, r3, __vt__9cCcD_Stts@l /* 0x803C3728@l */ -/* 80603D04 90 1F 08 C4 */ stw r0, 0x8c4(r31) -/* 80603D08 38 7F 08 C8 */ addi r3, r31, 0x8c8 -/* 80603D0C 4B A7 FA 55 */ bl __ct__10dCcD_GSttsFv -/* 80603D10 3C 60 80 3B */ lis r3, __vt__9dCcD_Stts@ha /* 0x803AC2E4@ha */ -/* 80603D14 38 63 C2 E4 */ addi r3, r3, __vt__9dCcD_Stts@l /* 0x803AC2E4@l */ -/* 80603D18 90 7F 08 C4 */ stw r3, 0x8c4(r31) -/* 80603D1C 38 03 00 20 */ addi r0, r3, 0x20 -/* 80603D20 90 1F 08 C8 */ stw r0, 0x8c8(r31) -/* 80603D24 3B 7F 08 E8 */ addi r27, r31, 0x8e8 -/* 80603D28 7F 63 DB 78 */ mr r3, r27 -/* 80603D2C 4B A7 FC FD */ bl __ct__12dCcD_GObjInfFv -/* 80603D30 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */ -/* 80603D34 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */ -/* 80603D38 90 1B 01 20 */ stw r0, 0x120(r27) -/* 80603D3C 3C 60 80 60 */ lis r3, __vt__8cM3dGAab@ha /* 0x806040FC@ha */ -/* 80603D40 38 03 40 FC */ addi r0, r3, __vt__8cM3dGAab@l /* 0x806040FC@l */ -/* 80603D44 90 1B 01 1C */ stw r0, 0x11c(r27) -/* 80603D48 3C 60 80 60 */ lis r3, __vt__8cM3dGSph@ha /* 0x806040F0@ha */ -/* 80603D4C 38 03 40 F0 */ addi r0, r3, __vt__8cM3dGSph@l /* 0x806040F0@l */ -/* 80603D50 90 1B 01 34 */ stw r0, 0x134(r27) -/* 80603D54 3C 60 80 3C */ lis r3, __vt__12cCcD_SphAttr@ha /* 0x803C3540@ha */ -/* 80603D58 38 63 35 40 */ addi r3, r3, __vt__12cCcD_SphAttr@l /* 0x803C3540@l */ -/* 80603D5C 90 7B 01 20 */ stw r3, 0x120(r27) -/* 80603D60 3B C3 00 58 */ addi r30, r3, 0x58 -/* 80603D64 93 DB 01 34 */ stw r30, 0x134(r27) -/* 80603D68 3C 60 80 3B */ lis r3, __vt__8dCcD_Sph@ha /* 0x803ABFC0@ha */ -/* 80603D6C 38 63 BF C0 */ addi r3, r3, __vt__8dCcD_Sph@l /* 0x803ABFC0@l */ -/* 80603D70 90 7B 00 3C */ stw r3, 0x3c(r27) -/* 80603D74 3B A3 00 2C */ addi r29, r3, 0x2c -/* 80603D78 93 BB 01 20 */ stw r29, 0x120(r27) -/* 80603D7C 3B 83 00 84 */ addi r28, r3, 0x84 -/* 80603D80 93 9B 01 34 */ stw r28, 0x134(r27) -/* 80603D84 3B 7F 0A 20 */ addi r27, r31, 0xa20 -/* 80603D88 7F 63 DB 78 */ mr r3, r27 -/* 80603D8C 4B A7 FC 9D */ bl __ct__12dCcD_GObjInfFv -/* 80603D90 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */ -/* 80603D94 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */ -/* 80603D98 90 1B 01 20 */ stw r0, 0x120(r27) -/* 80603D9C 3C 60 80 60 */ lis r3, __vt__8cM3dGAab@ha /* 0x806040FC@ha */ -/* 80603DA0 38 03 40 FC */ addi r0, r3, __vt__8cM3dGAab@l /* 0x806040FC@l */ -/* 80603DA4 90 1B 01 1C */ stw r0, 0x11c(r27) -/* 80603DA8 3C 60 80 60 */ lis r3, __vt__8cM3dGSph@ha /* 0x806040F0@ha */ -/* 80603DAC 38 03 40 F0 */ addi r0, r3, __vt__8cM3dGSph@l /* 0x806040F0@l */ -/* 80603DB0 90 1B 01 34 */ stw r0, 0x134(r27) -/* 80603DB4 3C 60 80 3C */ lis r3, __vt__12cCcD_SphAttr@ha /* 0x803C3540@ha */ -/* 80603DB8 38 03 35 40 */ addi r0, r3, __vt__12cCcD_SphAttr@l /* 0x803C3540@l */ -/* 80603DBC 90 1B 01 20 */ stw r0, 0x120(r27) -/* 80603DC0 93 DB 01 34 */ stw r30, 0x134(r27) -/* 80603DC4 3C 60 80 3B */ lis r3, __vt__8dCcD_Sph@ha /* 0x803ABFC0@ha */ -/* 80603DC8 38 03 BF C0 */ addi r0, r3, __vt__8dCcD_Sph@l /* 0x803ABFC0@l */ -/* 80603DCC 90 1B 00 3C */ stw r0, 0x3c(r27) -/* 80603DD0 93 BB 01 20 */ stw r29, 0x120(r27) -/* 80603DD4 93 9B 01 34 */ stw r28, 0x134(r27) -/* 80603DD8 3B 7F 0B 58 */ addi r27, r31, 0xb58 -/* 80603DDC 7F 63 DB 78 */ mr r3, r27 -/* 80603DE0 4B A7 FC 49 */ bl __ct__12dCcD_GObjInfFv -/* 80603DE4 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */ -/* 80603DE8 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */ -/* 80603DEC 90 1B 01 20 */ stw r0, 0x120(r27) -/* 80603DF0 3C 60 80 60 */ lis r3, __vt__8cM3dGAab@ha /* 0x806040FC@ha */ -/* 80603DF4 38 03 40 FC */ addi r0, r3, __vt__8cM3dGAab@l /* 0x806040FC@l */ -/* 80603DF8 90 1B 01 1C */ stw r0, 0x11c(r27) -/* 80603DFC 3C 60 80 60 */ lis r3, __vt__8cM3dGCyl@ha /* 0x806040E4@ha */ -/* 80603E00 38 03 40 E4 */ addi r0, r3, __vt__8cM3dGCyl@l /* 0x806040E4@l */ -/* 80603E04 90 1B 01 38 */ stw r0, 0x138(r27) -/* 80603E08 3C 60 80 3C */ lis r3, __vt__12cCcD_CylAttr@ha /* 0x803C35A4@ha */ -/* 80603E0C 38 63 35 A4 */ addi r3, r3, __vt__12cCcD_CylAttr@l /* 0x803C35A4@l */ -/* 80603E10 90 7B 01 20 */ stw r3, 0x120(r27) -/* 80603E14 38 03 00 58 */ addi r0, r3, 0x58 -/* 80603E18 90 1B 01 38 */ stw r0, 0x138(r27) -/* 80603E1C 3C 60 80 3B */ lis r3, __vt__8dCcD_Cyl@ha /* 0x803AC050@ha */ -/* 80603E20 38 63 C0 50 */ addi r3, r3, __vt__8dCcD_Cyl@l /* 0x803AC050@l */ -/* 80603E24 90 7B 00 3C */ stw r3, 0x3c(r27) -/* 80603E28 38 03 00 2C */ addi r0, r3, 0x2c -/* 80603E2C 90 1B 01 20 */ stw r0, 0x120(r27) -/* 80603E30 38 03 00 84 */ addi r0, r3, 0x84 -/* 80603E34 90 1B 01 38 */ stw r0, 0x138(r27) -/* 80603E38 7F E3 FB 78 */ mr r3, r31 -/* 80603E3C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80603E40 4B D5 E3 E1 */ bl _restgpr_27 -/* 80603E44 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80603E48 7C 08 03 A6 */ mtlr r0 -/* 80603E4C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80603E50 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__12daB_GO_HIO_cFv.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__12daB_GO_HIO_cFv.s deleted file mode 100644 index 2026d63b2d..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__12daB_GO_HIO_cFv.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_806031AC: -/* 806031AC 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x80604044@ha */ -/* 806031B0 38 A4 40 44 */ addi r5, r4, lit_3646@l /* 0x80604044@l */ -/* 806031B4 3C 80 80 60 */ lis r4, __vt__12daB_GO_HIO_c@ha /* 0x8060412C@ha */ -/* 806031B8 38 04 41 2C */ addi r0, r4, __vt__12daB_GO_HIO_c@l /* 0x8060412C@l */ -/* 806031BC 90 03 00 00 */ stw r0, 0(r3) -/* 806031C0 38 00 FF FF */ li r0, -1 -/* 806031C4 98 03 00 04 */ stb r0, 4(r3) -/* 806031C8 C0 05 00 00 */ lfs f0, 0(r5) -/* 806031CC D0 03 00 08 */ stfs f0, 8(r3) -/* 806031D0 C0 05 00 04 */ lfs f0, 4(r5) -/* 806031D4 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 806031D8 C0 05 00 08 */ lfs f0, 8(r5) -/* 806031DC D0 03 00 10 */ stfs f0, 0x10(r3) -/* 806031E0 38 00 00 00 */ li r0, 0 -/* 806031E4 98 03 00 14 */ stb r0, 0x14(r3) -/* 806031E8 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12dBgS_ObjAcchFv.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12dBgS_ObjAcchFv.s deleted file mode 100644 index 14de0cf73a..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12dBgS_ObjAcchFv.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_80603F2C: -/* 80603F2C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80603F30 7C 08 02 A6 */ mflr r0 -/* 80603F34 90 01 00 14 */ stw r0, 0x14(r1) -/* 80603F38 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80603F3C 93 C1 00 08 */ stw r30, 8(r1) -/* 80603F40 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80603F44 7C 9F 23 78 */ mr r31, r4 -/* 80603F48 41 82 00 38 */ beq lbl_80603F80 -/* 80603F4C 3C 80 80 60 */ lis r4, __vt__12dBgS_ObjAcch@ha /* 0x80604108@ha */ -/* 80603F50 38 84 41 08 */ addi r4, r4, __vt__12dBgS_ObjAcch@l /* 0x80604108@l */ -/* 80603F54 90 9E 00 10 */ stw r4, 0x10(r30) -/* 80603F58 38 04 00 0C */ addi r0, r4, 0xc -/* 80603F5C 90 1E 00 14 */ stw r0, 0x14(r30) -/* 80603F60 38 04 00 18 */ addi r0, r4, 0x18 -/* 80603F64 90 1E 00 24 */ stw r0, 0x24(r30) -/* 80603F68 38 80 00 00 */ li r4, 0 -/* 80603F6C 4B A7 20 29 */ bl __dt__9dBgS_AcchFv -/* 80603F70 7F E0 07 35 */ extsh. r0, r31 -/* 80603F74 40 81 00 0C */ ble lbl_80603F80 -/* 80603F78 7F C3 F3 78 */ mr r3, r30 -/* 80603F7C 4B CC AD C1 */ bl __dl__FPv -lbl_80603F80: -/* 80603F80 7F C3 F3 78 */ mr r3, r30 -/* 80603F84 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80603F88 83 C1 00 08 */ lwz r30, 8(r1) -/* 80603F8C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80603F90 7C 08 03 A6 */ mtlr r0 -/* 80603F94 38 21 00 10 */ addi r1, r1, 0x10 -/* 80603F98 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12daB_GO_HIO_cFv.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12daB_GO_HIO_cFv.s deleted file mode 100644 index 5ff4e335e1..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12daB_GO_HIO_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80603F9C: -/* 80603F9C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80603FA0 7C 08 02 A6 */ mflr r0 -/* 80603FA4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80603FA8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80603FAC 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80603FB0 41 82 00 1C */ beq lbl_80603FCC -/* 80603FB4 3C A0 80 60 */ lis r5, __vt__12daB_GO_HIO_c@ha /* 0x8060412C@ha */ -/* 80603FB8 38 05 41 2C */ addi r0, r5, __vt__12daB_GO_HIO_c@l /* 0x8060412C@l */ -/* 80603FBC 90 1F 00 00 */ stw r0, 0(r31) -/* 80603FC0 7C 80 07 35 */ extsh. r0, r4 -/* 80603FC4 40 81 00 08 */ ble lbl_80603FCC -/* 80603FC8 4B CC AD 75 */ bl __dl__FPv -lbl_80603FCC: -/* 80603FCC 7F E3 FB 78 */ mr r3, r31 -/* 80603FD0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80603FD4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80603FD8 7C 08 03 A6 */ mtlr r0 -/* 80603FDC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80603FE0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGAabFv.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGAabFv.s deleted file mode 100644 index 0b6c642f65..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGAabFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80603EE4: -/* 80603EE4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80603EE8 7C 08 02 A6 */ mflr r0 -/* 80603EEC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80603EF0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80603EF4 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80603EF8 41 82 00 1C */ beq lbl_80603F14 -/* 80603EFC 3C A0 80 60 */ lis r5, __vt__8cM3dGAab@ha /* 0x806040FC@ha */ -/* 80603F00 38 05 40 FC */ addi r0, r5, __vt__8cM3dGAab@l /* 0x806040FC@l */ -/* 80603F04 90 1F 00 18 */ stw r0, 0x18(r31) -/* 80603F08 7C 80 07 35 */ extsh. r0, r4 -/* 80603F0C 40 81 00 08 */ ble lbl_80603F14 -/* 80603F10 4B CC AE 2D */ bl __dl__FPv -lbl_80603F14: -/* 80603F14 7F E3 FB 78 */ mr r3, r31 -/* 80603F18 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80603F1C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80603F20 7C 08 03 A6 */ mtlr r0 -/* 80603F24 38 21 00 10 */ addi r1, r1, 0x10 -/* 80603F28 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGCylFv.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGCylFv.s deleted file mode 100644 index 2b95319697..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGCylFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80603E54: -/* 80603E54 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80603E58 7C 08 02 A6 */ mflr r0 -/* 80603E5C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80603E60 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80603E64 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80603E68 41 82 00 1C */ beq lbl_80603E84 -/* 80603E6C 3C A0 80 60 */ lis r5, __vt__8cM3dGCyl@ha /* 0x806040E4@ha */ -/* 80603E70 38 05 40 E4 */ addi r0, r5, __vt__8cM3dGCyl@l /* 0x806040E4@l */ -/* 80603E74 90 1F 00 14 */ stw r0, 0x14(r31) -/* 80603E78 7C 80 07 35 */ extsh. r0, r4 -/* 80603E7C 40 81 00 08 */ ble lbl_80603E84 -/* 80603E80 4B CC AE BD */ bl __dl__FPv -lbl_80603E84: -/* 80603E84 7F E3 FB 78 */ mr r3, r31 -/* 80603E88 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80603E8C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80603E90 7C 08 03 A6 */ mtlr r0 -/* 80603E94 38 21 00 10 */ addi r1, r1, 0x10 -/* 80603E98 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGSphFv.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGSphFv.s deleted file mode 100644 index 543ef554c5..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGSphFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80603E9C: -/* 80603E9C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80603EA0 7C 08 02 A6 */ mflr r0 -/* 80603EA4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80603EA8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80603EAC 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80603EB0 41 82 00 1C */ beq lbl_80603ECC -/* 80603EB4 3C A0 80 60 */ lis r5, __vt__8cM3dGSph@ha /* 0x806040F0@ha */ -/* 80603EB8 38 05 40 F0 */ addi r0, r5, __vt__8cM3dGSph@l /* 0x806040F0@l */ -/* 80603EBC 90 1F 00 10 */ stw r0, 0x10(r31) -/* 80603EC0 7C 80 07 35 */ extsh. r0, r4 -/* 80603EC4 40 81 00 08 */ ble lbl_80603ECC -/* 80603EC8 4B CC AE 75 */ bl __dl__FPv -lbl_80603ECC: -/* 80603ECC 7F E3 FB 78 */ mr r3, r31 -/* 80603ED0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80603ED4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80603ED8 7C 08 03 A6 */ mtlr r0 -/* 80603EDC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80603EE0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__sinit_d_a_b_go_cpp.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__sinit_d_a_b_go_cpp.s deleted file mode 100644 index 7235465296..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/__sinit_d_a_b_go_cpp.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80603FE4: -/* 80603FE4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80603FE8 7C 08 02 A6 */ mflr r0 -/* 80603FEC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80603FF0 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x80604150@ha */ -/* 80603FF4 38 63 41 50 */ addi r3, r3, l_HIO@l /* 0x80604150@l */ -/* 80603FF8 4B FF F1 B5 */ bl __ct__12daB_GO_HIO_cFv -/* 80603FFC 3C 80 80 60 */ lis r4, __dt__12daB_GO_HIO_cFv@ha /* 0x80603F9C@ha */ -/* 80604000 38 84 3F 9C */ addi r4, r4, __dt__12daB_GO_HIO_cFv@l /* 0x80603F9C@l */ -/* 80604004 3C A0 80 60 */ lis r5, lit_3641@ha /* 0x80604144@ha */ -/* 80604008 38 A5 41 44 */ addi r5, r5, lit_3641@l /* 0x80604144@l */ -/* 8060400C 4B FF F1 2D */ bl __register_global_object -/* 80604010 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80604014 7C 08 03 A6 */ mtlr r0 -/* 80604018 38 21 00 10 */ addi r1, r1, 0x10 -/* 8060401C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/action__FP10b_go_class.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/action__FP10b_go_class.s deleted file mode 100644 index eaf4f1eed1..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/action__FP10b_go_class.s +++ /dev/null @@ -1,116 +0,0 @@ -lbl_80603638: -/* 80603638 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8060363C 7C 08 02 A6 */ mflr r0 -/* 80603640 90 01 00 44 */ stw r0, 0x44(r1) -/* 80603644 39 61 00 40 */ addi r11, r1, 0x40 -/* 80603648 4B D5 EB 95 */ bl _savegpr_29 -/* 8060364C 7C 7D 1B 78 */ mr r29, r3 -/* 80603650 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x80604044@ha */ -/* 80603654 3B C4 40 44 */ addi r30, r4, lit_3646@l /* 0x80604044@l */ -/* 80603658 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8060365C 3B E4 61 C0 */ addi r31, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80603660 80 9F 5D AC */ lwz r4, 0x5dac(r31) -/* 80603664 4B A1 70 AD */ bl fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c -/* 80603668 B0 7D 06 7E */ sth r3, 0x67e(r29) -/* 8060366C 7F A3 EB 78 */ mr r3, r29 -/* 80603670 80 9F 5D AC */ lwz r4, 0x5dac(r31) -/* 80603674 4B A1 71 6D */ bl fopAcM_searchActorDistance__FPC10fopAc_ac_cPC10fopAc_ac_c -/* 80603678 D0 3D 06 80 */ stfs f1, 0x680(r29) -/* 8060367C 80 1D 04 9C */ lwz r0, 0x49c(r29) -/* 80603680 54 00 00 3E */ slwi r0, r0, 0 -/* 80603684 90 1D 04 9C */ stw r0, 0x49c(r29) -/* 80603688 38 00 00 00 */ li r0, 0 -/* 8060368C 90 1D 05 5C */ stw r0, 0x55c(r29) -/* 80603690 A8 1D 06 8A */ lha r0, 0x68a(r29) -/* 80603694 2C 00 00 00 */ cmpwi r0, 0 -/* 80603698 40 82 00 64 */ bne lbl_806036FC -/* 8060369C A8 1D 06 92 */ lha r0, 0x692(r29) -/* 806036A0 2C 00 00 02 */ cmpwi r0, 2 -/* 806036A4 41 82 00 30 */ beq lbl_806036D4 -/* 806036A8 38 00 00 02 */ li r0, 2 -/* 806036AC B0 1D 06 92 */ sth r0, 0x692(r29) -/* 806036B0 C0 3E 00 2C */ lfs f1, 0x2c(r30) -/* 806036B4 4B C6 42 A1 */ bl cM_rndF__Ff -/* 806036B8 C0 1E 00 28 */ lfs f0, 0x28(r30) -/* 806036BC EC 00 08 2A */ fadds f0, f0, f1 -/* 806036C0 FC 00 00 1E */ fctiwz f0, f0 -/* 806036C4 D8 01 00 20 */ stfd f0, 0x20(r1) -/* 806036C8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 806036CC B0 1D 06 8A */ sth r0, 0x68a(r29) -/* 806036D0 48 00 00 2C */ b lbl_806036FC -lbl_806036D4: -/* 806036D4 38 00 00 01 */ li r0, 1 -/* 806036D8 B0 1D 06 92 */ sth r0, 0x692(r29) -/* 806036DC C0 3E 00 1C */ lfs f1, 0x1c(r30) -/* 806036E0 4B C6 42 75 */ bl cM_rndF__Ff -/* 806036E4 C0 1E 00 08 */ lfs f0, 8(r30) -/* 806036E8 EC 00 08 2A */ fadds f0, f0, f1 -/* 806036EC FC 00 00 1E */ fctiwz f0, f0 -/* 806036F0 D8 01 00 20 */ stfd f0, 0x20(r1) -/* 806036F4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 806036F8 B0 1D 06 8A */ sth r0, 0x68a(r29) -lbl_806036FC: -/* 806036FC A8 1D 06 6A */ lha r0, 0x66a(r29) -/* 80603700 2C 00 00 01 */ cmpwi r0, 1 -/* 80603704 41 82 00 2C */ beq lbl_80603730 -/* 80603708 40 80 00 10 */ bge lbl_80603718 -/* 8060370C 2C 00 00 00 */ cmpwi r0, 0 -/* 80603710 40 80 00 14 */ bge lbl_80603724 -/* 80603714 48 00 00 30 */ b lbl_80603744 -lbl_80603718: -/* 80603718 2C 00 00 03 */ cmpwi r0, 3 -/* 8060371C 40 80 00 28 */ bge lbl_80603744 -/* 80603720 48 00 00 1C */ b lbl_8060373C -lbl_80603724: -/* 80603724 7F A3 EB 78 */ mr r3, r29 -/* 80603728 4B FF FB F9 */ bl h_wait__FP10b_go_class -/* 8060372C 48 00 00 18 */ b lbl_80603744 -lbl_80603730: -/* 80603730 7F A3 EB 78 */ mr r3, r29 -/* 80603734 4B FF FC BD */ bl h_walk__FP10b_go_class -/* 80603738 48 00 00 0C */ b lbl_80603744 -lbl_8060373C: -/* 8060373C 7F A3 EB 78 */ mr r3, r29 -/* 80603740 4B FF FD C9 */ bl h_attack__FP10b_go_class -lbl_80603744: -/* 80603744 38 7D 04 E6 */ addi r3, r29, 0x4e6 -/* 80603748 A8 9D 04 DE */ lha r4, 0x4de(r29) -/* 8060374C 38 A0 00 04 */ li r5, 4 -/* 80603750 38 C0 20 00 */ li r6, 0x2000 -/* 80603754 4B C6 CE B5 */ bl cLib_addCalcAngleS2__FPssss -/* 80603758 3C 60 80 45 */ lis r3, calc_mtx@ha /* 0x80450768@ha */ -/* 8060375C 38 63 07 68 */ addi r3, r3, calc_mtx@l /* 0x80450768@l */ -/* 80603760 80 63 00 00 */ lwz r3, 0(r3) -/* 80603764 A8 9D 04 DE */ lha r4, 0x4de(r29) -/* 80603768 4B A0 8C 75 */ bl mDoMtx_YrotS__FPA4_fs -/* 8060376C C0 1E 00 0C */ lfs f0, 0xc(r30) -/* 80603770 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80603774 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80603778 C0 1D 05 2C */ lfs f0, 0x52c(r29) -/* 8060377C D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80603780 38 61 00 14 */ addi r3, r1, 0x14 -/* 80603784 38 81 00 08 */ addi r4, r1, 8 -/* 80603788 4B C6 D7 65 */ bl MtxPosition__FP4cXyzP4cXyz -/* 8060378C C0 01 00 08 */ lfs f0, 8(r1) -/* 80603790 D0 1D 04 F8 */ stfs f0, 0x4f8(r29) -/* 80603794 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80603798 D0 1D 05 00 */ stfs f0, 0x500(r29) -/* 8060379C 38 7D 04 D0 */ addi r3, r29, 0x4d0 -/* 806037A0 38 9D 04 F8 */ addi r4, r29, 0x4f8 -/* 806037A4 7C 65 1B 78 */ mr r5, r3 -/* 806037A8 4B D4 38 E9 */ bl PSVECAdd -/* 806037AC C0 3D 04 FC */ lfs f1, 0x4fc(r29) -/* 806037B0 C0 1D 05 30 */ lfs f0, 0x530(r29) -/* 806037B4 EC 01 00 2A */ fadds f0, f1, f0 -/* 806037B8 D0 1D 04 FC */ stfs f0, 0x4fc(r29) -/* 806037BC 38 7D 06 D4 */ addi r3, r29, 0x6d4 -/* 806037C0 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 806037C4 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 806037C8 38 84 0F 38 */ addi r4, r4, 0xf38 -/* 806037CC 4B A7 32 E1 */ bl CrrPos__9dBgS_AcchFR4dBgS -/* 806037D0 39 61 00 40 */ addi r11, r1, 0x40 -/* 806037D4 4B D5 EA 55 */ bl _restgpr_29 -/* 806037D8 80 01 00 44 */ lwz r0, 0x44(r1) -/* 806037DC 7C 08 03 A6 */ mtlr r0 -/* 806037E0 38 21 00 40 */ addi r1, r1, 0x40 -/* 806037E4 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/anm_init__FP10b_go_classifUcf.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/anm_init__FP10b_go_classifUcf.s deleted file mode 100644 index 9bba1a480e..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/anm_init__FP10b_go_classifUcf.s +++ /dev/null @@ -1,44 +0,0 @@ -lbl_80603270: -/* 80603270 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80603274 7C 08 02 A6 */ mflr r0 -/* 80603278 90 01 00 44 */ stw r0, 0x44(r1) -/* 8060327C DB E1 00 30 */ stfd f31, 0x30(r1) -/* 80603280 F3 E1 00 38 */ psq_st f31, 56(r1), 0, 0 /* qr0 */ -/* 80603284 DB C1 00 20 */ stfd f30, 0x20(r1) -/* 80603288 F3 C1 00 28 */ psq_st f30, 40(r1), 0, 0 /* qr0 */ -/* 8060328C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80603290 4B D5 EF 4D */ bl _savegpr_29 -/* 80603294 7C 7D 1B 78 */ mr r29, r3 -/* 80603298 7C 9E 23 78 */ mr r30, r4 -/* 8060329C FF C0 08 90 */ fmr f30, f1 -/* 806032A0 7C BF 2B 78 */ mr r31, r5 -/* 806032A4 FF E0 10 90 */ fmr f31, f2 -/* 806032A8 3C 60 80 60 */ lis r3, d_a_b_go__stringBase0@ha /* 0x8060408C@ha */ -/* 806032AC 38 63 40 8C */ addi r3, r3, d_a_b_go__stringBase0@l /* 0x8060408C@l */ -/* 806032B0 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 806032B4 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 806032B8 3C A5 00 02 */ addis r5, r5, 2 -/* 806032BC 38 C0 00 80 */ li r6, 0x80 -/* 806032C0 38 A5 C2 F8 */ addi r5, r5, -15624 -/* 806032C4 4B A3 90 29 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 806032C8 7C 64 1B 78 */ mr r4, r3 -/* 806032CC 80 7D 05 B4 */ lwz r3, 0x5b4(r29) -/* 806032D0 57 E5 06 3E */ clrlwi r5, r31, 0x18 -/* 806032D4 FC 20 F0 90 */ fmr f1, f30 -/* 806032D8 FC 40 F8 90 */ fmr f2, f31 -/* 806032DC 3C C0 80 60 */ lis r6, lit_3673@ha /* 0x80604050@ha */ -/* 806032E0 C0 66 40 50 */ lfs f3, lit_3673@l(r6) /* 0x80604050@l */ -/* 806032E4 3C C0 80 60 */ lis r6, lit_3674@ha /* 0x80604054@ha */ -/* 806032E8 C0 86 40 54 */ lfs f4, lit_3674@l(r6) /* 0x80604054@l */ -/* 806032EC 4B A0 DB 85 */ bl setAnm__16mDoExt_McaMorfSOFP15J3DAnmTransformiffff -/* 806032F0 93 DD 06 5C */ stw r30, 0x65c(r29) -/* 806032F4 E3 E1 00 38 */ psq_l f31, 56(r1), 0, 0 /* qr0 */ -/* 806032F8 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 806032FC E3 C1 00 28 */ psq_l f30, 40(r1), 0, 0 /* qr0 */ -/* 80603300 CB C1 00 20 */ lfd f30, 0x20(r1) -/* 80603304 39 61 00 20 */ addi r11, r1, 0x20 -/* 80603308 4B D5 EF 21 */ bl _restgpr_29 -/* 8060330C 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80603310 7C 08 03 A6 */ mtlr r0 -/* 80603314 38 21 00 40 */ addi r1, r1, 0x40 -/* 80603318 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Create__FP10fopAc_ac_c.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Create__FP10fopAc_ac_c.s deleted file mode 100644 index f74c1b5043..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Create__FP10fopAc_ac_c.s +++ /dev/null @@ -1,157 +0,0 @@ -lbl_80603A54: -/* 80603A54 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80603A58 7C 08 02 A6 */ mflr r0 -/* 80603A5C 90 01 00 54 */ stw r0, 0x54(r1) -/* 80603A60 39 61 00 50 */ addi r11, r1, 0x50 -/* 80603A64 4B D5 E7 71 */ bl _savegpr_27 -/* 80603A68 7C 7E 1B 78 */ mr r30, r3 -/* 80603A6C 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x80604044@ha */ -/* 80603A70 3B E4 40 44 */ addi r31, r4, lit_3646@l /* 0x80604044@l */ -/* 80603A74 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 80603A78 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 80603A7C 40 82 00 1C */ bne lbl_80603A98 -/* 80603A80 28 1E 00 00 */ cmplwi r30, 0 -/* 80603A84 41 82 00 08 */ beq lbl_80603A8C -/* 80603A88 48 00 02 19 */ bl __ct__10b_go_classFv -lbl_80603A8C: -/* 80603A8C 80 1E 04 A0 */ lwz r0, 0x4a0(r30) -/* 80603A90 60 00 00 08 */ ori r0, r0, 8 -/* 80603A94 90 1E 04 A0 */ stw r0, 0x4a0(r30) -lbl_80603A98: -/* 80603A98 38 7E 05 AC */ addi r3, r30, 0x5ac -/* 80603A9C 3C 80 80 60 */ lis r4, d_a_b_go__stringBase0@ha /* 0x8060408C@ha */ -/* 80603AA0 38 84 40 8C */ addi r4, r4, d_a_b_go__stringBase0@l /* 0x8060408C@l */ -/* 80603AA4 4B A2 94 19 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc -/* 80603AA8 7C 7D 1B 78 */ mr r29, r3 -/* 80603AAC 2C 1D 00 04 */ cmpwi r29, 4 -/* 80603AB0 40 82 01 D4 */ bne lbl_80603C84 -/* 80603AB4 7F C3 F3 78 */ mr r3, r30 -/* 80603AB8 3C 80 80 60 */ lis r4, useHeapInit__FP10fopAc_ac_c@ha /* 0x8060395C@ha */ -/* 80603ABC 38 84 39 5C */ addi r4, r4, useHeapInit__FP10fopAc_ac_c@l /* 0x8060395C@l */ -/* 80603AC0 3C A0 00 05 */ lis r5, 0x0005 /* 0x0004B000@ha */ -/* 80603AC4 38 A5 B0 00 */ addi r5, r5, 0xB000 /* 0x0004B000@l */ -/* 80603AC8 4B A1 69 E9 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl -/* 80603ACC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80603AD0 40 82 00 0C */ bne lbl_80603ADC -/* 80603AD4 38 60 00 05 */ li r3, 5 -/* 80603AD8 48 00 01 B0 */ b lbl_80603C88 -lbl_80603ADC: -/* 80603ADC 3C 60 80 60 */ lis r3, data_80604140@ha /* 0x80604140@ha */ -/* 80603AE0 8C 03 41 40 */ lbzu r0, data_80604140@l(r3) /* 0x80604140@l */ -/* 80603AE4 28 00 00 00 */ cmplwi r0, 0 -/* 80603AE8 40 82 00 20 */ bne lbl_80603B08 -/* 80603AEC 38 00 00 01 */ li r0, 1 -/* 80603AF0 98 1E 0D 34 */ stb r0, 0xd34(r30) -/* 80603AF4 98 03 00 00 */ stb r0, 0(r3) -/* 80603AF8 38 00 FF FF */ li r0, -1 -/* 80603AFC 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x80604150@ha */ -/* 80603B00 38 63 41 50 */ addi r3, r3, l_HIO@l /* 0x80604150@l */ -/* 80603B04 98 03 00 04 */ stb r0, 4(r3) -lbl_80603B08: -/* 80603B08 38 00 00 04 */ li r0, 4 -/* 80603B0C 90 1E 05 5C */ stw r0, 0x55c(r30) -/* 80603B10 80 7E 05 B4 */ lwz r3, 0x5b4(r30) -/* 80603B14 80 63 00 04 */ lwz r3, 4(r3) -/* 80603B18 38 03 00 24 */ addi r0, r3, 0x24 -/* 80603B1C 90 1E 05 04 */ stw r0, 0x504(r30) -/* 80603B20 7F C3 F3 78 */ mr r3, r30 -/* 80603B24 C0 3F 00 30 */ lfs f1, 0x30(r31) -/* 80603B28 C0 5F 00 34 */ lfs f2, 0x34(r31) -/* 80603B2C FC 60 08 90 */ fmr f3, f1 -/* 80603B30 4B A1 69 F9 */ bl fopAcM_SetMin__FP10fopAc_ac_cfff -/* 80603B34 7F C3 F3 78 */ mr r3, r30 -/* 80603B38 C0 3F 00 38 */ lfs f1, 0x38(r31) -/* 80603B3C C0 5F 00 3C */ lfs f2, 0x3c(r31) -/* 80603B40 FC 60 08 90 */ fmr f3, f1 -/* 80603B44 4B A1 69 F5 */ bl fopAcM_SetMax__FP10fopAc_ac_cfff -/* 80603B48 38 00 03 E8 */ li r0, 0x3e8 -/* 80603B4C B0 1E 05 62 */ sth r0, 0x562(r30) -/* 80603B50 B0 1E 05 60 */ sth r0, 0x560(r30) -/* 80603B54 38 00 00 00 */ li r0, 0 -/* 80603B58 90 01 00 08 */ stw r0, 8(r1) -/* 80603B5C 38 7E 06 D4 */ addi r3, r30, 0x6d4 -/* 80603B60 38 9E 04 D0 */ addi r4, r30, 0x4d0 -/* 80603B64 38 BE 04 BC */ addi r5, r30, 0x4bc -/* 80603B68 7F C6 F3 78 */ mr r6, r30 -/* 80603B6C 38 E0 00 01 */ li r7, 1 -/* 80603B70 39 1E 06 94 */ addi r8, r30, 0x694 -/* 80603B74 39 3E 04 F8 */ addi r9, r30, 0x4f8 -/* 80603B78 39 40 00 00 */ li r10, 0 -/* 80603B7C 4B A7 26 CD */ bl Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz -/* 80603B80 38 7E 06 94 */ addi r3, r30, 0x694 -/* 80603B84 C0 3F 00 1C */ lfs f1, 0x1c(r31) -/* 80603B88 C0 5F 00 08 */ lfs f2, 8(r31) -/* 80603B8C 4B A7 23 CD */ bl SetWall__12dBgS_AcchCirFff -/* 80603B90 38 7E 05 B8 */ addi r3, r30, 0x5b8 -/* 80603B94 38 9E 04 D0 */ addi r4, r30, 0x4d0 -/* 80603B98 38 BE 05 38 */ addi r5, r30, 0x538 -/* 80603B9C 38 C0 00 03 */ li r6, 3 -/* 80603BA0 38 E0 00 01 */ li r7, 1 -/* 80603BA4 4B CB D4 F1 */ bl init__15Z2CreatureEnemyFP3VecP3VecUcUc -/* 80603BA8 38 1E 05 B8 */ addi r0, r30, 0x5b8 -/* 80603BAC 90 1E 0C 9C */ stw r0, 0xc9c(r30) -/* 80603BB0 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80603BB4 D0 1E 05 30 */ stfs f0, 0x530(r30) -/* 80603BB8 38 00 00 00 */ li r0, 0 -/* 80603BBC B0 1E 06 6A */ sth r0, 0x66a(r30) -/* 80603BC0 7F C3 F3 78 */ mr r3, r30 -/* 80603BC4 4B FF FC 25 */ bl daB_GO_Execute__FP10b_go_class -/* 80603BC8 C0 1E 04 D4 */ lfs f0, 0x4d4(r30) -/* 80603BCC D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80603BD0 38 61 00 10 */ addi r3, r1, 0x10 -/* 80603BD4 38 80 00 00 */ li r4, 0 -/* 80603BD8 38 A0 00 00 */ li r5, 0 -/* 80603BDC 38 C0 00 00 */ li r6, 0 -/* 80603BE0 4B C6 38 15 */ bl __ct__5csXyzFsss -/* 80603BE4 3B 60 00 00 */ li r27, 0 -/* 80603BE8 3B 80 00 00 */ li r28, 0 -lbl_80603BEC: -/* 80603BEC C0 3F 00 38 */ lfs f1, 0x38(r31) -/* 80603BF0 4B C6 3D 9D */ bl cM_rndFX__Ff -/* 80603BF4 C0 1E 04 D0 */ lfs f0, 0x4d0(r30) -/* 80603BF8 EC 00 08 2A */ fadds f0, f0, f1 -/* 80603BFC D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80603C00 C0 3F 00 38 */ lfs f1, 0x38(r31) -/* 80603C04 4B C6 3D 89 */ bl cM_rndFX__Ff -/* 80603C08 C0 1E 04 D8 */ lfs f0, 0x4d8(r30) -/* 80603C0C EC 00 08 2A */ fadds f0, f0, f1 -/* 80603C10 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80603C14 C0 3F 00 44 */ lfs f1, 0x44(r31) -/* 80603C18 4B C6 3D 3D */ bl cM_rndF__Ff -/* 80603C1C FC 00 08 1E */ fctiwz f0, f1 -/* 80603C20 D8 01 00 28 */ stfd f0, 0x28(r1) -/* 80603C24 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 80603C28 B0 01 00 12 */ sth r0, 0x12(r1) -/* 80603C2C 88 1E 04 E2 */ lbz r0, 0x4e2(r30) -/* 80603C30 7C 07 07 74 */ extsb r7, r0 -/* 80603C34 38 00 00 00 */ li r0, 0 -/* 80603C38 90 01 00 08 */ stw r0, 8(r1) -/* 80603C3C 38 60 02 F1 */ li r3, 0x2f1 -/* 80603C40 28 1E 00 00 */ cmplwi r30, 0 -/* 80603C44 41 82 00 0C */ beq lbl_80603C50 -/* 80603C48 80 9E 00 04 */ lwz r4, 4(r30) -/* 80603C4C 48 00 00 08 */ b lbl_80603C54 -lbl_80603C50: -/* 80603C50 38 80 FF FF */ li r4, -1 -lbl_80603C54: -/* 80603C54 7F 65 DB 78 */ mr r5, r27 -/* 80603C58 38 C1 00 18 */ addi r6, r1, 0x18 -/* 80603C5C 39 01 00 10 */ addi r8, r1, 0x10 -/* 80603C60 39 20 00 00 */ li r9, 0 -/* 80603C64 39 40 FF FF */ li r10, -1 -/* 80603C68 4B A1 62 89 */ bl fopAcM_createChild__FsUiUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i -/* 80603C6C 38 1C 0C B8 */ addi r0, r28, 0xcb8 -/* 80603C70 7C 7E 01 2E */ stwx r3, r30, r0 -/* 80603C74 3B 7B 00 01 */ addi r27, r27, 1 -/* 80603C78 2C 1B 00 1F */ cmpwi r27, 0x1f -/* 80603C7C 3B 9C 00 04 */ addi r28, r28, 4 -/* 80603C80 41 80 FF 6C */ blt lbl_80603BEC -lbl_80603C84: -/* 80603C84 7F A3 EB 78 */ mr r3, r29 -lbl_80603C88: -/* 80603C88 39 61 00 50 */ addi r11, r1, 0x50 -/* 80603C8C 4B D5 E5 95 */ bl _restgpr_27 -/* 80603C90 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80603C94 7C 08 03 A6 */ mtlr r0 -/* 80603C98 38 21 00 50 */ addi r1, r1, 0x50 -/* 80603C9C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Execute__FP10b_go_class.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Execute__FP10b_go_class.s deleted file mode 100644 index 3e3f6b48c3..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Execute__FP10b_go_class.s +++ /dev/null @@ -1,69 +0,0 @@ -lbl_806037E8: -/* 806037E8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806037EC 7C 08 02 A6 */ mflr r0 -/* 806037F0 90 01 00 14 */ stw r0, 0x14(r1) -/* 806037F4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 806037F8 7C 7F 1B 78 */ mr r31, r3 -/* 806037FC A8 63 06 68 */ lha r3, 0x668(r3) -/* 80603800 38 03 00 01 */ addi r0, r3, 1 -/* 80603804 B0 1F 06 68 */ sth r0, 0x668(r31) -/* 80603808 38 60 00 00 */ li r3, 0 -/* 8060380C 38 00 00 04 */ li r0, 4 -/* 80603810 7C 09 03 A6 */ mtctr r0 -lbl_80603814: -/* 80603814 38 A3 06 88 */ addi r5, r3, 0x688 -/* 80603818 7C 9F 2A AE */ lhax r4, r31, r5 -/* 8060381C 2C 04 00 00 */ cmpwi r4, 0 -/* 80603820 41 82 00 0C */ beq lbl_8060382C -/* 80603824 38 04 FF FF */ addi r0, r4, -1 -/* 80603828 7C 1F 2B 2E */ sthx r0, r31, r5 -lbl_8060382C: -/* 8060382C 38 63 00 02 */ addi r3, r3, 2 -/* 80603830 42 00 FF E4 */ bdnz lbl_80603814 -/* 80603834 A8 7F 06 90 */ lha r3, 0x690(r31) -/* 80603838 2C 03 00 00 */ cmpwi r3, 0 -/* 8060383C 41 82 00 0C */ beq lbl_80603848 -/* 80603840 38 03 FF FF */ addi r0, r3, -1 -/* 80603844 B0 1F 06 90 */ sth r0, 0x690(r31) -lbl_80603848: -/* 80603848 7F E3 FB 78 */ mr r3, r31 -/* 8060384C 4B FF FD ED */ bl action__FP10b_go_class -/* 80603850 7F E3 FB 78 */ mr r3, r31 -/* 80603854 4B FF FA C9 */ bl damage_check__FP10b_go_class -/* 80603858 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8060385C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80603860 C0 3F 04 D0 */ lfs f1, 0x4d0(r31) -/* 80603864 C0 5F 04 D4 */ lfs f2, 0x4d4(r31) -/* 80603868 C0 7F 04 D8 */ lfs f3, 0x4d8(r31) -/* 8060386C 4B D4 30 7D */ bl PSMTXTrans -/* 80603870 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80603874 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80603878 A8 9F 04 E6 */ lha r4, 0x4e6(r31) -/* 8060387C 4B A0 8B B9 */ bl mDoMtx_YrotM__FPA4_fs -/* 80603880 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x80604150@ha */ -/* 80603884 38 63 41 50 */ addi r3, r3, l_HIO@l /* 0x80604150@l */ -/* 80603888 C0 23 00 08 */ lfs f1, 8(r3) -/* 8060388C FC 40 08 90 */ fmr f2, f1 -/* 80603890 FC 60 08 90 */ fmr f3, f1 -/* 80603894 4B A0 95 A5 */ bl scaleM__14mDoMtx_stack_cFfff -/* 80603898 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 8060389C 80 83 00 04 */ lwz r4, 4(r3) -/* 806038A0 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 806038A4 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 806038A8 38 84 00 24 */ addi r4, r4, 0x24 -/* 806038AC 4B D4 2C 05 */ bl PSMTXCopy -/* 806038B0 88 1F 04 E2 */ lbz r0, 0x4e2(r31) -/* 806038B4 7C 03 07 74 */ extsb r3, r0 -/* 806038B8 4B A2 97 B5 */ bl dComIfGp_getReverb__Fi -/* 806038BC 7C 65 1B 78 */ mr r5, r3 -/* 806038C0 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 806038C4 38 80 00 00 */ li r4, 0 -/* 806038C8 4B A0 D7 E9 */ bl play__16mDoExt_McaMorfSOFUlSc -/* 806038CC 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 806038D0 4B A0 D9 1D */ bl modelCalc__16mDoExt_McaMorfSOFv -/* 806038D4 38 60 00 01 */ li r3, 1 -/* 806038D8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 806038DC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806038E0 7C 08 03 A6 */ mtlr r0 -/* 806038E4 38 21 00 10 */ addi r1, r1, 0x10 -/* 806038E8 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604020.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604020.s deleted file mode 100644 index caca4a8a11..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604020.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_80604020: -/* 80604020 38 63 FF DC */ addi r3, r3, -36 -/* 80604024 4B FF FF 08 */ b __dt__12dBgS_ObjAcchFv diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604028.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604028.s deleted file mode 100644 index d96979f9c7..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604028.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_80604028: -/* 80604028 38 63 FF EC */ addi r3, r3, -20 -/* 8060402C 4B FF FF 00 */ b __dt__12dBgS_ObjAcchFv diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_attack__FP10b_go_class.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_attack__FP10b_go_class.s deleted file mode 100644 index 63c46dbb2a..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_attack__FP10b_go_class.s +++ /dev/null @@ -1,83 +0,0 @@ -lbl_80603508: -/* 80603508 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8060350C 7C 08 02 A6 */ mflr r0 -/* 80603510 90 01 00 34 */ stw r0, 0x34(r1) -/* 80603514 39 61 00 30 */ addi r11, r1, 0x30 -/* 80603518 4B D5 EC C5 */ bl _savegpr_29 -/* 8060351C 7C 7D 1B 78 */ mr r29, r3 -/* 80603520 3C 60 80 60 */ lis r3, lit_3646@ha /* 0x80604044@ha */ -/* 80603524 3B E3 40 44 */ addi r31, r3, lit_3646@l /* 0x80604044@l */ -/* 80603528 80 7D 05 B4 */ lwz r3, 0x5b4(r29) -/* 8060352C C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 80603530 FC 00 00 1E */ fctiwz f0, f0 -/* 80603534 D8 01 00 10 */ stfd f0, 0x10(r1) -/* 80603538 83 C1 00 14 */ lwz r30, 0x14(r1) -/* 8060353C 38 7D 05 2C */ addi r3, r29, 0x52c -/* 80603540 C0 3F 00 18 */ lfs f1, 0x18(r31) -/* 80603544 FC 40 08 90 */ fmr f2, f1 -/* 80603548 4B C6 C5 39 */ bl cLib_addCalc0__FPfff -/* 8060354C A8 1D 06 6C */ lha r0, 0x66c(r29) -/* 80603550 2C 00 00 01 */ cmpwi r0, 1 -/* 80603554 41 82 00 38 */ beq lbl_8060358C -/* 80603558 40 80 00 C8 */ bge lbl_80603620 -/* 8060355C 2C 00 00 00 */ cmpwi r0, 0 -/* 80603560 40 80 00 08 */ bge lbl_80603568 -/* 80603564 48 00 00 BC */ b lbl_80603620 -lbl_80603568: -/* 80603568 7F A3 EB 78 */ mr r3, r29 -/* 8060356C 38 80 00 04 */ li r4, 4 -/* 80603570 C0 3F 00 14 */ lfs f1, 0x14(r31) -/* 80603574 38 A0 00 00 */ li r5, 0 -/* 80603578 C0 5F 00 18 */ lfs f2, 0x18(r31) -/* 8060357C 4B FF FC F5 */ bl anm_init__FP10b_go_classifUcf -/* 80603580 38 00 00 01 */ li r0, 1 -/* 80603584 B0 1D 06 6C */ sth r0, 0x66c(r29) -/* 80603588 48 00 00 98 */ b lbl_80603620 -lbl_8060358C: -/* 8060358C 2C 1E 00 19 */ cmpwi r30, 0x19 -/* 80603590 41 80 00 54 */ blt lbl_806035E4 -/* 80603594 2C 1E 00 21 */ cmpwi r30, 0x21 -/* 80603598 41 81 00 4C */ bgt lbl_806035E4 -/* 8060359C 2C 1E 00 19 */ cmpwi r30, 0x19 -/* 806035A0 40 82 00 3C */ bne lbl_806035DC -/* 806035A4 3C 60 00 06 */ lis r3, 0x0006 /* 0x00060034@ha */ -/* 806035A8 38 03 00 34 */ addi r0, r3, 0x0034 /* 0x00060034@l */ -/* 806035AC 90 01 00 08 */ stw r0, 8(r1) -/* 806035B0 38 7D 05 B8 */ addi r3, r29, 0x5b8 -/* 806035B4 38 81 00 08 */ addi r4, r1, 8 -/* 806035B8 38 A0 00 00 */ li r5, 0 -/* 806035BC 38 C0 FF FF */ li r6, -1 -/* 806035C0 81 9D 05 B8 */ lwz r12, 0x5b8(r29) -/* 806035C4 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 806035C8 7D 89 03 A6 */ mtctr r12 -/* 806035CC 4E 80 04 21 */ bctrl -/* 806035D0 38 00 00 01 */ li r0, 1 -/* 806035D4 98 1D 06 60 */ stb r0, 0x660(r29) -/* 806035D8 48 00 00 0C */ b lbl_806035E4 -lbl_806035DC: -/* 806035DC 38 00 00 02 */ li r0, 2 -/* 806035E0 98 1D 06 60 */ stb r0, 0x660(r29) -lbl_806035E4: -/* 806035E4 80 7D 05 B4 */ lwz r3, 0x5b4(r29) -/* 806035E8 38 80 00 01 */ li r4, 1 -/* 806035EC 88 03 00 11 */ lbz r0, 0x11(r3) -/* 806035F0 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 806035F4 40 82 00 18 */ bne lbl_8060360C -/* 806035F8 C0 3F 00 0C */ lfs f1, 0xc(r31) -/* 806035FC C0 03 00 18 */ lfs f0, 0x18(r3) -/* 80603600 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80603604 41 82 00 08 */ beq lbl_8060360C -/* 80603608 38 80 00 00 */ li r4, 0 -lbl_8060360C: -/* 8060360C 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 80603610 41 82 00 10 */ beq lbl_80603620 -/* 80603614 38 00 00 00 */ li r0, 0 -/* 80603618 B0 1D 06 6A */ sth r0, 0x66a(r29) -/* 8060361C B0 1D 06 6C */ sth r0, 0x66c(r29) -lbl_80603620: -/* 80603620 39 61 00 30 */ addi r11, r1, 0x30 -/* 80603624 4B D5 EC 05 */ bl _restgpr_29 -/* 80603628 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8060362C 7C 08 03 A6 */ mtlr r0 -/* 80603630 38 21 00 30 */ addi r1, r1, 0x30 -/* 80603634 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_wait__FP10b_go_class.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_wait__FP10b_go_class.s deleted file mode 100644 index 8477d5c00f..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_wait__FP10b_go_class.s +++ /dev/null @@ -1,57 +0,0 @@ -lbl_80603320: -/* 80603320 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80603324 7C 08 02 A6 */ mflr r0 -/* 80603328 90 01 00 24 */ stw r0, 0x24(r1) -/* 8060332C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80603330 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80603334 7C 7E 1B 78 */ mr r30, r3 -/* 80603338 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x80604044@ha */ -/* 8060333C 3B E4 40 44 */ addi r31, r4, lit_3646@l /* 0x80604044@l */ -/* 80603340 C0 1F 00 0C */ lfs f0, 0xc(r31) -/* 80603344 D0 03 05 2C */ stfs f0, 0x52c(r3) -/* 80603348 A8 03 06 6C */ lha r0, 0x66c(r3) -/* 8060334C 2C 00 00 01 */ cmpwi r0, 1 -/* 80603350 41 82 00 54 */ beq lbl_806033A4 -/* 80603354 40 80 00 84 */ bge lbl_806033D8 -/* 80603358 2C 00 00 00 */ cmpwi r0, 0 -/* 8060335C 40 80 00 08 */ bge lbl_80603364 -/* 80603360 48 00 00 78 */ b lbl_806033D8 -lbl_80603364: -/* 80603364 38 80 00 0F */ li r4, 0xf -/* 80603368 C0 3F 00 14 */ lfs f1, 0x14(r31) -/* 8060336C 38 A0 00 02 */ li r5, 2 -/* 80603370 C0 5F 00 18 */ lfs f2, 0x18(r31) -/* 80603374 4B FF FE FD */ bl anm_init__FP10b_go_classifUcf -/* 80603378 38 00 00 01 */ li r0, 1 -/* 8060337C B0 1E 06 6C */ sth r0, 0x66c(r30) -/* 80603380 C0 3F 00 20 */ lfs f1, 0x20(r31) -/* 80603384 4B C6 45 D1 */ bl cM_rndF__Ff -/* 80603388 C0 1F 00 1C */ lfs f0, 0x1c(r31) -/* 8060338C EC 00 08 2A */ fadds f0, f0, f1 -/* 80603390 FC 00 00 1E */ fctiwz f0, f0 -/* 80603394 D8 01 00 08 */ stfd f0, 8(r1) -/* 80603398 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8060339C B0 1E 06 88 */ sth r0, 0x688(r30) -/* 806033A0 48 00 00 38 */ b lbl_806033D8 -lbl_806033A4: -/* 806033A4 A8 1E 06 88 */ lha r0, 0x688(r30) -/* 806033A8 2C 00 00 00 */ cmpwi r0, 0 -/* 806033AC 41 82 00 1C */ beq lbl_806033C8 -/* 806033B0 C0 3E 06 80 */ lfs f1, 0x680(r30) -/* 806033B4 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x80604150@ha */ -/* 806033B8 38 63 41 50 */ addi r3, r3, l_HIO@l /* 0x80604150@l */ -/* 806033BC C0 03 00 10 */ lfs f0, 0x10(r3) -/* 806033C0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 806033C4 40 80 00 14 */ bge lbl_806033D8 -lbl_806033C8: -/* 806033C8 38 00 00 01 */ li r0, 1 -/* 806033CC B0 1E 06 6A */ sth r0, 0x66a(r30) -/* 806033D0 38 00 00 00 */ li r0, 0 -/* 806033D4 B0 1E 06 6C */ sth r0, 0x66c(r30) -lbl_806033D8: -/* 806033D8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 806033DC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 806033E0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 806033E4 7C 08 03 A6 */ mtlr r0 -/* 806033E8 38 21 00 20 */ addi r1, r1, 0x20 -/* 806033EC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_walk__FP10b_go_class.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_walk__FP10b_go_class.s deleted file mode 100644 index 4e4391c366..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_walk__FP10b_go_class.s +++ /dev/null @@ -1,75 +0,0 @@ -lbl_806033F0: -/* 806033F0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 806033F4 7C 08 02 A6 */ mflr r0 -/* 806033F8 90 01 00 34 */ stw r0, 0x34(r1) -/* 806033FC DB E1 00 20 */ stfd f31, 0x20(r1) -/* 80603400 F3 E1 00 28 */ psq_st f31, 40(r1), 0, 0 /* qr0 */ -/* 80603404 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80603408 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8060340C 7C 7E 1B 78 */ mr r30, r3 -/* 80603410 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x80604044@ha */ -/* 80603414 3B E4 40 44 */ addi r31, r4, lit_3646@l /* 0x80604044@l */ -/* 80603418 C3 FF 00 0C */ lfs f31, 0xc(r31) -/* 8060341C A8 03 06 6C */ lha r0, 0x66c(r3) -/* 80603420 2C 00 00 01 */ cmpwi r0, 1 -/* 80603424 41 82 00 54 */ beq lbl_80603478 -/* 80603428 40 80 00 98 */ bge lbl_806034C0 -/* 8060342C 2C 00 00 00 */ cmpwi r0, 0 -/* 80603430 40 80 00 08 */ bge lbl_80603438 -/* 80603434 48 00 00 8C */ b lbl_806034C0 -lbl_80603438: -/* 80603438 38 80 00 10 */ li r4, 0x10 -/* 8060343C C0 3F 00 14 */ lfs f1, 0x14(r31) -/* 80603440 38 A0 00 02 */ li r5, 2 -/* 80603444 C0 5F 00 18 */ lfs f2, 0x18(r31) -/* 80603448 4B FF FE 29 */ bl anm_init__FP10b_go_classifUcf -/* 8060344C 38 00 00 01 */ li r0, 1 -/* 80603450 B0 1E 06 6C */ sth r0, 0x66c(r30) -/* 80603454 C0 3F 00 20 */ lfs f1, 0x20(r31) -/* 80603458 4B C6 44 FD */ bl cM_rndF__Ff -/* 8060345C C0 1F 00 24 */ lfs f0, 0x24(r31) -/* 80603460 EC 00 08 2A */ fadds f0, f0, f1 -/* 80603464 FC 00 00 1E */ fctiwz f0, f0 -/* 80603468 D8 01 00 08 */ stfd f0, 8(r1) -/* 8060346C 80 01 00 0C */ lwz r0, 0xc(r1) -/* 80603470 B0 1E 06 88 */ sth r0, 0x688(r30) -/* 80603474 48 00 00 4C */ b lbl_806034C0 -lbl_80603478: -/* 80603478 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x80604150@ha */ -/* 8060347C 38 63 41 50 */ addi r3, r3, l_HIO@l /* 0x80604150@l */ -/* 80603480 C3 E3 00 0C */ lfs f31, 0xc(r3) -/* 80603484 A8 1E 06 88 */ lha r0, 0x688(r30) -/* 80603488 2C 00 00 00 */ cmpwi r0, 0 -/* 8060348C 40 82 00 14 */ bne lbl_806034A0 -/* 80603490 38 00 00 00 */ li r0, 0 -/* 80603494 B0 1E 06 6A */ sth r0, 0x66a(r30) -/* 80603498 B0 1E 06 6C */ sth r0, 0x66c(r30) -/* 8060349C 48 00 00 24 */ b lbl_806034C0 -lbl_806034A0: -/* 806034A0 C0 3E 06 80 */ lfs f1, 0x680(r30) -/* 806034A4 C0 03 00 10 */ lfs f0, 0x10(r3) -/* 806034A8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 806034AC 40 80 00 14 */ bge lbl_806034C0 -/* 806034B0 38 00 00 02 */ li r0, 2 -/* 806034B4 B0 1E 06 6A */ sth r0, 0x66a(r30) -/* 806034B8 38 00 00 00 */ li r0, 0 -/* 806034BC B0 1E 06 6C */ sth r0, 0x66c(r30) -lbl_806034C0: -/* 806034C0 38 7E 05 2C */ addi r3, r30, 0x52c -/* 806034C4 FC 20 F8 90 */ fmr f1, f31 -/* 806034C8 C0 5F 00 18 */ lfs f2, 0x18(r31) -/* 806034CC FC 60 10 90 */ fmr f3, f2 -/* 806034D0 4B C6 C5 6D */ bl cLib_addCalc2__FPffff -/* 806034D4 38 7E 04 DE */ addi r3, r30, 0x4de -/* 806034D8 A8 9E 06 7E */ lha r4, 0x67e(r30) -/* 806034DC 38 A0 00 01 */ li r5, 1 -/* 806034E0 38 C0 02 00 */ li r6, 0x200 -/* 806034E4 4B C6 D1 25 */ bl cLib_addCalcAngleS2__FPssss -/* 806034E8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, 0 /* qr0 */ -/* 806034EC CB E1 00 20 */ lfd f31, 0x20(r1) -/* 806034F0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 806034F4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 806034F8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 806034FC 7C 08 03 A6 */ mtlr r0 -/* 80603500 38 21 00 30 */ addi r1, r1, 0x30 -/* 80603504 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/useHeapInit__FP10fopAc_ac_c.s b/asm/rel/d/a/b/d_a_b_go/d_a_b_go/useHeapInit__FP10fopAc_ac_c.s deleted file mode 100644 index 0e642b9970..0000000000 --- a/asm/rel/d/a/b/d_a_b_go/d_a_b_go/useHeapInit__FP10fopAc_ac_c.s +++ /dev/null @@ -1,67 +0,0 @@ -lbl_8060395C: -/* 8060395C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80603960 7C 08 02 A6 */ mflr r0 -/* 80603964 90 01 00 34 */ stw r0, 0x34(r1) -/* 80603968 39 61 00 30 */ addi r11, r1, 0x30 -/* 8060396C 4B D5 E8 6D */ bl _savegpr_28 -/* 80603970 7C 7F 1B 78 */ mr r31, r3 -/* 80603974 38 60 00 58 */ li r3, 0x58 -/* 80603978 4B CC B2 D5 */ bl __nw__FUl -/* 8060397C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80603980 41 82 00 94 */ beq lbl_80603A14 -/* 80603984 3C 60 80 60 */ lis r3, d_a_b_go__stringBase0@ha /* 0x8060408C@ha */ -/* 80603988 38 63 40 8C */ addi r3, r3, d_a_b_go__stringBase0@l /* 0x8060408C@l */ -/* 8060398C 38 80 00 0F */ li r4, 0xf -/* 80603990 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80603994 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80603998 3F 85 00 02 */ addis r28, r5, 2 -/* 8060399C 3B 9C C2 F8 */ addi r28, r28, -15624 -/* 806039A0 7F 85 E3 78 */ mr r5, r28 -/* 806039A4 38 C0 00 80 */ li r6, 0x80 -/* 806039A8 4B A3 89 45 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 806039AC 7C 7D 1B 78 */ mr r29, r3 -/* 806039B0 3C 60 80 60 */ lis r3, d_a_b_go__stringBase0@ha /* 0x8060408C@ha */ -/* 806039B4 38 63 40 8C */ addi r3, r3, d_a_b_go__stringBase0@l /* 0x8060408C@l */ -/* 806039B8 38 80 00 13 */ li r4, 0x13 -/* 806039BC 7F 85 E3 78 */ mr r5, r28 -/* 806039C0 38 C0 00 80 */ li r6, 0x80 -/* 806039C4 4B A3 89 29 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 806039C8 7C 64 1B 78 */ mr r4, r3 -/* 806039CC 38 1F 05 B8 */ addi r0, r31, 0x5b8 -/* 806039D0 90 01 00 08 */ stw r0, 8(r1) -/* 806039D4 3C 00 00 08 */ lis r0, 8 -/* 806039D8 90 01 00 0C */ stw r0, 0xc(r1) -/* 806039DC 3C 60 11 00 */ lis r3, 0x1100 /* 0x11000084@ha */ -/* 806039E0 38 03 00 84 */ addi r0, r3, 0x0084 /* 0x11000084@l */ -/* 806039E4 90 01 00 10 */ stw r0, 0x10(r1) -/* 806039E8 7F C3 F3 78 */ mr r3, r30 -/* 806039EC 38 A0 00 00 */ li r5, 0 -/* 806039F0 38 C0 00 00 */ li r6, 0 -/* 806039F4 7F A7 EB 78 */ mr r7, r29 -/* 806039F8 39 00 00 02 */ li r8, 2 -/* 806039FC 3D 20 80 60 */ lis r9, lit_3703@ha /* 0x8060405C@ha */ -/* 80603A00 C0 29 40 5C */ lfs f1, lit_3703@l(r9) /* 0x8060405C@l */ -/* 80603A04 39 20 00 00 */ li r9, 0 -/* 80603A08 39 40 FF FF */ li r10, -1 -/* 80603A0C 4B A0 CD C5 */ bl __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl -/* 80603A10 7C 7E 1B 78 */ mr r30, r3 -lbl_80603A14: -/* 80603A14 93 DF 05 B4 */ stw r30, 0x5b4(r31) -/* 80603A18 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 80603A1C 28 03 00 00 */ cmplwi r3, 0 -/* 80603A20 41 82 00 10 */ beq lbl_80603A30 -/* 80603A24 80 03 00 04 */ lwz r0, 4(r3) -/* 80603A28 28 00 00 00 */ cmplwi r0, 0 -/* 80603A2C 40 82 00 0C */ bne lbl_80603A38 -lbl_80603A30: -/* 80603A30 38 60 00 00 */ li r3, 0 -/* 80603A34 48 00 00 08 */ b lbl_80603A3C -lbl_80603A38: -/* 80603A38 38 60 00 01 */ li r3, 1 -lbl_80603A3C: -/* 80603A3C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80603A40 4B D5 E7 E5 */ bl _restgpr_28 -/* 80603A44 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80603A48 7C 08 03 A6 */ mtlr r0 -/* 80603A4C 38 21 00 30 */ addi r1, r1, 0x30 -/* 80603A50 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__11b_gos_classFv.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__11b_gos_classFv.s deleted file mode 100644 index 57a74e369a..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__11b_gos_classFv.s +++ /dev/null @@ -1,110 +0,0 @@ -lbl_80605024: -/* 80605024 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80605028 7C 08 02 A6 */ mflr r0 -/* 8060502C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80605030 39 61 00 20 */ addi r11, r1, 0x20 -/* 80605034 4B D5 D1 A1 */ bl _savegpr_27 -/* 80605038 7C 7F 1B 78 */ mr r31, r3 -/* 8060503C 4B A1 3B 29 */ bl __ct__10fopAc_ac_cFv -/* 80605040 38 7F 05 B8 */ addi r3, r31, 0x5b8 -/* 80605044 4B CB BF 21 */ bl __ct__15Z2CreatureEnemyFv -/* 80605048 38 7F 06 A4 */ addi r3, r31, 0x6a4 -/* 8060504C 4B A7 0E 61 */ bl __ct__12dBgS_AcchCirFv -/* 80605050 3B 9F 06 E4 */ addi r28, r31, 0x6e4 -/* 80605054 7F 83 E3 78 */ mr r3, r28 -/* 80605058 4B A7 10 49 */ bl __ct__9dBgS_AcchFv -/* 8060505C 3C 60 80 60 */ lis r3, __vt__12dBgS_ObjAcch@ha /* 0x806055CC@ha */ -/* 80605060 38 63 55 CC */ addi r3, r3, __vt__12dBgS_ObjAcch@l /* 0x806055CC@l */ -/* 80605064 90 7C 00 10 */ stw r3, 0x10(r28) -/* 80605068 38 03 00 0C */ addi r0, r3, 0xc -/* 8060506C 90 1C 00 14 */ stw r0, 0x14(r28) -/* 80605070 38 03 00 18 */ addi r0, r3, 0x18 -/* 80605074 90 1C 00 24 */ stw r0, 0x24(r28) -/* 80605078 38 7C 00 14 */ addi r3, r28, 0x14 -/* 8060507C 4B A7 3D ED */ bl SetObj__16dBgS_PolyPassChkFv -/* 80605080 3C 60 80 3C */ lis r3, __vt__9cCcD_Stts@ha /* 0x803C3728@ha */ -/* 80605084 38 03 37 28 */ addi r0, r3, __vt__9cCcD_Stts@l /* 0x803C3728@l */ -/* 80605088 90 1F 08 D4 */ stw r0, 0x8d4(r31) -/* 8060508C 38 7F 08 D8 */ addi r3, r31, 0x8d8 -/* 80605090 4B A7 E6 D1 */ bl __ct__10dCcD_GSttsFv -/* 80605094 3C 60 80 3B */ lis r3, __vt__9dCcD_Stts@ha /* 0x803AC2E4@ha */ -/* 80605098 38 63 C2 E4 */ addi r3, r3, __vt__9dCcD_Stts@l /* 0x803AC2E4@l */ -/* 8060509C 90 7F 08 D4 */ stw r3, 0x8d4(r31) -/* 806050A0 38 03 00 20 */ addi r0, r3, 0x20 -/* 806050A4 90 1F 08 D8 */ stw r0, 0x8d8(r31) -/* 806050A8 3B 7F 08 F8 */ addi r27, r31, 0x8f8 -/* 806050AC 7F 63 DB 78 */ mr r3, r27 -/* 806050B0 4B A7 E9 79 */ bl __ct__12dCcD_GObjInfFv -/* 806050B4 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */ -/* 806050B8 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */ -/* 806050BC 90 1B 01 20 */ stw r0, 0x120(r27) -/* 806050C0 3C 60 80 60 */ lis r3, __vt__8cM3dGAab@ha /* 0x806055C0@ha */ -/* 806050C4 38 03 55 C0 */ addi r0, r3, __vt__8cM3dGAab@l /* 0x806055C0@l */ -/* 806050C8 90 1B 01 1C */ stw r0, 0x11c(r27) -/* 806050CC 3C 60 80 60 */ lis r3, __vt__8cM3dGSph@ha /* 0x806055B4@ha */ -/* 806050D0 38 03 55 B4 */ addi r0, r3, __vt__8cM3dGSph@l /* 0x806055B4@l */ -/* 806050D4 90 1B 01 34 */ stw r0, 0x134(r27) -/* 806050D8 3C 60 80 3C */ lis r3, __vt__12cCcD_SphAttr@ha /* 0x803C3540@ha */ -/* 806050DC 38 63 35 40 */ addi r3, r3, __vt__12cCcD_SphAttr@l /* 0x803C3540@l */ -/* 806050E0 90 7B 01 20 */ stw r3, 0x120(r27) -/* 806050E4 3B C3 00 58 */ addi r30, r3, 0x58 -/* 806050E8 93 DB 01 34 */ stw r30, 0x134(r27) -/* 806050EC 3C 60 80 3B */ lis r3, __vt__8dCcD_Sph@ha /* 0x803ABFC0@ha */ -/* 806050F0 38 63 BF C0 */ addi r3, r3, __vt__8dCcD_Sph@l /* 0x803ABFC0@l */ -/* 806050F4 90 7B 00 3C */ stw r3, 0x3c(r27) -/* 806050F8 3B A3 00 2C */ addi r29, r3, 0x2c -/* 806050FC 93 BB 01 20 */ stw r29, 0x120(r27) -/* 80605100 3B 83 00 84 */ addi r28, r3, 0x84 -/* 80605104 93 9B 01 34 */ stw r28, 0x134(r27) -/* 80605108 3B 7F 0A 30 */ addi r27, r31, 0xa30 -/* 8060510C 7F 63 DB 78 */ mr r3, r27 -/* 80605110 4B A7 E9 19 */ bl __ct__12dCcD_GObjInfFv -/* 80605114 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */ -/* 80605118 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */ -/* 8060511C 90 1B 01 20 */ stw r0, 0x120(r27) -/* 80605120 3C 60 80 60 */ lis r3, __vt__8cM3dGAab@ha /* 0x806055C0@ha */ -/* 80605124 38 03 55 C0 */ addi r0, r3, __vt__8cM3dGAab@l /* 0x806055C0@l */ -/* 80605128 90 1B 01 1C */ stw r0, 0x11c(r27) -/* 8060512C 3C 60 80 60 */ lis r3, __vt__8cM3dGSph@ha /* 0x806055B4@ha */ -/* 80605130 38 03 55 B4 */ addi r0, r3, __vt__8cM3dGSph@l /* 0x806055B4@l */ -/* 80605134 90 1B 01 34 */ stw r0, 0x134(r27) -/* 80605138 3C 60 80 3C */ lis r3, __vt__12cCcD_SphAttr@ha /* 0x803C3540@ha */ -/* 8060513C 38 03 35 40 */ addi r0, r3, __vt__12cCcD_SphAttr@l /* 0x803C3540@l */ -/* 80605140 90 1B 01 20 */ stw r0, 0x120(r27) -/* 80605144 93 DB 01 34 */ stw r30, 0x134(r27) -/* 80605148 3C 60 80 3B */ lis r3, __vt__8dCcD_Sph@ha /* 0x803ABFC0@ha */ -/* 8060514C 38 03 BF C0 */ addi r0, r3, __vt__8dCcD_Sph@l /* 0x803ABFC0@l */ -/* 80605150 90 1B 00 3C */ stw r0, 0x3c(r27) -/* 80605154 93 BB 01 20 */ stw r29, 0x120(r27) -/* 80605158 93 9B 01 34 */ stw r28, 0x134(r27) -/* 8060515C 3B 7F 0B 68 */ addi r27, r31, 0xb68 -/* 80605160 7F 63 DB 78 */ mr r3, r27 -/* 80605164 4B A7 E8 C5 */ bl __ct__12dCcD_GObjInfFv -/* 80605168 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */ -/* 8060516C 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */ -/* 80605170 90 1B 01 20 */ stw r0, 0x120(r27) -/* 80605174 3C 60 80 60 */ lis r3, __vt__8cM3dGAab@ha /* 0x806055C0@ha */ -/* 80605178 38 03 55 C0 */ addi r0, r3, __vt__8cM3dGAab@l /* 0x806055C0@l */ -/* 8060517C 90 1B 01 1C */ stw r0, 0x11c(r27) -/* 80605180 3C 60 80 60 */ lis r3, __vt__8cM3dGCyl@ha /* 0x806055A8@ha */ -/* 80605184 38 03 55 A8 */ addi r0, r3, __vt__8cM3dGCyl@l /* 0x806055A8@l */ -/* 80605188 90 1B 01 38 */ stw r0, 0x138(r27) -/* 8060518C 3C 60 80 3C */ lis r3, __vt__12cCcD_CylAttr@ha /* 0x803C35A4@ha */ -/* 80605190 38 63 35 A4 */ addi r3, r3, __vt__12cCcD_CylAttr@l /* 0x803C35A4@l */ -/* 80605194 90 7B 01 20 */ stw r3, 0x120(r27) -/* 80605198 38 03 00 58 */ addi r0, r3, 0x58 -/* 8060519C 90 1B 01 38 */ stw r0, 0x138(r27) -/* 806051A0 3C 60 80 3B */ lis r3, __vt__8dCcD_Cyl@ha /* 0x803AC050@ha */ -/* 806051A4 38 63 C0 50 */ addi r3, r3, __vt__8dCcD_Cyl@l /* 0x803AC050@l */ -/* 806051A8 90 7B 00 3C */ stw r3, 0x3c(r27) -/* 806051AC 38 03 00 2C */ addi r0, r3, 0x2c -/* 806051B0 90 1B 01 20 */ stw r0, 0x120(r27) -/* 806051B4 38 03 00 84 */ addi r0, r3, 0x84 -/* 806051B8 90 1B 01 38 */ stw r0, 0x138(r27) -/* 806051BC 7F E3 FB 78 */ mr r3, r31 -/* 806051C0 39 61 00 20 */ addi r11, r1, 0x20 -/* 806051C4 4B D5 D0 5D */ bl _restgpr_27 -/* 806051C8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 806051CC 7C 08 03 A6 */ mtlr r0 -/* 806051D0 38 21 00 20 */ addi r1, r1, 0x20 -/* 806051D4 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__13daB_GOS_HIO_cFv.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__13daB_GOS_HIO_cFv.s deleted file mode 100644 index d3f28b5104..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__13daB_GOS_HIO_cFv.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_8060426C: -/* 8060426C 3C 80 80 60 */ lis r4, __vt__13daB_GOS_HIO_c@ha /* 0x806055F0@ha */ -/* 80604270 38 04 55 F0 */ addi r0, r4, __vt__13daB_GOS_HIO_c@l /* 0x806055F0@l */ -/* 80604274 90 03 00 00 */ stw r0, 0(r3) -/* 80604278 38 00 FF FF */ li r0, -1 -/* 8060427C 98 03 00 04 */ stb r0, 4(r3) -/* 80604280 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x806053C8@ha */ -/* 80604284 C0 04 53 C8 */ lfs f0, lit_3646@l(r4) /* 0x806053C8@l */ -/* 80604288 D0 03 00 08 */ stfs f0, 8(r3) -/* 8060428C 3C 80 80 60 */ lis r4, lit_3647@ha /* 0x806053CC@ha */ -/* 80604290 C0 04 53 CC */ lfs f0, lit_3647@l(r4) /* 0x806053CC@l */ -/* 80604294 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80604298 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__12dBgS_ObjAcchFv.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__12dBgS_ObjAcchFv.s deleted file mode 100644 index 0cb31a55c5..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__12dBgS_ObjAcchFv.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_806052B0: -/* 806052B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806052B4 7C 08 02 A6 */ mflr r0 -/* 806052B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 806052BC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 806052C0 93 C1 00 08 */ stw r30, 8(r1) -/* 806052C4 7C 7E 1B 79 */ or. r30, r3, r3 -/* 806052C8 7C 9F 23 78 */ mr r31, r4 -/* 806052CC 41 82 00 38 */ beq lbl_80605304 -/* 806052D0 3C 80 80 60 */ lis r4, __vt__12dBgS_ObjAcch@ha /* 0x806055CC@ha */ -/* 806052D4 38 84 55 CC */ addi r4, r4, __vt__12dBgS_ObjAcch@l /* 0x806055CC@l */ -/* 806052D8 90 9E 00 10 */ stw r4, 0x10(r30) -/* 806052DC 38 04 00 0C */ addi r0, r4, 0xc -/* 806052E0 90 1E 00 14 */ stw r0, 0x14(r30) -/* 806052E4 38 04 00 18 */ addi r0, r4, 0x18 -/* 806052E8 90 1E 00 24 */ stw r0, 0x24(r30) -/* 806052EC 38 80 00 00 */ li r4, 0 -/* 806052F0 4B A7 0C A5 */ bl __dt__9dBgS_AcchFv -/* 806052F4 7F E0 07 35 */ extsh. r0, r31 -/* 806052F8 40 81 00 0C */ ble lbl_80605304 -/* 806052FC 7F C3 F3 78 */ mr r3, r30 -/* 80605300 4B CC 9A 3D */ bl __dl__FPv -lbl_80605304: -/* 80605304 7F C3 F3 78 */ mr r3, r30 -/* 80605308 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8060530C 83 C1 00 08 */ lwz r30, 8(r1) -/* 80605310 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80605314 7C 08 03 A6 */ mtlr r0 -/* 80605318 38 21 00 10 */ addi r1, r1, 0x10 -/* 8060531C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__13daB_GOS_HIO_cFv.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__13daB_GOS_HIO_cFv.s deleted file mode 100644 index 4cd647b24d..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__13daB_GOS_HIO_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80605320: -/* 80605320 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80605324 7C 08 02 A6 */ mflr r0 -/* 80605328 90 01 00 14 */ stw r0, 0x14(r1) -/* 8060532C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80605330 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80605334 41 82 00 1C */ beq lbl_80605350 -/* 80605338 3C A0 80 60 */ lis r5, __vt__13daB_GOS_HIO_c@ha /* 0x806055F0@ha */ -/* 8060533C 38 05 55 F0 */ addi r0, r5, __vt__13daB_GOS_HIO_c@l /* 0x806055F0@l */ -/* 80605340 90 1F 00 00 */ stw r0, 0(r31) -/* 80605344 7C 80 07 35 */ extsh. r0, r4 -/* 80605348 40 81 00 08 */ ble lbl_80605350 -/* 8060534C 4B CC 99 F1 */ bl __dl__FPv -lbl_80605350: -/* 80605350 7F E3 FB 78 */ mr r3, r31 -/* 80605354 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80605358 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8060535C 7C 08 03 A6 */ mtlr r0 -/* 80605360 38 21 00 10 */ addi r1, r1, 0x10 -/* 80605364 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGAabFv.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGAabFv.s deleted file mode 100644 index 0b6d63c609..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGAabFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80605268: -/* 80605268 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8060526C 7C 08 02 A6 */ mflr r0 -/* 80605270 90 01 00 14 */ stw r0, 0x14(r1) -/* 80605274 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80605278 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8060527C 41 82 00 1C */ beq lbl_80605298 -/* 80605280 3C A0 80 60 */ lis r5, __vt__8cM3dGAab@ha /* 0x806055C0@ha */ -/* 80605284 38 05 55 C0 */ addi r0, r5, __vt__8cM3dGAab@l /* 0x806055C0@l */ -/* 80605288 90 1F 00 18 */ stw r0, 0x18(r31) -/* 8060528C 7C 80 07 35 */ extsh. r0, r4 -/* 80605290 40 81 00 08 */ ble lbl_80605298 -/* 80605294 4B CC 9A A9 */ bl __dl__FPv -lbl_80605298: -/* 80605298 7F E3 FB 78 */ mr r3, r31 -/* 8060529C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 806052A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806052A4 7C 08 03 A6 */ mtlr r0 -/* 806052A8 38 21 00 10 */ addi r1, r1, 0x10 -/* 806052AC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGCylFv.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGCylFv.s deleted file mode 100644 index 5a1684999e..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGCylFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_806051D8: -/* 806051D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806051DC 7C 08 02 A6 */ mflr r0 -/* 806051E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 806051E4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 806051E8 7C 7F 1B 79 */ or. r31, r3, r3 -/* 806051EC 41 82 00 1C */ beq lbl_80605208 -/* 806051F0 3C A0 80 60 */ lis r5, __vt__8cM3dGCyl@ha /* 0x806055A8@ha */ -/* 806051F4 38 05 55 A8 */ addi r0, r5, __vt__8cM3dGCyl@l /* 0x806055A8@l */ -/* 806051F8 90 1F 00 14 */ stw r0, 0x14(r31) -/* 806051FC 7C 80 07 35 */ extsh. r0, r4 -/* 80605200 40 81 00 08 */ ble lbl_80605208 -/* 80605204 4B CC 9B 39 */ bl __dl__FPv -lbl_80605208: -/* 80605208 7F E3 FB 78 */ mr r3, r31 -/* 8060520C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80605210 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80605214 7C 08 03 A6 */ mtlr r0 -/* 80605218 38 21 00 10 */ addi r1, r1, 0x10 -/* 8060521C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGSphFv.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGSphFv.s deleted file mode 100644 index d375872a3d..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGSphFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80605220: -/* 80605220 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80605224 7C 08 02 A6 */ mflr r0 -/* 80605228 90 01 00 14 */ stw r0, 0x14(r1) -/* 8060522C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80605230 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80605234 41 82 00 1C */ beq lbl_80605250 -/* 80605238 3C A0 80 60 */ lis r5, __vt__8cM3dGSph@ha /* 0x806055B4@ha */ -/* 8060523C 38 05 55 B4 */ addi r0, r5, __vt__8cM3dGSph@l /* 0x806055B4@l */ -/* 80605240 90 1F 00 10 */ stw r0, 0x10(r31) -/* 80605244 7C 80 07 35 */ extsh. r0, r4 -/* 80605248 40 81 00 08 */ ble lbl_80605250 -/* 8060524C 4B CC 9A F1 */ bl __dl__FPv -lbl_80605250: -/* 80605250 7F E3 FB 78 */ mr r3, r31 -/* 80605254 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80605258 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8060525C 7C 08 03 A6 */ mtlr r0 -/* 80605260 38 21 00 10 */ addi r1, r1, 0x10 -/* 80605264 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__sinit_d_a_b_gos_cpp.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__sinit_d_a_b_gos_cpp.s deleted file mode 100644 index cb3d917ed7..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__sinit_d_a_b_gos_cpp.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80605368: -/* 80605368 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8060536C 7C 08 02 A6 */ mflr r0 -/* 80605370 90 01 00 14 */ stw r0, 0x14(r1) -/* 80605374 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x8060561C@ha */ -/* 80605378 38 63 56 1C */ addi r3, r3, l_HIO@l /* 0x8060561C@l */ -/* 8060537C 4B FF EE F1 */ bl __ct__13daB_GOS_HIO_cFv -/* 80605380 3C 80 80 60 */ lis r4, __dt__13daB_GOS_HIO_cFv@ha /* 0x80605320@ha */ -/* 80605384 38 84 53 20 */ addi r4, r4, __dt__13daB_GOS_HIO_cFv@l /* 0x80605320@l */ -/* 80605388 3C A0 80 60 */ lis r5, lit_3641@ha /* 0x80605610@ha */ -/* 8060538C 38 A5 56 10 */ addi r5, r5, lit_3641@l /* 0x80605610@l */ -/* 80605390 4B FF EE 69 */ bl __register_global_object -/* 80605394 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80605398 7C 08 03 A6 */ mtlr r0 -/* 8060539C 38 21 00 10 */ addi r1, r1, 0x10 -/* 806053A0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/action__FP11b_gos_class.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/action__FP11b_gos_class.s deleted file mode 100644 index de3664fd99..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/action__FP11b_gos_class.s +++ /dev/null @@ -1,180 +0,0 @@ -lbl_806048E0: -/* 806048E0 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 806048E4 7C 08 02 A6 */ mflr r0 -/* 806048E8 90 01 00 54 */ stw r0, 0x54(r1) -/* 806048EC 39 61 00 50 */ addi r11, r1, 0x50 -/* 806048F0 4B D5 D8 E5 */ bl _savegpr_27 -/* 806048F4 7C 7E 1B 78 */ mr r30, r3 -/* 806048F8 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x806053C8@ha */ -/* 806048FC 3B E4 53 C8 */ addi r31, r4, lit_3646@l /* 0x806053C8@l */ -/* 80604900 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80604904 3B A4 61 C0 */ addi r29, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80604908 80 9D 5D AC */ lwz r4, 0x5dac(r29) -/* 8060490C 4B A1 5E 05 */ bl fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c -/* 80604910 B0 7E 06 82 */ sth r3, 0x682(r30) -/* 80604914 7F C3 F3 78 */ mr r3, r30 -/* 80604918 80 9D 5D AC */ lwz r4, 0x5dac(r29) -/* 8060491C 4B A1 5E C5 */ bl fopAcM_searchActorDistance__FPC10fopAc_ac_cPC10fopAc_ac_c -/* 80604920 D0 3E 06 84 */ stfs f1, 0x684(r30) -/* 80604924 80 1E 04 9C */ lwz r0, 0x49c(r30) -/* 80604928 54 00 00 3E */ slwi r0, r0, 0 -/* 8060492C 90 1E 04 9C */ stw r0, 0x49c(r30) -/* 80604930 38 00 00 00 */ li r0, 0 -/* 80604934 90 1E 05 5C */ stw r0, 0x55c(r30) -/* 80604938 3B 80 00 01 */ li r28, 1 -/* 8060493C 3B 60 00 01 */ li r27, 1 -/* 80604940 3B A0 00 00 */ li r29, 0 -/* 80604944 A8 1E 06 6E */ lha r0, 0x66e(r30) -/* 80604948 2C 00 00 02 */ cmpwi r0, 2 -/* 8060494C 41 82 00 3C */ beq lbl_80604988 -/* 80604950 40 80 00 14 */ bge lbl_80604964 -/* 80604954 2C 00 00 00 */ cmpwi r0, 0 -/* 80604958 41 82 00 18 */ beq lbl_80604970 -/* 8060495C 40 80 00 20 */ bge lbl_8060497C -/* 80604960 48 00 00 4C */ b lbl_806049AC -lbl_80604964: -/* 80604964 2C 00 00 04 */ cmpwi r0, 4 -/* 80604968 40 80 00 44 */ bge lbl_806049AC -/* 8060496C 48 00 00 2C */ b lbl_80604998 -lbl_80604970: -/* 80604970 7F C3 F3 78 */ mr r3, r30 -/* 80604974 4B FF FA AD */ bl wait__FP11b_gos_class -/* 80604978 48 00 00 34 */ b lbl_806049AC -lbl_8060497C: -/* 8060497C 7F C3 F3 78 */ mr r3, r30 -/* 80604980 4B FF FB 59 */ bl walk__FP11b_gos_class -/* 80604984 48 00 00 28 */ b lbl_806049AC -lbl_80604988: -/* 80604988 7F C3 F3 78 */ mr r3, r30 -/* 8060498C 4B FF FC 59 */ bl ball__FP11b_gos_class -/* 80604990 3B A0 00 01 */ li r29, 1 -/* 80604994 48 00 00 18 */ b lbl_806049AC -lbl_80604998: -/* 80604998 7F C3 F3 78 */ mr r3, r30 -/* 8060499C 4B FF FD 45 */ bl stick__FP11b_gos_class -/* 806049A0 3B 80 00 00 */ li r28, 0 -/* 806049A4 3B 60 00 00 */ li r27, 0 -/* 806049A8 3B A0 00 02 */ li r29, 2 -lbl_806049AC: -/* 806049AC 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 806049B0 41 82 00 38 */ beq lbl_806049E8 -/* 806049B4 80 1E 0B 94 */ lwz r0, 0xb94(r30) -/* 806049B8 60 00 00 01 */ ori r0, r0, 1 -/* 806049BC 90 1E 0B 94 */ stw r0, 0xb94(r30) -/* 806049C0 34 9E 08 BC */ addic. r4, r30, 0x8bc -/* 806049C4 41 82 00 30 */ beq lbl_806049F4 -/* 806049C8 38 61 00 08 */ addi r3, r1, 8 -/* 806049CC C0 3F 00 30 */ lfs f1, 0x30(r31) -/* 806049D0 4B C6 21 B5 */ bl __ml__4cXyzCFf -/* 806049D4 38 7E 04 D0 */ addi r3, r30, 0x4d0 -/* 806049D8 38 81 00 08 */ addi r4, r1, 8 -/* 806049DC 7C 65 1B 78 */ mr r5, r3 -/* 806049E0 4B D4 26 B1 */ bl PSVECAdd -/* 806049E4 48 00 00 10 */ b lbl_806049F4 -lbl_806049E8: -/* 806049E8 80 1E 0B 94 */ lwz r0, 0xb94(r30) -/* 806049EC 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e -/* 806049F0 90 1E 0B 94 */ stw r0, 0xb94(r30) -lbl_806049F4: -/* 806049F4 38 7E 04 E6 */ addi r3, r30, 0x4e6 -/* 806049F8 A8 9E 04 DE */ lha r4, 0x4de(r30) -/* 806049FC 38 A0 00 02 */ li r5, 2 -/* 80604A00 38 C0 20 00 */ li r6, 0x2000 -/* 80604A04 4B C6 BC 05 */ bl cLib_addCalcAngleS2__FPssss -/* 80604A08 57 60 06 3E */ clrlwi r0, r27, 0x18 -/* 80604A0C 28 00 00 01 */ cmplwi r0, 1 -/* 80604A10 40 82 00 8C */ bne lbl_80604A9C -/* 80604A14 3C 60 80 45 */ lis r3, calc_mtx@ha /* 0x80450768@ha */ -/* 80604A18 38 63 07 68 */ addi r3, r3, calc_mtx@l /* 0x80450768@l */ -/* 80604A1C 80 63 00 00 */ lwz r3, 0(r3) -/* 80604A20 A8 9E 04 DE */ lha r4, 0x4de(r30) -/* 80604A24 4B A0 79 B9 */ bl mDoMtx_YrotS__FPA4_fs -/* 80604A28 C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 80604A2C D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80604A30 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80604A34 C0 3E 05 2C */ lfs f1, 0x52c(r30) -/* 80604A38 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x8060561C@ha */ -/* 80604A3C 38 63 56 1C */ addi r3, r3, l_HIO@l /* 0x8060561C@l */ -/* 80604A40 C0 03 00 08 */ lfs f0, 8(r3) -/* 80604A44 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80604A48 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80604A4C 38 61 00 20 */ addi r3, r1, 0x20 -/* 80604A50 38 81 00 14 */ addi r4, r1, 0x14 -/* 80604A54 4B C6 C4 99 */ bl MtxPosition__FP4cXyzP4cXyz -/* 80604A58 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80604A5C D0 1E 04 F8 */ stfs f0, 0x4f8(r30) -/* 80604A60 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80604A64 D0 1E 05 00 */ stfs f0, 0x500(r30) -/* 80604A68 38 7E 04 D0 */ addi r3, r30, 0x4d0 -/* 80604A6C 38 9E 04 F8 */ addi r4, r30, 0x4f8 -/* 80604A70 7C 65 1B 78 */ mr r5, r3 -/* 80604A74 4B D4 26 1D */ bl PSVECAdd -/* 80604A78 C0 3E 04 FC */ lfs f1, 0x4fc(r30) -/* 80604A7C C0 1E 05 30 */ lfs f0, 0x530(r30) -/* 80604A80 EC 01 00 2A */ fadds f0, f1, f0 -/* 80604A84 D0 1E 04 FC */ stfs f0, 0x4fc(r30) -/* 80604A88 38 7E 06 E4 */ addi r3, r30, 0x6e4 -/* 80604A8C 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80604A90 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80604A94 38 84 0F 38 */ addi r4, r4, 0xf38 -/* 80604A98 4B A7 20 15 */ bl CrrPos__9dBgS_AcchFR4dBgS -lbl_80604A9C: -/* 80604A9C 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80604AA0 41 82 00 74 */ beq lbl_80604B14 -/* 80604AA4 28 00 00 02 */ cmplwi r0, 2 -/* 80604AA8 40 82 00 2C */ bne lbl_80604AD4 -/* 80604AAC 38 7E 06 98 */ addi r3, r30, 0x698 -/* 80604AB0 C0 3F 00 34 */ lfs f1, 0x34(r31) -/* 80604AB4 C0 5F 00 00 */ lfs f2, 0(r31) -/* 80604AB8 C0 7F 00 38 */ lfs f3, 0x38(r31) -/* 80604ABC 4B C6 AF 81 */ bl cLib_addCalc2__FPffff -/* 80604AC0 38 7E 06 9C */ addi r3, r30, 0x69c -/* 80604AC4 C0 3F 00 3C */ lfs f1, 0x3c(r31) -/* 80604AC8 C0 5F 00 00 */ lfs f2, 0(r31) -/* 80604ACC FC 60 10 90 */ fmr f3, f2 -/* 80604AD0 4B C6 AF 6D */ bl cLib_addCalc2__FPffff -lbl_80604AD4: -/* 80604AD4 3C 60 80 60 */ lis r3, boss@ha /* 0x80605608@ha */ -/* 80604AD8 38 63 56 08 */ addi r3, r3, boss@l /* 0x80605608@l */ -/* 80604ADC 80 63 00 00 */ lwz r3, 0(r3) -/* 80604AE0 A8 03 06 92 */ lha r0, 0x692(r3) -/* 80604AE4 2C 00 00 01 */ cmpwi r0, 1 -/* 80604AE8 40 82 00 7C */ bne lbl_80604B64 -/* 80604AEC 38 00 00 00 */ li r0, 0 -/* 80604AF0 B0 1E 06 6E */ sth r0, 0x66e(r30) -/* 80604AF4 B0 1E 06 70 */ sth r0, 0x670(r30) -/* 80604AF8 C0 3F 00 04 */ lfs f1, 4(r31) -/* 80604AFC 4B C6 2E 59 */ bl cM_rndF__Ff -/* 80604B00 D0 3E 05 2C */ stfs f1, 0x52c(r30) -/* 80604B04 C0 3F 00 04 */ lfs f1, 4(r31) -/* 80604B08 4B C6 2E 4D */ bl cM_rndF__Ff -/* 80604B0C D0 3E 04 FC */ stfs f1, 0x4fc(r30) -/* 80604B10 48 00 00 54 */ b lbl_80604B64 -lbl_80604B14: -/* 80604B14 38 7E 06 98 */ addi r3, r30, 0x698 -/* 80604B18 C0 3F 00 00 */ lfs f1, 0(r31) -/* 80604B1C C0 5F 00 18 */ lfs f2, 0x18(r31) -/* 80604B20 4B C6 AF 61 */ bl cLib_addCalc0__FPfff -/* 80604B24 38 7E 06 9C */ addi r3, r30, 0x69c -/* 80604B28 C0 3F 00 00 */ lfs f1, 0(r31) -/* 80604B2C C0 5F 00 40 */ lfs f2, 0x40(r31) -/* 80604B30 4B C6 AF 51 */ bl cLib_addCalc0__FPfff -/* 80604B34 3C 60 80 60 */ lis r3, boss@ha /* 0x80605608@ha */ -/* 80604B38 38 63 56 08 */ addi r3, r3, boss@l /* 0x80605608@l */ -/* 80604B3C 80 63 00 00 */ lwz r3, 0(r3) -/* 80604B40 A8 03 06 92 */ lha r0, 0x692(r3) -/* 80604B44 2C 00 00 02 */ cmpwi r0, 2 -/* 80604B48 40 82 00 1C */ bne lbl_80604B64 -/* 80604B4C 38 00 00 02 */ li r0, 2 -/* 80604B50 B0 1E 06 6E */ sth r0, 0x66e(r30) -/* 80604B54 38 00 00 00 */ li r0, 0 -/* 80604B58 B0 1E 06 70 */ sth r0, 0x670(r30) -/* 80604B5C C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 80604B60 D0 1E 05 2C */ stfs f0, 0x52c(r30) -lbl_80604B64: -/* 80604B64 39 61 00 50 */ addi r11, r1, 0x50 -/* 80604B68 4B D5 D6 B9 */ bl _restgpr_27 -/* 80604B6C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80604B70 7C 08 03 A6 */ mtlr r0 -/* 80604B74 38 21 00 50 */ addi r1, r1, 0x50 -/* 80604B78 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/anm_init__FP11b_gos_classifUcf.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/anm_init__FP11b_gos_classifUcf.s deleted file mode 100644 index 3765265f52..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/anm_init__FP11b_gos_classifUcf.s +++ /dev/null @@ -1,44 +0,0 @@ -lbl_80604370: -/* 80604370 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80604374 7C 08 02 A6 */ mflr r0 -/* 80604378 90 01 00 44 */ stw r0, 0x44(r1) -/* 8060437C DB E1 00 30 */ stfd f31, 0x30(r1) -/* 80604380 F3 E1 00 38 */ psq_st f31, 56(r1), 0, 0 /* qr0 */ -/* 80604384 DB C1 00 20 */ stfd f30, 0x20(r1) -/* 80604388 F3 C1 00 28 */ psq_st f30, 40(r1), 0, 0 /* qr0 */ -/* 8060438C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80604390 4B D5 DE 4D */ bl _savegpr_29 -/* 80604394 7C 7D 1B 78 */ mr r29, r3 -/* 80604398 7C 9E 23 78 */ mr r30, r4 -/* 8060439C FF C0 08 90 */ fmr f30, f1 -/* 806043A0 7C BF 2B 78 */ mr r31, r5 -/* 806043A4 FF E0 10 90 */ fmr f31, f2 -/* 806043A8 3C 60 80 60 */ lis r3, d_a_b_gos__stringBase0@ha /* 0x80605414@ha */ -/* 806043AC 38 63 54 14 */ addi r3, r3, d_a_b_gos__stringBase0@l /* 0x80605414@l */ -/* 806043B0 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 806043B4 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 806043B8 3C A5 00 02 */ addis r5, r5, 2 -/* 806043BC 38 C0 00 80 */ li r6, 0x80 -/* 806043C0 38 A5 C2 F8 */ addi r5, r5, -15624 -/* 806043C4 4B A3 7F 29 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 806043C8 7C 64 1B 78 */ mr r4, r3 -/* 806043CC 80 7D 05 B4 */ lwz r3, 0x5b4(r29) -/* 806043D0 57 E5 06 3E */ clrlwi r5, r31, 0x18 -/* 806043D4 FC 20 F0 90 */ fmr f1, f30 -/* 806043D8 FC 40 F8 90 */ fmr f2, f31 -/* 806043DC 3C C0 80 60 */ lis r6, lit_3676@ha /* 0x806053D8@ha */ -/* 806043E0 C0 66 53 D8 */ lfs f3, lit_3676@l(r6) /* 0x806053D8@l */ -/* 806043E4 3C C0 80 60 */ lis r6, lit_3684@ha /* 0x806053DC@ha */ -/* 806043E8 C0 86 53 DC */ lfs f4, lit_3684@l(r6) /* 0x806053DC@l */ -/* 806043EC 4B A0 CA 85 */ bl setAnm__16mDoExt_McaMorfSOFP15J3DAnmTransformiffff -/* 806043F0 93 DD 06 5C */ stw r30, 0x65c(r29) -/* 806043F4 E3 E1 00 38 */ psq_l f31, 56(r1), 0, 0 /* qr0 */ -/* 806043F8 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 806043FC E3 C1 00 28 */ psq_l f30, 40(r1), 0, 0 /* qr0 */ -/* 80604400 CB C1 00 20 */ lfd f30, 0x20(r1) -/* 80604404 39 61 00 20 */ addi r11, r1, 0x20 -/* 80604408 4B D5 DE 21 */ bl _restgpr_29 -/* 8060440C 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80604410 7C 08 03 A6 */ mtlr r0 -/* 80604414 38 21 00 40 */ addi r1, r1, 0x40 -/* 80604418 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/ball__FP11b_gos_class.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/ball__FP11b_gos_class.s deleted file mode 100644 index 78ccdb9d87..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/ball__FP11b_gos_class.s +++ /dev/null @@ -1,69 +0,0 @@ -lbl_806045E4: -/* 806045E4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 806045E8 7C 08 02 A6 */ mflr r0 -/* 806045EC 90 01 00 24 */ stw r0, 0x24(r1) -/* 806045F0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 806045F4 93 C1 00 18 */ stw r30, 0x18(r1) -/* 806045F8 7C 7E 1B 78 */ mr r30, r3 -/* 806045FC 3C 60 80 60 */ lis r3, lit_3646@ha /* 0x806053C8@ha */ -/* 80604600 3B E3 53 C8 */ addi r31, r3, lit_3646@l /* 0x806053C8@l */ -/* 80604604 A8 1E 06 70 */ lha r0, 0x670(r30) -/* 80604608 2C 00 00 01 */ cmpwi r0, 1 -/* 8060460C 41 82 00 40 */ beq lbl_8060464C -/* 80604610 40 80 00 10 */ bge lbl_80604620 -/* 80604614 2C 00 00 00 */ cmpwi r0, 0 -/* 80604618 40 80 00 14 */ bge lbl_8060462C -/* 8060461C 48 00 00 9C */ b lbl_806046B8 -lbl_80604620: -/* 80604620 2C 00 00 03 */ cmpwi r0, 3 -/* 80604624 40 80 00 94 */ bge lbl_806046B8 -/* 80604628 48 00 00 74 */ b lbl_8060469C -lbl_8060462C: -/* 8060462C C0 3F 00 28 */ lfs f1, 0x28(r31) -/* 80604630 4B C6 33 25 */ bl cM_rndF__Ff -/* 80604634 FC 00 08 1E */ fctiwz f0, f1 -/* 80604638 D8 01 00 08 */ stfd f0, 8(r1) -/* 8060463C 80 01 00 0C */ lwz r0, 0xc(r1) -/* 80604640 B0 1E 06 8C */ sth r0, 0x68c(r30) -/* 80604644 38 00 00 01 */ li r0, 1 -/* 80604648 B0 1E 06 70 */ sth r0, 0x670(r30) -lbl_8060464C: -/* 8060464C A8 1E 06 8C */ lha r0, 0x68c(r30) -/* 80604650 2C 00 00 00 */ cmpwi r0, 0 -/* 80604654 40 82 00 64 */ bne lbl_806046B8 -/* 80604658 7F C3 F3 78 */ mr r3, r30 -/* 8060465C 38 80 00 05 */ li r4, 5 -/* 80604660 C0 3F 00 18 */ lfs f1, 0x18(r31) -/* 80604664 38 A0 00 00 */ li r5, 0 -/* 80604668 C0 5F 00 00 */ lfs f2, 0(r31) -/* 8060466C 4B FF FD 05 */ bl anm_init__FP11b_gos_classifUcf -/* 80604670 38 00 00 02 */ li r0, 2 -/* 80604674 B0 1E 06 70 */ sth r0, 0x670(r30) -/* 80604678 C0 3F 00 1C */ lfs f1, 0x1c(r31) -/* 8060467C 4B C6 32 D9 */ bl cM_rndF__Ff -/* 80604680 C0 1F 00 20 */ lfs f0, 0x20(r31) -/* 80604684 EC 00 08 2A */ fadds f0, f0, f1 -/* 80604688 FC 00 00 1E */ fctiwz f0, f0 -/* 8060468C D8 01 00 08 */ stfd f0, 8(r1) -/* 80604690 80 01 00 0C */ lwz r0, 0xc(r1) -/* 80604694 B0 1E 06 8C */ sth r0, 0x68c(r30) -/* 80604698 48 00 00 20 */ b lbl_806046B8 -lbl_8060469C: -/* 8060469C A8 1E 06 8C */ lha r0, 0x68c(r30) -/* 806046A0 2C 00 00 00 */ cmpwi r0, 0 -/* 806046A4 40 82 00 14 */ bne lbl_806046B8 -/* 806046A8 38 00 00 03 */ li r0, 3 -/* 806046AC B0 1E 06 6E */ sth r0, 0x66e(r30) -/* 806046B0 38 00 00 00 */ li r0, 0 -/* 806046B4 B0 1E 06 70 */ sth r0, 0x670(r30) -lbl_806046B8: -/* 806046B8 38 7E 05 2C */ addi r3, r30, 0x52c -/* 806046BC C0 3F 00 00 */ lfs f1, 0(r31) -/* 806046C0 FC 40 08 90 */ fmr f2, f1 -/* 806046C4 4B C6 B3 BD */ bl cLib_addCalc0__FPfff -/* 806046C8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 806046CC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 806046D0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 806046D4 7C 08 03 A6 */ mtlr r0 -/* 806046D8 38 21 00 20 */ addi r1, r1, 0x20 -/* 806046DC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Create__FP10fopAc_ac_c.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Create__FP10fopAc_ac_c.s deleted file mode 100644 index 525574ae95..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Create__FP10fopAc_ac_c.s +++ /dev/null @@ -1,121 +0,0 @@ -lbl_80604E5C: -/* 80604E5C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80604E60 7C 08 02 A6 */ mflr r0 -/* 80604E64 90 01 00 24 */ stw r0, 0x24(r1) -/* 80604E68 39 61 00 20 */ addi r11, r1, 0x20 -/* 80604E6C 4B D5 D3 71 */ bl _savegpr_29 -/* 80604E70 7C 7E 1B 78 */ mr r30, r3 -/* 80604E74 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x806053C8@ha */ -/* 80604E78 3B E4 53 C8 */ addi r31, r4, lit_3646@l /* 0x806053C8@l */ -/* 80604E7C 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 80604E80 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 80604E84 40 82 00 1C */ bne lbl_80604EA0 -/* 80604E88 28 1E 00 00 */ cmplwi r30, 0 -/* 80604E8C 41 82 00 08 */ beq lbl_80604E94 -/* 80604E90 48 00 01 95 */ bl __ct__11b_gos_classFv -lbl_80604E94: -/* 80604E94 80 1E 04 A0 */ lwz r0, 0x4a0(r30) -/* 80604E98 60 00 00 08 */ ori r0, r0, 8 -/* 80604E9C 90 1E 04 A0 */ stw r0, 0x4a0(r30) -lbl_80604EA0: -/* 80604EA0 38 7E 05 AC */ addi r3, r30, 0x5ac -/* 80604EA4 3C 80 80 60 */ lis r4, d_a_b_gos__stringBase0@ha /* 0x80605414@ha */ -/* 80604EA8 38 84 54 14 */ addi r4, r4, d_a_b_gos__stringBase0@l /* 0x80605414@l */ -/* 80604EAC 4B A2 80 11 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc -/* 80604EB0 7C 7D 1B 78 */ mr r29, r3 -/* 80604EB4 2C 1D 00 04 */ cmpwi r29, 4 -/* 80604EB8 40 82 01 50 */ bne lbl_80605008 -/* 80604EBC 80 1E 00 B0 */ lwz r0, 0xb0(r30) -/* 80604EC0 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80604EC4 90 1E 06 60 */ stw r0, 0x660(r30) -/* 80604EC8 7F C3 F3 78 */ mr r3, r30 -/* 80604ECC 3C 80 80 60 */ lis r4, useHeapInit__FP10fopAc_ac_c@ha /* 0x80604D64@ha */ -/* 80604ED0 38 84 4D 64 */ addi r4, r4, useHeapInit__FP10fopAc_ac_c@l /* 0x80604D64@l */ -/* 80604ED4 3C A0 00 05 */ lis r5, 0x0005 /* 0x0004B000@ha */ -/* 80604ED8 38 A5 B0 00 */ addi r5, r5, 0xB000 /* 0x0004B000@l */ -/* 80604EDC 4B A1 55 D5 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl -/* 80604EE0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80604EE4 40 82 00 0C */ bne lbl_80604EF0 -/* 80604EE8 38 60 00 05 */ li r3, 5 -/* 80604EEC 48 00 01 20 */ b lbl_8060500C -lbl_80604EF0: -/* 80604EF0 3C 60 80 60 */ lis r3, data_8060560C@ha /* 0x8060560C@ha */ -/* 80604EF4 8C 03 56 0C */ lbzu r0, data_8060560C@l(r3) /* 0x8060560C@l */ -/* 80604EF8 28 00 00 00 */ cmplwi r0, 0 -/* 80604EFC 40 82 00 20 */ bne lbl_80604F1C -/* 80604F00 38 00 00 01 */ li r0, 1 -/* 80604F04 98 1E 0C C8 */ stb r0, 0xcc8(r30) -/* 80604F08 98 03 00 00 */ stb r0, 0(r3) -/* 80604F0C 38 00 FF FF */ li r0, -1 -/* 80604F10 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x8060561C@ha */ -/* 80604F14 38 63 56 1C */ addi r3, r3, l_HIO@l /* 0x8060561C@l */ -/* 80604F18 98 03 00 04 */ stb r0, 4(r3) -lbl_80604F1C: -/* 80604F1C 38 00 00 04 */ li r0, 4 -/* 80604F20 90 1E 05 5C */ stw r0, 0x55c(r30) -/* 80604F24 80 7E 05 B4 */ lwz r3, 0x5b4(r30) -/* 80604F28 80 63 00 04 */ lwz r3, 4(r3) -/* 80604F2C 38 03 00 24 */ addi r0, r3, 0x24 -/* 80604F30 90 1E 05 04 */ stw r0, 0x504(r30) -/* 80604F34 7F C3 F3 78 */ mr r3, r30 -/* 80604F38 C0 3F 00 44 */ lfs f1, 0x44(r31) -/* 80604F3C FC 40 08 90 */ fmr f2, f1 -/* 80604F40 FC 60 08 90 */ fmr f3, f1 -/* 80604F44 4B A1 55 E5 */ bl fopAcM_SetMin__FP10fopAc_ac_cfff -/* 80604F48 7F C3 F3 78 */ mr r3, r30 -/* 80604F4C C0 3F 00 2C */ lfs f1, 0x2c(r31) -/* 80604F50 FC 40 08 90 */ fmr f2, f1 -/* 80604F54 FC 60 08 90 */ fmr f3, f1 -/* 80604F58 4B A1 55 E1 */ bl fopAcM_SetMax__FP10fopAc_ac_cfff -/* 80604F5C 38 00 03 E8 */ li r0, 0x3e8 -/* 80604F60 B0 1E 05 62 */ sth r0, 0x562(r30) -/* 80604F64 B0 1E 05 60 */ sth r0, 0x560(r30) -/* 80604F68 38 00 00 00 */ li r0, 0 -/* 80604F6C 90 01 00 08 */ stw r0, 8(r1) -/* 80604F70 38 7E 06 E4 */ addi r3, r30, 0x6e4 -/* 80604F74 38 9E 04 D0 */ addi r4, r30, 0x4d0 -/* 80604F78 38 BE 04 BC */ addi r5, r30, 0x4bc -/* 80604F7C 7F C6 F3 78 */ mr r6, r30 -/* 80604F80 38 E0 00 01 */ li r7, 1 -/* 80604F84 39 1E 06 A4 */ addi r8, r30, 0x6a4 -/* 80604F88 39 3E 04 F8 */ addi r9, r30, 0x4f8 -/* 80604F8C 39 40 00 00 */ li r10, 0 -/* 80604F90 4B A7 12 B9 */ bl Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz -/* 80604F94 38 7E 06 A4 */ addi r3, r30, 0x6a4 -/* 80604F98 C0 3F 00 08 */ lfs f1, 8(r31) -/* 80604F9C FC 40 08 90 */ fmr f2, f1 -/* 80604FA0 4B A7 0F B9 */ bl SetWall__12dBgS_AcchCirFff -/* 80604FA4 38 7E 05 B8 */ addi r3, r30, 0x5b8 -/* 80604FA8 38 9E 04 D0 */ addi r4, r30, 0x4d0 -/* 80604FAC 38 BE 05 38 */ addi r5, r30, 0x538 -/* 80604FB0 38 C0 00 03 */ li r6, 3 -/* 80604FB4 38 E0 00 01 */ li r7, 1 -/* 80604FB8 4B CB C0 DD */ bl init__15Z2CreatureEnemyFP3VecP3VecUcUc -/* 80604FBC 38 1E 05 B8 */ addi r0, r30, 0x5b8 -/* 80604FC0 90 1E 0C AC */ stw r0, 0xcac(r30) -/* 80604FC4 C0 1F 00 48 */ lfs f0, 0x48(r31) -/* 80604FC8 D0 1E 05 30 */ stfs f0, 0x530(r30) -/* 80604FCC 38 00 00 00 */ li r0, 0 -/* 80604FD0 B0 1E 06 6E */ sth r0, 0x66e(r30) -/* 80604FD4 38 7E 08 BC */ addi r3, r30, 0x8bc -/* 80604FD8 38 80 00 FA */ li r4, 0xfa -/* 80604FDC 38 A0 00 00 */ li r5, 0 -/* 80604FE0 7F C6 F3 78 */ mr r6, r30 -/* 80604FE4 4B A7 E8 7D */ bl Init__9dCcD_SttsFiiP10fopAc_ac_c -/* 80604FE8 38 7E 0B 68 */ addi r3, r30, 0xb68 -/* 80604FEC 3C 80 80 60 */ lis r4, cc_cyl_src@ha /* 0x80605514@ha */ -/* 80604FF0 38 84 55 14 */ addi r4, r4, cc_cyl_src@l /* 0x80605514@l */ -/* 80604FF4 4B A7 F8 C1 */ bl Set__8dCcD_CylFRC11dCcD_SrcCyl -/* 80604FF8 38 1E 08 BC */ addi r0, r30, 0x8bc -/* 80604FFC 90 1E 0B AC */ stw r0, 0xbac(r30) -/* 80605000 7F C3 F3 78 */ mr r3, r30 -/* 80605004 4B FF FB 79 */ bl daB_GOS_Execute__FP11b_gos_class -lbl_80605008: -/* 80605008 7F A3 EB 78 */ mr r3, r29 -lbl_8060500C: -/* 8060500C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80605010 4B D5 D2 19 */ bl _restgpr_29 -/* 80605014 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80605018 7C 08 03 A6 */ mtlr r0 -/* 8060501C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80605020 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Delete__FP11b_gos_class.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Delete__FP11b_gos_class.s deleted file mode 100644 index 61fceca393..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Delete__FP11b_gos_class.s +++ /dev/null @@ -1,29 +0,0 @@ -lbl_80604CFC: -/* 80604CFC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80604D00 7C 08 02 A6 */ mflr r0 -/* 80604D04 90 01 00 14 */ stw r0, 0x14(r1) -/* 80604D08 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80604D0C 7C 7F 1B 78 */ mr r31, r3 -/* 80604D10 38 7F 05 AC */ addi r3, r31, 0x5ac -/* 80604D14 3C 80 80 60 */ lis r4, d_a_b_gos__stringBase0@ha /* 0x80605414@ha */ -/* 80604D18 38 84 54 14 */ addi r4, r4, d_a_b_gos__stringBase0@l /* 0x80605414@l */ -/* 80604D1C 4B A2 82 ED */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc -/* 80604D20 88 1F 0C C8 */ lbz r0, 0xcc8(r31) -/* 80604D24 28 00 00 00 */ cmplwi r0, 0 -/* 80604D28 41 82 00 10 */ beq lbl_80604D38 -/* 80604D2C 38 00 00 00 */ li r0, 0 -/* 80604D30 3C 60 80 60 */ lis r3, data_8060560C@ha /* 0x8060560C@ha */ -/* 80604D34 98 03 56 0C */ stb r0, data_8060560C@l(r3) /* 0x8060560C@l */ -lbl_80604D38: -/* 80604D38 80 1F 00 F0 */ lwz r0, 0xf0(r31) -/* 80604D3C 28 00 00 00 */ cmplwi r0, 0 -/* 80604D40 41 82 00 0C */ beq lbl_80604D4C -/* 80604D44 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 80604D48 4B A0 C5 C9 */ bl stopZelAnime__16mDoExt_McaMorfSOFv -lbl_80604D4C: -/* 80604D4C 38 60 00 01 */ li r3, 1 -/* 80604D50 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80604D54 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80604D58 7C 08 03 A6 */ mtlr r0 -/* 80604D5C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80604D60 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Draw__FP11b_gos_class.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Draw__FP11b_gos_class.s deleted file mode 100644 index 5f1eb55661..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Draw__FP11b_gos_class.s +++ /dev/null @@ -1,54 +0,0 @@ -lbl_8060429C: -/* 8060429C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 806042A0 7C 08 02 A6 */ mflr r0 -/* 806042A4 90 01 00 34 */ stw r0, 0x34(r1) -/* 806042A8 39 61 00 30 */ addi r11, r1, 0x30 -/* 806042AC 4B D5 DF 31 */ bl _savegpr_29 -/* 806042B0 7C 7D 1B 78 */ mr r29, r3 -/* 806042B4 3C 60 80 60 */ lis r3, lit_3646@ha /* 0x806053C8@ha */ -/* 806042B8 3B E3 53 C8 */ addi r31, r3, lit_3646@l /* 0x806053C8@l */ -/* 806042BC 80 7D 05 B4 */ lwz r3, 0x5b4(r29) -/* 806042C0 83 C3 00 04 */ lwz r30, 4(r3) -/* 806042C4 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */ -/* 806042C8 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */ -/* 806042CC 38 80 00 00 */ li r4, 0 -/* 806042D0 38 BD 04 D0 */ addi r5, r29, 0x4d0 -/* 806042D4 38 DD 01 0C */ addi r6, r29, 0x10c -/* 806042D8 4B B9 F4 ED */ bl settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c -/* 806042DC 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */ -/* 806042E0 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */ -/* 806042E4 80 9E 00 04 */ lwz r4, 4(r30) -/* 806042E8 38 BD 01 0C */ addi r5, r29, 0x10c -/* 806042EC 4B BA 0A B5 */ bl setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c -/* 806042F0 80 7D 05 B4 */ lwz r3, 0x5b4(r29) -/* 806042F4 4B A0 CE CD */ bl entryDL__16mDoExt_McaMorfSOFv -/* 806042F8 C0 5D 04 D8 */ lfs f2, 0x4d8(r29) -/* 806042FC C0 1F 00 08 */ lfs f0, 8(r31) -/* 80604300 C0 7D 04 D4 */ lfs f3, 0x4d4(r29) -/* 80604304 EC 20 18 2A */ fadds f1, f0, f3 -/* 80604308 C0 1D 04 D0 */ lfs f0, 0x4d0(r29) -/* 8060430C D0 01 00 08 */ stfs f0, 8(r1) -/* 80604310 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80604314 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 80604318 80 7D 06 68 */ lwz r3, 0x668(r29) -/* 8060431C 38 80 00 01 */ li r4, 1 -/* 80604320 7F C5 F3 78 */ mr r5, r30 -/* 80604324 38 C1 00 08 */ addi r6, r1, 8 -/* 80604328 C0 3F 00 0C */ lfs f1, 0xc(r31) -/* 8060432C C0 5F 00 10 */ lfs f2, 0x10(r31) -/* 80604330 C0 9D 07 7C */ lfs f4, 0x77c(r29) -/* 80604334 38 FD 07 D4 */ addi r7, r29, 0x7d4 -/* 80604338 39 1D 01 0C */ addi r8, r29, 0x10c -/* 8060433C 39 20 00 00 */ li r9, 0 -/* 80604340 C0 BF 00 00 */ lfs f5, 0(r31) -/* 80604344 3D 40 80 42 */ lis r10, mSimpleTexObj__21dDlst_shadowControl_c@ha /* 0x804248D0@ha */ -/* 80604348 39 4A 48 D0 */ addi r10, r10, mSimpleTexObj__21dDlst_shadowControl_c@l /* 0x804248D0@l */ -/* 8060434C 4B A2 A5 C5 */ bl dComIfGd_setShadow__FUlScP8J3DModelP4cXyzffffR13cBgS_PolyInfoP12dKy_tevstr_csfP9_GXTexObj -/* 80604350 90 7D 06 68 */ stw r3, 0x668(r29) -/* 80604354 38 60 00 01 */ li r3, 1 -/* 80604358 39 61 00 30 */ addi r11, r1, 0x30 -/* 8060435C 4B D5 DE CD */ bl _restgpr_29 -/* 80604360 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80604364 7C 08 03 A6 */ mtlr r0 -/* 80604368 38 21 00 30 */ addi r1, r1, 0x30 -/* 8060436C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Execute__FP11b_gos_class.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Execute__FP11b_gos_class.s deleted file mode 100644 index 093879c7fa..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Execute__FP11b_gos_class.s +++ /dev/null @@ -1,98 +0,0 @@ -lbl_80604B7C: -/* 80604B7C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80604B80 7C 08 02 A6 */ mflr r0 -/* 80604B84 90 01 00 24 */ stw r0, 0x24(r1) -/* 80604B88 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80604B8C 7C 7F 1B 78 */ mr r31, r3 -/* 80604B90 A8 63 06 6C */ lha r3, 0x66c(r3) -/* 80604B94 38 03 00 01 */ addi r0, r3, 1 -/* 80604B98 B0 1F 06 6C */ sth r0, 0x66c(r31) -/* 80604B9C 80 1F 04 A4 */ lwz r0, 0x4a4(r31) -/* 80604BA0 90 01 00 08 */ stw r0, 8(r1) -/* 80604BA4 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */ -/* 80604BA8 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */ -/* 80604BAC 38 81 00 08 */ addi r4, r1, 8 -/* 80604BB0 4B A1 4C 49 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 80604BB4 3C 80 80 60 */ lis r4, boss@ha /* 0x80605608@ha */ -/* 80604BB8 90 64 56 08 */ stw r3, boss@l(r4) /* 0x80605608@l */ -/* 80604BBC 38 60 00 00 */ li r3, 0 -/* 80604BC0 38 00 00 04 */ li r0, 4 -/* 80604BC4 7C 09 03 A6 */ mtctr r0 -lbl_80604BC8: -/* 80604BC8 38 A3 06 8C */ addi r5, r3, 0x68c -/* 80604BCC 7C 9F 2A AE */ lhax r4, r31, r5 -/* 80604BD0 2C 04 00 00 */ cmpwi r4, 0 -/* 80604BD4 41 82 00 0C */ beq lbl_80604BE0 -/* 80604BD8 38 04 FF FF */ addi r0, r4, -1 -/* 80604BDC 7C 1F 2B 2E */ sthx r0, r31, r5 -lbl_80604BE0: -/* 80604BE0 38 63 00 02 */ addi r3, r3, 2 -/* 80604BE4 42 00 FF E4 */ bdnz lbl_80604BC8 -/* 80604BE8 A8 7F 06 94 */ lha r3, 0x694(r31) -/* 80604BEC 2C 03 00 00 */ cmpwi r3, 0 -/* 80604BF0 41 82 00 0C */ beq lbl_80604BFC -/* 80604BF4 38 03 FF FF */ addi r0, r3, -1 -/* 80604BF8 B0 1F 06 94 */ sth r0, 0x694(r31) -lbl_80604BFC: -/* 80604BFC 7F E3 FB 78 */ mr r3, r31 -/* 80604C00 4B FF FC E1 */ bl action__FP11b_gos_class -/* 80604C04 7F E3 FB 78 */ mr r3, r31 -/* 80604C08 4B FF F8 15 */ bl damage_check__FP11b_gos_class -/* 80604C0C 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80604C10 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80604C14 C0 3F 04 D0 */ lfs f1, 0x4d0(r31) -/* 80604C18 C0 5F 04 D4 */ lfs f2, 0x4d4(r31) -/* 80604C1C C0 7F 04 D8 */ lfs f3, 0x4d8(r31) -/* 80604C20 4B D4 1C C9 */ bl PSMTXTrans -/* 80604C24 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80604C28 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80604C2C A8 9F 04 E6 */ lha r4, 0x4e6(r31) -/* 80604C30 4B A0 78 05 */ bl mDoMtx_YrotM__FPA4_fs -/* 80604C34 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80604C38 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80604C3C A8 9F 04 E4 */ lha r4, 0x4e4(r31) -/* 80604C40 4B A0 77 5D */ bl mDoMtx_XrotM__FPA4_fs -/* 80604C44 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x8060561C@ha */ -/* 80604C48 38 63 56 1C */ addi r3, r3, l_HIO@l /* 0x8060561C@l */ -/* 80604C4C C0 23 00 08 */ lfs f1, 8(r3) -/* 80604C50 FC 40 08 90 */ fmr f2, f1 -/* 80604C54 FC 60 08 90 */ fmr f3, f1 -/* 80604C58 4B A0 81 E1 */ bl scaleM__14mDoMtx_stack_cFfff -/* 80604C5C 3C 60 80 60 */ lis r3, lit_3676@ha /* 0x806053D8@ha */ -/* 80604C60 C0 23 53 D8 */ lfs f1, lit_3676@l(r3) /* 0x806053D8@l */ -/* 80604C64 C0 5F 06 98 */ lfs f2, 0x698(r31) -/* 80604C68 C0 7F 06 9C */ lfs f3, 0x69c(r31) -/* 80604C6C 4B A0 81 31 */ bl transM__14mDoMtx_stack_cFfff -/* 80604C70 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 80604C74 80 83 00 04 */ lwz r4, 4(r3) -/* 80604C78 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80604C7C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80604C80 38 84 00 24 */ addi r4, r4, 0x24 -/* 80604C84 4B D4 18 2D */ bl PSMTXCopy -/* 80604C88 88 1F 04 E2 */ lbz r0, 0x4e2(r31) -/* 80604C8C 7C 03 07 74 */ extsb r3, r0 -/* 80604C90 4B A2 83 DD */ bl dComIfGp_getReverb__Fi -/* 80604C94 7C 65 1B 78 */ mr r5, r3 -/* 80604C98 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 80604C9C 38 80 00 00 */ li r4, 0 -/* 80604CA0 4B A0 C4 11 */ bl play__16mDoExt_McaMorfSOFUlSc -/* 80604CA4 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 80604CA8 4B A0 C5 45 */ bl modelCalc__16mDoExt_McaMorfSOFv -/* 80604CAC 38 7F 0C 8C */ addi r3, r31, 0xc8c -/* 80604CB0 3C 80 80 60 */ lis r4, lit_3711@ha /* 0x806053E8@ha */ -/* 80604CB4 C0 24 53 E8 */ lfs f1, lit_3711@l(r4) /* 0x806053E8@l */ -/* 80604CB8 4B C6 A5 49 */ bl SetR__8cM3dGCylFf -/* 80604CBC 38 7F 0C 8C */ addi r3, r31, 0xc8c -/* 80604CC0 38 9F 04 D0 */ addi r4, r31, 0x4d0 -/* 80604CC4 4B C6 A5 19 */ bl SetC__8cM3dGCylFRC4cXyz -/* 80604CC8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80604CCC 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80604CD0 38 63 23 3C */ addi r3, r3, 0x233c -/* 80604CD4 38 9F 0B 68 */ addi r4, r31, 0xb68 -/* 80604CD8 4B C5 FE D1 */ bl Set__4cCcSFP8cCcD_Obj -/* 80604CDC 38 60 00 01 */ li r3, 1 -/* 80604CE0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80604CE4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80604CE8 7C 08 03 A6 */ mtlr r0 -/* 80604CEC 38 21 00 20 */ addi r1, r1, 0x20 -/* 80604CF0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053A4.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053A4.s deleted file mode 100644 index ff9610b23c..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053A4.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_806053A4: -/* 806053A4 38 63 FF DC */ addi r3, r3, -36 -/* 806053A8 4B FF FF 08 */ b __dt__12dBgS_ObjAcchFv diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053AC.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053AC.s deleted file mode 100644 index 7524d59b1d..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053AC.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_806053AC: -/* 806053AC 38 63 FF EC */ addi r3, r3, -20 -/* 806053B0 4B FF FF 00 */ b __dt__12dBgS_ObjAcchFv diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/stick__FP11b_gos_class.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/stick__FP11b_gos_class.s deleted file mode 100644 index a2674e9a6f..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/stick__FP11b_gos_class.s +++ /dev/null @@ -1,132 +0,0 @@ -lbl_806046E0: -/* 806046E0 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 806046E4 7C 08 02 A6 */ mflr r0 -/* 806046E8 90 01 00 64 */ stw r0, 0x64(r1) -/* 806046EC 39 61 00 60 */ addi r11, r1, 0x60 -/* 806046F0 4B D5 DA E9 */ bl _savegpr_28 -/* 806046F4 7C 7D 1B 78 */ mr r29, r3 -/* 806046F8 3C 60 80 60 */ lis r3, lit_3646@ha /* 0x806053C8@ha */ -/* 806046FC 3B E3 53 C8 */ addi r31, r3, lit_3646@l /* 0x806053C8@l */ -/* 80604700 A8 1D 06 70 */ lha r0, 0x670(r29) -/* 80604704 2C 00 00 01 */ cmpwi r0, 1 -/* 80604708 41 82 00 3C */ beq lbl_80604744 -/* 8060470C 40 80 00 38 */ bge lbl_80604744 -/* 80604710 2C 00 00 00 */ cmpwi r0, 0 -/* 80604714 40 80 00 08 */ bge lbl_8060471C -/* 80604718 48 00 00 2C */ b lbl_80604744 -lbl_8060471C: -/* 8060471C 38 00 00 01 */ li r0, 1 -/* 80604720 B0 1D 06 70 */ sth r0, 0x670(r29) -/* 80604724 C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 80604728 D0 1D 05 2C */ stfs f0, 0x52c(r29) -/* 8060472C C0 3F 00 24 */ lfs f1, 0x24(r31) -/* 80604730 4B C6 32 25 */ bl cM_rndF__Ff -/* 80604734 FC 00 08 1E */ fctiwz f0, f1 -/* 80604738 D8 01 00 48 */ stfd f0, 0x48(r1) -/* 8060473C 80 01 00 4C */ lwz r0, 0x4c(r1) -/* 80604740 B0 1D 06 A0 */ sth r0, 0x6a0(r29) -lbl_80604744: -/* 80604744 38 7D 05 2C */ addi r3, r29, 0x52c -/* 80604748 C0 3F 00 2C */ lfs f1, 0x2c(r31) -/* 8060474C C0 5F 00 00 */ lfs f2, 0(r31) -/* 80604750 FC 60 10 90 */ fmr f3, f2 -/* 80604754 4B C6 B2 E9 */ bl cLib_addCalc2__FPffff -/* 80604758 3C 60 80 60 */ lis r3, boss@ha /* 0x80605608@ha */ -/* 8060475C 38 63 56 08 */ addi r3, r3, boss@l /* 0x80605608@l */ -/* 80604760 80 63 00 00 */ lwz r3, 0(r3) -/* 80604764 80 63 05 B4 */ lwz r3, 0x5b4(r3) -/* 80604768 83 C3 00 04 */ lwz r30, 4(r3) -/* 8060476C 80 7E 00 84 */ lwz r3, 0x84(r30) -/* 80604770 80 83 00 0C */ lwz r4, 0xc(r3) -/* 80604774 80 1D 06 60 */ lwz r0, 0x660(r29) -/* 80604778 54 00 18 38 */ slwi r0, r0, 3 -/* 8060477C 3C 60 80 60 */ lis r3, j_info@ha /* 0x8060541C@ha */ -/* 80604780 38 63 54 1C */ addi r3, r3, j_info@l /* 0x8060541C@l */ -/* 80604784 7C 03 02 AE */ lhax r0, r3, r0 -/* 80604788 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 8060478C 1C 00 00 30 */ mulli r0, r0, 0x30 -/* 80604790 7C 64 02 14 */ add r3, r4, r0 -/* 80604794 3C 80 80 45 */ lis r4, calc_mtx@ha /* 0x80450768@ha */ -/* 80604798 38 84 07 68 */ addi r4, r4, calc_mtx@l /* 0x80450768@l */ -/* 8060479C 80 84 00 00 */ lwz r4, 0(r4) -/* 806047A0 4B D4 1D 11 */ bl PSMTXCopy -/* 806047A4 C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 806047A8 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 806047AC D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 806047B0 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 806047B4 38 61 00 38 */ addi r3, r1, 0x38 -/* 806047B8 38 81 00 2C */ addi r4, r1, 0x2c -/* 806047BC 4B C6 C7 31 */ bl MtxPosition__FP4cXyzP4cXyz -/* 806047C0 3C 60 80 60 */ lis r3, j_info@ha /* 0x8060541C@ha */ -/* 806047C4 38 83 54 1C */ addi r4, r3, j_info@l /* 0x8060541C@l */ -/* 806047C8 3B 84 00 04 */ addi r28, r4, 4 -/* 806047CC 80 1D 06 60 */ lwz r0, 0x660(r29) -/* 806047D0 54 00 18 38 */ slwi r0, r0, 3 -/* 806047D4 7C 3C 04 2E */ lfsx f1, r28, r0 -/* 806047D8 C0 1F 00 00 */ lfs f0, 0(r31) -/* 806047DC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 806047E0 40 80 00 80 */ bge lbl_80604860 -/* 806047E4 80 7E 00 84 */ lwz r3, 0x84(r30) -/* 806047E8 80 63 00 0C */ lwz r3, 0xc(r3) -/* 806047EC 7C 04 02 AE */ lhax r0, r4, r0 -/* 806047F0 54 00 C6 3E */ rlwinm r0, r0, 0x18, 0x18, 0x1f -/* 806047F4 1C 00 00 30 */ mulli r0, r0, 0x30 -/* 806047F8 7C 63 02 14 */ add r3, r3, r0 -/* 806047FC 3C 80 80 45 */ lis r4, calc_mtx@ha /* 0x80450768@ha */ -/* 80604800 38 84 07 68 */ addi r4, r4, calc_mtx@l /* 0x80450768@l */ -/* 80604804 80 84 00 00 */ lwz r4, 0(r4) -/* 80604808 4B D4 1C A9 */ bl PSMTXCopy -/* 8060480C C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 80604810 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 80604814 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80604818 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8060481C 38 61 00 38 */ addi r3, r1, 0x38 -/* 80604820 38 81 00 20 */ addi r4, r1, 0x20 -/* 80604824 4B C6 C6 C9 */ bl MtxPosition__FP4cXyzP4cXyz -/* 80604828 38 61 00 14 */ addi r3, r1, 0x14 -/* 8060482C 38 81 00 20 */ addi r4, r1, 0x20 -/* 80604830 38 A1 00 2C */ addi r5, r1, 0x2c -/* 80604834 4B C6 23 01 */ bl __mi__4cXyzCFRC3Vec -/* 80604838 38 61 00 08 */ addi r3, r1, 8 -/* 8060483C 38 81 00 14 */ addi r4, r1, 0x14 -/* 80604840 80 1D 06 60 */ lwz r0, 0x660(r29) -/* 80604844 54 00 18 38 */ slwi r0, r0, 3 -/* 80604848 7C 3C 04 2E */ lfsx f1, r28, r0 -/* 8060484C 4B C6 23 39 */ bl __ml__4cXyzCFf -/* 80604850 38 61 00 2C */ addi r3, r1, 0x2c -/* 80604854 38 81 00 08 */ addi r4, r1, 8 -/* 80604858 7C 65 1B 78 */ mr r5, r3 -/* 8060485C 4B D4 28 35 */ bl PSVECAdd -lbl_80604860: -/* 80604860 38 7D 04 D0 */ addi r3, r29, 0x4d0 -/* 80604864 C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 80604868 C0 5F 00 00 */ lfs f2, 0(r31) -/* 8060486C C0 7D 05 2C */ lfs f3, 0x52c(r29) -/* 80604870 4B C6 B1 CD */ bl cLib_addCalc2__FPffff -/* 80604874 38 7D 04 D4 */ addi r3, r29, 0x4d4 -/* 80604878 C0 21 00 30 */ lfs f1, 0x30(r1) -/* 8060487C C0 5F 00 00 */ lfs f2, 0(r31) -/* 80604880 C0 7D 05 2C */ lfs f3, 0x52c(r29) -/* 80604884 4B C6 B1 B9 */ bl cLib_addCalc2__FPffff -/* 80604888 38 7D 04 D8 */ addi r3, r29, 0x4d8 -/* 8060488C C0 21 00 34 */ lfs f1, 0x34(r1) -/* 80604890 C0 5F 00 00 */ lfs f2, 0(r31) -/* 80604894 C0 7D 05 2C */ lfs f3, 0x52c(r29) -/* 80604898 4B C6 B1 A5 */ bl cLib_addCalc2__FPffff -/* 8060489C 38 7D 04 DE */ addi r3, r29, 0x4de -/* 806048A0 3C 80 80 60 */ lis r4, boss@ha /* 0x80605608@ha */ -/* 806048A4 38 84 56 08 */ addi r4, r4, boss@l /* 0x80605608@l */ -/* 806048A8 80 84 00 00 */ lwz r4, 0(r4) -/* 806048AC A8 84 04 E6 */ lha r4, 0x4e6(r4) -/* 806048B0 A8 1D 06 A0 */ lha r0, 0x6a0(r29) -/* 806048B4 7C 04 02 14 */ add r0, r4, r0 -/* 806048B8 7C 04 07 34 */ extsh r4, r0 -/* 806048BC 38 A0 00 01 */ li r5, 1 -/* 806048C0 38 C0 04 00 */ li r6, 0x400 -/* 806048C4 4B C6 BD 45 */ bl cLib_addCalcAngleS2__FPssss -/* 806048C8 39 61 00 60 */ addi r11, r1, 0x60 -/* 806048CC 4B D5 D9 59 */ bl _restgpr_28 -/* 806048D0 80 01 00 64 */ lwz r0, 0x64(r1) -/* 806048D4 7C 08 03 A6 */ mtlr r0 -/* 806048D8 38 21 00 60 */ addi r1, r1, 0x60 -/* 806048DC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/useHeapInit__FP10fopAc_ac_c.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/useHeapInit__FP10fopAc_ac_c.s deleted file mode 100644 index 82b49e9215..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/useHeapInit__FP10fopAc_ac_c.s +++ /dev/null @@ -1,67 +0,0 @@ -lbl_80604D64: -/* 80604D64 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80604D68 7C 08 02 A6 */ mflr r0 -/* 80604D6C 90 01 00 34 */ stw r0, 0x34(r1) -/* 80604D70 39 61 00 30 */ addi r11, r1, 0x30 -/* 80604D74 4B D5 D4 65 */ bl _savegpr_28 -/* 80604D78 7C 7F 1B 78 */ mr r31, r3 -/* 80604D7C 38 60 00 58 */ li r3, 0x58 -/* 80604D80 4B CC 9E CD */ bl __nw__FUl -/* 80604D84 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80604D88 41 82 00 94 */ beq lbl_80604E1C -/* 80604D8C 3C 60 80 60 */ lis r3, d_a_b_gos__stringBase0@ha /* 0x80605414@ha */ -/* 80604D90 38 63 54 14 */ addi r3, r3, d_a_b_gos__stringBase0@l /* 0x80605414@l */ -/* 80604D94 38 80 00 06 */ li r4, 6 -/* 80604D98 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80604D9C 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80604DA0 3F 85 00 02 */ addis r28, r5, 2 -/* 80604DA4 3B 9C C2 F8 */ addi r28, r28, -15624 -/* 80604DA8 7F 85 E3 78 */ mr r5, r28 -/* 80604DAC 38 C0 00 80 */ li r6, 0x80 -/* 80604DB0 4B A3 75 3D */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 80604DB4 7C 7D 1B 78 */ mr r29, r3 -/* 80604DB8 3C 60 80 60 */ lis r3, d_a_b_gos__stringBase0@ha /* 0x80605414@ha */ -/* 80604DBC 38 63 54 14 */ addi r3, r3, d_a_b_gos__stringBase0@l /* 0x80605414@l */ -/* 80604DC0 38 80 00 09 */ li r4, 9 -/* 80604DC4 7F 85 E3 78 */ mr r5, r28 -/* 80604DC8 38 C0 00 80 */ li r6, 0x80 -/* 80604DCC 4B A3 75 21 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 80604DD0 7C 64 1B 78 */ mr r4, r3 -/* 80604DD4 38 1F 05 B8 */ addi r0, r31, 0x5b8 -/* 80604DD8 90 01 00 08 */ stw r0, 8(r1) -/* 80604DDC 3C 00 00 08 */ lis r0, 8 -/* 80604DE0 90 01 00 0C */ stw r0, 0xc(r1) -/* 80604DE4 3C 60 11 00 */ lis r3, 0x1100 /* 0x11000084@ha */ -/* 80604DE8 38 03 00 84 */ addi r0, r3, 0x0084 /* 0x11000084@l */ -/* 80604DEC 90 01 00 10 */ stw r0, 0x10(r1) -/* 80604DF0 7F C3 F3 78 */ mr r3, r30 -/* 80604DF4 38 A0 00 00 */ li r5, 0 -/* 80604DF8 38 C0 00 00 */ li r6, 0 -/* 80604DFC 7F A7 EB 78 */ mr r7, r29 -/* 80604E00 39 00 00 02 */ li r8, 2 -/* 80604E04 3D 20 80 60 */ lis r9, lit_3646@ha /* 0x806053C8@ha */ -/* 80604E08 C0 29 53 C8 */ lfs f1, lit_3646@l(r9) /* 0x806053C8@l */ -/* 80604E0C 39 20 00 00 */ li r9, 0 -/* 80604E10 39 40 FF FF */ li r10, -1 -/* 80604E14 4B A0 B9 BD */ bl __ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl -/* 80604E18 7C 7E 1B 78 */ mr r30, r3 -lbl_80604E1C: -/* 80604E1C 93 DF 05 B4 */ stw r30, 0x5b4(r31) -/* 80604E20 80 7F 05 B4 */ lwz r3, 0x5b4(r31) -/* 80604E24 28 03 00 00 */ cmplwi r3, 0 -/* 80604E28 41 82 00 10 */ beq lbl_80604E38 -/* 80604E2C 80 03 00 04 */ lwz r0, 4(r3) -/* 80604E30 28 00 00 00 */ cmplwi r0, 0 -/* 80604E34 40 82 00 0C */ bne lbl_80604E40 -lbl_80604E38: -/* 80604E38 38 60 00 00 */ li r3, 0 -/* 80604E3C 48 00 00 08 */ b lbl_80604E44 -lbl_80604E40: -/* 80604E40 38 60 00 01 */ li r3, 1 -lbl_80604E44: -/* 80604E44 39 61 00 30 */ addi r11, r1, 0x30 -/* 80604E48 4B D5 D3 DD */ bl _restgpr_28 -/* 80604E4C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80604E50 7C 08 03 A6 */ mtlr r0 -/* 80604E54 38 21 00 30 */ addi r1, r1, 0x30 -/* 80604E58 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/wait__FP11b_gos_class.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/wait__FP11b_gos_class.s deleted file mode 100644 index c86f1b9371..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/wait__FP11b_gos_class.s +++ /dev/null @@ -1,50 +0,0 @@ -lbl_80604420: -/* 80604420 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80604424 7C 08 02 A6 */ mflr r0 -/* 80604428 90 01 00 24 */ stw r0, 0x24(r1) -/* 8060442C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80604430 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80604434 7C 7E 1B 78 */ mr r30, r3 -/* 80604438 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x806053C8@ha */ -/* 8060443C 3B E4 53 C8 */ addi r31, r4, lit_3646@l /* 0x806053C8@l */ -/* 80604440 C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 80604444 D0 03 05 2C */ stfs f0, 0x52c(r3) -/* 80604448 A8 03 06 70 */ lha r0, 0x670(r3) -/* 8060444C 2C 00 00 01 */ cmpwi r0, 1 -/* 80604450 41 82 00 54 */ beq lbl_806044A4 -/* 80604454 40 80 00 6C */ bge lbl_806044C0 -/* 80604458 2C 00 00 00 */ cmpwi r0, 0 -/* 8060445C 40 80 00 08 */ bge lbl_80604464 -/* 80604460 48 00 00 60 */ b lbl_806044C0 -lbl_80604464: -/* 80604464 38 80 00 06 */ li r4, 6 -/* 80604468 C0 3F 00 18 */ lfs f1, 0x18(r31) -/* 8060446C 38 A0 00 02 */ li r5, 2 -/* 80604470 C0 5F 00 00 */ lfs f2, 0(r31) -/* 80604474 4B FF FE FD */ bl anm_init__FP11b_gos_classifUcf -/* 80604478 38 00 00 01 */ li r0, 1 -/* 8060447C B0 1E 06 70 */ sth r0, 0x670(r30) -/* 80604480 C0 3F 00 1C */ lfs f1, 0x1c(r31) -/* 80604484 4B C6 34 D1 */ bl cM_rndF__Ff -/* 80604488 C0 1F 00 1C */ lfs f0, 0x1c(r31) -/* 8060448C EC 00 08 2A */ fadds f0, f0, f1 -/* 80604490 FC 00 00 1E */ fctiwz f0, f0 -/* 80604494 D8 01 00 08 */ stfd f0, 8(r1) -/* 80604498 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8060449C B0 1E 06 8C */ sth r0, 0x68c(r30) -/* 806044A0 48 00 00 20 */ b lbl_806044C0 -lbl_806044A4: -/* 806044A4 A8 1E 06 8C */ lha r0, 0x68c(r30) -/* 806044A8 2C 00 00 00 */ cmpwi r0, 0 -/* 806044AC 40 82 00 14 */ bne lbl_806044C0 -/* 806044B0 38 00 00 01 */ li r0, 1 -/* 806044B4 B0 1E 06 6E */ sth r0, 0x66e(r30) -/* 806044B8 38 00 00 00 */ li r0, 0 -/* 806044BC B0 1E 06 70 */ sth r0, 0x670(r30) -lbl_806044C0: -/* 806044C0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 806044C4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 806044C8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 806044CC 7C 08 03 A6 */ mtlr r0 -/* 806044D0 38 21 00 20 */ addi r1, r1, 0x20 -/* 806044D4 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/walk__FP11b_gos_class.s b/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/walk__FP11b_gos_class.s deleted file mode 100644 index 576d310bbd..0000000000 --- a/asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/walk__FP11b_gos_class.s +++ /dev/null @@ -1,71 +0,0 @@ -lbl_806044D8: -/* 806044D8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 806044DC 7C 08 02 A6 */ mflr r0 -/* 806044E0 90 01 00 34 */ stw r0, 0x34(r1) -/* 806044E4 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 806044E8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, 0 /* qr0 */ -/* 806044EC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 806044F0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 806044F4 7C 7E 1B 78 */ mr r30, r3 -/* 806044F8 3C 80 80 60 */ lis r4, lit_3646@ha /* 0x806053C8@ha */ -/* 806044FC 3B E4 53 C8 */ addi r31, r4, lit_3646@l /* 0x806053C8@l */ -/* 80604500 C3 FF 00 10 */ lfs f31, 0x10(r31) -/* 80604504 A8 03 06 70 */ lha r0, 0x670(r3) -/* 80604508 2C 00 00 01 */ cmpwi r0, 1 -/* 8060450C 41 82 00 6C */ beq lbl_80604578 -/* 80604510 40 80 00 8C */ bge lbl_8060459C -/* 80604514 2C 00 00 00 */ cmpwi r0, 0 -/* 80604518 40 80 00 08 */ bge lbl_80604520 -/* 8060451C 48 00 00 80 */ b lbl_8060459C -lbl_80604520: -/* 80604520 38 80 00 04 */ li r4, 4 -/* 80604524 C0 3F 00 18 */ lfs f1, 0x18(r31) -/* 80604528 38 A0 00 02 */ li r5, 2 -/* 8060452C C0 5F 00 00 */ lfs f2, 0(r31) -/* 80604530 4B FF FE 41 */ bl anm_init__FP11b_gos_classifUcf -/* 80604534 38 00 00 01 */ li r0, 1 -/* 80604538 B0 1E 06 70 */ sth r0, 0x670(r30) -/* 8060453C C0 3F 00 20 */ lfs f1, 0x20(r31) -/* 80604540 4B C6 34 15 */ bl cM_rndF__Ff -/* 80604544 C0 1F 00 20 */ lfs f0, 0x20(r31) -/* 80604548 EC 00 08 2A */ fadds f0, f0, f1 -/* 8060454C FC 00 00 1E */ fctiwz f0, f0 -/* 80604550 D8 01 00 08 */ stfd f0, 8(r1) -/* 80604554 80 01 00 0C */ lwz r0, 0xc(r1) -/* 80604558 B0 1E 06 8C */ sth r0, 0x68c(r30) -/* 8060455C C0 3F 00 24 */ lfs f1, 0x24(r31) -/* 80604560 4B C6 33 F5 */ bl cM_rndF__Ff -/* 80604564 FC 00 08 1E */ fctiwz f0, f1 -/* 80604568 D8 01 00 10 */ stfd f0, 0x10(r1) -/* 8060456C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80604570 B0 1E 06 80 */ sth r0, 0x680(r30) -/* 80604574 48 00 00 28 */ b lbl_8060459C -lbl_80604578: -/* 80604578 3C 60 80 60 */ lis r3, l_HIO@ha /* 0x8060561C@ha */ -/* 8060457C 38 63 56 1C */ addi r3, r3, l_HIO@l /* 0x8060561C@l */ -/* 80604580 C3 E3 00 0C */ lfs f31, 0xc(r3) -/* 80604584 A8 1E 06 8C */ lha r0, 0x68c(r30) -/* 80604588 2C 00 00 00 */ cmpwi r0, 0 -/* 8060458C 40 82 00 10 */ bne lbl_8060459C -/* 80604590 38 00 00 00 */ li r0, 0 -/* 80604594 B0 1E 06 6E */ sth r0, 0x66e(r30) -/* 80604598 B0 1E 06 70 */ sth r0, 0x670(r30) -lbl_8060459C: -/* 8060459C 38 7E 05 2C */ addi r3, r30, 0x52c -/* 806045A0 FC 20 F8 90 */ fmr f1, f31 -/* 806045A4 C0 5F 00 00 */ lfs f2, 0(r31) -/* 806045A8 FC 60 10 90 */ fmr f3, f2 -/* 806045AC 4B C6 B4 91 */ bl cLib_addCalc2__FPffff -/* 806045B0 38 7E 04 DE */ addi r3, r30, 0x4de -/* 806045B4 A8 9E 06 80 */ lha r4, 0x680(r30) -/* 806045B8 38 A0 00 01 */ li r5, 1 -/* 806045BC 38 C0 08 00 */ li r6, 0x800 -/* 806045C0 4B C6 C0 49 */ bl cLib_addCalcAngleS2__FPssss -/* 806045C4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, 0 /* qr0 */ -/* 806045C8 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 806045CC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 806045D0 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 806045D4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 806045D8 7C 08 03 A6 */ mtlr r0 -/* 806045DC 38 21 00 30 */ addi r1, r1, 0x30 -/* 806045E0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/CreateInit__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/CreateInit__12daShopItem_cFv.s deleted file mode 100644 index 4fc869c120..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/CreateInit__12daShopItem_cFv.s +++ /dev/null @@ -1,83 +0,0 @@ -lbl_8059EC1C: -/* 8059EC1C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059EC20 7C 08 02 A6 */ mflr r0 -/* 8059EC24 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059EC28 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059EC2C 93 C1 00 08 */ stw r30, 8(r1) -/* 8059EC30 7C 7F 1B 78 */ mr r31, r3 -/* 8059EC34 3C 80 80 5A */ lis r4, m_cullfar_max__12daShopItem_c@ha /* 0x8059F438@ha */ -/* 8059EC38 3B C4 F4 38 */ addi r30, r4, m_cullfar_max__12daShopItem_c@l /* 0x8059F438@l */ -/* 8059EC3C 38 1F 09 2C */ addi r0, r31, 0x92c -/* 8059EC40 90 03 05 04 */ stw r0, 0x504(r3) -/* 8059EC44 C0 3E 00 34 */ lfs f1, 0x34(r30) -/* 8059EC48 C0 5E 00 38 */ lfs f2, 0x38(r30) -/* 8059EC4C FC 60 08 90 */ fmr f3, f1 -/* 8059EC50 C0 9E 00 3C */ lfs f4, 0x3c(r30) -/* 8059EC54 C0 BE 00 40 */ lfs f5, 0x40(r30) -/* 8059EC58 FC C0 20 90 */ fmr f6, f4 -/* 8059EC5C 4B A7 B8 ED */ bl fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff -/* 8059EC60 3C 60 80 45 */ lis r3, mSystemFar__14mDoLib_clipper@ha /* 0x80450C70@ha */ -/* 8059EC64 C0 23 0C 70 */ lfs f1, mSystemFar__14mDoLib_clipper@l(r3) /* 0x80450C70@l */ -/* 8059EC68 C0 1E 00 44 */ lfs f0, 0x44(r30) -/* 8059EC6C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8059EC70 40 81 00 10 */ ble lbl_8059EC80 -/* 8059EC74 C0 1E 00 48 */ lfs f0, 0x48(r30) -/* 8059EC78 EC 00 08 24 */ fdivs f0, f0, f1 -/* 8059EC7C D0 1F 05 20 */ stfs f0, 0x520(r31) -lbl_8059EC80: -/* 8059EC80 7F E3 FB 78 */ mr r3, r31 -/* 8059EC84 4B A9 8D F1 */ bl show__12daItemBase_cFv -/* 8059EC88 3C 60 80 5A */ lis r3, d_a_shop_item__stringBase0@ha /* 0x8059F48C@ha */ -/* 8059EC8C 38 63 F4 8C */ addi r3, r3, d_a_shop_item__stringBase0@l /* 0x8059F48C@l */ -/* 8059EC90 38 63 00 08 */ addi r3, r3, 8 -/* 8059EC94 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059EC98 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059EC9C 38 84 4E 00 */ addi r4, r4, 0x4e00 -/* 8059ECA0 4B DC 9C F5 */ bl strcmp -/* 8059ECA4 2C 03 00 00 */ cmpwi r3, 0 -/* 8059ECA8 40 82 00 48 */ bne lbl_8059ECF0 -/* 8059ECAC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059ECB0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059ECB4 88 03 4E 0A */ lbz r0, 0x4e0a(r3) -/* 8059ECB8 2C 00 00 01 */ cmpwi r0, 1 -/* 8059ECBC 40 82 00 34 */ bne lbl_8059ECF0 -/* 8059ECC0 88 1F 09 64 */ lbz r0, 0x964(r31) -/* 8059ECC4 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059ECC8 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059ECCC 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059ECD0 7C 60 22 14 */ add r3, r0, r4 -/* 8059ECD4 C0 23 00 18 */ lfs f1, 0x18(r3) -/* 8059ECD8 C0 1E 00 4C */ lfs f0, 0x4c(r30) -/* 8059ECDC EC 00 00 72 */ fmuls f0, f0, f1 -/* 8059ECE0 D0 1F 04 EC */ stfs f0, 0x4ec(r31) -/* 8059ECE4 D0 1F 04 F0 */ stfs f0, 0x4f0(r31) -/* 8059ECE8 D0 1F 04 F4 */ stfs f0, 0x4f4(r31) -/* 8059ECEC 48 00 00 28 */ b lbl_8059ED14 -lbl_8059ECF0: -/* 8059ECF0 88 1F 09 64 */ lbz r0, 0x964(r31) -/* 8059ECF4 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059ECF8 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059ECFC 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059ED00 7C 60 22 14 */ add r3, r0, r4 -/* 8059ED04 C0 03 00 18 */ lfs f0, 0x18(r3) -/* 8059ED08 D0 1F 04 EC */ stfs f0, 0x4ec(r31) -/* 8059ED0C D0 1F 04 F0 */ stfs f0, 0x4f0(r31) -/* 8059ED10 D0 1F 04 F4 */ stfs f0, 0x4f4(r31) -lbl_8059ED14: -/* 8059ED14 C0 1F 04 D0 */ lfs f0, 0x4d0(r31) -/* 8059ED18 D0 1F 04 A8 */ stfs f0, 0x4a8(r31) -/* 8059ED1C C0 1F 04 D4 */ lfs f0, 0x4d4(r31) -/* 8059ED20 D0 1F 04 AC */ stfs f0, 0x4ac(r31) -/* 8059ED24 C0 1F 04 D8 */ lfs f0, 0x4d8(r31) -/* 8059ED28 D0 1F 04 B0 */ stfs f0, 0x4b0(r31) -/* 8059ED2C 7F E3 FB 78 */ mr r3, r31 -/* 8059ED30 48 00 00 29 */ bl set_mtx__12daShopItem_cFv -/* 8059ED34 38 00 00 00 */ li r0, 0 -/* 8059ED38 80 7F 05 74 */ lwz r3, 0x574(r31) -/* 8059ED3C 90 03 00 14 */ stw r0, 0x14(r3) -/* 8059ED40 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059ED44 83 C1 00 08 */ lwz r30, 8(r1) -/* 8059ED48 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059ED4C 7C 08 03 A6 */ mtlr r0 -/* 8059ED50 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059ED54 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__12dBgS_ObjAcchFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__12dBgS_ObjAcchFv.s deleted file mode 100644 index 4b68a74a95..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__12dBgS_ObjAcchFv.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_8059F324: -/* 8059F324 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059F328 7C 08 02 A6 */ mflr r0 -/* 8059F32C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059F330 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059F334 93 C1 00 08 */ stw r30, 8(r1) -/* 8059F338 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8059F33C 7C 9F 23 78 */ mr r31, r4 -/* 8059F340 41 82 00 38 */ beq lbl_8059F378 -/* 8059F344 3C 80 80 5A */ lis r4, __vt__12dBgS_ObjAcch@ha /* 0x8059F504@ha */ -/* 8059F348 38 84 F5 04 */ addi r4, r4, __vt__12dBgS_ObjAcch@l /* 0x8059F504@l */ -/* 8059F34C 90 9E 00 10 */ stw r4, 0x10(r30) -/* 8059F350 38 04 00 0C */ addi r0, r4, 0xc -/* 8059F354 90 1E 00 14 */ stw r0, 0x14(r30) -/* 8059F358 38 04 00 18 */ addi r0, r4, 0x18 -/* 8059F35C 90 1E 00 24 */ stw r0, 0x24(r30) -/* 8059F360 38 80 00 00 */ li r4, 0 -/* 8059F364 4B AD 6C 31 */ bl __dt__9dBgS_AcchFv -/* 8059F368 7F E0 07 35 */ extsh. r0, r31 -/* 8059F36C 40 81 00 0C */ ble lbl_8059F378 -/* 8059F370 7F C3 F3 78 */ mr r3, r30 -/* 8059F374 4B D2 F9 C9 */ bl __dl__FPv -lbl_8059F378: -/* 8059F378 7F C3 F3 78 */ mr r3, r30 -/* 8059F37C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059F380 83 C1 00 08 */ lwz r30, 8(r1) -/* 8059F384 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059F388 7C 08 03 A6 */ mtlr r0 -/* 8059F38C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059F390 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGAabFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGAabFv.s deleted file mode 100644 index 8c59fd9e07..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGAabFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_8059F2DC: -/* 8059F2DC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059F2E0 7C 08 02 A6 */ mflr r0 -/* 8059F2E4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059F2E8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059F2EC 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8059F2F0 41 82 00 1C */ beq lbl_8059F30C -/* 8059F2F4 3C A0 80 5A */ lis r5, __vt__8cM3dGAab@ha /* 0x8059F4F8@ha */ -/* 8059F2F8 38 05 F4 F8 */ addi r0, r5, __vt__8cM3dGAab@l /* 0x8059F4F8@l */ -/* 8059F2FC 90 1F 00 18 */ stw r0, 0x18(r31) -/* 8059F300 7C 80 07 35 */ extsh. r0, r4 -/* 8059F304 40 81 00 08 */ ble lbl_8059F30C -/* 8059F308 4B D2 FA 35 */ bl __dl__FPv -lbl_8059F30C: -/* 8059F30C 7F E3 FB 78 */ mr r3, r31 -/* 8059F310 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059F314 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059F318 7C 08 03 A6 */ mtlr r0 -/* 8059F31C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059F320 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGCylFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGCylFv.s deleted file mode 100644 index 1fb75ad291..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGCylFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_8059F294: -/* 8059F294 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059F298 7C 08 02 A6 */ mflr r0 -/* 8059F29C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059F2A0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059F2A4 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8059F2A8 41 82 00 1C */ beq lbl_8059F2C4 -/* 8059F2AC 3C A0 80 5A */ lis r5, __vt__8cM3dGCyl@ha /* 0x8059F4EC@ha */ -/* 8059F2B0 38 05 F4 EC */ addi r0, r5, __vt__8cM3dGCyl@l /* 0x8059F4EC@l */ -/* 8059F2B4 90 1F 00 14 */ stw r0, 0x14(r31) -/* 8059F2B8 7C 80 07 35 */ extsh. r0, r4 -/* 8059F2BC 40 81 00 08 */ ble lbl_8059F2C4 -/* 8059F2C0 4B D2 FA 7D */ bl __dl__FPv -lbl_8059F2C4: -/* 8059F2C4 7F E3 FB 78 */ mr r3, r31 -/* 8059F2C8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059F2CC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059F2D0 7C 08 03 A6 */ mtlr r0 -/* 8059F2D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059F2D8 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/_draw__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/_draw__12daShopItem_cFv.s deleted file mode 100644 index cfa7beec45..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/_draw__12daShopItem_cFv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_8059EF48: -/* 8059EF48 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059EF4C 7C 08 02 A6 */ mflr r0 -/* 8059EF50 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059EF54 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059EF58 7C 7F 1B 78 */ mr r31, r3 -/* 8059EF5C 4B A9 8B 71 */ bl chkDraw__12daItemBase_cFv -/* 8059EF60 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8059EF64 40 82 00 0C */ bne lbl_8059EF70 -/* 8059EF68 38 60 00 01 */ li r3, 1 -/* 8059EF6C 48 00 00 1C */ b lbl_8059EF88 -lbl_8059EF70: -/* 8059EF70 7F E3 FB 78 */ mr r3, r31 -/* 8059EF74 81 9F 05 68 */ lwz r12, 0x568(r31) -/* 8059EF78 81 8C 00 08 */ lwz r12, 8(r12) -/* 8059EF7C 7D 89 03 A6 */ mtctr r12 -/* 8059EF80 4E 80 04 21 */ bctrl -/* 8059EF84 38 60 00 01 */ li r3, 1 -lbl_8059EF88: -/* 8059EF88 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059EF8C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059EF90 7C 08 03 A6 */ mtlr r0 -/* 8059EF94 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059EF98 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/_execute__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/_execute__12daShopItem_cFv.s deleted file mode 100644 index e229e7ac03..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/_execute__12daShopItem_cFv.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_8059EEF4: -/* 8059EEF4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059EEF8 7C 08 02 A6 */ mflr r0 -/* 8059EEFC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059EF00 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059EF04 7C 7F 1B 78 */ mr r31, r3 -/* 8059EF08 3C 80 80 5A */ lis r4, lit_3722@ha /* 0x8059F47C@ha */ -/* 8059EF0C C0 24 F4 7C */ lfs f1, lit_3722@l(r4) /* 0x8059F47C@l */ -/* 8059EF10 FC 40 08 90 */ fmr f2, f1 -/* 8059EF14 FC 60 08 90 */ fmr f3, f1 -/* 8059EF18 FC 80 08 90 */ fmr f4, f1 -/* 8059EF1C FC A0 08 90 */ fmr f5, f1 -/* 8059EF20 FC C0 08 90 */ fmr f6, f1 -/* 8059EF24 4B BA 61 19 */ bl animPlay__12daItemBase_cFffffff -/* 8059EF28 7F E3 FB 78 */ mr r3, r31 -/* 8059EF2C 4B FF FE 2D */ bl set_mtx__12daShopItem_cFv -/* 8059EF30 38 60 00 01 */ li r3, 1 -/* 8059EF34 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059EF38 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059EF3C 7C 08 03 A6 */ mtlr r0 -/* 8059EF40 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059EF44 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/chkFlag__12daShopItem_cFi.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/chkFlag__12daShopItem_cFi.s deleted file mode 100644 index a9a70f6ee8..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/chkFlag__12daShopItem_cFi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8059F024: -/* 8059F024 88 03 09 64 */ lbz r0, 0x964(r3) -/* 8059F028 1C A0 00 30 */ mulli r5, r0, 0x30 -/* 8059F02C 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059F030 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059F034 7C 60 2A 14 */ add r3, r0, r5 -/* 8059F038 80 03 00 24 */ lwz r0, 0x24(r3) -/* 8059F03C 7C 83 00 38 */ and r3, r4, r0 -/* 8059F040 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Create__FPv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Create__FPv.s deleted file mode 100644 index 822ec9a6a6..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Create__FPv.s +++ /dev/null @@ -1,118 +0,0 @@ -lbl_8059F0D8: -/* 8059F0D8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8059F0DC 7C 08 02 A6 */ mflr r0 -/* 8059F0E0 90 01 00 24 */ stw r0, 0x24(r1) -/* 8059F0E4 39 61 00 20 */ addi r11, r1, 0x20 -/* 8059F0E8 4B DC 30 F5 */ bl _savegpr_29 -/* 8059F0EC 7C 7F 1B 78 */ mr r31, r3 -/* 8059F0F0 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 8059F0F4 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 8059F0F8 40 82 00 F8 */ bne lbl_8059F1F0 -/* 8059F0FC 28 1F 00 00 */ cmplwi r31, 0 -/* 8059F100 41 82 00 E4 */ beq lbl_8059F1E4 -/* 8059F104 7F FE FB 78 */ mr r30, r31 -/* 8059F108 4B A7 9A 5D */ bl __ct__10fopAc_ac_cFv -/* 8059F10C 3C 60 80 3B */ lis r3, __vt__12daItemBase_c@ha /* 0x803B3610@ha */ -/* 8059F110 38 03 36 10 */ addi r0, r3, __vt__12daItemBase_c@l /* 0x803B3610@l */ -/* 8059F114 90 1E 05 68 */ stw r0, 0x568(r30) -/* 8059F118 3B BE 05 8C */ addi r29, r30, 0x58c -/* 8059F11C 7F A3 EB 78 */ mr r3, r29 -/* 8059F120 4B AD 6F 81 */ bl __ct__9dBgS_AcchFv -/* 8059F124 3C 60 80 5A */ lis r3, __vt__12dBgS_ObjAcch@ha /* 0x8059F504@ha */ -/* 8059F128 38 63 F5 04 */ addi r3, r3, __vt__12dBgS_ObjAcch@l /* 0x8059F504@l */ -/* 8059F12C 90 7D 00 10 */ stw r3, 0x10(r29) -/* 8059F130 38 03 00 0C */ addi r0, r3, 0xc -/* 8059F134 90 1D 00 14 */ stw r0, 0x14(r29) -/* 8059F138 38 03 00 18 */ addi r0, r3, 0x18 -/* 8059F13C 90 1D 00 24 */ stw r0, 0x24(r29) -/* 8059F140 38 7D 00 14 */ addi r3, r29, 0x14 -/* 8059F144 4B AD 9D 25 */ bl SetObj__16dBgS_PolyPassChkFv -/* 8059F148 38 7E 07 64 */ addi r3, r30, 0x764 -/* 8059F14C 4B AD 6D 61 */ bl __ct__12dBgS_AcchCirFv -/* 8059F150 3C 60 80 3C */ lis r3, __vt__9cCcD_Stts@ha /* 0x803C3728@ha */ -/* 8059F154 38 03 37 28 */ addi r0, r3, __vt__9cCcD_Stts@l /* 0x803C3728@l */ -/* 8059F158 90 1E 07 BC */ stw r0, 0x7bc(r30) -/* 8059F15C 38 7E 07 C0 */ addi r3, r30, 0x7c0 -/* 8059F160 4B AE 46 01 */ bl __ct__10dCcD_GSttsFv -/* 8059F164 3C 60 80 3B */ lis r3, __vt__9dCcD_Stts@ha /* 0x803AC2E4@ha */ -/* 8059F168 38 63 C2 E4 */ addi r3, r3, __vt__9dCcD_Stts@l /* 0x803AC2E4@l */ -/* 8059F16C 90 7E 07 BC */ stw r3, 0x7bc(r30) -/* 8059F170 38 03 00 20 */ addi r0, r3, 0x20 -/* 8059F174 90 1E 07 C0 */ stw r0, 0x7c0(r30) -/* 8059F178 3B BE 07 E0 */ addi r29, r30, 0x7e0 -/* 8059F17C 7F A3 EB 78 */ mr r3, r29 -/* 8059F180 4B AE 48 A9 */ bl __ct__12dCcD_GObjInfFv -/* 8059F184 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */ -/* 8059F188 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */ -/* 8059F18C 90 1D 01 20 */ stw r0, 0x120(r29) -/* 8059F190 3C 60 80 5A */ lis r3, __vt__8cM3dGAab@ha /* 0x8059F4F8@ha */ -/* 8059F194 38 03 F4 F8 */ addi r0, r3, __vt__8cM3dGAab@l /* 0x8059F4F8@l */ -/* 8059F198 90 1D 01 1C */ stw r0, 0x11c(r29) -/* 8059F19C 3C 60 80 5A */ lis r3, __vt__8cM3dGCyl@ha /* 0x8059F4EC@ha */ -/* 8059F1A0 38 03 F4 EC */ addi r0, r3, __vt__8cM3dGCyl@l /* 0x8059F4EC@l */ -/* 8059F1A4 90 1D 01 38 */ stw r0, 0x138(r29) -/* 8059F1A8 3C 60 80 3C */ lis r3, __vt__12cCcD_CylAttr@ha /* 0x803C35A4@ha */ -/* 8059F1AC 38 63 35 A4 */ addi r3, r3, __vt__12cCcD_CylAttr@l /* 0x803C35A4@l */ -/* 8059F1B0 90 7D 01 20 */ stw r3, 0x120(r29) -/* 8059F1B4 38 03 00 58 */ addi r0, r3, 0x58 -/* 8059F1B8 90 1D 01 38 */ stw r0, 0x138(r29) -/* 8059F1BC 3C 60 80 3B */ lis r3, __vt__8dCcD_Cyl@ha /* 0x803AC050@ha */ -/* 8059F1C0 38 63 C0 50 */ addi r3, r3, __vt__8dCcD_Cyl@l /* 0x803AC050@l */ -/* 8059F1C4 90 7D 00 3C */ stw r3, 0x3c(r29) -/* 8059F1C8 38 03 00 2C */ addi r0, r3, 0x2c -/* 8059F1CC 90 1D 01 20 */ stw r0, 0x120(r29) -/* 8059F1D0 38 03 00 84 */ addi r0, r3, 0x84 -/* 8059F1D4 90 1D 01 38 */ stw r0, 0x138(r29) -/* 8059F1D8 3C 60 80 5A */ lis r3, __vt__12daShopItem_c@ha /* 0x8059F528@ha */ -/* 8059F1DC 38 03 F5 28 */ addi r0, r3, __vt__12daShopItem_c@l /* 0x8059F528@l */ -/* 8059F1E0 90 1F 05 68 */ stw r0, 0x568(r31) -lbl_8059F1E4: -/* 8059F1E4 80 1F 04 A0 */ lwz r0, 0x4a0(r31) -/* 8059F1E8 60 00 00 08 */ ori r0, r0, 8 -/* 8059F1EC 90 1F 04 A0 */ stw r0, 0x4a0(r31) -lbl_8059F1F0: -/* 8059F1F0 38 00 00 00 */ li r0, 0 -/* 8059F1F4 B0 1F 09 60 */ sth r0, 0x960(r31) -/* 8059F1F8 B0 1F 09 62 */ sth r0, 0x962(r31) -/* 8059F1FC 80 1F 00 B0 */ lwz r0, 0xb0(r31) -/* 8059F200 98 1F 09 2A */ stb r0, 0x92a(r31) -/* 8059F204 7F E3 FB 78 */ mr r3, r31 -/* 8059F208 4B FF F7 B1 */ bl getShopArcname__12daShopItem_cFv -/* 8059F20C 28 03 00 00 */ cmplwi r3, 0 -/* 8059F210 40 82 00 0C */ bne lbl_8059F21C -/* 8059F214 38 00 00 FF */ li r0, 0xff -/* 8059F218 98 1F 09 2A */ stb r0, 0x92a(r31) -lbl_8059F21C: -/* 8059F21C 7F E3 FB 78 */ mr r3, r31 -/* 8059F220 4B FF F7 99 */ bl getShopArcname__12daShopItem_cFv -/* 8059F224 7C 64 1B 78 */ mr r4, r3 -/* 8059F228 38 7F 05 6C */ addi r3, r31, 0x56c -/* 8059F22C 4B A8 DC 91 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc -/* 8059F230 7C 7E 1B 78 */ mr r30, r3 -/* 8059F234 2C 1E 00 04 */ cmpwi r30, 4 -/* 8059F238 41 82 00 08 */ beq lbl_8059F240 -/* 8059F23C 48 00 00 3C */ b lbl_8059F278 -lbl_8059F240: -/* 8059F240 40 82 00 38 */ bne lbl_8059F278 -/* 8059F244 7F E3 FB 78 */ mr r3, r31 -/* 8059F248 4B FF F9 BD */ bl getHeapSize__12daShopItem_cFv -/* 8059F24C 54 65 04 3E */ clrlwi r5, r3, 0x10 -/* 8059F250 7F E3 FB 78 */ mr r3, r31 -/* 8059F254 3C 80 80 03 */ lis r4, CheckShopItemCreateHeap__FP10fopAc_ac_c@ha /* 0x80037C24@ha */ -/* 8059F258 38 84 7C 24 */ addi r4, r4, CheckShopItemCreateHeap__FP10fopAc_ac_c@l /* 0x80037C24@l */ -/* 8059F25C 4B A7 B2 55 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl -/* 8059F260 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8059F264 40 82 00 0C */ bne lbl_8059F270 -/* 8059F268 3B C0 00 05 */ li r30, 5 -/* 8059F26C 48 00 00 0C */ b lbl_8059F278 -lbl_8059F270: -/* 8059F270 7F E3 FB 78 */ mr r3, r31 -/* 8059F274 4B FF F9 A9 */ bl CreateInit__12daShopItem_cFv -lbl_8059F278: -/* 8059F278 7F C3 F3 78 */ mr r3, r30 -/* 8059F27C 39 61 00 20 */ addi r11, r1, 0x20 -/* 8059F280 4B DC 2F A9 */ bl _restgpr_29 -/* 8059F284 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8059F288 7C 08 03 A6 */ mtlr r0 -/* 8059F28C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8059F290 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Delete__FPv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Delete__FPv.s deleted file mode 100644 index 664ec21882..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Delete__FPv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_8059F394: -/* 8059F394 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059F398 7C 08 02 A6 */ mflr r0 -/* 8059F39C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059F3A0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059F3A4 7C 7F 1B 78 */ mr r31, r3 -/* 8059F3A8 4B FF F6 11 */ bl getShopArcname__12daShopItem_cFv -/* 8059F3AC 7C 64 1B 78 */ mr r4, r3 -/* 8059F3B0 7F E3 FB 78 */ mr r3, r31 -/* 8059F3B4 4B BA 53 71 */ bl DeleteBase__12daItemBase_cFPCc -/* 8059F3B8 38 60 00 01 */ li r3, 1 -/* 8059F3BC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059F3C0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059F3C4 7C 08 03 A6 */ mtlr r0 -/* 8059F3C8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059F3CC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Draw__FPv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Draw__FPv.s deleted file mode 100644 index 25d9a7ef2a..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Draw__FPv.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_8059F3D0: -/* 8059F3D0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059F3D4 7C 08 02 A6 */ mflr r0 -/* 8059F3D8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059F3DC 4B FF FB 6D */ bl _draw__12daShopItem_cFv -/* 8059F3E0 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 8059F3E4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059F3E8 7C 08 03 A6 */ mtlr r0 -/* 8059F3EC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059F3F0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Execute__FPv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Execute__FPv.s deleted file mode 100644 index e5e5a4d198..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Execute__FPv.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_8059F3F4: -/* 8059F3F4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059F3F8 7C 08 02 A6 */ mflr r0 -/* 8059F3FC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059F400 4B FF FA F5 */ bl _execute__12daShopItem_cFv -/* 8059F404 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 8059F408 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059F40C 7C 08 03 A6 */ mtlr r0 -/* 8059F410 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059F414 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F420.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F420.s deleted file mode 100644 index f6bab2f114..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F420.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_8059F420: -/* 8059F420 38 63 FF DC */ addi r3, r3, -36 -/* 8059F424 4B FF FF 00 */ b __dt__12dBgS_ObjAcchFv diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F428.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F428.s deleted file mode 100644 index 9819bd4409..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F428.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_8059F428: -/* 8059F428 38 63 FF EC */ addi r3, r3, -20 -/* 8059F42C 4B FF FE F8 */ b __dt__12dBgS_ObjAcchFv diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getBtpFrm__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getBtpFrm__12daShopItem_cFv.s deleted file mode 100644 index eb04327025..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getBtpFrm__12daShopItem_cFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8059F064: -/* 8059F064 88 03 09 64 */ lbz r0, 0x964(r3) -/* 8059F068 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059F06C 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059F070 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059F074 7C 60 22 14 */ add r3, r0, r4 -/* 8059F078 88 03 00 2C */ lbz r0, 0x2c(r3) -/* 8059F07C 7C 03 07 74 */ extsb r3, r0 -/* 8059F080 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionH__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionH__12daShopItem_cFv.s deleted file mode 100644 index 26bf23d720..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionH__12daShopItem_cFv.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_8059F0A0: -/* 8059F0A0 88 03 09 64 */ lbz r0, 0x964(r3) -/* 8059F0A4 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059F0A8 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059F0AC 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059F0B0 7C 60 22 14 */ add r3, r0, r4 -/* 8059F0B4 88 63 00 29 */ lbz r3, 0x29(r3) -/* 8059F0B8 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionR__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionR__12daShopItem_cFv.s deleted file mode 100644 index 2279a50cc9..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionR__12daShopItem_cFv.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_8059F0BC: -/* 8059F0BC 88 03 09 64 */ lbz r0, 0x964(r3) -/* 8059F0C0 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059F0C4 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059F0C8 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059F0CC 7C 60 22 14 */ add r3, r0, r4 -/* 8059F0D0 88 63 00 2A */ lbz r3, 0x2a(r3) -/* 8059F0D4 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getHeapSize__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getHeapSize__12daShopItem_cFv.s deleted file mode 100644 index 84b6c7ec42..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getHeapSize__12daShopItem_cFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_8059EC04: -/* 8059EC04 88 03 09 64 */ lbz r0, 0x964(r3) -/* 8059EC08 54 00 0D FC */ rlwinm r0, r0, 1, 0x17, 0x1e -/* 8059EC0C 3C 60 80 5A */ lis r3, HeapSizeTbl@ha /* 0x8059F43C@ha */ -/* 8059EC10 38 63 F4 3C */ addi r3, r3, HeapSizeTbl@l /* 0x8059F43C@l */ -/* 8059EC14 7C 63 02 2E */ lhzx r3, r3, r0 -/* 8059EC18 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShadowSize__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShadowSize__12daShopItem_cFv.s deleted file mode 100644 index 38f5ba9446..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShadowSize__12daShopItem_cFv.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_8059F084: -/* 8059F084 88 03 09 64 */ lbz r0, 0x964(r3) -/* 8059F088 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059F08C 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059F090 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059F094 7C 60 22 14 */ add r3, r0, r4 -/* 8059F098 88 63 00 28 */ lbz r3, 0x28(r3) -/* 8059F09C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShopArcname__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShopArcname__12daShopItem_cFv.s deleted file mode 100644 index 7f652b8955..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShopArcname__12daShopItem_cFv.s +++ /dev/null @@ -1,180 +0,0 @@ -lbl_8059E9B8: -/* 8059E9B8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E9BC 7C 08 02 A6 */ mflr r0 -/* 8059E9C0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E9C4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059E9C8 7C 7F 1B 78 */ mr r31, r3 -/* 8059E9CC 88 03 09 2A */ lbz r0, 0x92a(r3) -/* 8059E9D0 2C 00 00 61 */ cmpwi r0, 0x61 -/* 8059E9D4 41 82 01 40 */ beq lbl_8059EB14 -/* 8059E9D8 40 80 00 78 */ bge lbl_8059EA50 -/* 8059E9DC 2C 00 00 30 */ cmpwi r0, 0x30 -/* 8059E9E0 41 82 01 E8 */ beq lbl_8059EBC8 -/* 8059E9E4 40 80 00 3C */ bge lbl_8059EA20 -/* 8059E9E8 2C 00 00 2B */ cmpwi r0, 0x2b -/* 8059E9EC 41 82 01 64 */ beq lbl_8059EB50 -/* 8059E9F0 40 80 00 24 */ bge lbl_8059EA14 -/* 8059E9F4 2C 00 00 0E */ cmpwi r0, 0xe -/* 8059E9F8 40 80 00 10 */ bge lbl_8059EA08 -/* 8059E9FC 2C 00 00 0A */ cmpwi r0, 0xa -/* 8059EA00 40 80 01 68 */ bge lbl_8059EB68 -/* 8059EA04 48 00 01 D0 */ b lbl_8059EBD4 -lbl_8059EA08: -/* 8059EA08 2C 00 00 11 */ cmpwi r0, 0x11 -/* 8059EA0C 40 80 01 C8 */ bge lbl_8059EBD4 -/* 8059EA10 48 00 01 34 */ b lbl_8059EB44 -lbl_8059EA14: -/* 8059EA14 2C 00 00 2D */ cmpwi r0, 0x2d -/* 8059EA18 40 80 01 BC */ bge lbl_8059EBD4 -/* 8059EA1C 48 00 01 40 */ b lbl_8059EB5C -lbl_8059EA20: -/* 8059EA20 2C 00 00 4B */ cmpwi r0, 0x4b -/* 8059EA24 41 82 01 8C */ beq lbl_8059EBB0 -/* 8059EA28 40 80 00 10 */ bge lbl_8059EA38 -/* 8059EA2C 2C 00 00 3E */ cmpwi r0, 0x3e -/* 8059EA30 41 82 01 8C */ beq lbl_8059EBBC -/* 8059EA34 48 00 01 A0 */ b lbl_8059EBD4 -lbl_8059EA38: -/* 8059EA38 2C 00 00 4F */ cmpwi r0, 0x4f -/* 8059EA3C 41 82 01 5C */ beq lbl_8059EB98 -/* 8059EA40 41 80 01 94 */ blt lbl_8059EBD4 -/* 8059EA44 2C 00 00 52 */ cmpwi r0, 0x52 -/* 8059EA48 40 80 01 8C */ bge lbl_8059EBD4 -/* 8059EA4C 48 00 01 40 */ b lbl_8059EB8C -lbl_8059EA50: -/* 8059EA50 2C 00 00 71 */ cmpwi r0, 0x71 -/* 8059EA54 41 82 01 20 */ beq lbl_8059EB74 -/* 8059EA58 40 80 00 34 */ bge lbl_8059EA8C -/* 8059EA5C 2C 00 00 65 */ cmpwi r0, 0x65 -/* 8059EA60 41 82 00 A8 */ beq lbl_8059EB08 -/* 8059EA64 40 80 00 14 */ bge lbl_8059EA78 -/* 8059EA68 2C 00 00 63 */ cmpwi r0, 0x63 -/* 8059EA6C 41 82 00 C0 */ beq lbl_8059EB2C -/* 8059EA70 40 80 00 8C */ bge lbl_8059EAFC -/* 8059EA74 48 00 00 AC */ b lbl_8059EB20 -lbl_8059EA78: -/* 8059EA78 2C 00 00 70 */ cmpwi r0, 0x70 -/* 8059EA7C 40 80 00 EC */ bge lbl_8059EB68 -/* 8059EA80 2C 00 00 67 */ cmpwi r0, 0x67 -/* 8059EA84 40 80 01 50 */ bge lbl_8059EBD4 -/* 8059EA88 48 00 00 68 */ b lbl_8059EAF0 -lbl_8059EA8C: -/* 8059EA8C 2C 00 00 76 */ cmpwi r0, 0x76 -/* 8059EA90 41 82 01 14 */ beq lbl_8059EBA4 -/* 8059EA94 40 80 00 18 */ bge lbl_8059EAAC -/* 8059EA98 2C 00 00 75 */ cmpwi r0, 0x75 -/* 8059EA9C 40 80 00 9C */ bge lbl_8059EB38 -/* 8059EAA0 2C 00 00 73 */ cmpwi r0, 0x73 -/* 8059EAA4 40 80 01 30 */ bge lbl_8059EBD4 -/* 8059EAA8 48 00 00 D8 */ b lbl_8059EB80 -lbl_8059EAAC: -/* 8059EAAC 2C 00 00 FF */ cmpwi r0, 0xff -/* 8059EAB0 41 82 00 08 */ beq lbl_8059EAB8 -/* 8059EAB4 48 00 01 20 */ b lbl_8059EBD4 -lbl_8059EAB8: -/* 8059EAB8 3C 60 80 5A */ lis r3, d_a_shop_item__stringBase0@ha /* 0x8059F48C@ha */ -/* 8059EABC 38 63 F4 8C */ addi r3, r3, d_a_shop_item__stringBase0@l /* 0x8059F48C@l */ -/* 8059EAC0 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059EAC4 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059EAC8 38 84 4E 00 */ addi r4, r4, 0x4e00 -/* 8059EACC 4B DC 9E C9 */ bl strcmp -/* 8059EAD0 2C 03 00 00 */ cmpwi r3, 0 -/* 8059EAD4 40 82 00 10 */ bne lbl_8059EAE4 -/* 8059EAD8 38 00 00 14 */ li r0, 0x14 -/* 8059EADC 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EAE0 48 00 00 FC */ b lbl_8059EBDC -lbl_8059EAE4: -/* 8059EAE4 38 00 00 00 */ li r0, 0 -/* 8059EAE8 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EAEC 48 00 00 F0 */ b lbl_8059EBDC -lbl_8059EAF0: -/* 8059EAF0 38 00 00 01 */ li r0, 1 -/* 8059EAF4 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EAF8 48 00 00 E4 */ b lbl_8059EBDC -lbl_8059EAFC: -/* 8059EAFC 38 00 00 03 */ li r0, 3 -/* 8059EB00 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB04 48 00 00 D8 */ b lbl_8059EBDC -lbl_8059EB08: -/* 8059EB08 38 00 00 04 */ li r0, 4 -/* 8059EB0C 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB10 48 00 00 CC */ b lbl_8059EBDC -lbl_8059EB14: -/* 8059EB14 38 00 00 02 */ li r0, 2 -/* 8059EB18 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB1C 48 00 00 C0 */ b lbl_8059EBDC -lbl_8059EB20: -/* 8059EB20 38 00 00 15 */ li r0, 0x15 -/* 8059EB24 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB28 48 00 00 B4 */ b lbl_8059EBDC -lbl_8059EB2C: -/* 8059EB2C 38 00 00 11 */ li r0, 0x11 -/* 8059EB30 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB34 48 00 00 A8 */ b lbl_8059EBDC -lbl_8059EB38: -/* 8059EB38 38 00 00 16 */ li r0, 0x16 -/* 8059EB3C 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB40 48 00 00 9C */ b lbl_8059EBDC -lbl_8059EB44: -/* 8059EB44 38 00 00 05 */ li r0, 5 -/* 8059EB48 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB4C 48 00 00 90 */ b lbl_8059EBDC -lbl_8059EB50: -/* 8059EB50 38 00 00 06 */ li r0, 6 -/* 8059EB54 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB58 48 00 00 84 */ b lbl_8059EBDC -lbl_8059EB5C: -/* 8059EB5C 38 00 00 07 */ li r0, 7 -/* 8059EB60 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB64 48 00 00 78 */ b lbl_8059EBDC -lbl_8059EB68: -/* 8059EB68 38 00 00 08 */ li r0, 8 -/* 8059EB6C 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB70 48 00 00 6C */ b lbl_8059EBDC -lbl_8059EB74: -/* 8059EB74 38 00 00 09 */ li r0, 9 -/* 8059EB78 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB7C 48 00 00 60 */ b lbl_8059EBDC -lbl_8059EB80: -/* 8059EB80 38 00 00 0A */ li r0, 0xa -/* 8059EB84 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB88 48 00 00 54 */ b lbl_8059EBDC -lbl_8059EB8C: -/* 8059EB8C 38 00 00 0B */ li r0, 0xb -/* 8059EB90 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EB94 48 00 00 48 */ b lbl_8059EBDC -lbl_8059EB98: -/* 8059EB98 38 00 00 0C */ li r0, 0xc -/* 8059EB9C 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EBA0 48 00 00 3C */ b lbl_8059EBDC -lbl_8059EBA4: -/* 8059EBA4 38 00 00 0F */ li r0, 0xf -/* 8059EBA8 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EBAC 48 00 00 30 */ b lbl_8059EBDC -lbl_8059EBB0: -/* 8059EBB0 38 00 00 10 */ li r0, 0x10 -/* 8059EBB4 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EBB8 48 00 00 24 */ b lbl_8059EBDC -lbl_8059EBBC: -/* 8059EBBC 38 00 00 12 */ li r0, 0x12 -/* 8059EBC0 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EBC4 48 00 00 18 */ b lbl_8059EBDC -lbl_8059EBC8: -/* 8059EBC8 38 00 00 13 */ li r0, 0x13 -/* 8059EBCC 98 1F 09 64 */ stb r0, 0x964(r31) -/* 8059EBD0 48 00 00 0C */ b lbl_8059EBDC -lbl_8059EBD4: -/* 8059EBD4 38 60 00 00 */ li r3, 0 -/* 8059EBD8 48 00 00 18 */ b lbl_8059EBF0 -lbl_8059EBDC: -/* 8059EBDC 88 1F 09 64 */ lbz r0, 0x964(r31) -/* 8059EBE0 1C 00 00 30 */ mulli r0, r0, 0x30 -/* 8059EBE4 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059EBE8 38 63 92 E8 */ addi r3, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059EBEC 7C 63 00 2E */ lwzx r3, r3, r0 -lbl_8059EBF0: -/* 8059EBF0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059EBF4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059EBF8 7C 08 03 A6 */ mtlr r0 -/* 8059EBFC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059EC00 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getTevFrm__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getTevFrm__12daShopItem_cFv.s deleted file mode 100644 index 04b1c6ef10..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/getTevFrm__12daShopItem_cFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8059F044: -/* 8059F044 88 03 09 64 */ lbz r0, 0x964(r3) -/* 8059F048 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059F04C 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059F050 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059F054 7C 60 22 14 */ add r3, r0, r4 -/* 8059F058 88 03 00 2B */ lbz r0, 0x2b(r3) -/* 8059F05C 7C 03 07 74 */ extsb r3, r0 -/* 8059F060 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/setShadow__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/setShadow__12daShopItem_cFv.s deleted file mode 100644 index c8838039d1..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/setShadow__12daShopItem_cFv.s +++ /dev/null @@ -1,36 +0,0 @@ -lbl_8059EFA0: -/* 8059EFA0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059EFA4 7C 08 02 A6 */ mflr r0 -/* 8059EFA8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059EFAC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059EFB0 7C 7F 1B 78 */ mr r31, r3 -/* 8059EFB4 3C 80 80 5A */ lis r4, m_cullfar_max__12daShopItem_c@ha /* 0x8059F438@ha */ -/* 8059EFB8 39 44 F4 38 */ addi r10, r4, m_cullfar_max__12daShopItem_c@l /* 0x8059F438@l */ -/* 8059EFBC 88 03 09 2A */ lbz r0, 0x92a(r3) -/* 8059EFC0 28 00 00 FF */ cmplwi r0, 0xff -/* 8059EFC4 41 82 00 0C */ beq lbl_8059EFD0 -/* 8059EFC8 4B BA 5D A9 */ bl setShadow__12daItemBase_cFv -/* 8059EFCC 48 00 00 44 */ b lbl_8059F010 -lbl_8059EFD0: -/* 8059EFD0 80 7F 09 1C */ lwz r3, 0x91c(r31) -/* 8059EFD4 38 80 00 01 */ li r4, 1 -/* 8059EFD8 80 BF 05 74 */ lwz r5, 0x574(r31) -/* 8059EFDC 38 DF 04 D0 */ addi r6, r31, 0x4d0 -/* 8059EFE0 C0 2A 00 50 */ lfs f1, 0x50(r10) -/* 8059EFE4 C0 4A 00 38 */ lfs f2, 0x38(r10) -/* 8059EFE8 C0 7F 04 D4 */ lfs f3, 0x4d4(r31) -/* 8059EFEC C0 9F 06 24 */ lfs f4, 0x624(r31) -/* 8059EFF0 38 FF 06 7C */ addi r7, r31, 0x67c -/* 8059EFF4 39 1F 01 0C */ addi r8, r31, 0x10c -/* 8059EFF8 39 20 00 00 */ li r9, 0 -/* 8059EFFC C0 AA 00 44 */ lfs f5, 0x44(r10) -/* 8059F000 3D 40 80 42 */ lis r10, mSimpleTexObj__21dDlst_shadowControl_c@ha /* 0x804248D0@ha */ -/* 8059F004 39 4A 48 D0 */ addi r10, r10, mSimpleTexObj__21dDlst_shadowControl_c@l /* 0x804248D0@l */ -/* 8059F008 4B A8 F9 09 */ bl dComIfGd_setShadow__FUlScP8J3DModelP4cXyzffffR13cBgS_PolyInfoP12dKy_tevstr_csfP9_GXTexObj -/* 8059F00C 90 7F 09 1C */ stw r3, 0x91c(r31) -lbl_8059F010: -/* 8059F010 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059F014 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059F018 7C 08 03 A6 */ mtlr r0 -/* 8059F01C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059F020 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/set_mtx__12daShopItem_cFv.s b/asm/rel/d/a/d_a_shop_item/d_a_shop_item/set_mtx__12daShopItem_cFv.s deleted file mode 100644 index 3de57ea77d..0000000000 --- a/asm/rel/d/a/d_a_shop_item/d_a_shop_item/set_mtx__12daShopItem_cFv.s +++ /dev/null @@ -1,110 +0,0 @@ -lbl_8059ED58: -/* 8059ED58 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059ED5C 7C 08 02 A6 */ mflr r0 -/* 8059ED60 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059ED64 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059ED68 7C 7F 1B 78 */ mr r31, r3 -/* 8059ED6C 80 63 05 74 */ lwz r3, 0x574(r3) -/* 8059ED70 C0 1F 04 EC */ lfs f0, 0x4ec(r31) -/* 8059ED74 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 8059ED78 C0 1F 04 F0 */ lfs f0, 0x4f0(r31) -/* 8059ED7C D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 8059ED80 C0 1F 04 F4 */ lfs f0, 0x4f4(r31) -/* 8059ED84 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 8059ED88 80 1F 00 B0 */ lwz r0, 0xb0(r31) -/* 8059ED8C 54 00 27 3E */ srwi r0, r0, 0x1c -/* 8059ED90 28 00 00 0F */ cmplwi r0, 0xf -/* 8059ED94 40 82 00 20 */ bne lbl_8059EDB4 -/* 8059ED98 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059ED9C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EDA0 C0 3F 04 D0 */ lfs f1, 0x4d0(r31) -/* 8059EDA4 C0 5F 04 D4 */ lfs f2, 0x4d4(r31) -/* 8059EDA8 C0 7F 04 D8 */ lfs f3, 0x4d8(r31) -/* 8059EDAC 4B DA 7B 3D */ bl PSMTXTrans -/* 8059EDB0 48 00 00 38 */ b lbl_8059EDE8 -lbl_8059EDB4: -/* 8059EDB4 88 1F 09 64 */ lbz r0, 0x964(r31) -/* 8059EDB8 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059EDBC 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059EDC0 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059EDC4 7C 60 22 14 */ add r3, r0, r4 -/* 8059EDC8 C0 43 00 14 */ lfs f2, 0x14(r3) -/* 8059EDCC 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EDD0 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EDD4 C0 3F 04 D0 */ lfs f1, 0x4d0(r31) -/* 8059EDD8 C0 1F 04 D4 */ lfs f0, 0x4d4(r31) -/* 8059EDDC EC 40 10 2A */ fadds f2, f0, f2 -/* 8059EDE0 C0 7F 04 D8 */ lfs f3, 0x4d8(r31) -/* 8059EDE4 4B DA 7B 05 */ bl PSMTXTrans -lbl_8059EDE8: -/* 8059EDE8 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EDEC 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EDF0 38 9F 09 2C */ addi r4, r31, 0x92c -/* 8059EDF4 4B DA 76 BD */ bl PSMTXCopy -/* 8059EDF8 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EDFC 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EE00 A8 9F 09 62 */ lha r4, 0x962(r31) -/* 8059EE04 4B A6 D6 31 */ bl mDoMtx_YrotM__FPA4_fs -/* 8059EE08 80 1F 00 B0 */ lwz r0, 0xb0(r31) -/* 8059EE0C 54 00 27 3E */ srwi r0, r0, 0x1c -/* 8059EE10 28 00 00 0F */ cmplwi r0, 0xf -/* 8059EE14 40 82 00 20 */ bne lbl_8059EE34 -/* 8059EE18 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EE1C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EE20 38 80 D3 DC */ li r4, -11300 -/* 8059EE24 38 A0 7F BC */ li r5, 0x7fbc -/* 8059EE28 38 C0 1C 84 */ li r6, 0x1c84 -/* 8059EE2C 4B A6 D4 75 */ bl mDoMtx_ZXYrotM__FPA4_fsss -/* 8059EE30 48 00 00 3C */ b lbl_8059EE6C -lbl_8059EE34: -/* 8059EE34 88 1F 09 64 */ lbz r0, 0x964(r31) -/* 8059EE38 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059EE3C 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059EE40 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059EE44 7C 60 22 14 */ add r3, r0, r4 -/* 8059EE48 A8 C3 00 22 */ lha r6, 0x22(r3) -/* 8059EE4C A8 A3 00 20 */ lha r5, 0x20(r3) -/* 8059EE50 A8 83 00 1E */ lha r4, 0x1e(r3) -/* 8059EE54 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EE58 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EE5C A8 1F 09 60 */ lha r0, 0x960(r31) -/* 8059EE60 7C 00 22 14 */ add r0, r0, r4 -/* 8059EE64 7C 04 07 34 */ extsh r4, r0 -/* 8059EE68 4B A6 D4 39 */ bl mDoMtx_ZXYrotM__FPA4_fsss -lbl_8059EE6C: -/* 8059EE6C 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EE70 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EE74 A8 9F 04 DC */ lha r4, 0x4dc(r31) -/* 8059EE78 A8 BF 04 DE */ lha r5, 0x4de(r31) -/* 8059EE7C A8 DF 04 E0 */ lha r6, 0x4e0(r31) -/* 8059EE80 4B A6 D4 21 */ bl mDoMtx_ZXYrotM__FPA4_fsss -/* 8059EE84 80 1F 00 B0 */ lwz r0, 0xb0(r31) -/* 8059EE88 54 00 27 3E */ srwi r0, r0, 0x1c -/* 8059EE8C 28 00 00 0F */ cmplwi r0, 0xf -/* 8059EE90 40 82 00 18 */ bne lbl_8059EEA8 -/* 8059EE94 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EE98 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EE9C 38 80 00 00 */ li r4, 0 -/* 8059EEA0 4B A6 D4 FD */ bl mDoMtx_XrotM__FPA4_fs -/* 8059EEA4 48 00 00 28 */ b lbl_8059EECC -lbl_8059EEA8: -/* 8059EEA8 88 1F 09 64 */ lbz r0, 0x964(r31) -/* 8059EEAC 1C 80 00 30 */ mulli r4, r0, 0x30 -/* 8059EEB0 3C 60 80 38 */ lis r3, mData__12daShopItem_c@ha /* 0x803792E8@ha */ -/* 8059EEB4 38 03 92 E8 */ addi r0, r3, mData__12daShopItem_c@l /* 0x803792E8@l */ -/* 8059EEB8 7C 60 22 14 */ add r3, r0, r4 -/* 8059EEBC A8 83 00 1C */ lha r4, 0x1c(r3) -/* 8059EEC0 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EEC4 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EEC8 4B A6 D4 D5 */ bl mDoMtx_XrotM__FPA4_fs -lbl_8059EECC: -/* 8059EECC 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8059EED0 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8059EED4 80 9F 05 74 */ lwz r4, 0x574(r31) -/* 8059EED8 38 84 00 24 */ addi r4, r4, 0x24 -/* 8059EEDC 4B DA 75 D5 */ bl PSMTXCopy -/* 8059EEE0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059EEE4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059EEE8 7C 08 03 A6 */ mtlr r0 -/* 8059EEEC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059EEF0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Create__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Create__16daStartAndGoal_cFv.s deleted file mode 100644 index 3870ba8811..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Create__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,44 +0,0 @@ -lbl_80D4D884: -/* 80D4D884 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4D888 7C 08 02 A6 */ mflr r0 -/* 80D4D88C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4D890 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4D894 93 C1 00 08 */ stw r30, 8(r1) -/* 80D4D898 7C 7F 1B 78 */ mr r31, r3 -/* 80D4D89C 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 80D4D8A0 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 80D4D8A4 40 82 00 60 */ bne lbl_80D4D904 -/* 80D4D8A8 7F E0 FB 79 */ or. r0, r31, r31 -/* 80D4D8AC 41 82 00 4C */ beq lbl_80D4D8F8 -/* 80D4D8B0 7C 1E 03 78 */ mr r30, r0 -/* 80D4D8B4 4B 2C B2 B1 */ bl __ct__10fopAc_ac_cFv -/* 80D4D8B8 3B DE 05 68 */ addi r30, r30, 0x568 -/* 80D4D8BC 3C 60 80 D5 */ lis r3, __vt__13daNpcF_Path_c@ha /* 0x80D4DF4C@ha */ -/* 80D4D8C0 38 03 DF 4C */ addi r0, r3, __vt__13daNpcF_Path_c@l /* 0x80D4DF4C@l */ -/* 80D4D8C4 90 1E 06 2C */ stw r0, 0x62c(r30) -/* 80D4D8C8 3C 60 80 D5 */ lis r3, __vt__16daNpcF_SPCurve_c@ha /* 0x80D4DF40@ha */ -/* 80D4D8CC 38 03 DF 40 */ addi r0, r3, __vt__16daNpcF_SPCurve_c@l /* 0x80D4DF40@l */ -/* 80D4D8D0 90 1E 06 28 */ stw r0, 0x628(r30) -/* 80D4D8D4 38 7E 00 20 */ addi r3, r30, 0x20 -/* 80D4D8D8 38 80 00 00 */ li r4, 0 -/* 80D4D8DC 38 A0 00 00 */ li r5, 0 -/* 80D4D8E0 4B 40 2F 91 */ bl initialize__16daNpcF_SPCurve_cFP5dPathi -/* 80D4D8E4 7F C3 F3 78 */ mr r3, r30 -/* 80D4D8E8 4B 40 30 19 */ bl initialize__13daNpcF_Path_cFv -/* 80D4D8EC 3C 60 80 D5 */ lis r3, __vt__21daStartAndGoal_Path_c@ha /* 0x80D4DF34@ha */ -/* 80D4D8F0 38 03 DF 34 */ addi r0, r3, __vt__21daStartAndGoal_Path_c@l /* 0x80D4DF34@l */ -/* 80D4D8F4 90 1E 06 2C */ stw r0, 0x62c(r30) -lbl_80D4D8F8: -/* 80D4D8F8 80 1F 04 A0 */ lwz r0, 0x4a0(r31) -/* 80D4D8FC 60 00 00 08 */ ori r0, r0, 8 -/* 80D4D900 90 1F 04 A0 */ stw r0, 0x4a0(r31) -lbl_80D4D904: -/* 80D4D904 7F E3 FB 78 */ mr r3, r31 -/* 80D4D908 48 00 00 91 */ bl init__16daStartAndGoal_cFv -/* 80D4D90C 38 60 00 04 */ li r3, 4 -/* 80D4D910 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4D914 83 C1 00 08 */ lwz r30, 8(r1) -/* 80D4D918 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4D91C 7C 08 03 A6 */ mtlr r0 -/* 80D4D920 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4D924 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Delete__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Delete__16daStartAndGoal_cFv.s deleted file mode 100644 index 3766588e0b..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Delete__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_80D4DCFC: -/* 80D4DCFC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DD00 7C 08 02 A6 */ mflr r0 -/* 80D4DD04 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DD08 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4DD0C 7C 7F 1B 78 */ mr r31, r3 -/* 80D4DD10 88 03 0B 98 */ lbz r0, 0xb98(r3) -/* 80D4DD14 28 00 00 01 */ cmplwi r0, 1 -/* 80D4DD18 40 82 00 1C */ bne lbl_80D4DD34 -/* 80D4DD1C 88 1F 0B 99 */ lbz r0, 0xb99(r31) -/* 80D4DD20 54 00 18 38 */ slwi r0, r0, 3 -/* 80D4DD24 3C 60 80 D5 */ lis r3, l_timerType@ha /* 0x80D4DECC@ha */ -/* 80D4DD28 38 63 DE CC */ addi r3, r3, l_timerType@l /* 0x80D4DECC@l */ -/* 80D4DD2C 7C 63 00 2E */ lwzx r3, r3, r0 -/* 80D4DD30 4B 2E 1A 6D */ bl dComIfG_TimerDeleteRequest__Fi -lbl_80D4DD34: -/* 80D4DD34 88 1F 0B A0 */ lbz r0, 0xba0(r31) -/* 80D4DD38 28 00 00 01 */ cmplwi r0, 1 -/* 80D4DD3C 40 82 00 2C */ bne lbl_80D4DD68 -/* 80D4DD40 88 1F 0B 99 */ lbz r0, 0xb99(r31) -/* 80D4DD44 28 00 00 00 */ cmplwi r0, 0 -/* 80D4DD48 41 82 00 0C */ beq lbl_80D4DD54 -/* 80D4DD4C 28 00 00 01 */ cmplwi r0, 1 -/* 80D4DD50 40 82 00 18 */ bne lbl_80D4DD68 -lbl_80D4DD54: -/* 80D4DD54 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */ -/* 80D4DD58 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */ -/* 80D4DD5C 80 63 00 00 */ lwz r3, 0(r3) -/* 80D4DD60 38 63 03 D0 */ addi r3, r3, 0x3d0 -/* 80D4DD64 4B 56 1B 21 */ bl subBgmStop__8Z2SeqMgrFv -lbl_80D4DD68: -/* 80D4DD68 38 60 00 01 */ li r3, 1 -/* 80D4DD6C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4DD70 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DD74 7C 08 03 A6 */ mtlr r0 -/* 80D4DD78 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DD7C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Execute__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Execute__16daStartAndGoal_cFv.s deleted file mode 100644 index 651df7dd90..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Execute__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,46 +0,0 @@ -lbl_80D4DC50: -/* 80D4DC50 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DC54 7C 08 02 A6 */ mflr r0 -/* 80D4DC58 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DC5C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4DC60 7C 7F 1B 78 */ mr r31, r3 -/* 80D4DC64 80 03 0B 9C */ lwz r0, 0xb9c(r3) -/* 80D4DC68 2C 00 00 02 */ cmpwi r0, 2 -/* 80D4DC6C 41 82 00 68 */ beq lbl_80D4DCD4 -/* 80D4DC70 40 80 00 6C */ bge lbl_80D4DCDC -/* 80D4DC74 2C 00 00 00 */ cmpwi r0, 0 -/* 80D4DC78 41 82 00 64 */ beq lbl_80D4DCDC -/* 80D4DC7C 40 80 00 0C */ bge lbl_80D4DC88 -/* 80D4DC80 48 00 00 5C */ b lbl_80D4DCDC -/* 80D4DC84 48 00 00 58 */ b lbl_80D4DCDC -lbl_80D4DC88: -/* 80D4DC88 4B FF FF 25 */ bl isStartCheck__16daStartAndGoal_cFv -/* 80D4DC8C 2C 03 00 00 */ cmpwi r3, 0 -/* 80D4DC90 41 82 00 38 */ beq lbl_80D4DCC8 -/* 80D4DC94 38 00 00 02 */ li r0, 2 -/* 80D4DC98 90 1F 0B 9C */ stw r0, 0xb9c(r31) -/* 80D4DC9C 88 1F 0B 99 */ lbz r0, 0xb99(r31) -/* 80D4DCA0 28 00 00 00 */ cmplwi r0, 0 -/* 80D4DCA4 40 82 00 30 */ bne lbl_80D4DCD4 -/* 80D4DCA8 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */ -/* 80D4DCAC 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */ -/* 80D4DCB0 80 63 00 00 */ lwz r3, 0(r3) -/* 80D4DCB4 38 63 03 D0 */ addi r3, r3, 0x3d0 -/* 80D4DCB8 3C 80 01 00 */ lis r4, 0x0100 /* 0x010000A5@ha */ -/* 80D4DCBC 38 84 00 A5 */ addi r4, r4, 0x00A5 /* 0x010000A5@l */ -/* 80D4DCC0 4B 56 17 DD */ bl subBgmStart__8Z2SeqMgrFUl -/* 80D4DCC4 48 00 00 10 */ b lbl_80D4DCD4 -lbl_80D4DCC8: -/* 80D4DCC8 7F E3 FB 78 */ mr r3, r31 -/* 80D4DCCC 4B FF FF 05 */ bl isReadyCheck__16daStartAndGoal_cFv -/* 80D4DCD0 48 00 00 0C */ b lbl_80D4DCDC -lbl_80D4DCD4: -/* 80D4DCD4 7F E3 FB 78 */ mr r3, r31 -/* 80D4DCD8 4B FF FD 91 */ bl actorPosCheck__16daStartAndGoal_cFv -lbl_80D4DCDC: -/* 80D4DCDC 38 60 00 01 */ li r3, 1 -/* 80D4DCE0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4DCE4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DCE8 7C 08 03 A6 */ mtlr r0 -/* 80D4DCEC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DCF0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__13daNpcF_Path_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__13daNpcF_Path_cFv.s deleted file mode 100644 index 360b5a0a28..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__13daNpcF_Path_cFv.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_80D4DE08: -/* 80D4DE08 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DE0C 7C 08 02 A6 */ mflr r0 -/* 80D4DE10 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DE14 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4DE18 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80D4DE1C 41 82 00 34 */ beq lbl_80D4DE50 -/* 80D4DE20 3C 60 80 D5 */ lis r3, __vt__13daNpcF_Path_c@ha /* 0x80D4DF4C@ha */ -/* 80D4DE24 38 03 DF 4C */ addi r0, r3, __vt__13daNpcF_Path_c@l /* 0x80D4DF4C@l */ -/* 80D4DE28 90 1F 06 2C */ stw r0, 0x62c(r31) -/* 80D4DE2C 34 1F 00 20 */ addic. r0, r31, 0x20 -/* 80D4DE30 41 82 00 10 */ beq lbl_80D4DE40 -/* 80D4DE34 3C 60 80 D5 */ lis r3, __vt__16daNpcF_SPCurve_c@ha /* 0x80D4DF40@ha */ -/* 80D4DE38 38 03 DF 40 */ addi r0, r3, __vt__16daNpcF_SPCurve_c@l /* 0x80D4DF40@l */ -/* 80D4DE3C 90 1F 06 28 */ stw r0, 0x628(r31) -lbl_80D4DE40: -/* 80D4DE40 7C 80 07 35 */ extsh. r0, r4 -/* 80D4DE44 40 81 00 0C */ ble lbl_80D4DE50 -/* 80D4DE48 7F E3 FB 78 */ mr r3, r31 -/* 80D4DE4C 4B 58 0E F1 */ bl __dl__FPv -lbl_80D4DE50: -/* 80D4DE50 7F E3 FB 78 */ mr r3, r31 -/* 80D4DE54 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4DE58 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DE5C 7C 08 03 A6 */ mtlr r0 -/* 80D4DE60 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DE64 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__16daNpcF_SPCurve_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__16daNpcF_SPCurve_cFv.s deleted file mode 100644 index e1af7bd85e..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__16daNpcF_SPCurve_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80D4DE68: -/* 80D4DE68 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DE6C 7C 08 02 A6 */ mflr r0 -/* 80D4DE70 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DE74 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4DE78 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80D4DE7C 41 82 00 1C */ beq lbl_80D4DE98 -/* 80D4DE80 3C A0 80 D5 */ lis r5, __vt__16daNpcF_SPCurve_c@ha /* 0x80D4DF40@ha */ -/* 80D4DE84 38 05 DF 40 */ addi r0, r5, __vt__16daNpcF_SPCurve_c@l /* 0x80D4DF40@l */ -/* 80D4DE88 90 1F 06 08 */ stw r0, 0x608(r31) -/* 80D4DE8C 7C 80 07 35 */ extsh. r0, r4 -/* 80D4DE90 40 81 00 08 */ ble lbl_80D4DE98 -/* 80D4DE94 4B 58 0E A9 */ bl __dl__FPv -lbl_80D4DE98: -/* 80D4DE98 7F E3 FB 78 */ mr r3, r31 -/* 80D4DE9C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4DEA0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DEA4 7C 08 03 A6 */ mtlr r0 -/* 80D4DEA8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DEAC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__21daStartAndGoal_Path_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__21daStartAndGoal_Path_cFv.s deleted file mode 100644 index 76291d1311..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__21daStartAndGoal_Path_cFv.s +++ /dev/null @@ -1,31 +0,0 @@ -lbl_80D4D928: -/* 80D4D928 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4D92C 7C 08 02 A6 */ mflr r0 -/* 80D4D930 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4D934 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4D938 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80D4D93C 41 82 00 44 */ beq lbl_80D4D980 -/* 80D4D940 3C 60 80 D5 */ lis r3, __vt__21daStartAndGoal_Path_c@ha /* 0x80D4DF34@ha */ -/* 80D4D944 38 03 DF 34 */ addi r0, r3, __vt__21daStartAndGoal_Path_c@l /* 0x80D4DF34@l */ -/* 80D4D948 90 1F 06 2C */ stw r0, 0x62c(r31) -/* 80D4D94C 41 82 00 24 */ beq lbl_80D4D970 -/* 80D4D950 3C 60 80 D5 */ lis r3, __vt__13daNpcF_Path_c@ha /* 0x80D4DF4C@ha */ -/* 80D4D954 38 03 DF 4C */ addi r0, r3, __vt__13daNpcF_Path_c@l /* 0x80D4DF4C@l */ -/* 80D4D958 90 1F 06 2C */ stw r0, 0x62c(r31) -/* 80D4D95C 34 1F 00 20 */ addic. r0, r31, 0x20 -/* 80D4D960 41 82 00 10 */ beq lbl_80D4D970 -/* 80D4D964 3C 60 80 D5 */ lis r3, __vt__16daNpcF_SPCurve_c@ha /* 0x80D4DF40@ha */ -/* 80D4D968 38 03 DF 40 */ addi r0, r3, __vt__16daNpcF_SPCurve_c@l /* 0x80D4DF40@l */ -/* 80D4D96C 90 1F 06 28 */ stw r0, 0x628(r31) -lbl_80D4D970: -/* 80D4D970 7C 80 07 35 */ extsh. r0, r4 -/* 80D4D974 40 81 00 0C */ ble lbl_80D4D980 -/* 80D4D978 7F E3 FB 78 */ mr r3, r31 -/* 80D4D97C 4B 58 13 C1 */ bl __dl__FPv -lbl_80D4D980: -/* 80D4D980 7F E3 FB 78 */ mr r3, r31 -/* 80D4D984 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4D988 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4D98C 7C 08 03 A6 */ mtlr r0 -/* 80D4D990 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4D994 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/actorPosCheck__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/actorPosCheck__16daStartAndGoal_cFv.s deleted file mode 100644 index 0c95b58adb..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/actorPosCheck__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,52 +0,0 @@ -lbl_80D4DA68: -/* 80D4DA68 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80D4DA6C 7C 08 02 A6 */ mflr r0 -/* 80D4DA70 90 01 00 34 */ stw r0, 0x34(r1) -/* 80D4DA74 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80D4DA78 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80D4DA7C 7C 7E 1B 78 */ mr r30, r3 -/* 80D4DA80 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D4DA84 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D4DA88 80 63 5D AC */ lwz r3, 0x5dac(r3) -/* 80D4DA8C C0 43 04 D0 */ lfs f2, 0x4d0(r3) -/* 80D4DA90 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 80D4DA94 C0 23 04 D4 */ lfs f1, 0x4d4(r3) -/* 80D4DA98 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80D4DA9C C0 03 04 D8 */ lfs f0, 0x4d8(r3) -/* 80D4DAA0 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80D4DAA4 D0 41 00 08 */ stfs f2, 8(r1) -/* 80D4DAA8 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80D4DAAC D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80D4DAB0 38 7E 05 68 */ addi r3, r30, 0x568 -/* 80D4DAB4 38 81 00 08 */ addi r4, r1, 8 -/* 80D4DAB8 4B FF FD 01 */ bl chkPassed2__21daStartAndGoal_Path_cF4cXyz -/* 80D4DABC 2C 03 00 00 */ cmpwi r3, 0 -/* 80D4DAC0 41 82 00 58 */ beq lbl_80D4DB18 -/* 80D4DAC4 A3 FE 05 68 */ lhz r31, 0x568(r30) -/* 80D4DAC8 38 7E 05 68 */ addi r3, r30, 0x568 -/* 80D4DACC 4B 40 31 4D */ bl getNextIdx__13daNpcF_Path_cFv -/* 80D4DAD0 7C 1F 18 00 */ cmpw r31, r3 -/* 80D4DAD4 40 82 00 44 */ bne lbl_80D4DB18 -/* 80D4DAD8 38 00 00 03 */ li r0, 3 -/* 80D4DADC 90 1E 0B 9C */ stw r0, 0xb9c(r30) -/* 80D4DAE0 88 1E 0B 99 */ lbz r0, 0xb99(r30) -/* 80D4DAE4 54 00 18 38 */ slwi r0, r0, 3 -/* 80D4DAE8 3C 60 80 D5 */ lis r3, l_timerType@ha /* 0x80D4DECC@ha */ -/* 80D4DAEC 38 63 DE CC */ addi r3, r3, l_timerType@l /* 0x80D4DECC@l */ -/* 80D4DAF0 7C 63 00 2E */ lwzx r3, r3, r0 -/* 80D4DAF4 38 80 FF FF */ li r4, -1 -/* 80D4DAF8 4B 2E 1B B9 */ bl dComIfG_TimerEnd__Fii -/* 80D4DAFC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D4DB00 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D4DB04 38 63 0F 38 */ addi r3, r3, 0xf38 -/* 80D4DB08 4B 2D F0 95 */ bl getTimerNowTimeMs__14dComIfG_play_cFv -/* 80D4DB0C 3C 80 80 43 */ lis r4, g_meter2_info@ha /* 0x80430188@ha */ -/* 80D4DB10 38 84 01 88 */ addi r4, r4, g_meter2_info@l /* 0x80430188@l */ -/* 80D4DB14 90 64 00 88 */ stw r3, 0x88(r4) -lbl_80D4DB18: -/* 80D4DB18 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80D4DB1C 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80D4DB20 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80D4DB24 7C 08 03 A6 */ mtlr r0 -/* 80D4DB28 38 21 00 30 */ addi r1, r1, 0x30 -/* 80D4DB2C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/chkPassed2__21daStartAndGoal_Path_cF4cXyz.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/chkPassed2__21daStartAndGoal_Path_cF4cXyz.s deleted file mode 100644 index 970bab9ed6..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/chkPassed2__21daStartAndGoal_Path_cF4cXyz.s +++ /dev/null @@ -1,41 +0,0 @@ -lbl_80D4D7B8: -/* 80D4D7B8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80D4D7BC 7C 08 02 A6 */ mflr r0 -/* 80D4D7C0 90 01 00 34 */ stw r0, 0x34(r1) -/* 80D4D7C4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80D4D7C8 4B 61 4A 15 */ bl _savegpr_29 -/* 80D4D7CC 7C 7D 1B 78 */ mr r29, r3 -/* 80D4D7D0 7C 9E 23 78 */ mr r30, r4 -/* 80D4D7D4 3B E0 00 00 */ li r31, 0 -/* 80D4D7D8 48 00 00 48 */ b lbl_80D4D820 -lbl_80D4D7DC: -/* 80D4D7DC C0 1E 00 00 */ lfs f0, 0(r30) -/* 80D4D7E0 D0 01 00 08 */ stfs f0, 8(r1) -/* 80D4D7E4 C0 1E 00 04 */ lfs f0, 4(r30) -/* 80D4D7E8 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 80D4D7EC C0 1E 00 08 */ lfs f0, 8(r30) -/* 80D4D7F0 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80D4D7F4 7F A3 EB 78 */ mr r3, r29 -/* 80D4D7F8 38 81 00 08 */ addi r4, r1, 8 -/* 80D4D7FC 4B 40 32 29 */ bl chkPassed__13daNpcF_Path_cF4cXyz -/* 80D4D800 2C 03 00 00 */ cmpwi r3, 0 -/* 80D4D804 41 82 00 24 */ beq lbl_80D4D828 -/* 80D4D808 3B E0 00 01 */ li r31, 1 -/* 80D4D80C 7F A3 EB 78 */ mr r3, r29 -/* 80D4D810 4B 40 33 D1 */ bl setNextIdx__13daNpcF_Path_cFv -/* 80D4D814 2C 03 00 00 */ cmpwi r3, 0 -/* 80D4D818 41 82 00 08 */ beq lbl_80D4D820 -/* 80D4D81C 3B E0 00 02 */ li r31, 2 -lbl_80D4D820: -/* 80D4D820 2C 1F 00 01 */ cmpwi r31, 1 -/* 80D4D824 41 80 FF B8 */ blt lbl_80D4D7DC -lbl_80D4D828: -/* 80D4D828 7C 1F 00 D0 */ neg r0, r31 -/* 80D4D82C 7C 00 F8 78 */ andc r0, r0, r31 -/* 80D4D830 54 03 0F FE */ srwi r3, r0, 0x1f -/* 80D4D834 39 61 00 30 */ addi r11, r1, 0x30 -/* 80D4D838 4B 61 49 F1 */ bl _restgpr_29 -/* 80D4D83C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80D4D840 7C 08 03 A6 */ mtlr r0 -/* 80D4D844 38 21 00 30 */ addi r1, r1, 0x30 -/* 80D4D848 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Delete__FP16daStartAndGoal_c.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Delete__FP16daStartAndGoal_c.s deleted file mode 100644 index 2af9b86d85..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Delete__FP16daStartAndGoal_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80D4DDC8: -/* 80D4DDC8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DDCC 7C 08 02 A6 */ mflr r0 -/* 80D4DDD0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DDD4 4B FF FF 29 */ bl Delete__16daStartAndGoal_cFv -/* 80D4DDD8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DDDC 7C 08 03 A6 */ mtlr r0 -/* 80D4DDE0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DDE4 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Draw__FP16daStartAndGoal_c.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Draw__FP16daStartAndGoal_c.s deleted file mode 100644 index 9920c5d50a..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Draw__FP16daStartAndGoal_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80D4DDA0: -/* 80D4DDA0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DDA4 7C 08 02 A6 */ mflr r0 -/* 80D4DDA8 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DDAC 4B FF FF 49 */ bl Draw__16daStartAndGoal_cFv -/* 80D4DDB0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DDB4 7C 08 03 A6 */ mtlr r0 -/* 80D4DDB8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DDBC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Execute__FP16daStartAndGoal_c.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Execute__FP16daStartAndGoal_c.s deleted file mode 100644 index ee4dc89e6a..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Execute__FP16daStartAndGoal_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80D4DD80: -/* 80D4DD80 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DD84 7C 08 02 A6 */ mflr r0 -/* 80D4DD88 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DD8C 4B FF FE C5 */ bl Execute__16daStartAndGoal_cFv -/* 80D4DD90 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DD94 7C 08 03 A6 */ mtlr r0 -/* 80D4DD98 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DD9C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_create__FP10fopAc_ac_c.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_create__FP10fopAc_ac_c.s deleted file mode 100644 index 9957cd6094..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_create__FP10fopAc_ac_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80D4DDE8: -/* 80D4DDE8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DDEC 7C 08 02 A6 */ mflr r0 -/* 80D4DDF0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DDF4 4B FF FA 91 */ bl Create__16daStartAndGoal_cFv -/* 80D4DDF8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DDFC 7C 08 03 A6 */ mtlr r0 -/* 80D4DE00 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DE04 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/getType__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/getType__16daStartAndGoal_cFv.s deleted file mode 100644 index 5d49626149..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/getType__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_80D4D84C: -/* 80D4D84C 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 80D4D850 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80D4D854 2C 00 00 01 */ cmpwi r0, 1 -/* 80D4D858 41 82 00 1C */ beq lbl_80D4D874 -/* 80D4D85C 40 80 00 20 */ bge lbl_80D4D87C -/* 80D4D860 2C 00 00 00 */ cmpwi r0, 0 -/* 80D4D864 40 80 00 08 */ bge lbl_80D4D86C -/* 80D4D868 48 00 00 14 */ b lbl_80D4D87C -lbl_80D4D86C: -/* 80D4D86C 38 60 00 00 */ li r3, 0 -/* 80D4D870 4E 80 00 20 */ blr -lbl_80D4D874: -/* 80D4D874 38 60 00 01 */ li r3, 1 -/* 80D4D878 4E 80 00 20 */ blr -lbl_80D4D87C: -/* 80D4D87C 38 60 00 02 */ li r3, 2 -/* 80D4D880 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/init__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/init__16daStartAndGoal_cFv.s deleted file mode 100644 index f4cd2c3f1a..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/init__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,54 +0,0 @@ -lbl_80D4D998: -/* 80D4D998 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4D99C 7C 08 02 A6 */ mflr r0 -/* 80D4D9A0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4D9A4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4D9A8 93 C1 00 08 */ stw r30, 8(r1) -/* 80D4D9AC 7C 7E 1B 78 */ mr r30, r3 -/* 80D4D9B0 3C 80 80 D5 */ lis r4, l_DATA@ha /* 0x80D4DEB8@ha */ -/* 80D4D9B4 3B E4 DE B8 */ addi r31, r4, l_DATA@l /* 0x80D4DEB8@l */ -/* 80D4D9B8 38 00 00 01 */ li r0, 1 -/* 80D4D9BC 98 03 0B 98 */ stb r0, 0xb98(r3) -/* 80D4D9C0 38 00 00 00 */ li r0, 0 -/* 80D4D9C4 98 03 0B A0 */ stb r0, 0xba0(r3) -/* 80D4D9C8 4B FF FE 85 */ bl getType__16daStartAndGoal_cFv -/* 80D4D9CC 98 7E 0B 99 */ stb r3, 0xb99(r30) -/* 80D4D9D0 38 7E 05 68 */ addi r3, r30, 0x568 -/* 80D4D9D4 4B 40 2F 2D */ bl initialize__13daNpcF_Path_cFv -/* 80D4D9D8 38 7E 05 68 */ addi r3, r30, 0x568 -/* 80D4D9DC 80 1E 00 B0 */ lwz r0, 0xb0(r30) -/* 80D4D9E0 54 04 C6 3E */ rlwinm r4, r0, 0x18, 0x18, 0x1f -/* 80D4D9E4 88 1E 04 E2 */ lbz r0, 0x4e2(r30) -/* 80D4D9E8 7C 05 07 74 */ extsb r5, r0 -/* 80D4D9EC 38 C0 00 00 */ li r6, 0 -/* 80D4D9F0 4B 40 2F 6D */ bl setPathInfo__13daNpcF_Path_cFUcScUc -/* 80D4D9F4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D4D9F8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D4D9FC 38 63 0F 38 */ addi r3, r3, 0xf38 -/* 80D4DA00 4B 2D F1 DD */ bl getTimerPtr__14dComIfG_play_cFv -/* 80D4DA04 28 03 00 00 */ cmplwi r3, 0 -/* 80D4DA08 40 82 00 40 */ bne lbl_80D4DA48 -/* 80D4DA0C 88 1E 0B 99 */ lbz r0, 0xb99(r30) -/* 80D4DA10 54 00 18 38 */ slwi r0, r0, 3 -/* 80D4DA14 3C 60 80 D5 */ lis r3, l_timerType@ha /* 0x80D4DECC@ha */ -/* 80D4DA18 38 A3 DE CC */ addi r5, r3, l_timerType@l /* 0x80D4DECC@l */ -/* 80D4DA1C 7C 65 00 2E */ lwzx r3, r5, r0 -/* 80D4DA20 3C 80 00 99 */ lis r4, 0x0099 /* 0x00989298@ha */ -/* 80D4DA24 38 84 92 98 */ addi r4, r4, 0x9298 /* 0x00989298@l */ -/* 80D4DA28 7C A5 02 14 */ add r5, r5, r0 -/* 80D4DA2C 88 A5 00 04 */ lbz r5, 4(r5) -/* 80D4DA30 38 C0 00 00 */ li r6, 0 -/* 80D4DA34 C0 3F 00 04 */ lfs f1, 4(r31) -/* 80D4DA38 C0 5F 00 08 */ lfs f2, 8(r31) -/* 80D4DA3C C0 7F 00 0C */ lfs f3, 0xc(r31) -/* 80D4DA40 C0 9F 00 10 */ lfs f4, 0x10(r31) -/* 80D4DA44 4B 51 35 49 */ bl dTimer_createTimer__FlUlUcUcffff -lbl_80D4DA48: -/* 80D4DA48 38 00 00 00 */ li r0, 0 -/* 80D4DA4C 90 1E 0B 9C */ stw r0, 0xb9c(r30) -/* 80D4DA50 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4DA54 83 C1 00 08 */ lwz r30, 8(r1) -/* 80D4DA58 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DA5C 7C 08 03 A6 */ mtlr r0 -/* 80D4DA60 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DA64 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isReadyCheck__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isReadyCheck__16daStartAndGoal_cFv.s deleted file mode 100644 index cbeee45e93..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isReadyCheck__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,36 +0,0 @@ -lbl_80D4DBD0: -/* 80D4DBD0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DBD4 7C 08 02 A6 */ mflr r0 -/* 80D4DBD8 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DBDC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4DBE0 7C 7F 1B 78 */ mr r31, r3 -/* 80D4DBE4 88 03 0B A0 */ lbz r0, 0xba0(r3) -/* 80D4DBE8 28 00 00 00 */ cmplwi r0, 0 -/* 80D4DBEC 41 82 00 0C */ beq lbl_80D4DBF8 -/* 80D4DBF0 38 60 00 01 */ li r3, 1 -/* 80D4DBF4 48 00 00 48 */ b lbl_80D4DC3C -lbl_80D4DBF8: -/* 80D4DBF8 4B 51 37 49 */ bl dTimer_isReadyFlag__Fv -/* 80D4DBFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80D4DC00 41 82 00 34 */ beq lbl_80D4DC34 -/* 80D4DC04 38 00 00 01 */ li r0, 1 -/* 80D4DC08 98 1F 0B A0 */ stb r0, 0xba0(r31) -/* 80D4DC0C 88 1F 0B 99 */ lbz r0, 0xb99(r31) -/* 80D4DC10 28 00 00 01 */ cmplwi r0, 1 -/* 80D4DC14 40 82 00 20 */ bne lbl_80D4DC34 -/* 80D4DC18 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */ -/* 80D4DC1C 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */ -/* 80D4DC20 80 63 00 00 */ lwz r3, 0(r3) -/* 80D4DC24 38 63 03 D0 */ addi r3, r3, 0x3d0 -/* 80D4DC28 3C 80 01 00 */ lis r4, 0x0100 /* 0x0100006E@ha */ -/* 80D4DC2C 38 84 00 6E */ addi r4, r4, 0x006E /* 0x0100006E@l */ -/* 80D4DC30 4B 56 18 6D */ bl subBgmStart__8Z2SeqMgrFUl -lbl_80D4DC34: -/* 80D4DC34 4B 51 35 BD */ bl dTimer_isStart__Fv -/* 80D4DC38 54 63 06 3E */ clrlwi r3, r3, 0x18 -lbl_80D4DC3C: -/* 80D4DC3C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4DC40 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DC44 7C 08 03 A6 */ mtlr r0 -/* 80D4DC48 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DC4C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isStartCheck__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isStartCheck__16daStartAndGoal_cFv.s deleted file mode 100644 index 61e0953f12..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isStartCheck__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80D4DBAC: -/* 80D4DBAC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DBB0 7C 08 02 A6 */ mflr r0 -/* 80D4DBB4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DBB8 4B 51 36 39 */ bl dTimer_isStart__Fv -/* 80D4DBBC 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 80D4DBC0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DBC4 7C 08 03 A6 */ mtlr r0 -/* 80D4DBC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DBCC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/readyStartTimer__16daStartAndGoal_cFv.s b/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/readyStartTimer__16daStartAndGoal_cFv.s deleted file mode 100644 index 57e3624234..0000000000 --- a/asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/readyStartTimer__16daStartAndGoal_cFv.s +++ /dev/null @@ -1,34 +0,0 @@ -lbl_80D4DB30: -/* 80D4DB30 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D4DB34 7C 08 02 A6 */ mflr r0 -/* 80D4DB38 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D4DB3C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D4DB40 7C 7F 1B 78 */ mr r31, r3 -/* 80D4DB44 88 03 0B 99 */ lbz r0, 0xb99(r3) -/* 80D4DB48 54 00 18 38 */ slwi r0, r0, 3 -/* 80D4DB4C 3C 60 80 D5 */ lis r3, l_timerType@ha /* 0x80D4DECC@ha */ -/* 80D4DB50 38 63 DE CC */ addi r3, r3, l_timerType@l /* 0x80D4DECC@l */ -/* 80D4DB54 7C 63 00 2E */ lwzx r3, r3, r0 -/* 80D4DB58 38 80 00 00 */ li r4, 0 -/* 80D4DB5C 4B 2E 19 D1 */ bl dComIfG_TimerStart__Fis -/* 80D4DB60 2C 03 00 00 */ cmpwi r3, 0 -/* 80D4DB64 41 82 00 30 */ beq lbl_80D4DB94 -/* 80D4DB68 38 00 00 01 */ li r0, 1 -/* 80D4DB6C 90 1F 0B 9C */ stw r0, 0xb9c(r31) -/* 80D4DB70 3C 60 80 D5 */ lis r3, l_timerType@ha /* 0x80D4DECC@ha */ -/* 80D4DB74 38 63 DE CC */ addi r3, r3, l_timerType@l /* 0x80D4DECC@l */ -/* 80D4DB78 88 1F 0B 99 */ lbz r0, 0xb99(r31) -/* 80D4DB7C 54 00 18 38 */ slwi r0, r0, 3 -/* 80D4DB80 7C 63 02 14 */ add r3, r3, r0 -/* 80D4DB84 88 03 00 05 */ lbz r0, 5(r3) -/* 80D4DB88 98 1F 0B 98 */ stb r0, 0xb98(r31) -/* 80D4DB8C 38 60 00 01 */ li r3, 1 -/* 80D4DB90 48 00 00 08 */ b lbl_80D4DB98 -lbl_80D4DB94: -/* 80D4DB94 38 60 00 00 */ li r3, 0 -lbl_80D4DB98: -/* 80D4DB98 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D4DB9C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D4DBA0 7C 08 03 A6 */ mtlr r0 -/* 80D4DBA4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D4DBA8 4E 80 00 20 */ blr diff --git a/include/JSystem/JGadget/search.h b/include/JSystem/JGadget/search.h index a7b3510800..0ef191d046 100644 --- a/include/JSystem/JGadget/search.h +++ b/include/JSystem/JGadget/search.h @@ -1,7 +1,7 @@ #ifndef SEARCH_H #define SEARCH_H -#include "global.h" +#include "dolphin/os.h" namespace JGadget { diff --git a/include/JSystem/JMath/JMATrigonometric.h b/include/JSystem/JMath/JMATrigonometric.h index 48107ab04d..206cc47077 100644 --- a/include/JSystem/JMath/JMATrigonometric.h +++ b/include/JSystem/JMath/JMATrigonometric.h @@ -15,8 +15,8 @@ struct TAngleConstant_ { struct TSinCosTable { std::pair table[0x2000]; - f32 sinShort(s16 v) const { return table[static_cast(v) >> 3].first; } - f32 cosShort(s16 v) const { return table[static_cast(v) >> 3].second; } + f32 sinShort(s16 v) const { return table[(u16)v >> 3U].first; } + f32 cosShort(s16 v) const { return table[(u16)v >> 3U].second; } inline f32 sinLap(f32 v) { if (v < 0.0f) { diff --git a/include/JSystem/JStudio/JStudio/functionvalue.h b/include/JSystem/JStudio/JStudio/functionvalue.h index 9dd8d9abd0..cc03e765d6 100644 --- a/include/JSystem/JStudio/JStudio/functionvalue.h +++ b/include/JSystem/JStudio/JStudio/functionvalue.h @@ -3,6 +3,7 @@ #include "JSystem/JGadget/search.h" #include "JSystem/JGadget/vector.h" +#include "dolphin/os.h" #include "global.h" namespace JStudio { diff --git a/include/JSystem/JStudio/JStudio/stb.h b/include/JSystem/JStudio/JStudio/stb.h index dd56bce92a..00b5e6fe17 100644 --- a/include/JSystem/JStudio/JStudio/stb.h +++ b/include/JSystem/JStudio/JStudio/stb.h @@ -4,7 +4,7 @@ #include "JSystem/JGadget/linklist.h" #include "JSystem/JStudio/JStudio/object-id.h" #include "JSystem/JStudio/JStudio/stb-data-parse.h" -#include "global.h" +#include "dolphin/os.h" namespace JStudio { struct TObject; diff --git a/include/d/a/d_a_itembase.h b/include/d/a/d_a_itembase.h index 2231dae7f6..e8f1ed76f6 100644 --- a/include/d/a/d_a_itembase.h +++ b/include/d/a/d_a_itembase.h @@ -4,7 +4,7 @@ #include "SSystem/SComponent/c_phase.h" #include "d/bg/d_bg_s_acch.h" #include "d/cc/d_cc_d.h" -#include "f_op/f_op_actor.h" +#include "f_op/f_op_actor_mng.h" struct daItemBase_data { /* 0x00 */ f32 mGravity; @@ -71,7 +71,7 @@ public: /* 0x764 */ dBgS_AcchCir mAcchCir; /* 0x7A4 */ dCcD_Stts mColStatus; /* 0x7E0 */ dCcD_Cyl mCollider; - /* 0x91C */ u32 field_0x91c; + /* 0x91C */ u32 mShadowKey; /* 0x920 */ u32 field_0x920; /* 0x924 */ int field_0x924; /* 0x928 */ s16 field_0x928; diff --git a/include/d/a/d_a_npc.h b/include/d/a/d_a_npc.h index 72a7df4e6e..53644bf54a 100644 --- a/include/d/a/d_a_npc.h +++ b/include/d/a/d_a_npc.h @@ -867,7 +867,13 @@ private: public: /* 80150870 */ void initialize(dPath*, int); -}; + + daNpcF_SPCurve_c() { + initialize(NULL, 0); + } + + virtual ~daNpcF_SPCurve_c() {} +}; // Size: 0x60C class daNpcF_Path_c { private: @@ -888,17 +894,23 @@ public: /* 80150A7C */ void chkPassedDst(cXyz); /* 80150BBC */ void reverse(); /* 80150BE0 */ int setNextIdx(); - /* 80150C18 */ u16 getNextIdx(); + /* 80150C18 */ int getNextIdx(); /* 80150C60 */ u16 getBeforeIdx(); /* 80150CA8 */ int getBeforePos(cXyz&); /* 80150D44 */ int getNextPos(cXyz&); /* 80150DE0 */ int getDstPos(cXyz, cXyz&); /* 80150EB4 */ void setNextIdxDst(cXyz); - u16& getIdx() { return mIdx; }; - inline Vec getPntPos(int i_idx) { return mpRoomPath->m_points[i_idx].m_position; } + daNpcF_Path_c() { + initialize(); + } + + virtual ~daNpcF_Path_c() {} + + int getIdx() { return mIdx; }; + Vec getPntPos(int i_idx) { return mpRoomPath->m_points[i_idx].m_position; } int chkClose() { return dPath_ChkClose(mpRoomPath); } -}; +}; // Size: 0x630 class daNpcF_Lookat_c { private: diff --git a/include/d/a/d_a_shop_item_static.h b/include/d/a/d_a_shop_item_static.h index bc6dd4448f..c6c3cf96c4 100644 --- a/include/d/a/d_a_shop_item_static.h +++ b/include/d/a/d_a_shop_item_static.h @@ -12,6 +12,18 @@ struct ResourceData { s16 get_bxa1Name() const { return mBxaName; } s16 get_brk1Name() const { return mBrkName; } s16 get_btp1Name() const { return mBtpName; } + f32 get_scale() const { return mScale; } + f32 get_offsetY() const { return mOffsetY; } + s16 get_angleX() const { return mAngle.x; } + s16 get_angleY() const { return mAngle.y; } + s16 get_angleZ() const { return mAngle.z; } + s16 get_angleOffsetX() const { return mAngleOffsetX; } + u32 get_flag() const { return mFlag; } + s8 get_tevfrm() const { return mTevFrm; } + s8 get_btpfrm() const { return mBtpFrm; } + u8 get_shadowSize() const { return mShadowSize; } + u8 get_collisionH() const { return mCollisionH; } + u8 get_collisionR() const { return mCollisionR; } /* 0x00 */ const char* mArcName; /* 0x04 */ s16 mBmdName; @@ -37,6 +49,24 @@ class daShopItem_c : public daItemBase_c { public: /* 80037C14 */ csXyz* getRotateP(); /* 80037C1C */ cXyz* getPosP(); + /* 8059E9B8 */ const char* getShopArcname(); + /* 8059EC04 */ u16 getHeapSize(); + /* 8059EC1C */ void CreateInit(); + /* 8059ED58 */ void set_mtx(); + /* 8059EEF4 */ bool _execute(); + /* 8059EF48 */ bool _draw(); + + inline int _create(); + inline int _delete(); + + /* 8059EF9C */ virtual void setListStart(); + /* 8059EFA0 */ virtual void setShadow(); + /* 8059F024 */ virtual BOOL chkFlag(int); + /* 8059F044 */ virtual s8 getTevFrm(); + /* 8059F064 */ virtual s8 getBtpFrm(); + /* 8059F084 */ virtual u8 getShadowSize(); + /* 8059F0A0 */ virtual u8 getCollisionH(); + /* 8059F0BC */ virtual u8 getCollisionR(); u8 getShopItemID() const { return mShopItemID; } s16 getAngleX() const { return mAngleX; } @@ -45,6 +75,34 @@ public: void setAngleY(s16 angle) { mAngleY = angle;} static ResourceData const mData[23]; + static f32 const m_cullfar_max; + + enum { + SHOP_ITEMNO_SOLD, + SHOP_ITEMNO_OIL, + SHOP_ITEMNO_RED, + SHOP_ITEMNO_MILK, + SHOP_ITEMNO_HALF_MILK, + SHOP_ITEMNO_ARROW, + SHOP_ITEMNO_SHIELD_B, + SHOP_ITEMNO_SHIELD_A, + SHOP_ITEMNO_BOMB, + SHOP_ITEMNO_WATER_BOMB, + SHOP_ITEMNO_POKE_BOMB, + SHOP_ITEMNO_BOMB_BAG, + SHOP_ITEMNO_BOMB_BAG_LV2, + SHOP_ITEMNO_LAND_MINE, + SHOP_ITEMNO_BOTTLE2, + SHOP_ITEMNO_BEE_CHILD, + SHOP_ITEMNO_PACHINKO, + SHOP_ITEMNO_BLUE, + SHOP_ITEMNO_HAWKEYE, + SHOP_ITEMNO_ARMOR, + SHOP_ITEMNO_ARMOR_SOLD, + SHOP_ITEMNO_GREEN, + SHOP_ITEMNO_DROP, + SHOP_ITEMNO_MAX, + }; private: /* 0x92C */ Mtx mMtx; @@ -54,4 +112,6 @@ private: /* 0x964 */ u8 mShopItemID; }; +int CheckShopItemCreateHeap(fopAc_ac_c* i_this); + #endif /* D_A_D_A_SHOP_ITEM_STATIC_H */ diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index d10b8eeef3..0de93bcaeb 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -823,6 +823,7 @@ int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* resName int dComIfG_TimerDeleteRequest(int i_mode); int dComIfG_TimerStart(int i_mode, s16 i_time); bool dComIfGp_isLightDropMapVisible(); +int dComIfG_TimerEnd(int i_mode, int param_1); inline void dComIfG_setBrightness(u8 brightness) { g_dComIfG_gameInfo.mFadeBrightness = brightness; diff --git a/include/d/d_stage.h b/include/d/d_stage.h index 32b5626177..e469243d41 100644 --- a/include/d/d_stage.h +++ b/include/d/d_stage.h @@ -292,7 +292,7 @@ struct dStage_dPnt_c { /* 0x1 */ u8 field_0x1; /* 0x2 */ u8 field_0x2; /* 0x3 */ u8 field_0x3; - /* 0x4 */ cXyz m_position; + /* 0x4 */ Vec m_position; }; // Size: 0x10 struct dStage_FloorInfo_c { diff --git a/include/d/d_timer.h b/include/d/d_timer.h index fce6bed8c4..1365cbc59c 100644 --- a/include/d/d_timer.h +++ b/include/d/d_timer.h @@ -10,9 +10,11 @@ class JKRArchive; class JKRExpHeap; s32 dTimer_createStockTimer(); -s32 dTimer_createTimer(s32 param_0, u32 param_1, u8 param_2, u8 param_3, f32 param_4, f32 param_5, +s32 dTimer_createTimer(s32 i_mode, u32 i_limitMs, u8 i_type, u8 param_3, f32 param_4, f32 param_5, f32 param_6, f32 param_7); int dTimer_getRestTimeMs(); +u8 dTimer_isStart(); +u8 dTimer_isReadyFlag(); class dDlst_TimerScrnDraw_c : public dDlst_base_c { public: @@ -125,7 +127,7 @@ public: /* 8025D9F0 */ int getTimeMs(); /* 8025DA54 */ int getLimitTimeMs(); /* 8025DA9C */ int getRestTimeMs(); - /* 8025DB10 */ int isStart(); + /* 8025DB10 */ u8 isStart(); /* 802613DC */ int createGetIn(cXyz); s32 createStart(u16 param_0) { return mp_tm_scrn->createStart(param_0); } diff --git a/include/dolphin/os.h b/include/dolphin/os.h index b320ec27b1..2f436afe8b 100644 --- a/include/dolphin/os.h +++ b/include/dolphin/os.h @@ -97,11 +97,13 @@ void OSReportInit(void); #define OS_REPORT(...) OSReport(__VA_ARGS__) #define OS_PANIC(msg) OSPanic(__FILE__, __LINE__, msg) #define ASSERTMSG(exp, msg) (void)((exp) || (OSPanic(__FILE__, __LINE__, (msg)), 0)) +#define ASSERT(cond) ((cond) || (OSPanic(__FILE__, line, "Failed assertion " #cond), 0)) #else #define OS_REPORT(...) #define OS_REPORT_ERROR(...) #define OS_PANIC(...) #define ASSERTMSG(exp, msg) ((void)0) +#define ASSERT(cond) ((void)0) #endif extern u8 __OSReport_disable; diff --git a/include/global.h b/include/global.h index 2a255c6070..9898b9f220 100644 --- a/include/global.h +++ b/include/global.h @@ -13,7 +13,6 @@ #define IS_NOT_ALIGNED(X, N) (((X) & ((N)-1)) != 0) #define JUT_EXPECT(...) -#define ASSERT(...) #define FLAG_ON(V, F) (((V) & (F)) == 0) #define FLOAT_LABEL(x) (*(f32*)&x) diff --git a/include/rel/d/a/b/d_a_b_go/d_a_b_go.h b/include/rel/d/a/b/d_a_b_go/d_a_b_go.h index 82a20e840f..bb524ad0b2 100644 --- a/include/rel/d/a/b/d_a_b_go/d_a_b_go.h +++ b/include/rel/d/a/b/d_a_b_go/d_a_b_go.h @@ -1,5 +1,42 @@ #ifndef D_A_B_GO_H #define D_A_B_GO_H +#include "f_op/f_op_actor_mng.h" +#include "Z2AudioLib/Z2Creature.h" +#include "d/cc/d_cc_d.h" +#include "d/cc/d_cc_uty.h" + +#define GORON_CHILD_MAX 31 + +class b_go_class : public fopEn_enemy_c { +public: + /* 80603CA0 */ b_go_class(); + + /* 0x5AC */ request_of_phase_process_class mPhase; + /* 0x5B4 */ mDoExt_McaMorfSO* mpMorf; + /* 0x5B8 */ Z2CreatureEnemy mSound; + /* 0x65C */ int mAnmID; + /* 0x660 */ u8 unk_0x660; + /* 0x661 */ u8 field_0x661[0x668 - 0x661]; + /* 0x668 */ s16 unk_0x668; + /* 0x66A */ s16 mActionID; + /* 0x66C */ s16 mMode; + /* 0x66E */ u8 field_0x66e[0x67e - 0x66e]; + /* 0x67E */ s16 mAngleToPlayer; + /* 0x680 */ f32 mDistToPlayer; + /* 0x684 */ u8 field_0x684[4]; + /* 0x688 */ s16 mTimers[4]; + /* 0x690 */ s16 unk_0x690; + /* 0x692 */ s16 field_0x692; + /* 0x694 */ dBgS_AcchCir mAcchCir; + /* 0x6D4 */ dBgS_ObjAcch mAcch; + /* 0x8AC */ dCcD_Stts mStts; + /* 0x8E8 */ dCcD_Sph field_0x8e8; + /* 0xA20 */ dCcD_Sph field_0xa20; + /* 0xB58 */ dCcD_Cyl field_0xb58; + /* 0xC94 */ dCcU_AtInfo mAtInfo; + /* 0xCB8 */ u32 mGoronChildIDs[GORON_CHILD_MAX]; + /* 0xD34 */ u8 field_0xd34; +}; #endif /* D_A_B_GO_H */ diff --git a/include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h b/include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h index 05d72ddfa3..c823bdca94 100644 --- a/include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h +++ b/include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h @@ -1,6 +1,43 @@ #ifndef D_A_B_GOS_H #define D_A_B_GOS_H -#include "dolphin/types.h" +#include "Z2AudioLib/Z2Creature.h" +#include "d/cc/d_cc_d.h" +#include "d/cc/d_cc_uty.h" +#include "f_op/f_op_actor_mng.h" + +class b_gos_class : public fopEn_enemy_c { +public: + /* 80605024 */ b_gos_class(); + + /* 0x5AC */ request_of_phase_process_class mPhase; + /* 0x5B4 */ mDoExt_McaMorfSO* mpMorf; + /* 0x5B8 */ Z2CreatureEnemy mSound; + /* 0x65C */ int mAnmID; + /* 0x660 */ u32 mJointIndex; + /* 0x664 */ u8 field_0x664[0x668 - 0x664]; + /* 0x668 */ u32 mShadowKey; + /* 0x66C */ s16 field_0x66c; + /* 0x66E */ s16 mAction; + /* 0x670 */ s16 mMode; + /* 0x672 */ u8 field_0x672[0x680 - 0x672]; + /* 0x680 */ s16 mWalkDirection; + /* 0x682 */ s16 mAngleToPlayer; + /* 0x684 */ f32 mDistToPlayer; + /* 0x688 */ u8 field_0x688[0x68C - 0x688]; + /* 0x68C */ s16 mTimers[4]; + /* 0x694 */ s16 field_0x694; + /* 0x698 */ f32 field_0x698; + /* 0x69C */ f32 field_0x69c; + /* 0x6A0 */ s16 mAngleOffset; + /* 0x6A4 */ dBgS_AcchCir mAcchCir; + /* 0x6E4 */ dBgS_ObjAcch mAcch; + /* 0x8BC */ dCcD_Stts mCcStts; + /* 0x8F8 */ dCcD_Sph field_0x8f8; + /* 0xA30 */ dCcD_Sph field_0xa30; + /* 0xB68 */ dCcD_Cyl mCyl; + /* 0xCA4 */ dCcU_AtInfo mAtInfo; + /* 0xCC8 */ u8 field_0xcc8; +}; #endif /* D_A_B_GOS_H */ diff --git a/include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h b/include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h index 1fc10bd7b4..efb2b49387 100644 --- a/include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h +++ b/include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h @@ -6,7 +6,7 @@ class daB_OH_HIO_c { public: /* 8061B72C */ daB_OH_HIO_c(); - /* 8061D93C */ virtual ~daB_OH_HIO_c(); + /* 8061D93C */ virtual ~daB_OH_HIO_c(); // supposed to be inlined /* 0x4 */ s8 field_0x4; /* 0x8 */ f32 mModelSize; diff --git a/include/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h b/include/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h index f55bb9ca7b..19970cc41c 100644 --- a/include/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h +++ b/include/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h @@ -20,10 +20,12 @@ public: /* 0x578 */ mDoExt_btkAnm* mpBtkAnm; /* 0x57C */ u32 mPlayerID; /* 0x580 */ u32 mBossID; - /* 0x584 */ u8 field_0x584[4]; - /* 0x588 */ f32 field_0x588; - /* 0x58C */ csXyz field_0x58c; - /* 0x594 */ Mtx field_0x594; + /* 0x584 */ u8 mSinkTimers[2]; + /* 0x586 */ bool mSinkPlayer; + /* 0x587 */ bool mSinkZant; + /* 0x588 */ f32 mHeight; + /* 0x58C */ csXyz mRotation; + /* 0x594 */ Mtx mMtx; /* 0x5C4 */ dBgW* mpBgW; }; diff --git a/include/rel/d/a/d_a_shop_item/d_a_shop_item.h b/include/rel/d/a/d_a_shop_item/d_a_shop_item.h index a3cd4a9dc2..b5cff75720 100644 --- a/include/rel/d/a/d_a_shop_item/d_a_shop_item.h +++ b/include/rel/d/a/d_a_shop_item/d_a_shop_item.h @@ -1,6 +1,16 @@ #ifndef D_A_SHOP_ITEM_H #define D_A_SHOP_ITEM_H -#include "dolphin/types.h" +#include "d/a/d_a_shop_item_static.h" + +namespace daShopItem_prm { +inline u8 getGroup(daShopItem_c* i_this) { + return fopAcM_GetParam(i_this) >> 0x1C; +} + +inline u8 getItemNo(daShopItem_c* i_this) { + return fopAcM_GetParam(i_this) & 0xFF; +} +} // namespace dahopItem_prm #endif /* D_A_SHOP_ITEM_H */ diff --git a/include/rel/d/a/d_a_spinner/d_a_spinner.h b/include/rel/d/a/d_a_spinner/d_a_spinner.h index 418ae6d453..133fb20971 100644 --- a/include/rel/d/a/d_a_spinner/d_a_spinner.h +++ b/include/rel/d/a/d_a_spinner/d_a_spinner.h @@ -19,7 +19,7 @@ public: /* 804D3174 */ void setWallHit(s16, u32); /* 804D34B0 */ void setAnm(); /* 804D3618 */ int setNextPathNum(); - /* 804D3694 */ cXyz* getPathNextPos(); + /* 804D3694 */ Vec* getPathNextPos(); /* 804D36F4 */ int checkLineWallHit(cXyz*, cXyz*); /* 804D3774 */ int checkPathMove(); /* 804D3D60 */ void setSpreadEffect(); diff --git a/libs/JSystem/JAudio2/JAISound.cpp b/libs/JSystem/JAudio2/JAISound.cpp index 4baee71cf2..b8de2969fd 100644 --- a/libs/JSystem/JAudio2/JAISound.cpp +++ b/libs/JSystem/JAudio2/JAISound.cpp @@ -243,7 +243,7 @@ void JAISound::initTrack_JAISound_(JASTrack* track) { numChannels++; } } - ASSERT(numChannels >= 1) + ASSERT(numChannels >= 1); track->setChannelMgrCount(numChannels); for (size_t i = 0; i < track->getChannelMgrCount(); i++) { track->assignExtBuffer(i, soundParams[i]); diff --git a/libs/JSystem/JAudio2/JASWaveArcLoader.cpp b/libs/JSystem/JAudio2/JASWaveArcLoader.cpp index 3876ec44af..24e440b19e 100644 --- a/libs/JSystem/JAudio2/JASWaveArcLoader.cpp +++ b/libs/JSystem/JAudio2/JASWaveArcLoader.cpp @@ -10,7 +10,7 @@ #include "JSystem/JKernel/JKRDvdAramRipper.h" #include "string.h" #include "dolphin/dvd.h" -#include "global.h" +#include "dolphin/os.h" // // Forward References: diff --git a/libs/JSystem/JAudio2/JAUStreamFileTable.cpp b/libs/JSystem/JAudio2/JAUStreamFileTable.cpp index 327dce227c..c60031f4eb 100644 --- a/libs/JSystem/JAudio2/JAUStreamFileTable.cpp +++ b/libs/JSystem/JAudio2/JAUStreamFileTable.cpp @@ -1,6 +1,6 @@ #include "JSystem/JAudio2/JAUStreamFileTable.h" #include "dolphin/dvd.h" -#include "global.h" +#include "dolphin/os.h" /* 802A7420-802A742C 2A1D60 000C+00 0/0 1/1 0/0 .text __ct__18JAUStreamFileTableFv */ JAUStreamFileTable::JAUStreamFileTable() { diff --git a/libs/JSystem/JStudio/JStudio/stb-data-parse.cpp b/libs/JSystem/JStudio/JStudio/stb-data-parse.cpp index d2f7d3a6de..26dc041743 100644 --- a/libs/JSystem/JStudio/JStudio/stb-data-parse.cpp +++ b/libs/JSystem/JStudio/JStudio/stb-data-parse.cpp @@ -4,6 +4,7 @@ // #include "JSystem/JStudio/JStudio/stb-data-parse.h" +#include "dolphin/os.h" #include "global.h" namespace JStudio { diff --git a/libs/dolphin/gx/GXTransform.c b/libs/dolphin/gx/GXTransform.c index fb09b5088d..710cca657b 100644 --- a/libs/dolphin/gx/GXTransform.c +++ b/libs/dolphin/gx/GXTransform.c @@ -1,5 +1,6 @@ #include "dolphin/gx/GXTransform.h" #include "dolphin/gx.h" +#include "dolphin/os.h" void __GXSetMatrixIndex(); @@ -42,9 +43,7 @@ void GXProject(f32 model_x, f32 model_y, f32 model_z, Mtx model_mtx, f32* proj_m f32 var_f28; f32 var_f31; - ASSERT(proj_mtx != NULL && viewpoint != NULL && screen_x != NULL && screen_y != NULL && - screen_z != NULL, - "GXGet*: invalid null pointer"); + ASSERTMSG(proj_mtx != NULL && viewpoint != NULL && screen_x != NULL && screen_y != NULL && screen_z != NULL, "GXGet*: invalid null pointer"); sp10[0] = (model_mtx[0][0] * model_x) + (model_mtx[0][1] * model_y) + (model_mtx[0][2] * model_z) + model_mtx[0][3]; diff --git a/rel/d/a/b/d_a_b_go/d_a_b_go.cpp b/rel/d/a/b/d_a_b_go/d_a_b_go.cpp index 629157d481..8287496f59 100644 --- a/rel/d/a/b/d_a_b_go/d_a_b_go.cpp +++ b/rel/d/a/b/d_a_b_go/d_a_b_go.cpp @@ -1,18 +1,13 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_b_go -// +/** + * d_a_b_go.cpp + * + */ #include "rel/d/a/b/d_a_b_go/d_a_b_go.h" -#include "Z2AudioLib/Z2Creature.h" +#include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" -#include "dol2asm.h" -#include "dolphin/types.h" -#include "f_op/f_op_actor_mng.h" -// -// Types: -// +#define RES_IS_MODEL 0x13 enum daB_GO_ANM { /* 0x04 */ ANM_ATTACK = 4, @@ -36,14 +31,11 @@ enum daB_GO_Action { /* 0x2 */ ACT_ATTACK, }; -#define RES_IS_MODEL 0x13 - class daB_GO_HIO_c { public: /* 806031AC */ daB_GO_HIO_c(); - /* 80603F9C */ ~daB_GO_HIO_c(); + /* 80603F9C */ virtual ~daB_GO_HIO_c() {} - /* 0x00 */ u8 field_0x0[4]; /* 0x04 */ s8 field_0x4; /* 0x08 */ f32 mSmallSize; /* 0x0C */ f32 mNormalSpeed; @@ -51,805 +43,318 @@ public: /* 0x14 */ bool mDisplayModelImage; }; -class b_go_class : public fopAc_ac_c { -public: - /* 80603CA0 */ b_go_class(); - - // private: - /* 0x568 */ u8 field_0x568[0x5ac - 0x568]; - /* 0x5AC */ request_of_phase_process_class mPhase; - /* 0x5B4 */ mDoExt_McaMorfSO* mpMorf; - /* 0x5B8 */ Z2CreatureEnemy mZ2Enemy; - /* 0x65C */ int field_0x65c; - /* 0x660 */ u8 field_0x660; - /* 0x661 */ u8 field_0x661[0x668 - 0x661]; - /* 0x668 */ s16 field_0x668; - /* 0x66A */ s16 mActionID; - /* 0x66C */ s16 field_0x66c; - /* 0x66E */ u8 field_0x66e[0x67e - 0x66e]; - /* 0x67E */ s16 mAngleToPlayer; - /* 0x680 */ f32 mDistToPlayer; - /* 0x684 */ u8 field_0x684[4]; - /* 0x688 */ s16 field_0x688[4]; - /* 0x690 */ s16 field_0x690; - /* 0x692 */ s16 field_0x692; - /* 0x694 */ dBgS_AcchCir mAcchCir; - /* 0x6D4 */ dBgS_Acch mAcch; - /* 0x8AC */ dCcD_Stts mStts; - /* 0x8E8 */ dCcD_Sph field_0x8e8; - /* 0xA20 */ dCcD_Sph field_0xa20; - /* 0xB58 */ dCcD_Cyl field_0xb58; - /* 0xC94 */ u8 field_0xc94[0xc9c - 0xc94]; - /* 0xC9C */ Z2CreatureEnemy* field_0xc9c; - /* 0xCA0 */ u8 field_0xca0[0xcb8 - 0xca0]; - /* 0xCB8 */ u32 mGoronAcID[31]; - /* 0xD34 */ u8 field_0xd34; -}; - -// -// Forward References: -// - -extern "C" void __ct__12daB_GO_HIO_cFv(); -extern "C" static void daB_GO_Draw__FP10b_go_class(); -extern "C" static void anm_init__FP10b_go_classifUcf(); -extern "C" static void damage_check__FP10b_go_class(); -extern "C" static void h_wait__FP10b_go_class(); -extern "C" static void h_walk__FP10b_go_class(); -extern "C" static void h_attack__FP10b_go_class(); -extern "C" static void action__FP10b_go_class(); -extern "C" static void daB_GO_Execute__FP10b_go_class(); -extern "C" static bool daB_GO_IsDelete__FP10b_go_class(); -extern "C" static void daB_GO_Delete__FP10b_go_class(); -extern "C" static void useHeapInit__FP10fopAc_ac_c(); -extern "C" static void daB_GO_Create__FP10fopAc_ac_c(); -extern "C" void __ct__10b_go_classFv(); -extern "C" void __dt__8cM3dGCylFv(); -extern "C" void __dt__8cM3dGSphFv(); -extern "C" void __dt__8cM3dGAabFv(); -extern "C" void __dt__12dBgS_ObjAcchFv(); -extern "C" void __dt__12daB_GO_HIO_cFv(); -extern "C" void __sinit_d_a_b_go_cpp(); -extern "C" static void func_80604020(); -extern "C" static void func_80604028(); -extern "C" extern char const* const d_a_b_go__stringBase0; - -// -// External References: -// - -extern "C" void mDoMtx_YrotS__FPA4_fs(); -extern "C" void mDoMtx_YrotM__FPA4_fs(); -extern "C" void scaleM__14mDoMtx_stack_cFfff(); -extern "C" void -__ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); -extern "C" void setAnm__16mDoExt_McaMorfSOFP15J3DAnmTransformiffff(); -extern "C" void play__16mDoExt_McaMorfSOFUlSc(); -extern "C" void entryDL__16mDoExt_McaMorfSOFv(); -extern "C" void modelCalc__16mDoExt_McaMorfSOFv(); -extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void fopAcM_createChild__FsUiUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i(); -extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl(); -extern "C" void fopAcM_SetMin__FP10fopAc_ac_cfff(); -extern "C" void fopAcM_SetMax__FP10fopAc_ac_cfff(); -extern "C" void fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c(); -extern "C" void fopAcM_searchActorDistance__FPC10fopAc_ac_cPC10fopAc_ac_c(); -extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc(); -extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc(); -extern "C" void dComIfGp_getReverb__Fi(); -extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); -extern "C" void __ct__12dBgS_AcchCirFv(); -extern "C" void SetWall__12dBgS_AcchCirFff(); -extern "C" void __dt__9dBgS_AcchFv(); -extern "C" void __ct__9dBgS_AcchFv(); -extern "C" void Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz(); -extern "C" void CrrPos__9dBgS_AcchFR4dBgS(); -extern "C" void SetObj__16dBgS_PolyPassChkFv(); -extern "C" void __ct__10dCcD_GSttsFv(); -extern "C" void __ct__12dCcD_GObjInfFv(); -extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); -extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); -extern "C" void __ct__5csXyzFsss(); -extern "C" void cM_rndF__Ff(); -extern "C" void cM_rndFX__Ff(); -extern "C" void cLib_addCalc2__FPffff(); -extern "C" void cLib_addCalc0__FPfff(); -extern "C" void cLib_addCalcAngleS2__FPssss(); -extern "C" void MtxPosition__FP4cXyzP4cXyz(); -extern "C" void __ct__15Z2CreatureEnemyFv(); -extern "C" void init__15Z2CreatureEnemyFP3VecP3VecUcUc(); -extern "C" void* __nw__FUl(); -extern "C" void __dl__FPv(); -extern "C" void _savegpr_27(); -extern "C" void _savegpr_28(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_27(); -extern "C" void _restgpr_28(); -extern "C" void _restgpr_29(); -extern "C" extern void* __vt__8dCcD_Sph[36]; -extern "C" extern void* __vt__8dCcD_Cyl[36]; -extern "C" extern void* __vt__9dCcD_Stts[11]; -extern "C" extern void* __vt__12cCcD_SphAttr[25]; -extern "C" extern void* __vt__12cCcD_CylAttr[25]; -extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; -extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" void __register_global_object(); - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 80604044-80604048 000000 0004+00 6/6 0/0 0/0 .rodata @3646 */ -SECTION_RODATA static f32 const lit_3646 = 1.5f; -COMPILER_STRIP_GATE(0x80604044, &lit_3646); - -/* 80604048-8060404C 000004 0004+00 0/1 0/0 0/0 .rodata @3647 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3647 = 15.0f; -COMPILER_STRIP_GATE(0x80604048, &lit_3647); -#pragma pop - -/* 8060404C-80604050 000008 0004+00 0/3 0/0 0/0 .rodata @3648 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3648 = 300.0f; -COMPILER_STRIP_GATE(0x8060404C, &lit_3648); -#pragma pop - -/* 80604094-806040B4 -00001 0020+00 1/0 0/0 0/0 .data l_daB_GO_Method */ -SECTION_DATA static void* l_daB_GO_Method[8] = { - (void*)daB_GO_Create__FP10fopAc_ac_c, - (void*)daB_GO_Delete__FP10b_go_class, - (void*)daB_GO_Execute__FP10b_go_class, - (void*)daB_GO_IsDelete__FP10b_go_class, - (void*)daB_GO_Draw__FP10b_go_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, -}; - -/* 806040B4-806040E4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_B_GO */ -SECTION_DATA extern void* g_profile_B_GO[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x020F0000, (void*)&g_fpcLf_Method, - (void*)0x00000D38, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x00D70000, (void*)&l_daB_GO_Method, - (void*)0x00040100, (void*)0x020E0000, -}; - -/* 806040E4-806040F0 000050 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGCyl */ -SECTION_DATA extern void* __vt__8cM3dGCyl[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGCylFv, -}; - -/* 806040F0-806040FC 00005C 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGSph */ -SECTION_DATA extern void* __vt__8cM3dGSph[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGSphFv, -}; - -/* 806040FC-80604108 000068 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGAab */ -SECTION_DATA extern void* __vt__8cM3dGAab[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGAabFv, -}; - -/* 80604108-8060412C 000074 0024+00 2/2 0/0 0/0 .data __vt__12dBgS_ObjAcch */ -SECTION_DATA extern void* __vt__12dBgS_ObjAcch[9] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12dBgS_ObjAcchFv, - (void*)NULL, - (void*)NULL, - (void*)func_80604028, - (void*)NULL, - (void*)NULL, - (void*)func_80604020, -}; - -/* 8060412C-80604138 000098 000C+00 2/2 0/0 0/0 .data __vt__12daB_GO_HIO_c */ -SECTION_DATA extern void* __vt__12daB_GO_HIO_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12daB_GO_HIO_cFv, -}; - /* 806031AC-806031EC 0000EC 0040+00 1/1 0/0 0/0 .text __ct__12daB_GO_HIO_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daB_GO_HIO_c::daB_GO_HIO_c() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__12daB_GO_HIO_cFv.s" +daB_GO_HIO_c::daB_GO_HIO_c() { + field_0x4 = -1; + mSmallSize = 1.5f; + mNormalSpeed = 15.0f; + mAttackInitRange = 300; + mDisplayModelImage = false; } -#pragma pop /* ############################################################################################## */ /* 80604140-80604144 000008 0004+00 2/2 0/0 0/0 .bss None */ -static u8 data_80604140[4]; - -/* 80604144-80604150 00000C 000C+00 1/1 0/0 0/0 .bss @3641 */ -static u8 lit_3641[12]; +static bool data_80604140; /* 80604150-80604168 000018 0018+00 6/6 0/0 0/0 .bss l_HIO */ -static u8 l_HIO[24]; +static daB_GO_HIO_c l_HIO; /* 806031EC-80603270 00012C 0084+00 1/0 0/0 0/0 .text daB_GO_Draw__FP10b_go_class */ -static int daB_GO_Draw(b_go_class* b_go) { - if ((*(daB_GO_HIO_c*)l_HIO).mDisplayModelImage) { - J3DModel* model = b_go->mpMorf->getModel(); +static int daB_GO_Draw(b_go_class* i_this) { + if (l_HIO.mDisplayModelImage) { + J3DModel* model = i_this->mpMorf->getModel(); - g_env_light.settingTevStruct(0, &b_go->current.pos, &b_go->tevStr); - g_env_light.setLightTevColorType_MAJI(model->getModelData(), &b_go->tevStr); - b_go->mpMorf->entryDL(); + g_env_light.settingTevStruct(0, &i_this->current.pos, &i_this->tevStr); + g_env_light.setLightTevColorType_MAJI(model->getModelData(), &i_this->tevStr); + i_this->mpMorf->entryDL(); } + return 1; } -/* ############################################################################################## */ -/* 80604050-80604054 00000C 0004+00 1/5 0/0 0/0 .rodata @3673 */ -SECTION_RODATA static u8 const lit_3673[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x80604050, &lit_3673); - -/* 80604054-80604058 000010 0004+00 1/1 0/0 0/0 .rodata @3674 */ -SECTION_RODATA static f32 const lit_3674 = -1.0f; -COMPILER_STRIP_GATE(0x80604054, &lit_3674); - -/* 8060408C-8060408C 000048 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_8060408C = "B_go"; -#pragma pop - /* 80603270-8060331C 0001B0 00AC+00 3/3 0/0 0/0 .text anm_init__FP10b_go_classifUcf */ -// matches with literals -#ifdef NONMATCHING -static void anm_init(b_go_class* b_go, int resID, f32 param_2, u8 param_3, f32 param_4) { - J3DAnmTransform* bck = (J3DAnmTransform*)dComIfG_getObjectRes("B_go", resID); - b_go->mpMorf->setAnm(bck, param_3, param_2, param_4, 0.0f, -1.0f); - b_go->field_0x65c = resID; +static void anm_init(b_go_class* i_this, int i_anmID, f32 i_morf, u8 i_attribute, f32 i_speed) { + J3DAnmTransform* bck = (J3DAnmTransform*)dComIfG_getObjectRes("B_go", i_anmID); + i_this->mpMorf->setAnm(bck, i_attribute, i_morf, i_speed, 0.0f, -1.0f); + i_this->mAnmID = i_anmID; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void anm_init(b_go_class* b_go, int resID, f32 param_2, u8 param_3, f32 param_4) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/anm_init__FP10b_go_classifUcf.s" -} -#pragma pop -#endif /* 8060331C-80603320 00025C 0004+00 1/1 0/0 0/0 .text damage_check__FP10b_go_class */ -static void damage_check(b_go_class* b_go) { - /* empty function */ -} - -/* ############################################################################################## */ -/* 80604058-8060405C 000014 0004+00 0/3 0/0 0/0 .rodata @3702 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3702 = 10.0f; -COMPILER_STRIP_GATE(0x80604058, &lit_3702); -#pragma pop - -/* 8060405C-80604060 000018 0004+00 1/4 0/0 0/0 .rodata @3703 */ -SECTION_RODATA static f32 const lit_3703 = 1.0f; -COMPILER_STRIP_GATE(0x8060405C, &lit_3703); - -/* 80604060-80604064 00001C 0004+00 0/3 0/0 0/0 .rodata @3704 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3704 = 100.0f; -COMPILER_STRIP_GATE(0x80604060, &lit_3704); -#pragma pop - -/* 80604064-80604068 000020 0004+00 0/2 0/0 0/0 .rodata @3705 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3705 = 60.0f; -COMPILER_STRIP_GATE(0x80604064, &lit_3705); -#pragma pop +static void damage_check(b_go_class* i_this) {} /* 80603320-806033F0 000260 00D0+00 1/1 0/0 0/0 .text h_wait__FP10b_go_class */ -// matches with literals -#ifdef NONMATCHING -static void h_wait(b_go_class* b_go) { - b_go->speedF = 0.0f; +static void h_wait(b_go_class* i_this) { + i_this->speedF = 0.0f; - switch (b_go->field_0x66c) { + switch (i_this->mMode) { case 0: - anm_init(b_go, ANM_WAIT_03, 10.0f, 2, 1.0f); - b_go->field_0x66c = 1; - b_go->field_0x688[0] = cM_rndF(60.0f) + 100.0f; + anm_init(i_this, ANM_WAIT_03, 10.0f, 2, 1.0f); + i_this->mMode = 1; + i_this->mTimers[0] = cM_rndF(60.0f) + 100.0f; break; case 1: - if (b_go->field_0x688[0] == 0 || - b_go->mDistToPlayer < (*(daB_GO_HIO_c*)l_HIO).mAttackInitRange) { - b_go->mActionID = ACT_WALK; - b_go->field_0x66c = 0; + if (i_this->mTimers[0] == 0 || i_this->mDistToPlayer < l_HIO.mAttackInitRange) { + i_this->mActionID = ACT_WALK; + i_this->mMode = 0; } break; } } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void h_wait(b_go_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_wait__FP10b_go_class.s" -} -#pragma pop -#endif - -/* ############################################################################################## */ -/* 80604068-8060406C 000024 0004+00 0/1 0/0 0/0 .rodata @3719 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3719 = 150.0f; -COMPILER_STRIP_GATE(0x80604068, &lit_3719); -#pragma pop /* 806033F0-80603508 000330 0118+00 1/1 0/0 0/0 .text h_walk__FP10b_go_class */ -// matches with literals -#ifdef NONMATCHING -static void h_walk(b_go_class* b_go) { +static void h_walk(b_go_class* i_this) { f32 speed = 0.0f; - switch (b_go->field_0x66c) { + switch (i_this->mMode) { case 0: - anm_init(b_go, ANM_WALK, 10.0f, 2, 1.0f); - b_go->field_0x66c = 1; - b_go->field_0x688[0] = cM_rndF(60.0f) + 150.0f; + anm_init(i_this, ANM_WALK, 10.0f, 2, 1.0f); + i_this->mMode = 1; + i_this->mTimers[0] = cM_rndF(60.0f) + 150.0f; break; case 1: - speed = (*(daB_GO_HIO_c*)l_HIO).mNormalSpeed; - if (b_go->field_0x688[0] == 0) { - b_go->mActionID = ACT_WAIT; - b_go->field_0x66c = 0; - } else if (b_go->mDistToPlayer < (*(daB_GO_HIO_c*)l_HIO).mAttackInitRange) { - b_go->mActionID = ACT_ATTACK; - b_go->field_0x66c = 0; + speed = l_HIO.mNormalSpeed; + if (i_this->mTimers[0] == 0) { + i_this->mActionID = ACT_WAIT; + i_this->mMode = 0; + } else if (i_this->mDistToPlayer < l_HIO.mAttackInitRange) { + i_this->mActionID = ACT_ATTACK; + i_this->mMode = 0; } break; } - cLib_addCalc2(&b_go->speedF, speed, 1.0f, 1.0f); - cLib_addCalcAngleS2(&b_go->current.angle.y, b_go->mAngleToPlayer, 1, 0x200); + cLib_addCalc2(&i_this->speedF, speed, 1.0f, 1.0f); + cLib_addCalcAngleS2(&i_this->current.angle.y, i_this->mAngleToPlayer, 1, 0x200); } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void h_walk(b_go_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_walk__FP10b_go_class.s" -} -#pragma pop -#endif /* 80603508-80603638 000448 0130+00 1/1 0/0 0/0 .text h_attack__FP10b_go_class */ -#ifdef NONMATCHING -static void h_attack(b_go_class* b_go) { - int frame = b_go->mpMorf->getFrame(); - cLib_addCalc0(&b_go->speedF, 1.0f, 1.0f); +static void h_attack(b_go_class* i_this) { + int anm_frame = i_this->mpMorf->getFrame(); + cLib_addCalc0(&i_this->speedF, 1.0f, 1.0f); - switch (b_go->field_0x66c) { + switch (i_this->mMode) { case 0: - anm_init(b_go, ANM_ATTACK, 10.0f, 0, 1.0f); - b_go->field_0x66c = 1; + anm_init(i_this, ANM_ATTACK, 10.0f, 0, 1.0f); + i_this->mMode = 1; break; case 1: - if (frame >= 25 && frame <= 33) { - if (frame == 25) { - b_go->mZ2Enemy.startCreatureSound(Z2SE_CM_KAZAKIRI_S, 0, -1); - b_go->field_0x660 = 1; + if (anm_frame >= 25 && anm_frame <= 33) { + if (anm_frame == 25) { + i_this->mSound.startCreatureSound(Z2SE_CM_KAZAKIRI_S, 0, -1); + i_this->unk_0x660 = 1; } else { - b_go->field_0x660 = 2; + i_this->unk_0x660 = 2; } } - if (b_go->mpMorf->isStop()) { - b_go->mActionID = ACT_WAIT; - b_go->field_0x66c = 0; + if (i_this->mpMorf->isStop()) { + i_this->mActionID = ACT_WAIT; + i_this->mMode = 0; } break; } } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void h_attack(b_go_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/h_attack__FP10b_go_class.s" -} -#pragma pop -#endif - -/* ############################################################################################## */ -/* 8060406C-80604070 000028 0004+00 0/1 0/0 0/0 .rodata @3784 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3784 = 1000.0f; -COMPILER_STRIP_GATE(0x8060406C, &lit_3784); -#pragma pop - -/* 80604070-80604074 00002C 0004+00 0/1 0/0 0/0 .rodata @3785 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3785 = 200.0f; -COMPILER_STRIP_GATE(0x80604070, &lit_3785); -#pragma pop /* 80603638-806037E8 000578 01B0+00 1/1 0/0 0/0 .text action__FP10b_go_class */ -#ifdef NONMATCHING -static void action(b_go_class* b_go) { - b_go->mAngleToPlayer = fopAcM_searchActorAngleY(b_go, (fopAc_ac_c*)dComIfGp_getPlayer(0)); - b_go->mDistToPlayer = fopAcM_searchActorDistance(b_go, (fopAc_ac_c*)dComIfGp_getPlayer(0)); +static void action(b_go_class* i_this) { + cXyz speed_offset; + cXyz move_speed; - b_go->actor_status = b_go->actor_status; - b_go->attention_info.flags = 0; + i_this->mAngleToPlayer = fopAcM_searchPlayerAngleY(i_this); + i_this->mDistToPlayer = fopAcM_searchPlayerDistance(i_this); - if (b_go->field_0x688[1] == 0) { - if (b_go->field_0x692 != 2) { - b_go->field_0x692 = 2; - b_go->field_0x688[1] = cM_rndF(200.0f) + 1000.0f; + fopAcM_OffStatus(i_this, 0); + i_this->attention_info.flags = 0; + + if (i_this->mTimers[1] == 0) { + if (i_this->field_0x692 != 2) { + i_this->field_0x692 = 2; + i_this->mTimers[1] = cM_rndF(200.0f) + 1000.0f; } else { - b_go->field_0x692 = 1; - b_go->field_0x688[1] = cM_rndF(100.0f) + 300.0f; + i_this->field_0x692 = 1; + i_this->mTimers[1] = cM_rndF(100.0f) + 300.0f; } } - switch (b_go->mActionID) { + switch (i_this->mActionID) { case ACT_WAIT: - h_wait(b_go); + h_wait(i_this); break; case ACT_WALK: - h_walk(b_go); + h_walk(i_this); break; case ACT_ATTACK: - h_attack(b_go); + h_attack(i_this); break; } - cLib_addCalcAngleS2(&b_go->shape_angle.y, b_go->current.angle.y, 4, 0x2000); - mDoMtx_stack_c::YrotS(b_go->current.angle.y); + cLib_addCalcAngleS2(&i_this->shape_angle.y, i_this->current.angle.y, 4, 0x2000); + cMtx_YrotS(*calc_mtx, i_this->current.angle.y); - cXyz speed; - speed.x = 0.0f; - speed.y = 0.0f; - speed.z = b_go->speedF; + speed_offset.x = 0.0f; + speed_offset.y = 0.0f; + speed_offset.z = i_this->speedF; - cXyz newSpeed; - MtxPosition(&speed, &newSpeed); - b_go->speed.x = newSpeed.x; - b_go->speed.z = newSpeed.z; + MtxPosition(&speed_offset, &move_speed); + i_this->speed.x = move_speed.x; + i_this->speed.z = move_speed.z; - VECAdd(&b_go->current.pos, &b_go->speed, &b_go->current.pos); - b_go->speed.y += b_go->gravity; + i_this->current.pos += i_this->speed; + i_this->speed.y += i_this->gravity; - b_go->mAcch.CrrPos(dComIfG_Bgsp()); + i_this->mAcch.CrrPos(dComIfG_Bgsp()); } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void action(b_go_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/action__FP10b_go_class.s" -} -#pragma pop -#endif /* 806037E8-806038EC 000728 0104+00 2/1 0/0 0/0 .text daB_GO_Execute__FP10b_go_class */ -#ifdef NONMATCHING -static int daB_GO_Execute(b_go_class* b_go) { - b_go->field_0x668++; +static int daB_GO_Execute(b_go_class* i_this) { + i_this->unk_0x668++; for (int i = 0; i < 4; i++) { - if (b_go->field_0x688[i] != 0) { - b_go->field_0x688[i]--; + if (i_this->mTimers[i] != 0) { + i_this->mTimers[i]--; } } - if (b_go->field_0x690 != 0) { - b_go->field_0x690--; + if (i_this->unk_0x690 != 0) { + i_this->unk_0x690--; } - action(b_go); - damage_check(b_go); + action(i_this); + damage_check(i_this); - mDoMtx_stack_c::transS(b_go->current.pos.x, b_go->current.pos.y, b_go->current.pos.z); - mDoMtx_stack_c::YrotM(b_go->shape_angle.y); - mDoMtx_stack_c::scaleM((*(daB_GO_HIO_c*)l_HIO).mSmallSize, (*(daB_GO_HIO_c*)l_HIO).mSmallSize, (*(daB_GO_HIO_c*)l_HIO).mSmallSize); - mDoMtx_stack_c::copy(b_go->mpMorf->getModel()->getBaseTRMtx()); - b_go->mpMorf->play(0, dComIfGp_getReverb(b_go->current.roomNo)); - b_go->mpMorf->modelCalc(); + mDoMtx_stack_c::transS(i_this->current.pos.x, i_this->current.pos.y, i_this->current.pos.z); + mDoMtx_stack_c::YrotM(i_this->shape_angle.y); + mDoMtx_stack_c::scaleM(l_HIO.mSmallSize, l_HIO.mSmallSize, l_HIO.mSmallSize); + i_this->mpMorf->getModel()->i_setBaseTRMtx(mDoMtx_stack_c::get()); + + i_this->mpMorf->play(0, dComIfGp_getReverb(fopAcM_GetRoomNo(i_this))); + i_this->mpMorf->modelCalc(); return 1; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daB_GO_Execute(b_go_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Execute__FP10b_go_class.s" -} -#pragma pop -#endif /* 806038EC-806038F4 00082C 0008+00 1/0 0/0 0/0 .text daB_GO_IsDelete__FP10b_go_class */ -static int daB_GO_IsDelete(b_go_class* param_0) { +static int daB_GO_IsDelete(b_go_class* i_this) { return 1; } /* 806038F4-8060395C 000834 0068+00 1/0 0/0 0/0 .text daB_GO_Delete__FP10b_go_class */ -static int daB_GO_Delete(b_go_class* b_go) { - dComIfG_resDelete(&b_go->mPhase, "B_go"); +static int daB_GO_Delete(b_go_class* i_this) { + dComIfG_resDelete(&i_this->mPhase, "B_go"); - if (b_go->field_0xd34) { - data_80604140[0] = 0; + if (i_this->field_0xd34) { + data_80604140 = 0; } - if (b_go->heap != NULL) { - b_go->mpMorf->stopZelAnime(); + if (i_this->heap != NULL) { + i_this->mpMorf->stopZelAnime(); } return 1; } /* 8060395C-80603A54 00089C 00F8+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */ -// matches with literals -#ifdef NONMATCHING -static int useHeapInit(fopAc_ac_c* i_actor) { - b_go_class* b_go = (b_go_class*)i_actor; +static int useHeapInit(fopAc_ac_c* i_this) { + b_go_class* a_this = (b_go_class*)i_this; - b_go->mpMorf = new mDoExt_McaMorfSO((J3DModelData*)dComIfG_getObjectRes("B_go", RES_IS_MODEL), - NULL, NULL, - (J3DAnmTransform*)dComIfG_getObjectRes("B_go", ANM_WAIT_03), - 2, 1.0f, 0, -1, &b_go->mZ2Enemy, 0x80000, 0x11000084); - - if (b_go->mpMorf == NULL || b_go->mpMorf->getModel() == NULL) { + a_this->mpMorf = new mDoExt_McaMorfSO( + (J3DModelData*)dComIfG_getObjectRes("B_go", RES_IS_MODEL), NULL, NULL, + (J3DAnmTransform*)dComIfG_getObjectRes("B_go", ANM_WAIT_03), J3DFrameCtrl::LOOP_REPEAT_e, + 1.0f, 0, -1, &a_this->mSound, 0x80000, 0x11000084); + + if (a_this->mpMorf == NULL || a_this->mpMorf->getModel() == NULL) { return 0; } return 1; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm int useHeapInit(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/useHeapInit__FP10fopAc_ac_c.s" -} -#pragma pop -#endif - -/* ############################################################################################## */ -/* 80604074-80604078 000030 0004+00 0/1 0/0 0/0 .rodata @3924 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3924 = -500.0f; -COMPILER_STRIP_GATE(0x80604074, &lit_3924); -#pragma pop - -/* 80604078-8060407C 000034 0004+00 0/1 0/0 0/0 .rodata @3925 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3925 = -2000.0f; -COMPILER_STRIP_GATE(0x80604078, &lit_3925); -#pragma pop - -/* 8060407C-80604080 000038 0004+00 0/1 0/0 0/0 .rodata @3926 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3926 = 500.0f; -COMPILER_STRIP_GATE(0x8060407C, &lit_3926); -#pragma pop - -/* 80604080-80604084 00003C 0004+00 0/1 0/0 0/0 .rodata @3927 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3927 = 2000.0f; -COMPILER_STRIP_GATE(0x80604080, &lit_3927); -#pragma pop - -/* 80604084-80604088 000040 0004+00 0/1 0/0 0/0 .rodata @3928 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3928 = -7.0f; -COMPILER_STRIP_GATE(0x80604084, &lit_3928); -#pragma pop - -/* 80604088-8060408C 000044 0004+00 0/1 0/0 0/0 .rodata @3929 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3929 = 65536.0f; -COMPILER_STRIP_GATE(0x80604088, &lit_3929); -#pragma pop /* 80603A54-80603CA0 000994 024C+00 1/0 0/0 0/0 .text daB_GO_Create__FP10fopAc_ac_c */ -// matches with literals -#ifdef NONMATCHING -static int daB_GO_Create(fopAc_ac_c* i_actor) { - fopAcM_SetupActor(i_actor, b_go_class); - b_go_class* b_go = (b_go_class*)i_actor; +static int daB_GO_Create(fopAc_ac_c* i_this) { + fopAcM_SetupActor(i_this, b_go_class); + b_go_class* a_this = (b_go_class*)i_this; - int phase_state = dComIfG_resLoad(&b_go->mPhase, "B_go"); + OS_REPORT("B_GO//////////////B_GO SET 0 !!\n"); + + int phase_state = dComIfG_resLoad(&a_this->mPhase, "B_go"); if (phase_state == cPhs_COMPLEATE_e) { - if (!fopAcM_entrySolidHeap(i_actor, (heapCallbackFunc)useHeapInit, 0x4B000)) { + OS_REPORT("B_GO PARAM %x\n", fopAcM_GetParam(a_this)); + OS_REPORT("B_GO//////////////B_GO SET 1 !!\n"); + + if (!fopAcM_entrySolidHeap(i_this, useHeapInit, 0x4B000)) { + OS_REPORT("//////////////B_GO SET NON !!\n"); return cPhs_ERROR_e; } - if (data_80604140[0] == 0) { - b_go->field_0xd34 = 1; - data_80604140[0] = 1; - (*(daB_GO_HIO_c*)l_HIO).field_0x4 = -1; + OS_REPORT("//////////////B_GO SET 2 !!\n"); + + if (data_80604140 == 0) { + a_this->field_0xd34 = 1; + data_80604140 = 1; + l_HIO.field_0x4 = -1; } - b_go->attention_info.flags = 4; - b_go->cullMtx = b_go->mpMorf->getModel()->getBaseTRMtx(); - fopAcM_SetMin(b_go, -500.0f, -2000.0f, -500.0f); - fopAcM_SetMax(b_go, 500.0f, 2000.0f, 500.0f); - b_go->field_0x562 = 1000; - b_go->field_0x560 = 1000; + a_this->attention_info.flags = 4; + fopAcM_SetMtx(a_this, a_this->mpMorf->getModel()->getBaseTRMtx()); + fopAcM_SetMin(a_this, -500.0f, -2000.0f, -500.0f); + fopAcM_SetMax(a_this, 500.0f, 2000.0f, 500.0f); + a_this->health = 1000; + a_this->field_0x560 = 1000; - b_go->mAcch.Set(&b_go->current.pos, &b_go->old.pos, b_go, 1, &b_go->mAcchCir, - &b_go->speed, NULL, NULL); - b_go->mAcchCir.SetWall(100.0f, 300.0f); + a_this->mAcch.Set(fopAcM_GetPosition_p(a_this), fopAcM_GetOldPosition_p(a_this), a_this, 1, + &a_this->mAcchCir, fopAcM_GetSpeed_p(a_this), NULL, NULL); + a_this->mAcchCir.SetWall(100.0f, 300.0f); - b_go->mZ2Enemy.init(&b_go->current.pos, &b_go->eyePos, 3, 1); - b_go->field_0xc9c = &b_go->mZ2Enemy; + a_this->mSound.init(&a_this->current.pos, &a_this->eyePos, 3, 1); + a_this->mAtInfo.mpSound = &a_this->mSound; - b_go->gravity = -7.0f; - b_go->mActionID = ACT_WAIT; + a_this->gravity = -7.0f; + a_this->mActionID = ACT_WAIT; - daB_GO_Execute(b_go); + daB_GO_Execute(a_this); - cXyz pos; - pos.y = b_go->current.pos.y; + cXyz child_pos; + child_pos.y = a_this->current.pos.y; - csXyz angle(0, 0, 0); + csXyz child_angle(0, 0, 0); + for (int i = 0; i < GORON_CHILD_MAX; i++) { + child_pos.x = cM_rndFX(500.0f) + a_this->current.pos.x; + child_pos.z = cM_rndFX(500.0f) + a_this->current.pos.z; + child_angle.y = cM_rndF(0x10000); - for (int i = 0; i < 31; i++) { - pos.x = cM_rndFX(500.0f) + b_go->current.pos.x; - pos.z = cM_rndFX(500.0f) + b_go->current.pos.z; - angle.y = cM_rndF(65536.0f); - - b_go->mGoronAcID[i] = - fopAcM_createChild(PROC_B_GOS, fopAcM_GetID(b_go), i, &pos, fopAcM_GetRoomNo(b_go), - &angle, NULL, -1, NULL); + a_this->mGoronChildIDs[i] = + fopAcM_createChild(PROC_B_GOS, fopAcM_GetID(a_this), i, &child_pos, + fopAcM_GetRoomNo(a_this), &child_angle, NULL, -1, NULL); } } return phase_state; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daB_GO_Create(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/daB_GO_Create__FP10fopAc_ac_c.s" -} -#pragma pop -#endif /* 80603CA0-80603E54 000BE0 01B4+00 1/1 0/0 0/0 .text __ct__10b_go_classFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm b_go_class::b_go_class() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/__ct__10b_go_classFv.s" -} -#pragma pop +b_go_class::b_go_class() {} -/* 80603E54-80603E9C 000D94 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cM3dGCyl::~cM3dGCyl() { -extern "C" asm void __dt__8cM3dGCylFv() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGCylFv.s" -} -#pragma pop +/* 80604094-806040B4 -00001 0020+00 1/0 0/0 0/0 .data l_daB_GO_Method */ +static actor_method_class l_daB_GO_Method = { + (process_method_func)daB_GO_Create, (process_method_func)daB_GO_Delete, + (process_method_func)daB_GO_Execute, (process_method_func)daB_GO_IsDelete, + (process_method_func)daB_GO_Draw, +}; -/* 80603E9C-80603EE4 000DDC 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGSphFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cM3dGSph::~cM3dGSph() { -extern "C" asm void __dt__8cM3dGSphFv() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGSphFv.s" -} -#pragma pop - -/* 80603EE4-80603F2C 000E24 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cM3dGAab::~cM3dGAab() { -extern "C" asm void __dt__8cM3dGAabFv() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__8cM3dGAabFv.s" -} -#pragma pop - -/* 80603F2C-80603F9C 000E6C 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm dBgS_ObjAcch::~dBgS_ObjAcch() { -extern "C" asm void __dt__12dBgS_ObjAcchFv() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12dBgS_ObjAcchFv.s" -} -#pragma pop - -/* 80603F9C-80603FE4 000EDC 0048+00 2/1 0/0 0/0 .text __dt__12daB_GO_HIO_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daB_GO_HIO_c::~daB_GO_HIO_c() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/__dt__12daB_GO_HIO_cFv.s" -} -#pragma pop - -/* 80603FE4-80604020 000F24 003C+00 0/0 1/0 0/0 .text __sinit_d_a_b_go_cpp */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void __sinit_d_a_b_go_cpp(){ - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/__sinit_d_a_b_go_cpp.s" -} -#pragma pop - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x80603FE4, __sinit_d_a_b_go_cpp); -#pragma pop - -/* 80604020-80604028 000F60 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void func_80604020() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604020.s" -} -#pragma pop - -/* 80604028-80604030 000F68 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void func_80604028() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_go/d_a_b_go/func_80604028.s" -} -#pragma pop - -/* 8060408C-8060408C 000048 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +/* 806040B4-806040E4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_B_GO */ +extern actor_process_profile_definition g_profile_B_GO = { + fpcLy_CURRENT_e, + 7, + fpcPi_CURRENT_e, + PROC_B_GO, + &g_fpcLf_Method.mBase, + sizeof(b_go_class), + 0, + 0, + &g_fopAc_Method.base, + 215, + &l_daB_GO_Method, + 0x40100, + fopAc_ENEMY_e, + fopAc_CULLBOX_CUSTOM_e, +}; \ No newline at end of file diff --git a/rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp b/rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp index aafda4d771..ecab4e26aa 100644 --- a/rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp +++ b/rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp @@ -1,704 +1,451 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_b_gos -// +/** + * d_a_b_gos.cpp + * Combined Goron Child + */ #include "rel/d/a/b/d_a_b_gos/d_a_b_gos.h" -#include "d/cc/d_cc_d.h" -#include "dol2asm.h" +#include "SSystem/SComponent/c_math.h" +#include "d/com/d_com_inf_game.h" +#include "rel/d/a/b/d_a_b_go/d_a_b_go.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - - static u8 now[48]; -}; - -struct mDoExt_McaMorfCallBack2_c {}; - -struct mDoExt_McaMorfCallBack1_c {}; - -struct J3DAnmTransform {}; - -struct J3DModelData {}; - -struct Z2Creature {}; - -struct mDoExt_McaMorfSO { - /* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*, - mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, - int, Z2Creature*, u32, u32); - /* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32); - /* 800110B0 */ void play(u32, s8); - /* 800111C0 */ void entryDL(); - /* 800111EC */ void modelCalc(); - /* 80011310 */ void stopZelAnime(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daB_GOS_HIO_c { +class daB_GOS_HIO_c { +public: /* 8060426C */ daB_GOS_HIO_c(); - /* 80605320 */ ~daB_GOS_HIO_c(); + /* 80605320 */ virtual ~daB_GOS_HIO_c() {} + + /* 0x4 */ s8 field_0x4; + /* 0x8 */ f32 mSize; + /* 0xC */ f32 mNormalSpeed; }; -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); +struct b_gos_j_info { + s16 joint_no; + f32 field_0x4; }; -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 806052B0 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); -}; - -struct csXyz {}; - -struct dBgS {}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cBgS_PolyInfo {}; - -struct b_gos_class { - /* 80605024 */ b_gos_class(); -}; - -struct _GXTexObj {}; - -struct Z2CreatureEnemy { - /* 802C0F64 */ Z2CreatureEnemy(); - /* 802C1094 */ void init(Vec*, Vec*, u8, u8); -}; - -struct J3DModel {}; - -// -// Forward References: -// - -extern "C" void __ct__13daB_GOS_HIO_cFv(); -extern "C" static void daB_GOS_Draw__FP11b_gos_class(); -extern "C" static void anm_init__FP11b_gos_classifUcf(); -extern "C" static void damage_check__FP11b_gos_class(); -extern "C" static void wait__FP11b_gos_class(); -extern "C" static void walk__FP11b_gos_class(); -extern "C" static void ball__FP11b_gos_class(); -extern "C" static void stick__FP11b_gos_class(); -extern "C" static void action__FP11b_gos_class(); -extern "C" static void daB_GOS_Execute__FP11b_gos_class(); -extern "C" static bool daB_GOS_IsDelete__FP11b_gos_class(); -extern "C" static void daB_GOS_Delete__FP11b_gos_class(); -extern "C" static void useHeapInit__FP10fopAc_ac_c(); -extern "C" static void daB_GOS_Create__FP10fopAc_ac_c(); -extern "C" void __ct__11b_gos_classFv(); -extern "C" void __dt__8cM3dGCylFv(); -extern "C" void __dt__8cM3dGSphFv(); -extern "C" void __dt__8cM3dGAabFv(); -extern "C" void __dt__12dBgS_ObjAcchFv(); -extern "C" void __dt__13daB_GOS_HIO_cFv(); -extern "C" void __sinit_d_a_b_gos_cpp(); -extern "C" static void func_806053A4(); -extern "C" static void func_806053AC(); -extern "C" extern char const* const d_a_b_gos__stringBase0; - -// -// External References: -// - -extern "C" void mDoMtx_XrotM__FPA4_fs(); -extern "C" void mDoMtx_YrotS__FPA4_fs(); -extern "C" void mDoMtx_YrotM__FPA4_fs(); -extern "C" void transM__14mDoMtx_stack_cFfff(); -extern "C" void scaleM__14mDoMtx_stack_cFfff(); -extern "C" void -__ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); -extern "C" void setAnm__16mDoExt_McaMorfSOFP15J3DAnmTransformiffff(); -extern "C" void play__16mDoExt_McaMorfSOFUlSc(); -extern "C" void entryDL__16mDoExt_McaMorfSOFv(); -extern "C" void modelCalc__16mDoExt_McaMorfSOFv(); -extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void fopAcIt_Judge__FPFPvPv_PvPv(); -extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl(); -extern "C" void fopAcM_SetMin__FP10fopAc_ac_cfff(); -extern "C" void fopAcM_SetMax__FP10fopAc_ac_cfff(); -extern "C" void fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c(); -extern "C" void fopAcM_searchActorDistance__FPC10fopAc_ac_cPC10fopAc_ac_c(); -extern "C" void fpcSch_JudgeByID__FPvPv(); -extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc(); -extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc(); -extern "C" void dComIfGp_getReverb__Fi(); -extern "C" void -dComIfGd_setShadow__FUlScP8J3DModelP4cXyzffffR13cBgS_PolyInfoP12dKy_tevstr_csfP9_GXTexObj(); -extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); -extern "C" void __ct__12dBgS_AcchCirFv(); -extern "C" void SetWall__12dBgS_AcchCirFff(); -extern "C" void __dt__9dBgS_AcchFv(); -extern "C" void __ct__9dBgS_AcchFv(); -extern "C" void Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz(); -extern "C" void CrrPos__9dBgS_AcchFR4dBgS(); -extern "C" void SetObj__16dBgS_PolyPassChkFv(); -extern "C" void __ct__10dCcD_GSttsFv(); -extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c(); -extern "C" void __ct__12dCcD_GObjInfFv(); -extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl(); -extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); -extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); -extern "C" void Set__4cCcSFP8cCcD_Obj(); -extern "C" void __mi__4cXyzCFRC3Vec(); -extern "C" void __ml__4cXyzCFf(); -extern "C" void cM_rndF__Ff(); -extern "C" void SetC__8cM3dGCylFRC4cXyz(); -extern "C" void SetR__8cM3dGCylFf(); -extern "C" void cLib_addCalc2__FPffff(); -extern "C" void cLib_addCalc0__FPfff(); -extern "C" void cLib_addCalcAngleS2__FPssss(); -extern "C" void MtxPosition__FP4cXyzP4cXyz(); -extern "C" void __ct__15Z2CreatureEnemyFv(); -extern "C" void init__15Z2CreatureEnemyFP3VecP3VecUcUc(); -extern "C" void* __nw__FUl(); -extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void _savegpr_27(); -extern "C" void _savegpr_28(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_27(); -extern "C" void _restgpr_28(); -extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; -extern "C" extern void* __vt__8dCcD_Sph[36]; -extern "C" extern void* __vt__8dCcD_Cyl[36]; -extern "C" extern void* __vt__9dCcD_Stts[11]; -extern "C" extern void* __vt__12cCcD_SphAttr[25]; -extern "C" extern void* __vt__12cCcD_CylAttr[25]; -extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; -extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; -extern "C" void __register_global_object(); - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 806053C8-806053CC 000000 0004+00 9/9 0/0 0/0 .rodata @3646 */ -SECTION_RODATA static f32 const lit_3646 = 1.0f; -COMPILER_STRIP_GATE(0x806053C8, &lit_3646); - -/* 806053CC-806053D0 000004 0004+00 1/2 0/0 0/0 .rodata @3647 */ -SECTION_RODATA static f32 const lit_3647 = 10.0f; -COMPILER_STRIP_GATE(0x806053CC, &lit_3647); - /* 8060541C-80605514 000000 00F8+00 1/1 0/0 0/0 .data j_info */ -SECTION_DATA static u8 j_info[248] = { - 0x00, 0x0E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, - 0x0F, 0x0D, 0x00, 0x00, 0x3E, 0xAA, 0x7E, 0xFA, 0x0F, 0x0D, 0x00, 0x00, 0x3F, 0x2A, 0x7E, 0xFA, - 0x00, 0x0F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, - 0x03, 0x04, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, - 0x04, 0x05, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, - 0x00, 0x08, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x08, 0x09, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, - 0x00, 0x09, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x09, 0x0A, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, - 0x00, 0x0A, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, - 0x10, 0x11, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, - 0x11, 0x12, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, - 0x00, 0x13, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x13, 0x14, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, - 0x00, 0x14, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x14, 0x15, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, - 0x00, 0x15, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x03, 0x10, 0x00, 0x00, 0x3E, 0xAA, 0x7E, 0xFA, - 0x03, 0x10, 0x00, 0x00, 0x3F, 0x2A, 0x7E, 0xFA, 0x08, 0x13, 0x00, 0x00, 0x3E, 0xAA, 0x7E, 0xFA, - 0x08, 0x13, 0x00, 0x00, 0x3F, 0x2A, 0x7E, 0xFA, 0x0D, 0x03, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, - 0x0D, 0x08, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, -}; - -/* 80605514-80605558 0000F8 0044+00 1/1 0/0 0/0 .data cc_cyl_src$3915 */ -static dCcD_SrcCyl cc_cyl_src = { - { - {0x0, {{0x0, 0x0, 0x0}, {0xd8fbfdff, 0x3}, 0x75}}, // mObj - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt - {dCcD_SE_NONE, 0x5, 0x0, 0x0, 0x2}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf - { - {0.0f, 0.0f, 0.0f}, // mCenter - 150.0f, // mRadius - 60.0f // mHeight - } // mCyl -}; - -/* 80605558-80605578 -00001 0020+00 1/0 0/0 0/0 .data l_daB_GOS_Method */ -SECTION_DATA static void* l_daB_GOS_Method[8] = { - (void*)daB_GOS_Create__FP10fopAc_ac_c, - (void*)daB_GOS_Delete__FP11b_gos_class, - (void*)daB_GOS_Execute__FP11b_gos_class, - (void*)daB_GOS_IsDelete__FP11b_gos_class, - (void*)daB_GOS_Draw__FP11b_gos_class, - (void*)NULL, - (void*)NULL, - (void*)NULL, -}; - -/* 80605578-806055A8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_B_GOS */ -SECTION_DATA extern void* g_profile_B_GOS[12] = { - (void*)0xFFFFFFFD, (void*)0x0008FFFD, - (void*)0x02F10000, (void*)&g_fpcLf_Method, - (void*)0x00000CCC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x00D80000, (void*)&l_daB_GOS_Method, - (void*)0x00040100, (void*)0x020E0000, -}; - -/* 806055A8-806055B4 00018C 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGCyl */ -SECTION_DATA extern void* __vt__8cM3dGCyl[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGCylFv, -}; - -/* 806055B4-806055C0 000198 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGSph */ -SECTION_DATA extern void* __vt__8cM3dGSph[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGSphFv, -}; - -/* 806055C0-806055CC 0001A4 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGAab */ -SECTION_DATA extern void* __vt__8cM3dGAab[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGAabFv, -}; - -/* 806055CC-806055F0 0001B0 0024+00 2/2 0/0 0/0 .data __vt__12dBgS_ObjAcch */ -SECTION_DATA extern void* __vt__12dBgS_ObjAcch[9] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12dBgS_ObjAcchFv, - (void*)NULL, - (void*)NULL, - (void*)func_806053AC, - (void*)NULL, - (void*)NULL, - (void*)func_806053A4, -}; - -/* 806055F0-806055FC 0001D4 000C+00 2/2 0/0 0/0 .data __vt__13daB_GOS_HIO_c */ -SECTION_DATA extern void* __vt__13daB_GOS_HIO_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__13daB_GOS_HIO_cFv, +static b_gos_j_info j_info[] = { + {0x000E, 1.0f}, {0x000D, 1.0f}, {0x0F0D, 0.333f}, {0x0F0D, 0.666f}, {0x000F, 1.0f}, + {0x0003, 1.0f}, {0x0304, 0.5f}, {0x0004, 1.0f}, {0x0405, 0.5f}, {0x0005, 1.0f}, + {0x0008, 1.0f}, {0x0809, 0.5f}, {0x0009, 1.0f}, {0x090A, 0.5f}, {0x000A, 1.0f}, + {0x0010, 1.0f}, {0x1011, 0.5f}, {0x0011, 1.0f}, {0x1112, 0.5f}, {0x0012, 1.0f}, + {0x0013, 1.0f}, {0x1314, 0.5f}, {0x0014, 1.0f}, {0x1415, 0.5f}, {0x0015, 1.0f}, + {0x0310, 0.333f}, {0x0310, 0.666f}, {0x0813, 0.333f}, {0x0813, 0.666f}, {0x0D03, 0.5f}, + {0x0D08, 0.5f}, }; /* 8060426C-8060429C 0000EC 0030+00 1/1 0/0 0/0 .text __ct__13daB_GOS_HIO_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daB_GOS_HIO_c::daB_GOS_HIO_c() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__13daB_GOS_HIO_cFv.s" +daB_GOS_HIO_c::daB_GOS_HIO_c() { + field_0x4 = -1; + mSize = 1.0f; + mNormalSpeed = 10.0f; } -#pragma pop - -/* ############################################################################################## */ -/* 806053D0-806053D4 000008 0004+00 0/2 0/0 0/0 .rodata @3674 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3674 = 50.0f; -COMPILER_STRIP_GATE(0x806053D0, &lit_3674); -#pragma pop - -/* 806053D4-806053D8 00000C 0004+00 0/1 0/0 0/0 .rodata @3675 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3675 = 800.0f; -COMPILER_STRIP_GATE(0x806053D4, &lit_3675); -#pragma pop - -/* 806053D8-806053DC 000010 0004+00 2/7 0/0 0/0 .rodata @3676 */ -SECTION_RODATA static u8 const lit_3676[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x806053D8, &lit_3676); /* 8060429C-80604370 00011C 00D4+00 1/0 0/0 0/0 .text daB_GOS_Draw__FP11b_gos_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daB_GOS_Draw(b_gos_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Draw__FP11b_gos_class.s" +static int daB_GOS_Draw(b_gos_class* i_this) { + J3DModel* model = i_this->mpMorf->getModel(); + + g_env_light.settingTevStruct(0, &i_this->current.pos, &i_this->tevStr); + g_env_light.setLightTevColorType_MAJI(model->getModelData(), &i_this->tevStr); + i_this->mpMorf->entryDL(); + + cXyz sp28; + sp28.set(i_this->current.pos.x, i_this->current.pos.y + 50.0f, i_this->current.pos.z); + i_this->mShadowKey = + dComIfGd_setShadow(i_this->mShadowKey, 1, model, &sp28, 800.0f, 0.0f, i_this->current.pos.y, + i_this->mAcch.GetGroundH(), i_this->mAcch.m_gnd, &i_this->tevStr, 0, + 1.0f, dDlst_shadowControl_c::getSimpleTex()); + return 1; } -#pragma pop - -/* ############################################################################################## */ -/* 806053DC-806053E0 000014 0004+00 1/1 0/0 0/0 .rodata @3684 */ -SECTION_RODATA static f32 const lit_3684 = -1.0f; -COMPILER_STRIP_GATE(0x806053DC, &lit_3684); - -/* 80605414-80605414 00004C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80605414 = "B_gos"; -#pragma pop /* 80604370-8060441C 0001F0 00AC+00 3/3 0/0 0/0 .text anm_init__FP11b_gos_classifUcf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void anm_init(b_gos_class* param_0, int param_1, f32 param_2, u8 param_3, f32 param_4) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/anm_init__FP11b_gos_classifUcf.s" +static void anm_init(b_gos_class* i_this, int i_anmID, f32 i_morf, u8 i_attribute, f32 i_speed) { + J3DAnmTransform* bck = (J3DAnmTransform*)dComIfG_getObjectRes("B_gos", i_anmID); + i_this->mpMorf->setAnm(bck, i_attribute, i_morf, i_speed, 0.0f, -1.0f); + i_this->mAnmID = i_anmID; } -#pragma pop /* 8060441C-80604420 00029C 0004+00 1/1 0/0 0/0 .text damage_check__FP11b_gos_class */ -static void damage_check(b_gos_class* param_0) { - /* empty function */ -} - -/* ############################################################################################## */ -/* 806053E0-806053E4 000018 0004+00 0/4 0/0 0/0 .rodata @3699 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3699 = 5.0f; -COMPILER_STRIP_GATE(0x806053E0, &lit_3699); -#pragma pop - -/* 806053E4-806053E8 00001C 0004+00 0/2 0/0 0/0 .rodata @3700 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3700 = 30.0f; -COMPILER_STRIP_GATE(0x806053E4, &lit_3700); -#pragma pop +static void damage_check(b_gos_class* i_this) {} /* 80604420-806044D8 0002A0 00B8+00 1/1 0/0 0/0 .text wait__FP11b_gos_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void wait(b_gos_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/wait__FP11b_gos_class.s" +static void wait(b_gos_class* i_this) { + i_this->speedF = 0.0f; + + switch (i_this->mMode) { + case 0: + anm_init(i_this, 6, 5.0f, J3DFrameCtrl::LOOP_REPEAT_e, 1.0f); + i_this->mMode = 1; + i_this->mTimers[0] = cM_rndF(30) + 30.0f; + break; + case 1: + if (i_this->mTimers[0] == 0) { + i_this->mAction = 1; + i_this->mMode = 0; + } + break; + } } -#pragma pop - -/* ############################################################################################## */ -/* 806053E8-806053EC 000020 0004+00 1/3 0/0 0/0 .rodata @3711 */ -SECTION_RODATA static f32 const lit_3711 = 60.0f; -COMPILER_STRIP_GATE(0x806053E8, &lit_3711); - -/* 806053EC-806053F0 000024 0004+00 0/2 0/0 0/0 .rodata @3712 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3712 = 65536.0f; -COMPILER_STRIP_GATE(0x806053EC, &lit_3712); -#pragma pop /* 80605608-8060560C 000008 0004+00 3/3 0/0 0/0 .bss boss */ -static u8 boss[4]; +static b_go_class* boss; /* 8060560C-80605610 00000C 0004+00 2/2 0/0 0/0 .bss None */ -static u8 data_8060560C[4]; - -/* 80605610-8060561C 000010 000C+00 1/1 0/0 0/0 .bss @3641 */ -static u8 lit_3641[12]; +static u8 data_8060560C; /* 8060561C-8060562C 00001C 0010+00 5/5 0/0 0/0 .bss l_HIO */ -static u8 l_HIO[16]; +static daB_GOS_HIO_c l_HIO; /* 806044D8-806045E4 000358 010C+00 1/1 0/0 0/0 .text walk__FP11b_gos_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void walk(b_gos_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/walk__FP11b_gos_class.s" -} -#pragma pop +static void walk(b_gos_class* i_this) { + f32 speed = 0.0f; -/* ############################################################################################## */ -/* 806053F0-806053F4 000028 0004+00 0/1 0/0 0/0 .rodata @3727 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3727 = 20.0f; -COMPILER_STRIP_GATE(0x806053F0, &lit_3727); -#pragma pop + switch (i_this->mMode) { + case 0: + anm_init(i_this, 4, 5.0f, J3DFrameCtrl::LOOP_REPEAT_e, 1.0f); + i_this->mMode = 1; + i_this->mTimers[0] = cM_rndF(60) + 60.0f; + i_this->mWalkDirection = cM_rndF(0x10000); + break; + case 1: + speed = l_HIO.mNormalSpeed; + if (i_this->mTimers[0] == 0) { + i_this->mAction = 0; + i_this->mMode = 0; + } + break; + } + + cLib_addCalc2(&i_this->speedF, speed, 1.0f, 1.0f); + cLib_addCalcAngleS2(&i_this->current.angle.y, i_this->mWalkDirection, 1, 0x800); +} /* 806045E4-806046E0 000464 00FC+00 1/1 0/0 0/0 .text ball__FP11b_gos_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void ball(b_gos_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/ball__FP11b_gos_class.s" -} -#pragma pop +static void ball(b_gos_class* i_this) { + switch (i_this->mMode) { + case 0: + i_this->mTimers[0] = cM_rndF(20); + i_this->mMode = 1; + // fallthrough + case 1: + if (i_this->mTimers[0] == 0) { + anm_init(i_this, 5, 5.0f, J3DFrameCtrl::LOOP_ONCE_e, 1.0f); + i_this->mMode = 2; + i_this->mTimers[0] = cM_rndF(30) + 60.0f; + } + break; + case 2: + if (i_this->mTimers[0] == 0) { + i_this->mAction = 3; + i_this->mMode = 0; + } + break; + } -/* ############################################################################################## */ -/* 806053F4-806053F8 00002C 0004+00 0/2 0/0 0/0 .rodata @3774 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3774 = 200.0f; -COMPILER_STRIP_GATE(0x806053F4, &lit_3774); -#pragma pop + cLib_addCalc0(&i_this->speedF, 1.0f, 1.0f); +} /* 806046E0-806048E0 000560 0200+00 1/1 0/0 0/0 .text stick__FP11b_gos_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void stick(b_gos_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/stick__FP11b_gos_class.s" +static void stick(b_gos_class* i_this) { + cXyz offset; + cXyz move_pos; + + switch (i_this->mMode) { + case 0: + i_this->mMode = 1; + i_this->speedF = 0.0f; + i_this->mAngleOffset = cM_rndF(0x10000); + break; + case 1: + break; + } + + cLib_addCalc2(&i_this->speedF, 200, 1, 1); + + J3DModel* boss_model = boss->mpMorf->getModel(); + MTXCopy(boss_model->i_getAnmMtx(j_info[i_this->mJointIndex].joint_no & 0xFF), *calc_mtx); + + offset.x = 0.0f; + offset.y = 0.0f; + offset.z = 0.0f; + MtxPosition(&offset, &move_pos); + + if (j_info[i_this->mJointIndex].field_0x4 < 1.0f) { + cXyz sp60; + MTXCopy(boss_model->i_getAnmMtx((j_info[i_this->mJointIndex].joint_no >> 8) & 0xFF), + *calc_mtx); + + offset.x = 0.0f; + offset.y = 0.0f; + offset.z = 0.0f; + MtxPosition(&offset, &sp60); + + move_pos += (sp60 - move_pos) * j_info[i_this->mJointIndex].field_0x4; + } + + cLib_addCalc2(&i_this->current.pos.x, move_pos.x, 1.0f, i_this->speedF); + cLib_addCalc2(&i_this->current.pos.y, move_pos.y, 1.0f, i_this->speedF); + cLib_addCalc2(&i_this->current.pos.z, move_pos.z, 1.0f, i_this->speedF); + cLib_addCalcAngleS2(&i_this->current.angle.y, boss->shape_angle.y + i_this->mAngleOffset, 1, + 0x400); } -#pragma pop - -/* ############################################################################################## */ -/* 806053F8-806053FC 000030 0004+00 0/1 0/0 0/0 .rodata @3827 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3827 = 0.5f; -COMPILER_STRIP_GATE(0x806053F8, &lit_3827); -#pragma pop - -/* 806053FC-80605400 000034 0004+00 0/1 0/0 0/0 .rodata @3828 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3828 = -60.0f; -COMPILER_STRIP_GATE(0x806053FC, &lit_3828); -#pragma pop - -/* 80605400-80605404 000038 0004+00 0/1 0/0 0/0 .rodata @3829 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3829 = 2.0f; -COMPILER_STRIP_GATE(0x80605400, &lit_3829); -#pragma pop - -/* 80605404-80605408 00003C 0004+00 0/1 0/0 0/0 .rodata @3830 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3830 = -30.0f; -COMPILER_STRIP_GATE(0x80605404, &lit_3830); -#pragma pop - -/* 80605408-8060540C 000040 0004+00 0/1 0/0 0/0 .rodata @3831 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3831 = 2.5f; -COMPILER_STRIP_GATE(0x80605408, &lit_3831); -#pragma pop /* 806048E0-80604B7C 000760 029C+00 1/1 0/0 0/0 .text action__FP11b_gos_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void action(b_gos_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/action__FP11b_gos_class.s" +static void action(b_gos_class* i_this) { + u8 var_r29; + bool on_cyl_co; + bool update_pos; + + cXyz speed_offset; + cXyz move_speed; + + i_this->mAngleToPlayer = fopAcM_searchPlayerAngleY(i_this); + i_this->mDistToPlayer = fopAcM_searchPlayerDistance(i_this); + + fopAcM_OffStatus(i_this, 0); + i_this->attention_info.flags = 0; + + on_cyl_co = true; + update_pos = true; + var_r29 = 0; + + switch (i_this->mAction) { + case 0: + wait(i_this); + break; + case 1: + walk(i_this); + break; + case 2: + ball(i_this); + var_r29 = 1; + break; + case 3: + stick(i_this); + on_cyl_co = false; + update_pos = false; + var_r29 = 2; + break; + } + + if (on_cyl_co) { + i_this->mCyl.OnCoSetBit(); + cXyz* cc_move = i_this->mCcStts.GetCCMoveP(); + + if (cc_move != NULL) { + i_this->current.pos += *cc_move * 0.5f; + } + } else { + i_this->mCyl.OffCoSetBit(); + } + + cLib_addCalcAngleS2(&i_this->shape_angle.y, i_this->current.angle.y, 2, 0x2000); + + if (update_pos == true) { + cMtx_YrotS(*calc_mtx, i_this->current.angle.y); + + speed_offset.x = 0.0f; + speed_offset.y = 0.0f; + speed_offset.z = i_this->speedF * l_HIO.mSize; + + MtxPosition(&speed_offset, &move_speed); + i_this->speed.x = move_speed.x; + i_this->speed.z = move_speed.z; + + i_this->current.pos += i_this->speed; + i_this->speed.y += i_this->gravity; + + i_this->mAcch.CrrPos(dComIfG_Bgsp()); + } + + if (var_r29 != 0) { + if (var_r29 == 2) { + cLib_addCalc2(&i_this->field_0x698, -60, 1, 2); + cLib_addCalc2(&i_this->field_0x69c, -30, 1, 1); + } + + if (boss->field_0x692 == 1) { + i_this->mAction = 0; + i_this->mMode = 0; + i_this->speedF = cM_rndF(10); + i_this->speed.y = cM_rndF(10); + } + } else { + cLib_addCalc0(&i_this->field_0x698, 1.0f, 5.0f); + cLib_addCalc0(&i_this->field_0x69c, 1.0f, 2.5f); + + if (boss->field_0x692 == 2) { + i_this->mAction = 2; + i_this->mMode = 0; + i_this->speedF = 0.0f; + } + } } -#pragma pop /* 80604B7C-80604CF4 0009FC 0178+00 2/1 0/0 0/0 .text daB_GOS_Execute__FP11b_gos_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daB_GOS_Execute(b_gos_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Execute__FP11b_gos_class.s" +static int daB_GOS_Execute(b_gos_class* i_this) { + i_this->field_0x66c++; + + boss = (b_go_class*)fopAcM_SearchByID(i_this->parentActorID); + + for (int i = 0; i < 4; i++) { + if (i_this->mTimers[i] != 0) { + i_this->mTimers[i]--; + } + } + + if (i_this->field_0x694 != 0) { + i_this->field_0x694--; + } + + action(i_this); + damage_check(i_this); + + mDoMtx_stack_c::transS(i_this->current.pos.x, i_this->current.pos.y, i_this->current.pos.z); + mDoMtx_stack_c::YrotM(i_this->shape_angle.y); + mDoMtx_stack_c::XrotM(i_this->shape_angle.x); + mDoMtx_stack_c::scaleM(l_HIO.mSize, l_HIO.mSize, l_HIO.mSize); + mDoMtx_stack_c::transM(0.0f, i_this->field_0x698, i_this->field_0x69c); + i_this->mpMorf->getModel()->i_setBaseTRMtx(mDoMtx_stack_c::get()); + + i_this->mpMorf->play(0, dComIfGp_getReverb(fopAcM_GetRoomNo(i_this))); + i_this->mpMorf->modelCalc(); + + i_this->mCyl.SetR(60.0f); + i_this->mCyl.SetC(i_this->current.pos); + dComIfG_Ccsp()->Set(&i_this->mCyl); + return 1; } -#pragma pop /* 80604CF4-80604CFC 000B74 0008+00 1/0 0/0 0/0 .text daB_GOS_IsDelete__FP11b_gos_class */ -static bool daB_GOS_IsDelete(b_gos_class* param_0) { - return true; +static int daB_GOS_IsDelete(b_gos_class* i_this) { + return 1; } /* 80604CFC-80604D64 000B7C 0068+00 1/0 0/0 0/0 .text daB_GOS_Delete__FP11b_gos_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daB_GOS_Delete(b_gos_class* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Delete__FP11b_gos_class.s" +static int daB_GOS_Delete(b_gos_class* i_this) { + dComIfG_resDelete(&i_this->mPhase, "B_gos"); + + if (i_this->field_0xcc8) { + data_8060560C = 0; + } + + if (i_this->heap != NULL) { + i_this->mpMorf->stopZelAnime(); + } + + return 1; } -#pragma pop /* 80604D64-80604E5C 000BE4 00F8+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void useHeapInit(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/useHeapInit__FP10fopAc_ac_c.s" +static int useHeapInit(fopAc_ac_c* i_this) { + b_gos_class* a_this = (b_gos_class*)i_this; + + a_this->mpMorf = new mDoExt_McaMorfSO((J3DModelData*)dComIfG_getObjectRes("B_gos", 9), NULL, + NULL, (J3DAnmTransform*)dComIfG_getObjectRes("B_gos", 6), + J3DFrameCtrl::LOOP_REPEAT_e, 1.0f, 0, -1, &a_this->mSound, + 0x80000, 0x11000084); + + if (a_this->mpMorf == NULL || a_this->mpMorf->getModel() == NULL) { + return false; + } + + return true; } -#pragma pop - -/* ############################################################################################## */ -/* 8060540C-80605410 000044 0004+00 0/1 0/0 0/0 .rodata @3953 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3953 = -200.0f; -COMPILER_STRIP_GATE(0x8060540C, &lit_3953); -#pragma pop - -/* 80605410-80605414 000048 0004+00 0/1 0/0 0/0 .rodata @3954 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3954 = -7.0f; -COMPILER_STRIP_GATE(0x80605410, &lit_3954); -#pragma pop /* 80604E5C-80605024 000CDC 01C8+00 1/0 0/0 0/0 .text daB_GOS_Create__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daB_GOS_Create(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/daB_GOS_Create__FP10fopAc_ac_c.s" +static int daB_GOS_Create(fopAc_ac_c* i_this) { + fopAcM_SetupActor(i_this, b_gos_class); + b_gos_class* a_this = (b_gos_class*)i_this; + + OS_REPORT("B_GOS//////////////B_GOS SET 0 !!\n"); + + int phase_state = dComIfG_resLoad(&a_this->mPhase, "B_gos"); + if (phase_state == cPhs_COMPLEATE_e) { + OS_REPORT("B_GOS PARAM %x\n", fopAcM_GetParam(a_this)); + a_this->mJointIndex = fopAcM_GetParam(a_this) & 0xFF; + + OS_REPORT("B_GOS//////////////B_GO SET 1 !!\n"); + + if (!fopAcM_entrySolidHeap(i_this, useHeapInit, 0x4B000)) { + OS_REPORT("//////////////B_GOS SET NON !!\n"); + return cPhs_ERROR_e; + } + + OS_REPORT("//////////////B_GOS SET 2 !!\n"); + + if (data_8060560C == 0) { + a_this->field_0xcc8 = 1; + data_8060560C = 1; + l_HIO.field_0x4 = -1; + } + + a_this->attention_info.flags = 4; + fopAcM_SetMtx(a_this, a_this->mpMorf->getModel()->getBaseTRMtx()); + fopAcM_SetMin(a_this, -200.0f, -200.0f, -200.0f); + fopAcM_SetMax(a_this, 200.0f, 200.0f, 200.0f); + a_this->health = 1000; + a_this->field_0x560 = 1000; + + a_this->mAcch.Set(fopAcM_GetPosition_p(a_this), fopAcM_GetOldPosition_p(a_this), a_this, 1, + &a_this->mAcchCir, fopAcM_GetSpeed_p(a_this), NULL, NULL); + a_this->mAcchCir.SetWall(50.0f, 50.0f); + + a_this->mSound.init(&a_this->current.pos, &a_this->eyePos, 3, 1); + a_this->mAtInfo.mpSound = &a_this->mSound; + + a_this->gravity = -7.0f; + a_this->mAction = 0; + + static dCcD_SrcCyl cc_cyl_src = { + { + {0x0, {{0x0, 0x0, 0x0}, {0xd8fbfdff, 0x3}, 0x75}}, // mObj + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt + {dCcD_SE_NONE, 0x5, 0x0, 0x0, 0x2}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf + { + {0.0f, 0.0f, 0.0f}, // mCenter + 150.0f, // mRadius + 60.0f // mHeight + } // mCyl + }; + + a_this->mCcStts.Init(0xFA, 0, a_this); + a_this->mCyl.Set(cc_cyl_src); + a_this->mCyl.SetStts(&a_this->mCcStts); + + daB_GOS_Execute(a_this); + } + + return phase_state; } -#pragma pop /* 80605024-806051D8 000EA4 01B4+00 1/1 0/0 0/0 .text __ct__11b_gos_classFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm b_gos_class::b_gos_class() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__ct__11b_gos_classFv.s" -} -#pragma pop +b_gos_class::b_gos_class() {} -/* 806051D8-80605220 001058 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cM3dGCyl::~cM3dGCyl() { -extern "C" asm void __dt__8cM3dGCylFv() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGCylFv.s" -} -#pragma pop +/* 80605558-80605578 -00001 0020+00 1/0 0/0 0/0 .data l_daB_GOS_Method */ +static actor_method_class l_daB_GOS_Method = { + (process_method_func)daB_GOS_Create, (process_method_func)daB_GOS_Delete, + (process_method_func)daB_GOS_Execute, (process_method_func)daB_GOS_IsDelete, + (process_method_func)daB_GOS_Draw, +}; -/* 80605220-80605268 0010A0 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGSphFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cM3dGSph::~cM3dGSph() { -extern "C" asm void __dt__8cM3dGSphFv() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGSphFv.s" -} -#pragma pop - -/* 80605268-806052B0 0010E8 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cM3dGAab::~cM3dGAab() { -extern "C" asm void __dt__8cM3dGAabFv() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__8cM3dGAabFv.s" -} -#pragma pop - -/* 806052B0-80605320 001130 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__12dBgS_ObjAcchFv.s" -} -#pragma pop - -/* 80605320-80605368 0011A0 0048+00 2/1 0/0 0/0 .text __dt__13daB_GOS_HIO_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daB_GOS_HIO_c::~daB_GOS_HIO_c() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__dt__13daB_GOS_HIO_cFv.s" -} -#pragma pop - -/* 80605368-806053A4 0011E8 003C+00 0/0 1/0 0/0 .text __sinit_d_a_b_gos_cpp */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void __sinit_d_a_b_gos_cpp() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/__sinit_d_a_b_gos_cpp.s" -} -#pragma pop - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x80605368, __sinit_d_a_b_gos_cpp); -#pragma pop - -/* 806053A4-806053AC 001224 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void func_806053A4() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053A4.s" -} -#pragma pop - -/* 806053AC-806053B4 00122C 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void func_806053AC() { - nofralloc -#include "asm/rel/d/a/b/d_a_b_gos/d_a_b_gos/func_806053AC.s" -} -#pragma pop - -/* 80605414-80605414 00004C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +/* 80605578-806055A8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_B_GOS */ +extern actor_process_profile_definition g_profile_B_GOS = { + fpcLy_CURRENT_e, + 8, + fpcPi_CURRENT_e, + PROC_B_GOS, + &g_fpcLf_Method.mBase, + sizeof(b_gos_class), + 0, + 0, + &g_fopAc_Method.base, + 216, + &l_daB_GOS_Method, + 0x40100, + fopAc_ENEMY_e, + fopAc_CULLBOX_CUSTOM_e, +}; \ No newline at end of file diff --git a/rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp b/rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp index fa67bbbe8d..815e0c4d64 100644 --- a/rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp +++ b/rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp @@ -921,192 +921,193 @@ static void non(b_oh_class* i_this) { } /* 8061C2C4-8061CB4C 000C84 0888+00 2/1 0/0 0/0 .text action__FP10b_oh_class */ -// close-ish +// matches with literals #ifdef NONMATCHING static void action(b_oh_class* i_this) { - BOOL bvar; - int uvar; + b_oh_class* a_this = (b_oh_class*)i_this; + int var_r28; + BOOL var_r27; + + cXyz sp90; + cXyz sp9C; - cXyz local_90; - cXyz cstack_9c; + a_this->mAngleToPlayer = fopAcM_searchPlayerAngleY(a_this); + a_this->mDistToPlayer = fopAcM_searchPlayerDistance(a_this); - i_this->mAngleToPlayer = fopAcM_searchPlayerAngleY(i_this); - i_this->mDistToPlayer = fopAcM_searchPlayerDistance(i_this); + fopAcM_OffStatus(a_this, 0); + a_this->attention_info.flags = 0; - fopAcM_OffStatus(i_this, 0); - i_this->attention_info.flags = 0; + var_r28 = 0; + var_r27 = true; - uvar = 0; - bvar = true; + cLib_addCalcAngleS2(&a_this->field_0xc98, 0x800, 1, 0x10); - cLib_addCalcAngleS2(&i_this->field_0xc98, 0x800, 1, 0x10); - - switch (i_this->mAction) { + switch (a_this->mAction) { case ACTION_START: - start(i_this); - uvar = 1; + start(a_this); + var_r28 = 1; break; case ACTION_WAIT: - wait(i_this); - uvar = 1; + wait(a_this); + var_r28 = 1; break; case ACTION_ATTACK: - attack(i_this); - uvar = 2; + attack(a_this); + var_r28 = 2; boss->field_0x4794 = 180; break; case ACTION_CAUGHT: - caught(i_this); - bvar = false; - uvar = 3; + caught(a_this); + var_r27 = false; + var_r28 = 3; boss->field_0x4794 = 180; break; case ACTION_END: - end(i_this); - uvar = 1; + end(a_this); + var_r28 = 1; break; case ACTION_NON: - non(i_this); + non(a_this); return; } if (boss->field_0x4752 == 2) { - cLib_addCalc2(&i_this->field_0x60c, 500.0f, 1.0f, 80.0f); + cLib_addCalc2(&a_this->field_0x60c, 500.0f, 1.0f, 80.0f); } - if (uvar == 1) { - f32 fvar15 = i_this->field_0x608 * 500.0f; - f32 fvar14 = i_this->field_0x608 * 1500.0f; - s16 tmp = 2000; + if (var_r28 == 1) { + f32 var_f29 = a_this->field_0x608 * 500.0f; + f32 var_f28 = a_this->field_0x608 * 1500.0f; + s16 var_r5 = 2000; for (int i = i_this->field_0xca8; i < 30; i++) { - f32 fvar = 1.0f; + f32 var_f31 = 1.0f; if (i < 5) { - fvar = i * 0.2f; + var_f31 = i * 0.2f; } else if (i >= 20) { - fvar = (i - 20) * 0.3f + 1.0f; + var_f31 = (i - 20) * 0.3f + 1.0f; } - i_this->field_0x6d0[i].x = fvar * (fvar15 * cM_ssin(i_this->field_0x5f8 + (i * 1800))); - i_this->field_0x6d0[i].y = fvar * (fvar14 * cM_ssin(i_this->field_0x5fa + (i * 1800))); + a_this->field_0x6d0[i].x = var_f31 * (var_f29 * cM_ssin( i_this->field_0x5f8 + (i * 1800) )); + a_this->field_0x6d0[i].y = var_f31 * (var_f28 * cM_ssin( i_this->field_0x5fa + (i * 1800) )); - i_this->field_0x838[i].x = - tmp + fvar * (fvar15 * cM_ssin(i_this->field_0x5fa + (i * 7000)) * 0.5f); - i_this->field_0x838[i].y = - fvar * (fvar14 * cM_ssin(i_this->field_0x5f8 + (i * 7000)) * 0.5f); + a_this->field_0x838[i].x = + var_r5 + var_f31 * (var_f29 * cM_ssin(a_this->field_0x5fa + (i * 7000)) * 0.5f); + a_this->field_0x838[i].y = + var_f31 * (var_f28 * cM_ssin(a_this->field_0x5f8 + (i * 7000)) * 0.5f); - tmp -= 200; - if (tmp < 0) { - tmp = 0; + var_r5 -= 200; + if (var_r5 < 0) { + var_r5 = 0; } - i_this->field_0x964[i] = - i_this->field_0x610 + 1.0f + - i_this->field_0x610 * cM_ssin(i_this->field_0x5f6 + i * -10000); + a_this->field_0x964[i] = + a_this->field_0x610 + 1.0f + + a_this->field_0x610 * cM_ssin(a_this->field_0x5f6 + i * -10000); } - cLib_addCalcAngleS2(&i_this->current.angle.x, -0xF2C, 4, 100); - cLib_addCalcAngleS2(&i_this->current.angle.y, i_this->home.angle.y, 4, 0x100); - } else if (uvar == 2) { - f32 fvar = i_this->field_0xc8c; - for (int i = i_this->field_0xca8; i < 30; i++) { - if (i >= 30 - i_this->field_0xca2) { - i_this->field_0x6d0[i].y = i_this->field_0xca4; + cLib_addCalcAngleS2(&a_this->current.angle.x, -0xF2C, 4, 100); + cLib_addCalcAngleS2(&a_this->current.angle.y, a_this->home.angle.y, 4, 0x100); + } else if (var_r28 == 2) { + f32 var_f4 = a_this->field_0xc8c; + for (int i = a_this->field_0xca8; i < 30; i++) { + if (i >= 30 - a_this->field_0xca2) { + a_this->field_0x6d0[i].y = a_this->field_0xca4; } else { - i_this->field_0x6d0[i].y = 0; + a_this->field_0x6d0[i].y = 0; } if (i >= 13) { - fvar *= i_this->field_0xc90 + 1.0f; + var_f4 *= a_this->field_0xc90 + 1.0f; } - i_this->field_0x6d0[i].x = - fvar * cM_ssin(i_this->field_0xc94 + i * i_this->field_0xc96); + a_this->field_0x6d0[i].x = + var_f4 * cM_ssin(a_this->field_0xc94 + i * a_this->field_0xc96); if (i >= 18) { - i_this->field_0x838[i].x = - i_this->field_0xc9c * cM_ssin(i_this->field_0x5cc * 1000 + i * -4000); + a_this->field_0x838[i].x = + a_this->field_0xc9c * cM_ssin(a_this->field_0x5cc * 1000 + i * -4000); } else { - i_this->field_0x838[i].x = 0; + a_this->field_0x838[i].x = 0; } - i_this->field_0x838[i].y = 0; - i_this->field_0x964[i] = - i_this->field_0x610 + 1.0f + - i_this->field_0x610 * cM_ssin(i_this->field_0x5f6 + i * -10000); + a_this->field_0x838[i].y = 0; + a_this->field_0x964[i] = + a_this->field_0x610 + 1.0f + + a_this->field_0x610 * cM_ssin(a_this->field_0x5f6 + i * -10000); } - } else if (uvar == 3) { - for (int i = i_this->field_0xca8; i < 30; i++) { - i_this->field_0x838[i].y = 0; - i_this->field_0x838[i].x = 0; + } else if (var_r28 == 3) { + for (int i = a_this->field_0xca8; i < 30; i++) { + a_this->field_0x838[i].y = 0; + a_this->field_0x838[i].x = 0; - if (i >= 30 - i_this->field_0xca2) { - i_this->field_0x6d0[i].y = i_this->field_0xca4; - i_this->field_0x6d0[i].x = 0; - i_this->field_0x964[i] = 1.0f; + if (i >= 30 - a_this->field_0xca2) { + a_this->field_0x6d0[i].y = a_this->field_0xca4; + a_this->field_0x6d0[i].x = 0; + a_this->field_0x964[i] = 1.0f; } else { - i_this->field_0x6d0[i].y = 0; - i_this->field_0x6d0[i].x = 2250; - i_this->field_0x964[i] = - i_this->field_0x610 + 1.0f + - i_this->field_0x610 * cM_ssin(i_this->field_0x5f6 + i * -10000); + a_this->field_0x6d0[i].y = 0; + a_this->field_0x6d0[i].x = 2250; + a_this->field_0x964[i] = + a_this->field_0x610 + 1.0f + + a_this->field_0x610 * cM_ssin(a_this->field_0x5f6 + i * -10000); } } - cLib_addCalcAngleS2(&i_this->current.angle.x, 0xA92, 4, 0x200); - cLib_addCalcAngleS2(&i_this->current.angle.y, i_this->home.angle.y, 4, 0x800); + cLib_addCalcAngleS2(&a_this->current.angle.x, 0xA92, 4, 0x200); + cLib_addCalcAngleS2(&a_this->current.angle.y, a_this->home.angle.y, 4, 0x800); } - i_this->field_0x600 = - (-i_this->field_0x614 - i_this->field_0x60c) + cM_ssin(i_this->field_0x5cc * 200) * 100.0f; - i_this->field_0x604 = ((100.0f - i_this->field_0x614) - i_this->field_0x60c) + - cM_ssin(i_this->field_0x5cc * 200) * 100.0f; - i_this->field_0x5f8 += (s16)i_this->field_0x600; - i_this->field_0x5fa += (s16)i_this->field_0x604; - i_this->field_0x5fc = i_this->field_0x60c + 2000.0f; - i_this->field_0x5f6 += (s16)i_this->field_0x5fc; + a_this->field_0x600 = + (-a_this->field_0x614 - a_this->field_0x60c) + cM_ssin(a_this->field_0x5cc * 200) * 100.0f; + a_this->field_0x604 = ((100.0f - a_this->field_0x614) - a_this->field_0x60c) + + cM_ssin(a_this->field_0x5cc * 200) * 100.0f; + a_this->field_0x5f8 += (s16)a_this->field_0x600; + a_this->field_0x5fa += (s16)a_this->field_0x604; + a_this->field_0x5fc = a_this->field_0x60c + 2000.0f; + a_this->field_0x5f6 += (s16)a_this->field_0x5fc; - cLib_addCalc0(&i_this->field_0x60c, 0.1f, 50.0f); - cLib_addCalc2(&i_this->field_0x610, 0.2f, 0.1f, 0.01f); - - if (uvar <= 3) { - cLib_addCalc2(&i_this->mTentacleLength, l_HIO.mLength, 0.1f, 0.5f); + cLib_addCalc0(&a_this->field_0x60c, 0.1f, 50.0f); + cLib_addCalc2(&a_this->field_0x610, 0.2f, 0.1f, 0.01f); + + if (var_r28 <= 3) { + cLib_addCalc2(&a_this->mTentacleLength, l_HIO.mLength, 0.1f, 0.5f); } - MTXCopy(i_this->mpMorf->getModel()->i_getAnmMtx(i_this->field_0x5c8 + 8), + MTXCopy(boss->mParts[0].field_0x0->getModel()->i_getAnmMtx(a_this->field_0x5c8 + 8), mDoMtx_stack_c::get()); - mDoMtx_stack_c::multVecZero(&i_this->current.pos); + mDoMtx_stack_c::multVecZero(&a_this->current.pos); - local_90.x = i_this->current.pos.x - boss->home.pos.x; - local_90.z = i_this->current.pos.z - boss->home.pos.z; - i_this->home.angle.y = cM_atan2s(local_90.x, local_90.z); - cLib_addCalcAngleS2(&i_this->shape_angle.y, i_this->current.angle.y, 2, 0x2000); - cLib_addCalcAngleS2(&i_this->shape_angle.x, i_this->current.angle.x, 2, 0x2000); + sp90.x = a_this->current.pos.x - boss->home.pos.x; + sp90.z = a_this->current.pos.z - boss->home.pos.z; + a_this->home.angle.y = cM_atan2s(sp90.x, sp90.z); + cLib_addCalcAngleS2(&a_this->shape_angle.y, a_this->current.angle.y, 2, 0x2000); + cLib_addCalcAngleS2(&a_this->shape_angle.x, a_this->current.angle.x, 2, 0x2000); - for (int i = i_this->field_0xca8; i < 30; i++) { + for (int i = a_this->field_0xca8; i < 30; i++) { if (Cinit) { - i_this->field_0x61c[i] = i_this->field_0x6d0[i]; - i_this->field_0x784[i] = i_this->field_0x838[i]; - i_this->field_0x8ec[i] = i_this->field_0x964[i]; + a_this->field_0x61c[i] = a_this->field_0x6d0[i]; + a_this->field_0x784[i] = a_this->field_0x838[i]; + a_this->field_0x8ec[i] = a_this->field_0x964[i]; } else { - cLib_addCalcAngleS2(&i_this->field_0x61c[i].x, i_this->field_0x6d0[i].x, 2, - i_this->field_0xc98); - cLib_addCalcAngleS2(&i_this->field_0x61c[i].y, i_this->field_0x6d0[i].y, 2, - i_this->field_0xc98); - cLib_addCalcAngleS2(&i_this->field_0x784[i].x, i_this->field_0x838[i].x, 2, - i_this->field_0xc98); - cLib_addCalcAngleS2(&i_this->field_0x784[i].y, i_this->field_0x838[i].y, 2, - i_this->field_0xc98); - cLib_addCalc2(&i_this->field_0x8ec[i], i_this->field_0x964[i], 0.5f, 0.2f); - cLib_addCalc0(&i_this->field_0x9dc[i], 0.1f, 0.2f); + cLib_addCalcAngleS2(&a_this->field_0x61c[i].x, a_this->field_0x6d0[i].x, 2, + a_this->field_0xc98); + cLib_addCalcAngleS2(&a_this->field_0x61c[i].y, a_this->field_0x6d0[i].y, 2, + a_this->field_0xc98); + cLib_addCalcAngleS2(&a_this->field_0x784[i].x, a_this->field_0x838[i].x, 2, + a_this->field_0xc98); + cLib_addCalcAngleS2(&a_this->field_0x784[i].y, a_this->field_0x838[i].y, 2, + a_this->field_0xc98); + cLib_addCalc2(&a_this->field_0x8ec[i], a_this->field_0x964[i], 0.5f, 0.2f); + cLib_addCalc0(&a_this->field_0x9dc[i], 0.1f, 0.2f); } } for (int i = 0; i < 15; i++) { - if (bvar && boss->mDemoAction == 0) { - i_this->mColliders[i].OnCoSetBit(); + if (var_r27 && boss->mDemoAction == 0) { + a_this->mColliders[i].OnCoSetBit(); } else { - i_this->mColliders[i].OffCoSetBit(); + a_this->mColliders[i].OffCoSetBit(); } } @@ -1592,7 +1593,8 @@ extern "C" void __ct__5csXyzFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm daB_OH_HIO_c::~daB_OH_HIO_c() { +// asm daB_OH_HIO_c::~daB_OH_HIO_c() { +extern "C" asm void __dt__12daB_OH_HIO_cFv() { nofralloc #include "asm/rel/d/a/b/d_a_b_oh/d_a_b_oh/__dt__12daB_OH_HIO_cFv.s" } diff --git a/rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp b/rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp new file mode 100644 index 0000000000..f07637241d --- /dev/null +++ b/rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp @@ -0,0 +1,1226 @@ +/** + * d_a_b_oh.cpp + * Morpheel Tentacle + */ + +/** + * This almost entirely matches, there's just an issue with extra vtables / weak dtors being emitted + * things like cCcD_ShapeAttr, dCcD/cCcD_Stts, etc + */ + +#include "SSystem/SComponent/c_math.h" +#include "c/c_damagereaction.h" +#include "d/a/d_a_player.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" +#include "dol2asm.h" +#include "f_op/f_op_actor_mng.h" +#include "rel/d/a/b/d_a_b_ob/d_a_b_ob.h" +#include "rel/d/a/b/d_a_b_oh/d_a_b_oh.h" + +#define ACTION_START 0 +#define ACTION_WAIT 1 +#define ACTION_ATTACK 2 +#define ACTION_CAUGHT 3 +#define ACTION_END 10 +#define ACTION_NON 11 + +// +// Forward References: +// + +extern "C" void __ct__12daB_OH_HIO_cFv(); +extern "C" static void nodeCallBack__FP8J3DJointi(); +extern "C" static void daB_OH_Draw__FP10b_oh_class(); +extern "C" static void start__FP10b_oh_class(); +extern "C" void __dt__4cXyzFv(); +extern "C" static void wait__FP10b_oh_class(); +extern "C" static void attack__FP10b_oh_class(); +extern "C" static void caught__FP10b_oh_class(); +extern "C" static void end__FP10b_oh_class(); +extern "C" static void non__FP10b_oh_class(); +extern "C" static void action__FP10b_oh_class(); +extern "C" static void damage_check__FP10b_oh_class(); +extern "C" static void daB_OH_Execute__FP10b_oh_class(); +extern "C" static bool daB_OH_IsDelete__FP10b_oh_class(); +extern "C" static void daB_OH_Delete__FP10b_oh_class(); +extern "C" static void useHeapInit__FP10fopAc_ac_c(); +extern "C" void __dt__12J3DFrameCtrlFv(); +extern "C" static void daB_OH_Create__FP10fopAc_ac_c(); +extern "C" void __dt__8dCcD_SphFv(); +extern "C" void __ct__8dCcD_SphFv(); +extern "C" void __dt__8cM3dGSphFv(); +extern "C" void __dt__8cM3dGAabFv(); +extern "C" void __ct__4cXyzFv(); +extern "C" void __dt__5csXyzFv(); +extern "C" void __ct__5csXyzFv(); +extern "C" void __dt__12daB_OH_HIO_cFv(); +extern "C" void __sinit_d_a_b_oh_cpp(); +extern "C" extern char const* const d_a_b_oh__stringBase0; + +// +// External References: +// + +extern "C" void mDoMtx_XrotM__FPA4_fs(); +extern "C" void mDoMtx_YrotM__FPA4_fs(); +extern "C" void mDoMtx_ZrotM__FPA4_fs(); +extern "C" void scaleM__14mDoMtx_stack_cFfff(); +extern "C" void play__14mDoExt_baseAnmFv(); +extern "C" void init__13mDoExt_btkAnmFP16J3DMaterialTableP19J3DAnmTextureSRTKeyiifss(); +extern "C" void entry__13mDoExt_btkAnmFP16J3DMaterialTablef(); +extern "C" void init__13mDoExt_brkAnmFP16J3DMaterialTableP15J3DAnmTevRegKeyiifss(); +extern "C" void entry__13mDoExt_brkAnmFP16J3DMaterialTablef(); +extern "C" void create__21mDoExt_invisibleModelFP8J3DModelUc(); +extern "C" void entryDL__21mDoExt_invisibleModelFP4cXyz(); +extern "C" void +__ct__14mDoExt_McaMorfFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiiPvUlUl(); +extern "C" void play__14mDoExt_McaMorfFP3VecUlSc(); +extern "C" void modelCalc__14mDoExt_McaMorfFv(); +extern "C" void cDmrNowMidnaTalk__Fv(); +extern "C" void __ct__10fopAc_ac_cFv(); +extern "C" void fopAcIt_Judge__FPFPvPv_PvPv(); +extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl(); +extern "C" void fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c(); +extern "C" void fopAcM_searchActorDistance__FPC10fopAc_ac_cPC10fopAc_ac_c(); +extern "C" void fpcSch_JudgeByID__FPvPv(); +extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc(); +extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc(); +extern "C" void dComIfGp_getReverb__Fi(); +extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); +extern "C" void setHitMark__13dPa_control_cFUsP10fopAc_ac_cPC4cXyzPC5csXyzPC4cXyzUl(); +extern "C" void +set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf(); +extern "C" void StartShock__12dVibration_cFii4cXyz(); +extern "C" void __ct__10dCcD_GSttsFv(); +extern "C" void Move__10dCcD_GSttsFv(); +extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c(); +extern "C" void __ct__12dCcD_GObjInfFv(); +extern "C" void __dt__12dCcD_GObjInfFv(); +extern "C" void ChkTgHit__12dCcD_GObjInfFv(); +extern "C" void GetTgHitObj__12dCcD_GObjInfFv(); +extern "C" void ChkCoHit__12dCcD_GObjInfFv(); +extern "C" void GetCoHitObj__12dCcD_GObjInfFv(); +extern "C" void Set__8dCcD_SphFRC11dCcD_SrcSph(); +extern "C" void cc_at_check__FP10fopAc_ac_cP11dCcU_AtInfo(); +extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); +extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); +extern "C" void GetAc__8cCcD_ObjFv(); +extern "C" void Set__4cCcSFP8cCcD_Obj(); +extern "C" void cM_atan2s__Fff(); +extern "C" void cM_rndF__Ff(); +extern "C" void cM_rndFX__Ff(); +extern "C" void SetC__8cM3dGSphFRC4cXyz(); +extern "C" void SetR__8cM3dGSphFf(); +extern "C" void cLib_addCalc2__FPffff(); +extern "C" void cLib_addCalc0__FPfff(); +extern "C" void cLib_addCalcAngleS2__FPssss(); +extern "C" void MtxTrans__FfffUc(); +extern "C" void MtxScale__FfffUc(); +extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); +extern "C" void startTentacleSound__12Z2CreatureOIF10JAISoundIDUcUlSc(); +extern "C" void* __nw__FUl(); +extern "C" void __dl__FPv(); +extern "C" void init__12J3DFrameCtrlFs(); +extern "C" void __construct_array(); +extern "C" void _savegpr_20(); +extern "C" void _savegpr_23(); +extern "C" void _savegpr_24(); +extern "C" void _savegpr_25(); +extern "C" void _savegpr_26(); +extern "C" void _savegpr_27(); +extern "C" void _savegpr_28(); +extern "C" void _savegpr_29(); +extern "C" void _restgpr_20(); +extern "C" void _restgpr_23(); +extern "C" void _restgpr_24(); +extern "C" void _restgpr_25(); +extern "C" void _restgpr_26(); +extern "C" void _restgpr_27(); +extern "C" void _restgpr_28(); +extern "C" void _restgpr_29(); +extern "C" extern void* __vt__8dCcD_Sph[36]; +extern "C" extern void* __vt__9dCcD_Stts[11]; +extern "C" extern void* __vt__12cCcD_SphAttr[25]; +extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; +extern "C" extern void* __vt__9cCcD_Stts[8]; +extern "C" u8 now__14mDoMtx_stack_c[48]; +extern "C" u8 mCurrentMtx__6J3DSys[48]; +extern "C" u8 sincosTable___5JMath[65536]; +extern "C" extern u8 struct_80450C98[4]; +extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; +extern "C" void __register_global_object(); + +// +// Declarations: +// + +/* 8061DAAC-8061DAEC 000030 0040+00 1/1 0/0 0/0 .data cc_sph_src$4457 */ + +/* 8061B72C-8061B75C 0000EC 0030+00 1/1 0/0 0/0 .text __ct__12daB_OH_HIO_cFv */ +daB_OH_HIO_c::daB_OH_HIO_c() { + field_0x4 = -1; + mModelSize = 1.0f; + mLength = 70.0f; +} + +/* 8061B75C-8061B8B0 00011C 0154+00 1/1 0/0 0/0 .text nodeCallBack__FP8J3DJointi */ +static int nodeCallBack(J3DJoint* param_0, int param_1) { + if (param_1 == 0) { + int jnt_no = param_0->getJntNo(); + J3DModel* model_p = j3dSys.getModel(); + b_oh_class* this_ = (b_oh_class*)model_p->getUserArea(); + + if (this_ != NULL && jnt_no >= this_->field_0xca8 && jnt_no <= 29) { + MTXCopy(model_p->i_getAnmMtx(jnt_no), *calc_mtx); + mDoMtx_YrotM(*calc_mtx, this_->field_0x61c[jnt_no].y + this_->field_0x784[jnt_no].y); + mDoMtx_ZrotM(*calc_mtx, this_->field_0x61c[jnt_no].x + this_->field_0x784[jnt_no].x); + MtxTrans(this_->mTentacleLength + -100.0f, 1.0f, 1.0f, 1); + MTXCopy(*calc_mtx, J3DSys::mCurrentMtx); + MtxScale(1.0f, this_->field_0x8ec[jnt_no] + this_->field_0x9dc[jnt_no], + this_->field_0x8ec[jnt_no] + this_->field_0x9dc[jnt_no], 1); + model_p->i_setAnmMtx(jnt_no, *calc_mtx); + } + } + + return 1; +} + +/* 8061B8B0-8061B960 000270 00B0+00 1/0 0/0 0/0 .text daB_OH_Draw__FP10b_oh_class */ +static int daB_OH_Draw(b_oh_class* i_this) { + if (i_this->mAction == ACTION_NON) { + return 1; + } + + J3DModel* model_p = i_this->mpMorf->getModel(); + + g_env_light.settingTevStruct(0, &i_this->current.pos, &i_this->tevStr); + g_env_light.setLightTevColorType_MAJI(model_p, &i_this->tevStr); + + i_this->mpBtk->entry(model_p->getModelData()); + i_this->mpBrk->entry(model_p->getModelData()); + i_this->mInvisModel.entryDL(NULL); + return 1; +} + +/* 8061DB78-8061DB7C 000008 0001+03 2/2 0/0 0/0 .bss @1109 */ +static u8 lit_1109[1 + 3 /* padding */]; + +/* 8061DB7C-8061DB80 00000C 0001+03 0/0 0/0 0/0 .bss @1107 */ +#pragma push +#pragma force_active on +static u8 lit_1107[1 + 3 /* padding */]; +#pragma pop + +/* 8061DB80-8061DB84 000010 0001+03 0/0 0/0 0/0 .bss @1105 */ +#pragma push +#pragma force_active on +static u8 lit_1105[1 + 3 /* padding */]; +#pragma pop + +/* 8061DB84-8061DB88 000014 0001+03 0/0 0/0 0/0 .bss @1104 */ +#pragma push +#pragma force_active on +static u8 lit_1104[1 + 3 /* padding */]; +#pragma pop + +/* 8061DB88-8061DB8C 000018 0001+03 0/0 0/0 0/0 .bss @1099 */ +#pragma push +#pragma force_active on +static u8 lit_1099[1 + 3 /* padding */]; +#pragma pop + +/* 8061DB8C-8061DB90 00001C 0001+03 0/0 0/0 0/0 .bss @1097 */ +#pragma push +#pragma force_active on +static u8 lit_1097[1 + 3 /* padding */]; +#pragma pop + +/* 8061DB90-8061DB94 000020 0001+03 0/0 0/0 0/0 .bss @1095 */ +#pragma push +#pragma force_active on +static u8 lit_1095[1 + 3 /* padding */]; +#pragma pop + +/* 8061DB94-8061DB98 000024 0001+03 0/0 0/0 0/0 .bss @1094 */ +#pragma push +#pragma force_active on +static u8 lit_1094[1 + 3 /* padding */]; +#pragma pop + +/* 8061DB98-8061DB9C 000028 0001+03 0/0 0/0 0/0 .bss @1057 */ +#pragma push +#pragma force_active on +static u8 lit_1057[1 + 3 /* padding */]; +#pragma pop + +/* 8061DB9C-8061DBA0 00002C 0001+03 0/0 0/0 0/0 .bss @1055 */ +#pragma push +#pragma force_active on +static u8 lit_1055[1 + 3 /* padding */]; +#pragma pop + +/* 8061DBA0-8061DBA4 000030 0001+03 0/0 0/0 0/0 .bss @1053 */ +#pragma push +#pragma force_active on +static u8 lit_1053[1 + 3 /* padding */]; +#pragma pop + +/* 8061DBA4-8061DBA8 000034 0001+03 0/0 0/0 0/0 .bss @1052 */ +#pragma push +#pragma force_active on +static u8 lit_1052[1 + 3 /* padding */]; +#pragma pop + +/* 8061DBA8-8061DBAC 000038 0001+03 0/0 0/0 0/0 .bss @1014 */ +#pragma push +#pragma force_active on +static u8 lit_1014[1 + 3 /* padding */]; +#pragma pop + +/* 8061DBAC-8061DBB0 00003C 0001+03 0/0 0/0 0/0 .bss @1012 */ +#pragma push +#pragma force_active on +static u8 lit_1012[1 + 3 /* padding */]; +#pragma pop + +/* 8061DBB0-8061DBB4 000040 0001+03 0/0 0/0 0/0 .bss @1010 */ +#pragma push +#pragma force_active on +static u8 lit_1010[1 + 3 /* padding */]; +#pragma pop + +/* 8061DBB4-8061DBB8 -00001 0004+00 1/2 0/0 0/0 .bss None */ +/* 8061DBB4 0001+00 data_8061DBB4 @1009 */ +/* 8061DBB5 0003+00 data_8061DBB5 None */ +#pragma push +#pragma force_active on +static u8 struct_8061DBB4; +#pragma pop + +static u8 data_8061DBB5; + +/* 8061DBC4-8061DBD4 000054 0010+00 2/3 0/0 0/0 .bss l_HIO */ +static daB_OH_HIO_c l_HIO; + +/* 8061DBD4-8061DBD8 000064 0004+00 6/7 0/0 0/0 .bss boss */ +static b_ob_class* boss; + +/* 8061DBD8-8061DBDC 000068 0004+00 0/1 0/0 0/0 .bss Cinit */ +#pragma push +#pragma force_active on +static int Cinit; +#pragma pop + +/* 8061B960-8061BB18 000320 01B8+00 1/1 0/0 0/0 .text start__FP10b_oh_class */ +static void start(b_oh_class* i_this) { + cXyz sp28; + + switch (i_this->mActionPhase) { + case 0: + if (boss->field_0x4788 != i_this->field_0x5c8) { + i_this->field_0xcac = -1500.0f; + } else { + i_this->field_0x608 = 0.3f; + i_this->mActionPhase = 1; + } + break; + case 1: + if (i_this->field_0xcac < -100.0f) { + for (int i = 0; i < 28; i++) { + MTXCopy(i_this->mpMorf->getModel()->i_getAnmMtx(i), mDoMtx_stack_c::get()); + mDoMtx_stack_c::multVecZero(&sp28); + + if (sp28.y > boss->field_0x47a0) { + sp28.y = boss->field_0x47a0; + i_this->field_0x1f80 = + dComIfGp_particle_set(i_this->field_0x1f80, 0x8808, &sp28, NULL, NULL); + break; + } + } + } + + cLib_addCalc0(&i_this->field_0xcac, 0.1f, 30.0f); + cLib_addCalc2(&i_this->field_0x608, 0.3f, 0.1f, 0.005f); + break; + case 2: + cLib_addCalc2(&i_this->field_0x608, 1.0f, 0.1f, 0.05f); + break; + } +} + +/* 8061BB54-8061BC6C 000514 0118+00 1/1 0/0 0/0 .text wait__FP10b_oh_class */ +static void wait(b_oh_class* i_this) { + daPy_py_c* player_p = (daPy_py_c*)dComIfGp_getPlayer(0); + + switch (i_this->mActionPhase) { + case 0: + i_this->mActionPhase = 1; + i_this->mTimers[0] = (s16)(cM_rndF(30.0f) + 60.0f); + break; + case 1: + cLib_addCalc2(&i_this->field_0x608, 1.0f, 0.1f, 0.005f); + + if (i_this->field_0xca8 == 0 && player_p->current.pos.y < -23000.0f && + i_this->mDistToPlayer < 1300.0f && i_this->mTimers[0] == 0 && boss->field_0x4744 == 0 && + boss->field_0x4794 == 0) + { + i_this->mAction = ACTION_ATTACK; + i_this->mActionPhase = 0; + i_this->field_0xc98 = 0; + boss->field_0x4794 = 3; + } + break; + } +} + +/* 8061BC6C-8061C070 00062C 0404+00 1/1 0/0 0/0 .text attack__FP10b_oh_class */ +static void attack(b_oh_class* i_this) { + daPy_py_c* player_p = (daPy_py_c*)dComIfGp_getPlayer(0); + i_this->field_0xca0++; + + switch (i_this->mActionPhase) { + case 0: + i_this->mActionPhase = 1; + i_this->field_0xc9c = 0.0f; + i_this->field_0xca2 = 0; + i_this->field_0xca4 = 0; + + if ((s16)(i_this->mAngleToPlayer - i_this->current.angle.y) > 0) { + i_this->field_0xc88 = 1; + } else { + i_this->field_0xc88 = -1; + } + + i_this->mActionPhase = 2; + i_this->mTimers[0] = 100; + i_this->field_0xca0 = 0; + i_this->field_0xc98 = 0; + case 1: + case 2: + if (i_this->mTimers[0] == 0) { + i_this->mAction = ACTION_WAIT; + i_this->mActionPhase = 0; + i_this->field_0xc98 = 0; + i_this->field_0xca2 = 0; + return; + } + case 3: + cLib_addCalcAngleS2(&i_this->field_0xc98, 0x200, 1, 32); + + if (i_this->field_0xca0 > 8) { + cLib_addCalc2(&i_this->field_0xc90, -0.12f, 0.8f, 0.02f); + } + + if (i_this->field_0xca0 < 70) { + cLib_addCalcAngleS2(&i_this->field_0xca4, 0, 1, 500); + cLib_addCalcAngleS2(&i_this->current.angle.y, + i_this->mAngleToPlayer + i_this->field_0xc88 * -0x600, 2, 0x400); + cLib_addCalc2(&i_this->field_0xc9c, 200.0f, 0.5f, 50.0f); + + if (i_this->field_0xca0 < 30) { + f32 fvar = player_p->current.pos.y - -24000.0f; + if (fvar > 1000.0f) { + fvar = 1000.0f; + } + + i_this->field_0xc96 = fvar + 3700.0f; + + cLib_addCalcAngleS2(&i_this->current.angle.x, + (s16)(-fvar * 2.0f + 11700.0f) - 0x4000, 1, 1000); + } + } else { + s16 var7; + s16 var3; + + if (i_this->mTimers[1] != 0) { + var7 = 6; + var3 = i_this->field_0xc88 * 9000; + } else { + var7 = 10; + var3 = i_this->field_0xc88 * 5000; + } + + cLib_addCalcAngleS2(&i_this->field_0xca2, var7, 1, 1); + cLib_addCalcAngleS2(&i_this->field_0xca4, var3, 1, 500); + + if (i_this->mTimers[1] == 0 || i_this->mTimers[1] > 10) { + i_this->current.angle.y += (s16)(i_this->field_0xc88 * 300); + } + + if (i_this->mActionPhase == 2) { + for (int i = 7; i < 15; i++) { + if (i_this->mColliders[i].ChkCoHit()) { + cCcD_Obj* obj_p = i_this->mColliders[i].GetCoHitObj(); + if (fopAcM_GetName(obj_p->GetAc()) == PROC_ALINK && + !i_dComIfGp_event_runCheck()) + { + if (!player_p->checkHookshotShootReturnMode() && + boss->field_0x4744 == 0) + { + i_this->mActionPhase = 3; + boss->mDemoAction = 1; + boss->field_0x5ce8 = i_this->field_0x5c8; + i_this->mTimers[1] = 20; + + if (boss->field_0x4752 != 1) { + boss->field_0x4752 = 1; + boss->field_0x4754 = 0; + boss->field_0x4738 = 30; + boss->field_0x473c = 2; + } + + boss->field_0x59e0.startTentacleSound( + Z2SE_EN_OI_TENT_SWING, i_this->field_0x5c8, 0, + dComIfGp_getReverb(fopAcM_GetRoomNo(i_this))); + break; + } + } + } + } + } + } + + cLib_addCalcAngleS2(&i_this->field_0xc94, 22500, 1, 2000); + cLib_addCalc2(&i_this->field_0xc8c, 4000.0f, 1.0f, 400.0f); + if (i_this->mTimers[1] == 1) { + i_this->mAction = ACTION_CAUGHT; + i_this->mActionPhase = 0; + i_this->field_0xc98 = 0; + } + break; + } +} + +/* 8061C070-8061C1F8 000A30 0188+00 1/1 0/0 0/0 .text caught__FP10b_oh_class */ +static void caught(b_oh_class* i_this) { + i_this->field_0x5f4 = 6; + + switch (i_this->mActionPhase) { + case 0: + i_this->mActionPhase = 1; + i_this->mTimers[0] = 10; + i_this->mTimers[1] = 50; + case 1: + i_this->field_0x60c = 500.0f; + cLib_addCalcAngleS2(&i_this->field_0xca2, 6, 1, 1); + cLib_addCalcAngleS2(&i_this->field_0xca4, i_this->field_0xc88 * 9000, 1, 500); + + if (i_this->mTimers[0] == 1) { + boss->field_0x4738 = 21; + boss->field_0x473c = 0; + boss->field_0x59e0.startCreatureVoice(Z2SE_EN_OI_V_EAT, -1); + } + + if (!(i_this->field_0x5cc & 0xF)) { + dComIfGp_getVibration().StartShock(3, 31, cXyz(0.0f, 1.0f, 0.0f)); + } + + if (i_this->mTimers[1] == 0) { + if (boss->mDemoAction != 0) { + boss->mDemoAction = 3; + boss->field_0x5c82 = 0; + } + + i_this->mAction = ACTION_WAIT; + i_this->mActionPhase = 0; + i_this->field_0xc98 = 0; + } + break; + } +} + +/* 8061C1F8-8061C298 000BB8 00A0+00 1/1 0/0 0/0 .text end__FP10b_oh_class */ +static void end(b_oh_class* i_this) { + i_this->field_0x5f4 = 6; + + switch (i_this->mActionPhase) { + case 0: + i_this->mActionPhase = 1; + i_this->mTimers[0] = 70; + break; + case 1: + cLib_addCalc2(&i_this->field_0x60c, 1000.0f, 1.0f, 150.0f); + + if (i_this->mTimers[0] == 0) { + cLib_addCalc0(&i_this->mTentacleLength, 1.0f, 1.0f); + } + break; + } +} + +/* 8061C298-8061C2C4 000C58 002C+00 1/1 0/0 0/0 .text non__FP10b_oh_class */ +static void non(b_oh_class* i_this) { + i_this->field_0x5f4 = 6; + + switch (i_this->mActionPhase) { + case 0: + i_this->mActionPhase = 1; + break; + case 1: + break; + } +} + +/* 8061C2C4-8061CB4C 000C84 0888+00 2/1 0/0 0/0 .text action__FP10b_oh_class */ +static void action(b_oh_class* i_this) { + b_oh_class* a_this = (b_oh_class*)i_this; + int var_r28; + BOOL var_r27; + + cXyz sp90; + cXyz sp9C; + + a_this->mAngleToPlayer = fopAcM_searchPlayerAngleY(a_this); + a_this->mDistToPlayer = fopAcM_searchPlayerDistance(a_this); + + fopAcM_OffStatus(a_this, 0); + a_this->attention_info.flags = 0; + + var_r28 = 0; + var_r27 = true; + + cLib_addCalcAngleS2(&a_this->field_0xc98, 0x800, 1, 0x10); + + switch (a_this->mAction) { + case ACTION_START: + start(a_this); + var_r28 = 1; + break; + case ACTION_WAIT: + wait(a_this); + var_r28 = 1; + break; + case ACTION_ATTACK: + attack(a_this); + var_r28 = 2; + boss->field_0x4794 = 180; + break; + case ACTION_CAUGHT: + caught(a_this); + var_r27 = false; + var_r28 = 3; + boss->field_0x4794 = 180; + break; + case ACTION_END: + end(a_this); + var_r28 = 1; + break; + case ACTION_NON: + non(a_this); + return; + } + + if (boss->field_0x4752 == 2) { + cLib_addCalc2(&a_this->field_0x60c, 500.0f, 1.0f, 80.0f); + } + + if (var_r28 == 1) { + f32 var_f29 = a_this->field_0x608 * 500.0f; + f32 var_f28 = a_this->field_0x608 * 1500.0f; + s16 var_r5 = 2000; + + for (int i = i_this->field_0xca8; i < 30; i++) { + f32 var_f31 = 1.0f; + if (i < 5) { + var_f31 = i * 0.2f; + } else if (i >= 20) { + var_f31 = (i - 20) * 0.3f + 1.0f; + } + + a_this->field_0x6d0[i].x = + var_f31 * (var_f29 * cM_ssin(i_this->field_0x5f8 + (i * 1800))); + a_this->field_0x6d0[i].y = + var_f31 * (var_f28 * cM_ssin(i_this->field_0x5fa + (i * 1800))); + + a_this->field_0x838[i].x = + var_r5 + var_f31 * (var_f29 * cM_ssin(a_this->field_0x5fa + (i * 7000)) * 0.5f); + a_this->field_0x838[i].y = + var_f31 * (var_f28 * cM_ssin(a_this->field_0x5f8 + (i * 7000)) * 0.5f); + + var_r5 -= 200; + if (var_r5 < 0) { + var_r5 = 0; + } + + a_this->field_0x964[i] = + a_this->field_0x610 + 1.0f + + a_this->field_0x610 * cM_ssin(a_this->field_0x5f6 + i * -10000); + } + + cLib_addCalcAngleS2(&a_this->current.angle.x, -0xF2C, 4, 100); + cLib_addCalcAngleS2(&a_this->current.angle.y, a_this->home.angle.y, 4, 0x100); + } else if (var_r28 == 2) { + f32 var_f4 = a_this->field_0xc8c; + for (int i = a_this->field_0xca8; i < 30; i++) { + if (i >= 30 - a_this->field_0xca2) { + a_this->field_0x6d0[i].y = a_this->field_0xca4; + } else { + a_this->field_0x6d0[i].y = 0; + } + + if (i >= 13) { + var_f4 *= a_this->field_0xc90 + 1.0f; + } + + a_this->field_0x6d0[i].x = + var_f4 * cM_ssin(a_this->field_0xc94 + i * a_this->field_0xc96); + + if (i >= 18) { + a_this->field_0x838[i].x = + a_this->field_0xc9c * cM_ssin(a_this->field_0x5cc * 1000 + i * -4000); + } else { + a_this->field_0x838[i].x = 0; + } + + a_this->field_0x838[i].y = 0; + a_this->field_0x964[i] = + a_this->field_0x610 + 1.0f + + a_this->field_0x610 * cM_ssin(a_this->field_0x5f6 + i * -10000); + } + } else if (var_r28 == 3) { + for (int i = a_this->field_0xca8; i < 30; i++) { + a_this->field_0x838[i].y = 0; + a_this->field_0x838[i].x = 0; + + if (i >= 30 - a_this->field_0xca2) { + a_this->field_0x6d0[i].y = a_this->field_0xca4; + a_this->field_0x6d0[i].x = 0; + a_this->field_0x964[i] = 1.0f; + } else { + a_this->field_0x6d0[i].y = 0; + a_this->field_0x6d0[i].x = 2250; + a_this->field_0x964[i] = + a_this->field_0x610 + 1.0f + + a_this->field_0x610 * cM_ssin(a_this->field_0x5f6 + i * -10000); + } + } + + cLib_addCalcAngleS2(&a_this->current.angle.x, 0xA92, 4, 0x200); + cLib_addCalcAngleS2(&a_this->current.angle.y, a_this->home.angle.y, 4, 0x800); + } + + a_this->field_0x600 = + (-a_this->field_0x614 - a_this->field_0x60c) + cM_ssin(a_this->field_0x5cc * 200) * 100.0f; + a_this->field_0x604 = ((100.0f - a_this->field_0x614) - a_this->field_0x60c) + + cM_ssin(a_this->field_0x5cc * 200) * 100.0f; + a_this->field_0x5f8 += (s16)a_this->field_0x600; + a_this->field_0x5fa += (s16)a_this->field_0x604; + a_this->field_0x5fc = a_this->field_0x60c + 2000.0f; + a_this->field_0x5f6 += (s16)a_this->field_0x5fc; + + cLib_addCalc0(&a_this->field_0x60c, 0.1f, 50.0f); + cLib_addCalc2(&a_this->field_0x610, 0.2f, 0.1f, 0.01f); + + if (var_r28 <= 3) { + cLib_addCalc2(&a_this->mTentacleLength, l_HIO.mLength, 0.1f, 0.5f); + } + + MTXCopy(boss->mParts[0].field_0x0->getModel()->i_getAnmMtx(a_this->field_0x5c8 + 8), + mDoMtx_stack_c::get()); + mDoMtx_stack_c::multVecZero(&a_this->current.pos); + + sp90.x = a_this->current.pos.x - boss->home.pos.x; + sp90.z = a_this->current.pos.z - boss->home.pos.z; + a_this->home.angle.y = cM_atan2s(sp90.x, sp90.z); + cLib_addCalcAngleS2(&a_this->shape_angle.y, a_this->current.angle.y, 2, 0x2000); + cLib_addCalcAngleS2(&a_this->shape_angle.x, a_this->current.angle.x, 2, 0x2000); + + for (int i = a_this->field_0xca8; i < 30; i++) { + if (Cinit) { + a_this->field_0x61c[i] = a_this->field_0x6d0[i]; + a_this->field_0x784[i] = a_this->field_0x838[i]; + a_this->field_0x8ec[i] = a_this->field_0x964[i]; + } else { + cLib_addCalcAngleS2(&a_this->field_0x61c[i].x, a_this->field_0x6d0[i].x, 2, + a_this->field_0xc98); + cLib_addCalcAngleS2(&a_this->field_0x61c[i].y, a_this->field_0x6d0[i].y, 2, + a_this->field_0xc98); + cLib_addCalcAngleS2(&a_this->field_0x784[i].x, a_this->field_0x838[i].x, 2, + a_this->field_0xc98); + cLib_addCalcAngleS2(&a_this->field_0x784[i].y, a_this->field_0x838[i].y, 2, + a_this->field_0xc98); + cLib_addCalc2(&a_this->field_0x8ec[i], a_this->field_0x964[i], 0.5f, 0.2f); + cLib_addCalc0(&a_this->field_0x9dc[i], 0.1f, 0.2f); + } + } + + for (int i = 0; i < 15; i++) { + if (var_r27 && boss->mDemoAction == 0) { + a_this->mColliders[i].OnCoSetBit(); + } else { + a_this->mColliders[i].OffCoSetBit(); + } + } + + Cinit = 0; +} + +/* 8061CB4C-8061CD98 00150C 024C+00 1/1 0/0 0/0 .text damage_check__FP10b_oh_class */ +static void damage_check(b_oh_class* i_this) { + i_this->mCcStts.Move(); + + if (i_this->field_0x5f4 == 0) { + BOOL bvar = false; + for (int i = 7; i < 15; i++) { + if (i_this->mColliders[i].ChkTgHit()) { + i_this->mAtInfo.mpCollider = i_this->mColliders[i].GetTgHitObj(); + i_this->health = 1000; + cc_at_check(i_this, &i_this->mAtInfo); + + MTXCopy(i_this->mpMorf->getModel()->i_getAnmMtx(i * 2 + 1), mDoMtx_stack_c::get()); + mDoMtx_stack_c::multVecZero(&i_this->eyePos); + i_dComIfGp_setHitMark(1, i_this, &i_this->eyePos, NULL, NULL, 0); + mDoAud_seStart(Z2SE_EN_OI_HIT_TENTACLE, &i_this->eyePos, 0, 0); + + bvar = true; + i_this->field_0x5f4 = 20; + break; + } + } + + if (i_this->mAction == ACTION_ATTACK && boss->field_0x5d10) { + boss->field_0x5d10 = 0; + bvar = true; + } + + if (bvar) { + i_this->field_0x60c = 2000.0f; + i_this->field_0x610 = 0.5f; + + if (i_this->mAction != ACTION_WAIT) { + i_this->mAction = ACTION_WAIT; + i_this->mActionPhase = 0; + i_this->field_0xc98 = 0; + i_this->field_0xca2 = 0; + } + + if (boss->mDemoAction != 0) { + boss->mDemoAction = 100; + boss->field_0x4738 = 30; + boss->field_0x473c = 2; + boss->field_0x4794 = 180; + } + + i_this->field_0x5f4 = 6; + boss->field_0x59e0.startCreatureVoice(Z2SE_EN_OI_V_TENT_DAMAGE, -1); + } + } +} + +/* 8061CD98-8061D05C 001758 02C4+00 2/1 0/0 0/0 .text daB_OH_Execute__FP10b_oh_class */ +static int daB_OH_Execute(b_oh_class* i_this) { + if (cDmrNowMidnaTalk()) { + return 1; + } + + if (i_this->field_0x5c8 == 0) { + boss = (b_ob_class*)fopAcM_SearchByID(i_this->parentActorID); + } + + if (boss == NULL) { + return 1; + } + + if (boss->field_0x4752 == 5 && i_this->mAction != ACTION_END) { + i_this->mAction = ACTION_END; + i_this->mActionPhase = 0; + } + + cXyz collider_center; + + i_this->field_0x5cc++; + + for (int i = 0; i < 4; i++) { + if (i_this->mTimers[i] != 0) { + i_this->mTimers[i]--; + } + } + + if (i_this->field_0x5f4 != 0) { + i_this->field_0x5f4--; + } + + damage_check(i_this); + action(i_this); + + mDoMtx_stack_c::transS(i_this->current.pos.x, i_this->current.pos.y + i_this->field_0xcac, + i_this->current.pos.z); + mDoMtx_stack_c::YrotM(i_this->shape_angle.y); + mDoMtx_stack_c::XrotM(i_this->shape_angle.x); + mDoMtx_stack_c::scaleM(l_HIO.mModelSize, l_HIO.mModelSize, l_HIO.mModelSize); + + J3DModel* model_p = i_this->mpMorf->getModel(); + model_p->i_setBaseTRMtx(mDoMtx_stack_c::get()); + i_this->mpMorf->play(NULL, dComIfGp_getReverb(fopAcM_GetRoomNo(i_this)), 0); + i_this->mpBtk->play(); + i_this->mpBrk->play(); + i_this->mpMorf->modelCalc(); + + int tmp = 1; + if (i_this->mDistToPlayer > 150.0f && i_this->mAction == ACTION_WAIT) { + tmp = i_this->field_0x5cc & 1; + } + + for (int i = 0; i < 15; i++) { + MTXCopy(model_p->i_getAnmMtx(tmp + i * 2), mDoMtx_stack_c::get()); + mDoMtx_stack_c::multVecZero(&collider_center); + + if (i_this->mAction >= ACTION_END) { + collider_center.z -= 20000.0f; + } + + i_this->mColliders[i].SetC(collider_center); + + if (i_this->mAction == ACTION_ATTACK) { + i_this->mColliders[i].SetR(l_HIO.mModelSize * 70.0f); + } else { + i_this->mColliders[i].SetR(l_HIO.mModelSize * 50.0f); + } + + dComIfG_Ccsp()->Set(&i_this->mColliders[i]); + } + + return 1; +} + +/* 8061D05C-8061D064 001A1C 0008+00 1/0 0/0 0/0 .text daB_OH_IsDelete__FP10b_oh_class */ +static int daB_OH_IsDelete(b_oh_class* i_this) { + return 1; +} + +/* 8061D064-8061D0B8 001A24 0054+00 1/0 0/0 0/0 .text daB_OH_Delete__FP10b_oh_class */ +static int daB_OH_Delete(b_oh_class* i_this) { + dComIfG_resDelete(&i_this->mPhase, "B_oh"); + if (i_this->field_0x1f86) { + data_8061DBB5 = 0; + } + + return 1; +} + +/* 8061D0B8-8061D39C 001A78 02E4+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */ +static int useHeapInit(fopAc_ac_c* i_this) { + b_oh_class* this_ = (b_oh_class*)i_this; + + this_->mpMorf = new mDoExt_McaMorf((J3DModelData*)dComIfG_getObjectRes("B_oh", 0x29), NULL, + NULL, NULL, 2, 1.0f, 0, -1, 1, NULL, 0, 0x11000284); + if (this_->mpMorf == NULL || this_->mpMorf->getModel() == NULL) { + return 0; + } + + if (!this_->mInvisModel.create(this_->mpMorf->getModel(), 1)) { + return 0; + } + + this_->mpMorf->getModel()->setUserArea((u32)this_); + + for (u16 i = 0; i < this_->mpMorf->getModel()->getModelData()->getJointNum(); i++) { + this_->mpMorf->getModel()->getModelData()->getJointNodePointer(i)->setCallBack( + nodeCallBack); + } + + this_->mpBtk = new mDoExt_btkAnm(); + if (this_->mpBtk == NULL) { + return 0; + } + + J3DAnmTextureSRTKey* btk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes("B_oh", 0x36); + if (!this_->mpBtk->init(this_->mpMorf->getModel()->getModelData(), btk, TRUE, 2, 1.0f, 0, -1)) { + return 0; + } + + this_->mpBtk->setFrame(cM_rndF(39.0f)); + this_->mpBtk->setPlaySpeed(cM_rndFX(0.1f) + 1.0f); + + this_->mpBrk = new mDoExt_brkAnm(); + if (this_->mpBrk == NULL) { + return 0; + } + + J3DAnmTevRegKey* brk = (J3DAnmTevRegKey*)dComIfG_getObjectRes("B_oh", 0x2F); + if (!this_->mpBrk->init(this_->mpMorf->getModel()->getModelData(), brk, TRUE, 2, 1.0f, 0, -1)) { + return 0; + } + + this_->mpBrk->setFrame(cM_rndF(39.0f)); + this_->mpBrk->setPlaySpeed(cM_rndFX(0.1f) + 1.0f); + + return 1; +} + +/* 8061D3E4-8061D718 001DA4 0334+00 1/0 0/0 0/0 .text daB_OH_Create__FP10fopAc_ac_c */ +static int daB_OH_Create(fopAc_ac_c* i_this) { + fopAcM_SetupActor(i_this, b_oh_class); + b_oh_class* this_ = (b_oh_class*)i_this; + + int phase = dComIfG_resLoad(&this_->mPhase, "B_oh"); + if (phase == cPhs_COMPLEATE_e) { + this_->field_0x5c8 = fopAcM_GetParam(this_) & 0xFF; + + if (!fopAcM_entrySolidHeap(this_, useHeapInit, 0x23E0)) { + return cPhs_ERROR_e; + } + + if (!data_8061DBB5) { + this_->field_0x1f86 = 1; + data_8061DBB5 = 1; + l_HIO.field_0x4 = -1; + } + + this_->health = 1000; + this_->field_0x560 = 1000; + + this_->field_0x5cc = cM_rndF(65536.0f); + this_->field_0x5f6 = cM_rndF(65536.0f); + this_->field_0x5f8 = cM_rndF(65536.0f); + this_->field_0x5fa = cM_rndF(65536.0f); + this_->field_0x614 = cM_rndF(100.0f) + 400.0f; + + static dCcD_SrcSph cc_sph_src = { + { + {0, {{0, 0, 12}, {0xD8FBFDFF, 3}, 0x15}}, + {dCcD_SE_NONE, 0, 0, 0, {0}}, + {dCcD_SE_NONE, 0, 0, 0, {0x80}}, + {0}, + }, + { + { + {0.0f, 0.0f, 0.0f}, + 60.0f, + }, + }, + }; + + this_->mCcStts.Init(0xFF, 0, this_); + for (int i = 0; i < 15; i++) { + this_->mColliders[i].Set(cc_sph_src); + this_->mColliders[i].SetStts(&this_->mCcStts); + this_->mColliders[i].OnTgNoHitMark(); + } + + this_->current.angle.x = -0x3448; + + if (cDmr_SkipInfo) { + this_->mAction = ACTION_WAIT; + this_->mActionPhase = 1; + this_->mTimers[0] = cM_rndF(100.0f) + 200.0f; + this_->mTentacleLength = l_HIO.mLength; + this_->field_0x608 = 1.0f; + Cinit = 1; + } else { + this_->mAction = ACTION_START; + Cinit = 0; + } + + daB_OH_Execute(this_); + } + + return phase; +} + +/* 8061D93C-8061D984 0022FC 0048+00 2/1 0/0 0/0 .text __dt__12daB_OH_HIO_cFv */ +/* #pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm daB_OH_HIO_c::~daB_OH_HIO_c() { + nofralloc +#include "asm/rel/d/a/b/d_a_b_oh/d_a_b_oh/__dt__12daB_OH_HIO_cFv.s" +} +#pragma pop */ + +/* ############################################################################################## */ +/* 8061DBDC-8061DBE0 00006C 0004+00 0/0 0/0 0/0 .bss + * sInstance__40JASGlobalInstance<19JASDefaultBankTable> */ +#pragma push +#pragma force_active on +static u8 data_8061DBDC[4]; +#pragma pop + +/* 8061DBE0-8061DBE4 000070 0004+00 0/0 0/0 0/0 .bss + * sInstance__35JASGlobalInstance<14JASAudioThread> */ +#pragma push +#pragma force_active on +static u8 data_8061DBE0[4]; +#pragma pop + +/* 8061DBE4-8061DBE8 000074 0004+00 0/0 0/0 0/0 .bss sInstance__27JASGlobalInstance<7Z2SeMgr> */ +#pragma push +#pragma force_active on +static u8 data_8061DBE4[4]; +#pragma pop + +/* 8061DBE8-8061DBEC 000078 0004+00 0/0 0/0 0/0 .bss sInstance__28JASGlobalInstance<8Z2SeqMgr> */ +#pragma push +#pragma force_active on +static u8 data_8061DBE8[4]; +#pragma pop + +/* 8061DBEC-8061DBF0 00007C 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2SceneMgr> + */ +#pragma push +#pragma force_active on +static u8 data_8061DBEC[4]; +#pragma pop + +/* 8061DBF0-8061DBF4 000080 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2StatusMgr> + */ +#pragma push +#pragma force_active on +static u8 data_8061DBF0[4]; +#pragma pop + +/* 8061DBF4-8061DBF8 000084 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2DebugSys> + */ +#pragma push +#pragma force_active on +static u8 data_8061DBF4[4]; +#pragma pop + +/* 8061DBF8-8061DBFC 000088 0004+00 0/0 0/0 0/0 .bss + * sInstance__36JASGlobalInstance<15JAISoundStarter> */ +#pragma push +#pragma force_active on +static u8 data_8061DBF8[4]; +#pragma pop + +/* 8061DBFC-8061DC00 00008C 0004+00 0/0 0/0 0/0 .bss + * sInstance__35JASGlobalInstance<14Z2SoundStarter> */ +#pragma push +#pragma force_active on +static u8 data_8061DBFC[4]; +#pragma pop + +/* 8061DC00-8061DC04 000090 0004+00 0/0 0/0 0/0 .bss + * sInstance__33JASGlobalInstance<12Z2SpeechMgr2> */ +#pragma push +#pragma force_active on +static u8 data_8061DC00[4]; +#pragma pop + +/* 8061DC04-8061DC08 000094 0004+00 0/0 0/0 0/0 .bss sInstance__28JASGlobalInstance<8JAISeMgr> */ +#pragma push +#pragma force_active on +static u8 data_8061DC04[4]; +#pragma pop + +/* 8061DC08-8061DC0C 000098 0004+00 0/0 0/0 0/0 .bss sInstance__29JASGlobalInstance<9JAISeqMgr> */ +#pragma push +#pragma force_active on +static u8 data_8061DC08[4]; +#pragma pop + +/* 8061DC0C-8061DC10 00009C 0004+00 0/0 0/0 0/0 .bss + * sInstance__33JASGlobalInstance<12JAIStreamMgr> */ +#pragma push +#pragma force_active on +static u8 data_8061DC0C[4]; +#pragma pop + +/* 8061DC10-8061DC14 0000A0 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2SoundMgr> + */ +#pragma push +#pragma force_active on +static u8 data_8061DC10[4]; +#pragma pop + +/* 8061DC14-8061DC18 0000A4 0004+00 0/0 0/0 0/0 .bss + * sInstance__33JASGlobalInstance<12JAISoundInfo> */ +#pragma push +#pragma force_active on +static u8 data_8061DC14[4]; +#pragma pop + +/* 8061DC18-8061DC1C 0000A8 0004+00 0/0 0/0 0/0 .bss + * sInstance__34JASGlobalInstance<13JAUSoundTable> */ +#pragma push +#pragma force_active on +static u8 data_8061DC18[4]; +#pragma pop + +/* 8061DC1C-8061DC20 0000AC 0004+00 0/0 0/0 0/0 .bss + * sInstance__38JASGlobalInstance<17JAUSoundNameTable> */ +#pragma push +#pragma force_active on +static u8 data_8061DC1C[4]; +#pragma pop + +/* 8061DC20-8061DC24 0000B0 0004+00 0/0 0/0 0/0 .bss + * sInstance__33JASGlobalInstance<12JAUSoundInfo> */ +#pragma push +#pragma force_active on +static u8 data_8061DC20[4]; +#pragma pop + +/* 8061DC24-8061DC28 0000B4 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2SoundInfo> + */ +#pragma push +#pragma force_active on +static u8 data_8061DC24[4]; +#pragma pop + +/* 8061DC28-8061DC2C 0000B8 0004+00 0/0 0/0 0/0 .bss + * sInstance__34JASGlobalInstance<13Z2SoundObjMgr> */ +#pragma push +#pragma force_active on +static u8 data_8061DC28[4]; +#pragma pop + +/* 8061DC2C-8061DC30 0000BC 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2Audience> + */ +#pragma push +#pragma force_active on +static u8 data_8061DC2C[4]; +#pragma pop + +/* 8061DC30-8061DC34 0000C0 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2FxLineMgr> + */ +#pragma push +#pragma force_active on +static u8 data_8061DC30[4]; +#pragma pop + +/* 8061DC34-8061DC38 0000C4 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2EnvSeMgr> + */ +#pragma push +#pragma force_active on +static u8 data_8061DC34[4]; +#pragma pop + +/* 8061DC38-8061DC3C 0000C8 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2SpeechMgr> + */ +#pragma push +#pragma force_active on +static u8 data_8061DC38[4]; +#pragma pop + +/* 8061DC3C-8061DC40 0000CC 0004+00 0/0 0/0 0/0 .bss + * sInstance__34JASGlobalInstance<13Z2WolfHowlMgr> */ +#pragma push +#pragma force_active on +static u8 data_8061DC3C[4]; +#pragma pop + +/* 8061DA74-8061DA74 0000A0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ + +/* 8061DAEC-8061DB0C -00001 0020+00 1/0 0/0 0/0 .data l_daB_OH_Method */ +SECTION_DATA static void* l_daB_OH_Method[8] = { + (void*)daB_OH_Create__FP10fopAc_ac_c, + (void*)daB_OH_Delete__FP10b_oh_class, + (void*)daB_OH_Execute__FP10b_oh_class, + (void*)daB_OH_IsDelete__FP10b_oh_class, + (void*)daB_OH_Draw__FP10b_oh_class, + (void*)NULL, + (void*)NULL, + (void*)NULL, +}; + +/* 8061DB0C-8061DB3C -00001 0030+00 0/0 0/0 1/0 .data g_profile_B_OH */ +SECTION_DATA extern void* g_profile_B_OH[12] = { + (void*)0xFFFFFFFD, (void*)0x0003FFFD, + (void*)0x00D20000, (void*)&g_fpcLf_Method, + (void*)0x00001F88, (void*)NULL, + (void*)NULL, (void*)&g_fopAc_Method, + (void*)0x00DA0000, (void*)&l_daB_OH_Method, + (void*)0x00044000, (void*)0x020E0000, +}; \ No newline at end of file diff --git a/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.cpp b/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.cpp index 7ff67483d4..52fdb6046e 100644 --- a/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.cpp +++ b/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.cpp @@ -1,33 +1,21 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_b_zant_sima -// +/** + * d_a_b_zant_sima.cpp + * Boss Zant Lava Island + */ #include "rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" -// -// Forward References: -// - -static int daB_ZANTS_Draw(daB_ZANTS_c*); -static int daB_ZANTS_Execute(daB_ZANTS_c*); -static int daB_ZANTS_IsDelete(daB_ZANTS_c*); -static int daB_ZANTS_Delete(daB_ZANTS_c*); -static int daB_ZANTS_Create(daB_ZANTS_c*); - -// -// Declarations: -// +#define TIMER_PLAYER 0 +#define TIMER_ZANT 1 /* 806529D8-80652AAC 000078 00D4+00 1/1 0/0 0/0 .text draw__11daB_ZANTS_cFv */ int daB_ZANTS_c::draw() { g_env_light.settingTevStruct(16, ¤t.pos, &tevStr); g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); + dComIfGd_setListBG(); mpBtkAnm->entry(mpModel->getModelData()); mpBrkAnm->entry(mpModel->getModelData()); @@ -43,13 +31,13 @@ static int daB_ZANTS_Draw(daB_ZANTS_c* i_this) { /* 80652ACC-80652B28 00016C 005C+00 1/1 0/0 0/0 .text * zants_ride_call_back__FP4dBgWP10fopAc_ac_cP10fopAc_ac_c */ -static void zants_ride_call_back(dBgW* param_0, fopAc_ac_c* i_this, fopAc_ac_c* i_target) { +static void zants_ride_call_back(dBgW* i_bgw, fopAc_ac_c* i_this, fopAc_ac_c* i_target) { if (fopAcM_GetName(i_target) == PROC_ALINK) { ((daB_ZANTS_c*)i_this)->mPlayerID = fopAcM_GetID(i_target); - ((daB_ZANTS_c*)i_this)->field_0x584[0] = 3; + ((daB_ZANTS_c*)i_this)->mSinkTimers[TIMER_PLAYER] = 3; } else if (fopAcM_GetName(i_target) == PROC_B_ZANT) { ((daB_ZANTS_c*)i_this)->mBossID = fopAcM_GetID(i_target); - ((daB_ZANTS_c*)i_this)->field_0x584[1] = 3; + ((daB_ZANTS_c*)i_this)->mSinkTimers[TIMER_ZANT] = 3; } } @@ -57,50 +45,61 @@ static void zants_ride_call_back(dBgW* param_0, fopAc_ac_c* i_this, fopAc_ac_c* void daB_ZANTS_c::action() { daPy_py_c* player = daPy_getPlayerActorClass(); if (player->i_checkMagneBootsOn()) { - field_0x584[0] = 3; + mSinkTimers[TIMER_PLAYER] = 3; mPlayerID = fopAcM_GetID(player); } - cXyz pos = current.pos; - fopAc_ac_c* target; - if (field_0x584[1] != 0) { - if (fopAcM_SearchByID(mBossID, &target), target != NULL) { - pos = target->current.pos; + + cXyz target_pos = current.pos; + + if (mSinkTimers[TIMER_ZANT] != 0) { + fopAc_ac_c* target; + fopAcM_SearchByID(mBossID, &target); + + if (target != NULL) { + target_pos = target->current.pos; } } - u8 temp = field_0x584[3]; - field_0x584[3] = 0; - field_0x584[2] = 0; - if (field_0x584[1]) { - field_0x584[3] = 1; + + bool prev_sink_zant = mSinkZant; + mSinkZant = false; + mSinkPlayer = false; + if (mSinkTimers[TIMER_ZANT] != 0) { + mSinkZant = true; } - if (field_0x584[0]) { - field_0x584[2] = 1; + + if (mSinkTimers[TIMER_PLAYER] != 0) { + mSinkPlayer = true; } - f32 x = pos.x - current.pos.x; - f32 z = pos.z - current.pos.z; - pos.absXZ(current.pos); - cLib_addCalcAngleS2(&field_0x58c.y, cM_atan2s(x, z), 8, 1024); - if (temp == 0 && field_0x584[3] != 0) { - if (field_0x58c.x == 0) { - field_0x58c.y = cM_atan2s(x, z); + + f32 x = target_pos.x - current.pos.x; + f32 z = target_pos.z - current.pos.z; + target_pos.absXZ(current.pos); + cLib_addCalcAngleS2(&mRotation.y, cM_atan2s(x, z), 8, 0x400); + + if (!prev_sink_zant && mSinkZant) { + if (mRotation.x == 0) { + mRotation.y = cM_atan2s(x, z); } - field_0x58c.z = 0x400; + mRotation.z = 0x400; } - cLib_addCalcAngleS2(&field_0x58c.x, 0, 8, 64); - field_0x58c.x += field_0x58c.z; - if (0x1400 < field_0x58c.x) { - field_0x58c.x = 0x1400; - field_0x58c.z = 0; + + cLib_addCalcAngleS2(&mRotation.x, 0, 8, 0x40); + mRotation.x += mRotation.z; + if (0x1400 < mRotation.x) { + mRotation.x = 0x1400; + mRotation.z = 0; } - cLib_chaseAngleS(&field_0x58c.z, 0, 128); - f32 temp2 = 150.0f; - if (field_0x584[0] || field_0x584[1]) { - temp2 = 130.0f; + cLib_chaseAngleS(&mRotation.z, 0, 0x80); + + f32 target_height = 150.0f; + if (mSinkTimers[TIMER_PLAYER] != 0 || mSinkTimers[TIMER_ZANT] != 0) { + target_height = 130.0f; } - cLib_addCalc2(&field_0x588, temp2, 0.2f, 20.0f); + + cLib_addCalc2(&mHeight, target_height, 0.2f, 20.0f); for (int i = 0; i < 2; i++) { - if (field_0x584[i] != 0) { - field_0x584[i] -= 1; + if (mSinkTimers[i] != 0) { + mSinkTimers[i]--; } } } @@ -109,17 +108,20 @@ void daB_ZANTS_c::action() { int daB_ZANTS_c::execute() { mpBrkAnm->play(); mpBtkAnm->play(); - mDoMtx_stack_c::transS(current.pos.x, current.pos.y + field_0x588, current.pos.z); - mDoMtx_stack_c::YrotM(field_0x58c.y); - mDoMtx_stack_c::XrotM(field_0x58c.x); - mDoMtx_stack_c::YrotM(-field_0x58c.y); + + mDoMtx_stack_c::transS(current.pos.x, current.pos.y + mHeight, current.pos.z); + mDoMtx_stack_c::YrotM(mRotation.y); + mDoMtx_stack_c::XrotM(mRotation.x); + mDoMtx_stack_c::YrotM(-mRotation.y); mDoMtx_stack_c::ZXYrotM(shape_angle); mDoMtx_stack_c::transM(0.0f, -30.0f, 0.0f); mpModel->i_setBaseTRMtx(mDoMtx_stack_c::get()); - cMtx_copy(mDoMtx_stack_c::get(), field_0x594); - if (mpBgW) { + cMtx_copy(mDoMtx_stack_c::get(), mMtx); + + if (mpBgW != NULL) { mpBgW->Move(); } + action(); return 1; } @@ -137,7 +139,7 @@ static int daB_ZANTS_IsDelete(daB_ZANTS_c* i_this) { /* 80652EC0-80652F18 000560 0058+00 1/1 0/0 0/0 .text _delete__11daB_ZANTS_cFv */ int daB_ZANTS_c::_delete() { dComIfG_resDelete(&mPhase, "MAGNESIMA"); - if (mpBgW) { + if (mpBgW != NULL) { dComIfG_Bgsp().Release(mpBgW); } return 1; @@ -148,6 +150,88 @@ static int daB_ZANTS_Delete(daB_ZANTS_c* i_this) { return i_this->_delete(); } +/* 80652F38-80653180 0005D8 0248+00 1/1 0/0 0/0 .text CreateHeap__11daB_ZANTS_cFv */ +int daB_ZANTS_c::CreateHeap() { + J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes("MAGNESIMA", 7); + mpModel = mDoExt_J3DModel__create(model_data, 0x80000, 0x11000084); + if (mpModel == NULL) { + return FALSE; + } + + mpBtkAnm = new mDoExt_btkAnm(); + if (mpBtkAnm == NULL) { + return FALSE; + } + + J3DAnmTextureSRTKey* pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes("MAGNESIMA", 13); + if (!mpBtkAnm->init(mpModel->getModelData(), pbtk, TRUE, J3DFrameCtrl::LOOP_REPEAT_e, 1.0f, 0, + -1)) + { + return FALSE; + } + + mpBrkAnm = new mDoExt_brkAnm(); + if (mpBrkAnm == NULL) { + return FALSE; + } + + J3DAnmTevRegKey* pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes("MAGNESIMA", 10); + if (!mpBrkAnm->init(mpModel->getModelData(), pbrk, TRUE, J3DFrameCtrl::LOOP_REPEAT_e, 1.0f, 0, + -1)) + { + return FALSE; + } + + mpBgW = new dBgW(); + if (mpBgW == NULL) { + return FALSE; + } + + cBgD_t* pdzb = (cBgD_t*)dComIfG_getObjectRes("MAGNESIMA", 16); + if (mpBgW->Set(pdzb, cBgW::MOVE_BG_e, &mMtx)) { + return FALSE; + } + + mpBgW->SetCrrFunc(dBgS_MoveBGProc_Typical); + mpBgW->SetRideCallback(zants_ride_call_back); + return TRUE; +} + +/* 806531C8-806531E8 000868 0020+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */ +static int useHeapInit(fopAc_ac_c* i_this) { + return static_cast(i_this)->CreateHeap(); +} + +/* 806531E8-80653304 000888 011C+00 1/1 0/0 0/0 .text create__11daB_ZANTS_cFv */ +int daB_ZANTS_c::create() { + fopAcM_SetupActor(this, daB_ZANTS_c); + + int phase_state = dComIfG_resLoad(&mPhase, "MAGNESIMA"); + if (phase_state == cPhs_COMPLEATE_e) { + if (!fopAcM_entrySolidHeap(this, useHeapInit, 0x3AA0)) { + return cPhs_ERROR_e; + } + + if (mpBgW && dComIfG_Bgsp().Regist(mpBgW, this)) { + return cPhs_ERROR_e; + } + + attention_info.flags = 0; + mHeight = 150.0f; + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + fopAcM_SetMin(this, -200.0f, -500.0f, -500.0f); + fopAcM_SetMax(this, 200.0f, 500.0f, 500.0f); + daB_ZANTS_Execute(this); + } + + return phase_state; +} + +/* 80653304-80653324 0009A4 0020+00 1/0 0/0 0/0 .text daB_ZANTS_Create__FP11daB_ZANTS_c */ +static int daB_ZANTS_Create(daB_ZANTS_c* i_this) { + return i_this->create(); +} + /* 80653370-80653390 -00001 0020+00 1/0 0/0 0/0 .data l_daB_ZANTS_Method */ static actor_method_class l_daB_ZANTS_Method = { (process_method_func)daB_ZANTS_Create, (process_method_func)daB_ZANTS_Delete, @@ -171,71 +255,4 @@ extern actor_process_profile_definition g_profile_B_ZANTS = { 0x40000, fopAc_ACTOR_e, fopAc_CULLBOX_CUSTOM_e, -}; - -/* 80652F38-80653180 0005D8 0248+00 1/1 0/0 0/0 .text CreateHeap__11daB_ZANTS_cFv */ -int daB_ZANTS_c::CreateHeap() { - J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes("MAGNESIMA", 7); - mpModel = mDoExt_J3DModel__create(model_data, 0x80000, 0x11000084); - if (mpModel == NULL) { - return 0; - } - mpBtkAnm = new mDoExt_btkAnm(); - if (mpBtkAnm == NULL) { - return 0; - } - J3DAnmTextureSRTKey* srtkey = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes("MAGNESIMA", 13); - if (!mpBtkAnm->init(mpModel->getModelData(), srtkey, 1, 2, 1.0f, 0, -1)) { - return 0; - } - mpBrkAnm = new mDoExt_brkAnm(); - if (mpBrkAnm == NULL) { - return 0; - } - J3DAnmTevRegKey* tevkey = (J3DAnmTevRegKey*)dComIfG_getObjectRes("MAGNESIMA", 10); - if (!mpBrkAnm->init(mpModel->getModelData(), tevkey, 1, 2, 1.0f, 0, -1)) { - return 0; - } - mpBgW = new dBgW(); - if (mpBgW == NULL) { - return 0; - } - cBgD_t* bgt = (cBgD_t*)dComIfG_getObjectRes("MAGNESIMA", 16); - if (mpBgW->Set(bgt, 1, &field_0x594)) { - return 0; - } - mpBgW->SetCrrFunc(dBgS_MoveBGProc_Typical); - mpBgW->SetRideCallback(zants_ride_call_back); - return 1; -} - -/* 806531C8-806531E8 000868 0020+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */ -static int useHeapInit(fopAc_ac_c* i_this) { - return static_cast(i_this)->CreateHeap(); -} - -/* 806531E8-80653304 000888 011C+00 1/1 0/0 0/0 .text create__11daB_ZANTS_cFv */ -int daB_ZANTS_c::create() { - fopAcM_SetupActor(this, daB_ZANTS_c); - int result = dComIfG_resLoad(&mPhase, "MAGNESIMA"); - if (result == cPhs_COMPLEATE_e) { - if (!fopAcM_entrySolidHeap(this, useHeapInit, 0x3AA0)) { - return cPhs_ERROR_e; - } - if (mpBgW && dComIfG_Bgsp().Regist(mpBgW, this)) { - return cPhs_ERROR_e; - } - attention_info.flags = 0; - field_0x588 = 150.0f; - fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); - fopAcM_SetMin(this, -200.0f, -500.0f, -500.0f); - fopAcM_SetMax(this, 200.0f, 500.0f, 500.0f); - daB_ZANTS_Execute(this); - } - return result; -} - -/* 80653304-80653324 0009A4 0020+00 1/0 0/0 0/0 .text daB_ZANTS_Create__FP11daB_ZANTS_c */ -static int daB_ZANTS_Create(daB_ZANTS_c* i_this) { - return i_this->create(); -} +}; \ No newline at end of file diff --git a/rel/d/a/d_a_midna/d_a_midna.cpp b/rel/d/a/d_a_midna/d_a_midna.cpp index fc5a14569c..7a7b1df871 100644 --- a/rel/d/a/d_a_midna/d_a_midna.cpp +++ b/rel/d/a/d_a_midna/d_a_midna.cpp @@ -10,17 +10,6 @@ // Types: // -struct fopAcM_lc_c { - /* 8001DC68 */ void lineCheck(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct fopAcM_gc_c { - /* 8001DCBC */ void gndCheck(cXyz const*); - - static u8 mGndCheck[84]; - static f32 mGroundY; -}; - struct J3DMaterial {}; struct daMidna_matAnm_c { diff --git a/rel/d/a/d_a_shop_item/d_a_shop_item.cpp b/rel/d/a/d_a_shop_item/d_a_shop_item.cpp index 0723a7a553..e667f169a0 100644 --- a/rel/d/a/d_a_shop_item/d_a_shop_item.cpp +++ b/rel/d/a/d_a_shop_item/d_a_shop_item.cpp @@ -1,629 +1,311 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_shop_item -// +/** + * d_a_shop_item.cpp + * Shop Item Actor + */ #include "rel/d/a/d_a_shop_item/d_a_shop_item.h" -#include "dol2asm.h" - -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoLib_clipper { - static f32 mSystemFar; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daShopItem_c { - /* 8059E9B8 */ void getShopArcname(); - /* 8059EC04 */ void getHeapSize(); - /* 8059EC1C */ void CreateInit(); - /* 8059ED58 */ void set_mtx(); - /* 8059EEF4 */ void _execute(); - /* 8059EF48 */ void _draw(); - /* 8059EF9C */ void setListStart(); - /* 8059EFA0 */ void setShadow(); - /* 8059F024 */ void chkFlag(int); - /* 8059F044 */ void getTevFrm(); - /* 8059F064 */ void getBtpFrm(); - /* 8059F084 */ void getShadowSize(); - /* 8059F0A0 */ void getCollisionH(); - /* 8059F0BC */ void getCollisionR(); - - static void* const mData[276]; - static f32 const m_cullfar_max; -}; - -struct daItemBase_c { - /* 80037A74 */ void show(); - /* 80037ACC */ void chkDraw(); - /* 80144724 */ void DeleteBase(char const*); - /* 8014474C */ bool clothCreate(); - /* 80144754 */ bool __CreateHeap(); - /* 80144B94 */ void DrawBase(); - /* 80144C30 */ void RotateYBase(); - /* 80144CC4 */ void settingBeforeDraw(); - /* 80144D18 */ void setTevStr(); - /* 80144D70 */ void setShadow(); - /* 80144EDC */ void animEntry(); - /* 8014503C */ void animPlay(f32, f32, f32, f32, f32, f32); -}; - -struct dKy_tevstr_c {}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 8059F324 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); -}; - -struct cXyz {}; - -struct cM3dGCyl { - /* 8059F294 */ ~cM3dGCyl(); -}; - -struct cM3dGAab { - /* 8059F2DC */ ~cM3dGAab(); -}; - -struct cBgS_PolyInfo {}; - -struct _GXTexObj {}; - -struct J3DModel {}; - -// -// Forward References: -// - -extern "C" void getShopArcname__12daShopItem_cFv(); -extern "C" void getHeapSize__12daShopItem_cFv(); -extern "C" void CreateInit__12daShopItem_cFv(); -extern "C" void set_mtx__12daShopItem_cFv(); -extern "C" void _execute__12daShopItem_cFv(); -extern "C" void _draw__12daShopItem_cFv(); -extern "C" void setListStart__12daShopItem_cFv(); -extern "C" void setShadow__12daShopItem_cFv(); -extern "C" void chkFlag__12daShopItem_cFi(); -extern "C" void getTevFrm__12daShopItem_cFv(); -extern "C" void getBtpFrm__12daShopItem_cFv(); -extern "C" void getShadowSize__12daShopItem_cFv(); -extern "C" void getCollisionH__12daShopItem_cFv(); -extern "C" void getCollisionR__12daShopItem_cFv(); -extern "C" static void daShopItem_Create__FPv(); -extern "C" void __dt__8cM3dGCylFv(); -extern "C" void __dt__8cM3dGAabFv(); -extern "C" void __dt__12dBgS_ObjAcchFv(); -extern "C" static void daShopItem_Delete__FPv(); -extern "C" static void daShopItem_Draw__FPv(); -extern "C" static void daShopItem_Execute__FPv(); -extern "C" static bool daShopItem_IsDelete__FPv(); -extern "C" static void func_8059F420(); -extern "C" static void func_8059F428(); -extern "C" f32 const m_cullfar_max__12daShopItem_c; -extern "C" extern char const* const d_a_shop_item__stringBase0; - -// -// External References: -// - -extern "C" void mDoMtx_ZXYrotM__FPA4_fsss(); -extern "C" void mDoMtx_XrotM__FPA4_fs(); -extern "C" void mDoMtx_YrotM__FPA4_fs(); -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl(); -extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff(); -extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc(); -extern "C" void -dComIfGd_setShadow__FUlScP8J3DModelP4cXyzffffR13cBgS_PolyInfoP12dKy_tevstr_csfP9_GXTexObj(); -extern "C" void show__12daItemBase_cFv(); -extern "C" void chkDraw__12daItemBase_cFv(); -extern "C" void CheckShopItemCreateHeap__FP10fopAc_ac_c(); -extern "C" void __ct__12dBgS_AcchCirFv(); -extern "C" void __dt__9dBgS_AcchFv(); -extern "C" void __ct__9dBgS_AcchFv(); -extern "C" void SetObj__16dBgS_PolyPassChkFv(); -extern "C" void __ct__10dCcD_GSttsFv(); -extern "C" void __ct__12dCcD_GObjInfFv(); -extern "C" void DeleteBase__12daItemBase_cFPCc(); -extern "C" bool clothCreate__12daItemBase_cFv(); -extern "C" bool __CreateHeap__12daItemBase_cFv(); -extern "C" void DrawBase__12daItemBase_cFv(); -extern "C" void RotateYBase__12daItemBase_cFv(); -extern "C" void settingBeforeDraw__12daItemBase_cFv(); -extern "C" void setTevStr__12daItemBase_cFv(); -extern "C" void setShadow__12daItemBase_cFv(); -extern "C" void animEntry__12daItemBase_cFv(); -extern "C" void animPlay__12daItemBase_cFffffff(); -extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" void* const mData__12daShopItem_c[276]; -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; -extern "C" extern void* __vt__8dCcD_Cyl[36]; -extern "C" extern void* __vt__9dCcD_Stts[11]; -extern "C" extern void* __vt__12daItemBase_c[17 + 1 /* padding */]; -extern "C" extern void* __vt__12cCcD_CylAttr[25]; -extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; -extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" f32 mSystemFar__14mDoLib_clipper; - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 8059F48C-8059F48C 000054 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_8059F48C = "R_SP160"; -#pragma pop +#include "d/com/d_com_inf_game.h" +#include "m_Do/m_Do_lib.h" /* 8059E9B8-8059EC04 000078 024C+00 2/2 0/0 0/0 .text getShopArcname__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::getShopArcname() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShopArcname__12daShopItem_cFv.s" +const char* daShopItem_c::getShopArcname() { + switch (m_itemNo) { + case NO_ITEM: + if (strcmp("R_SP160", dComIfGp_getStartStageName()) == 0) { + mShopItemID = SHOP_ITEMNO_ARMOR_SOLD; + } else { + mShopItemID = SHOP_ITEMNO_SOLD; + } + break; + case OIL_BOTTLE: + mShopItemID = SHOP_ITEMNO_OIL; + break; + case MILK_BOTTLE: + mShopItemID = SHOP_ITEMNO_MILK; + break; + case HALF_MILK_BOTTLE: + mShopItemID = SHOP_ITEMNO_HALF_MILK; + break; + case RED_BOTTLE: + mShopItemID = SHOP_ITEMNO_RED; + break; + case GREEN_BOTTLE: + mShopItemID = SHOP_ITEMNO_GREEN; + break; + case BLUE_BOTTLE: + mShopItemID = SHOP_ITEMNO_BLUE; + break; + case DROP_BOTTLE: + mShopItemID = SHOP_ITEMNO_DROP; + break; + case ARROW_10: + case ARROW_20: + case ARROW_30: + mShopItemID = SHOP_ITEMNO_ARROW; + break; + case SHIELD: + mShopItemID = SHOP_ITEMNO_SHIELD_B; + break; + case HYLIA_SHIELD: + mShopItemID = SHOP_ITEMNO_SHIELD_A; + break; + case NORMAL_BOMB: + case BOMB_5: + case BOMB_10: + case BOMB_20: + case BOMB_30: + mShopItemID = SHOP_ITEMNO_BOMB; + break; + case WATER_BOMB: + mShopItemID = SHOP_ITEMNO_WATER_BOMB; + break; + case POKE_BOMB: + mShopItemID = SHOP_ITEMNO_POKE_BOMB; + break; + case BOMB_BAG_LV1: + case BOMB_IN_BAG: + mShopItemID = SHOP_ITEMNO_BOMB_BAG; + break; + case BOMB_BAG_LV2: + mShopItemID = SHOP_ITEMNO_BOMB_BAG_LV2; + break; + case BEE_CHILD: + mShopItemID = SHOP_ITEMNO_BEE_CHILD; + break; + case PACHINKO: + mShopItemID = SHOP_ITEMNO_PACHINKO; + break; + case HAWK_EYE: + mShopItemID = SHOP_ITEMNO_HAWKEYE; + break; + case ARMOR: + mShopItemID = SHOP_ITEMNO_ARMOR; + break; + default: + return NULL; + } + + return mData[mShopItemID].get_arcName(); } -#pragma pop -/* ############################################################################################## */ /* 8059F438-8059F43C 000000 0004+00 2/2 0/0 0/0 .rodata m_cullfar_max__12daShopItem_c */ -SECTION_RODATA f32 const daShopItem_c::m_cullfar_max = 5000.0f; -COMPILER_STRIP_GATE(0x8059F438, &daShopItem_c::m_cullfar_max); - -/* 8059F43C-8059F46C 000004 002E+02 1/1 0/0 0/0 .rodata HeapSizeTbl$3665 */ -SECTION_RODATA static u8 const HeapSizeTbl[46 + 2 /* padding */] = { - 0x08, - 0x10, - 0x08, - 0x10, - 0x08, - 0x10, - 0x08, - 0x10, - 0x08, - 0x10, - 0x08, - 0x10, - 0x08, - 0x10, - 0x08, - 0x10, - 0x0E, - 0xB0, - 0x08, - 0x10, - 0x0E, - 0xB0, - 0x39, - 0x90, - 0x39, - 0x90, - 0x80, - 0x00, - 0x08, - 0x10, - 0x15, - 0x40, - 0x08, - 0x10, - 0x08, - 0x10, - 0x08, - 0x10, - 0x43, - 0xA0, - 0x22, - 0x80, - 0x08, - 0x10, - 0x08, - 0x10, - /* padding */ - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x8059F43C, &HeapSizeTbl); +const f32 daShopItem_c::m_cullfar_max = 5000.0f; /* 8059EC04-8059EC1C 0002C4 0018+00 1/1 0/0 0/0 .text getHeapSize__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::getHeapSize() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/getHeapSize__12daShopItem_cFv.s" +u16 daShopItem_c::getHeapSize() { + static const u16 HeapSizeTbl[] = { + 0x0810, 0x0810, 0x0810, 0x0810, 0x0810, 0x0810, 0x0810, 0x0810, + 0x0EB0, 0x0810, 0x0EB0, 0x3990, 0x3990, 0x8000, 0x0810, 0x1540, + 0x0810, 0x0810, 0x0810, 0x43A0, 0x2280, 0x0810, 0x0810, + }; + + u8 a_ShopItemID = getShopItemID(); + OS_REPORT("ShopItemID [%u]\n", a_ShopItemID); + ASSERT(a_ShopItemID < SHOP_ITEMNO_MAX); + + return HeapSizeTbl[a_ShopItemID]; } -#pragma pop - -/* ############################################################################################## */ -/* 8059F46C-8059F470 000034 0004+00 0/1 0/0 0/0 .rodata @3718 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3718 = -100.0f; -COMPILER_STRIP_GATE(0x8059F46C, &lit_3718); -#pragma pop - -/* 8059F470-8059F474 000038 0004+00 0/2 0/0 0/0 .rodata @3719 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_3719[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x8059F470, &lit_3719); -#pragma pop - -/* 8059F474-8059F478 00003C 0004+00 0/1 0/0 0/0 .rodata @3720 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3720 = 100.0f; -COMPILER_STRIP_GATE(0x8059F474, &lit_3720); -#pragma pop - -/* 8059F478-8059F47C 000040 0004+00 0/1 0/0 0/0 .rodata @3721 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3721 = 200.0f; -COMPILER_STRIP_GATE(0x8059F478, &lit_3721); -#pragma pop - -/* 8059F47C-8059F480 000044 0004+00 1/3 0/0 0/0 .rodata @3722 */ -SECTION_RODATA static f32 const lit_3722 = 1.0f; -COMPILER_STRIP_GATE(0x8059F47C, &lit_3722); - -/* 8059F480-8059F484 000048 0004+00 0/1 0/0 0/0 .rodata @3723 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3723 = 5000.0f; -COMPILER_STRIP_GATE(0x8059F480, &lit_3723); -#pragma pop - -/* 8059F484-8059F488 00004C 0004+00 0/1 0/0 0/0 .rodata @3724 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3724 = 4.0f / 5.0f; -COMPILER_STRIP_GATE(0x8059F484, &lit_3724); -#pragma pop - -/* 8059F48C-8059F48C 000054 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_8059F494 = "R_SP109"; -#pragma pop /* 8059EC1C-8059ED58 0002DC 013C+00 1/1 0/0 0/0 .text CreateInit__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::CreateInit() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/CreateInit__12daShopItem_cFv.s" +void daShopItem_c::CreateInit() { + fopAcM_SetMtx(this, mMtx); + fopAcM_setCullSizeBox(this, -100.0f, 0.0f, -100.0f, 100.0f, 200.0f, 100.0f); + + if (mDoLib_clipper::getFar() > 1.0f) { + fopAcM_setCullSizeFar(this, 5000.0f / mDoLib_clipper::getFar()); + } + + show(); + + if (strcmp("R_SP109", dComIfGp_getStartStageName()) == 0 && dComIfGp_getStartStageRoomNo() == 1) + { + scale.set(mData[mShopItemID].get_scale() * 0.8f, mData[mShopItemID].get_scale() * 0.8f, + mData[mShopItemID].get_scale() * 0.8f); + } else { + scale.set(mData[mShopItemID].get_scale(), mData[mShopItemID].get_scale(), + mData[mShopItemID].get_scale()); + } + + home.pos = current.pos; + set_mtx(); + mpModel->setUserArea(NULL); } -#pragma pop /* 8059ED58-8059EEF4 000418 019C+00 2/2 0/0 0/0 .text set_mtx__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::set_mtx() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/set_mtx__12daShopItem_cFv.s" +void daShopItem_c::set_mtx() { + mpModel->setBaseScale(scale); + + if (daShopItem_prm::getGroup(this) == 15) { + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + } else { + mDoMtx_stack_c::transS(current.pos.x, current.pos.y + mData[mShopItemID].get_offsetY(), + current.pos.z); + } + + MTXCopy(mDoMtx_stack_c::get(), mMtx); + mDoMtx_stack_c::YrotM(mAngleY); + + if (daShopItem_prm::getGroup(this) == 15) { + mDoMtx_stack_c::ZXYrotM(-11300, 32700, 7300); + } else { + mDoMtx_stack_c::ZXYrotM(mAngleX + mData[mShopItemID].get_angleX(), + mData[mShopItemID].get_angleY(), mData[mShopItemID].get_angleZ()); + } + + mDoMtx_stack_c::ZXYrotM(current.angle.x, current.angle.y, current.angle.z); + + if (daShopItem_prm::getGroup(this) == 15) { + mDoMtx_stack_c::XrotM(0); + } else { + mDoMtx_stack_c::XrotM(mData[mShopItemID].get_angleOffsetX()); + } + + mpModel->i_setBaseTRMtx(mDoMtx_stack_c::get()); } -#pragma pop /* 8059EEF4-8059EF48 0005B4 0054+00 1/1 0/0 0/0 .text _execute__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::_execute() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/_execute__12daShopItem_cFv.s" -} -#pragma pop - -/* 8059EF48-8059EF9C 000608 0054+00 1/1 0/0 0/0 .text _draw__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::_draw() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/_draw__12daShopItem_cFv.s" -} -#pragma pop - -/* 8059EF9C-8059EFA0 00065C 0004+00 1/0 0/0 0/0 .text setListStart__12daShopItem_cFv */ -void daShopItem_c::setListStart() { - /* empty function */ -} - -/* ############################################################################################## */ -/* 8059F488-8059F48C 000050 0004+00 0/1 0/0 0/0 .rodata @3823 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3823 = 80.0f; -COMPILER_STRIP_GATE(0x8059F488, &lit_3823); -#pragma pop - -/* 8059EFA0-8059F024 000660 0084+00 1/0 0/0 0/0 .text setShadow__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::setShadow() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/setShadow__12daShopItem_cFv.s" -} -#pragma pop - -/* 8059F024-8059F044 0006E4 0020+00 1/0 0/0 0/0 .text chkFlag__12daShopItem_cFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::chkFlag(int param_0) { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/chkFlag__12daShopItem_cFi.s" -} -#pragma pop - -/* 8059F044-8059F064 000704 0020+00 1/0 0/0 0/0 .text getTevFrm__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::getTevFrm() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/getTevFrm__12daShopItem_cFv.s" -} -#pragma pop - -/* 8059F064-8059F084 000724 0020+00 1/0 0/0 0/0 .text getBtpFrm__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::getBtpFrm() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/getBtpFrm__12daShopItem_cFv.s" -} -#pragma pop - -/* 8059F084-8059F0A0 000744 001C+00 1/0 0/0 0/0 .text getShadowSize__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::getShadowSize() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/getShadowSize__12daShopItem_cFv.s" -} -#pragma pop - -/* 8059F0A0-8059F0BC 000760 001C+00 1/0 0/0 0/0 .text getCollisionH__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::getCollisionH() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionH__12daShopItem_cFv.s" -} -#pragma pop - -/* 8059F0BC-8059F0D8 00077C 001C+00 1/0 0/0 0/0 .text getCollisionR__12daShopItem_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daShopItem_c::getCollisionR() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/getCollisionR__12daShopItem_cFv.s" -} -#pragma pop - -/* ############################################################################################## */ -/* 8059F49C-8059F4BC -00001 0020+00 1/0 0/0 0/0 .data daShopItemMethodTable */ -SECTION_DATA static void* daShopItemMethodTable[8] = { - (void*)daShopItem_Create__FPv, - (void*)daShopItem_Delete__FPv, - (void*)daShopItem_Execute__FPv, - (void*)daShopItem_IsDelete__FPv, - (void*)daShopItem_Draw__FPv, - (void*)NULL, - (void*)NULL, - (void*)NULL, -}; - -/* 8059F4BC-8059F4EC -00001 0030+00 0/0 0/0 1/0 .data g_profile_ShopItem */ -SECTION_DATA extern void* g_profile_ShopItem[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x021E0000, (void*)&g_fpcLf_Method, - (void*)0x00000968, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x00F20000, (void*)&daShopItemMethodTable, - (void*)0x00060100, (void*)0x000E0000, -}; - -/* 8059F4EC-8059F4F8 000050 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGCyl */ -SECTION_DATA extern void* __vt__8cM3dGCyl[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGCylFv, -}; - -/* 8059F4F8-8059F504 00005C 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGAab */ -SECTION_DATA extern void* __vt__8cM3dGAab[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGAabFv, -}; - -/* 8059F504-8059F528 000068 0024+00 2/2 0/0 0/0 .data __vt__12dBgS_ObjAcch */ -SECTION_DATA extern void* __vt__12dBgS_ObjAcch[9] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12dBgS_ObjAcchFv, - (void*)NULL, - (void*)NULL, - (void*)func_8059F428, - (void*)NULL, - (void*)NULL, - (void*)func_8059F420, -}; - -/* 8059F528-8059F56C 00008C 0044+00 1/1 0/0 0/0 .data __vt__12daShopItem_c */ -SECTION_DATA extern void* __vt__12daShopItem_c[17] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)DrawBase__12daItemBase_cFv, - (void*)setListStart__12daShopItem_cFv, - (void*)settingBeforeDraw__12daItemBase_cFv, - (void*)setTevStr__12daItemBase_cFv, - (void*)setShadow__12daShopItem_cFv, - (void*)animEntry__12daItemBase_cFv, - (void*)RotateYBase__12daItemBase_cFv, - (void*)clothCreate__12daItemBase_cFv, - (void*)__CreateHeap__12daItemBase_cFv, - (void*)chkFlag__12daShopItem_cFi, - (void*)getTevFrm__12daShopItem_cFv, - (void*)getBtpFrm__12daShopItem_cFv, - (void*)getShadowSize__12daShopItem_cFv, - (void*)getCollisionH__12daShopItem_cFv, - (void*)getCollisionR__12daShopItem_cFv, -}; - -/* 8059F0D8-8059F294 000798 01BC+00 1/0 0/0 0/0 .text daShopItem_Create__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daShopItem_Create(void* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Create__FPv.s" -} -#pragma pop - -/* 8059F294-8059F2DC 000954 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGCylFv.s" -} -#pragma pop - -/* 8059F2DC-8059F324 00099C 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__8cM3dGAabFv.s" -} -#pragma pop - -/* 8059F324-8059F394 0009E4 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/__dt__12dBgS_ObjAcchFv.s" -} -#pragma pop - -/* 8059F394-8059F3D0 000A54 003C+00 1/0 0/0 0/0 .text daShopItem_Delete__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daShopItem_Delete(void* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Delete__FPv.s" -} -#pragma pop - -/* 8059F3D0-8059F3F4 000A90 0024+00 1/0 0/0 0/0 .text daShopItem_Draw__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daShopItem_Draw(void* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Draw__FPv.s" -} -#pragma pop - -/* 8059F3F4-8059F418 000AB4 0024+00 1/0 0/0 0/0 .text daShopItem_Execute__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daShopItem_Execute(void* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/daShopItem_Execute__FPv.s" -} -#pragma pop - -/* 8059F418-8059F420 000AD8 0008+00 1/0 0/0 0/0 .text daShopItem_IsDelete__FPv */ -static bool daShopItem_IsDelete(void* param_0) { +bool daShopItem_c::_execute() { + animPlay(1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f); + set_mtx(); return true; } -/* 8059F420-8059F428 000AE0 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void func_8059F420() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F420.s" -} -#pragma pop +/* 8059EF48-8059EF9C 000608 0054+00 1/1 0/0 0/0 .text _draw__12daShopItem_cFv */ +bool daShopItem_c::_draw() { + if (!chkDraw()) { + return true; + } -/* 8059F428-8059F430 000AE8 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void func_8059F428() { - nofralloc -#include "asm/rel/d/a/d_a_shop_item/d_a_shop_item/func_8059F428.s" + DrawBase(); + return true; } -#pragma pop -/* 8059F48C-8059F48C 000054 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +/* 8059EF9C-8059EFA0 00065C 0004+00 1/0 0/0 0/0 .text setListStart__12daShopItem_cFv */ +void daShopItem_c::setListStart() {} + +/* 8059EFA0-8059F024 000660 0084+00 1/0 0/0 0/0 .text setShadow__12daShopItem_cFv */ +void daShopItem_c::setShadow() { + if (m_itemNo != NO_ITEM) { + daItemBase_c::setShadow(); + } else { + mShadowKey = dComIfGd_setShadow(mShadowKey, 1, mpModel, ¤t.pos, 80.0f, 0.0f, + current.pos.y, mAcch.GetGroundH(), mAcch.m_gnd, &tevStr, 0, + 1.0f, dDlst_shadowControl_c::getSimpleTex()); + } +} + +/* 8059F024-8059F044 0006E4 0020+00 1/0 0/0 0/0 .text chkFlag__12daShopItem_cFi */ +BOOL daShopItem_c::chkFlag(int i_flag) { + return mData[mShopItemID].get_flag() & i_flag; +} + +/* 8059F044-8059F064 000704 0020+00 1/0 0/0 0/0 .text getTevFrm__12daShopItem_cFv */ +s8 daShopItem_c::getTevFrm() { + return mData[mShopItemID].get_tevfrm(); +} + +/* 8059F064-8059F084 000724 0020+00 1/0 0/0 0/0 .text getBtpFrm__12daShopItem_cFv */ +s8 daShopItem_c::getBtpFrm() { + return mData[mShopItemID].get_btpfrm(); +} + +/* 8059F084-8059F0A0 000744 001C+00 1/0 0/0 0/0 .text getShadowSize__12daShopItem_cFv */ +u8 daShopItem_c::getShadowSize() { + return mData[mShopItemID].get_shadowSize(); +} + +/* 8059F0A0-8059F0BC 000760 001C+00 1/0 0/0 0/0 .text getCollisionH__12daShopItem_cFv */ +u8 daShopItem_c::getCollisionH() { + return mData[mShopItemID].get_collisionH(); +} + +/* 8059F0BC-8059F0D8 00077C 001C+00 1/0 0/0 0/0 .text getCollisionR__12daShopItem_cFv */ +u8 daShopItem_c::getCollisionR() { + return mData[mShopItemID].get_collisionR(); +} + +int daShopItem_c::_create() { + fopAcM_SetupActor(this, daShopItem_c); + + mAngleX = 0; + mAngleY = 0; + m_itemNo = daShopItem_prm::getItemNo(this); + + if (getShopArcname() == NULL) { + // "Display model archive name doesn't exist![%d]\n" + OS_REPORT("陳列用モデルのアーカイブ名がありません![%d]\n", m_itemNo); + m_itemNo = NO_ITEM; + } + + int phase_state = dComIfG_resLoad(&mPhase, getShopArcname()); + switch (phase_state) { + case cPhs_COMPLEATE_e: + if (phase_state == cPhs_COMPLEATE_e) { + if (!fopAcM_entrySolidHeap(this, CheckShopItemCreateHeap, getHeapSize())) { + return cPhs_ERROR_e; + } + + // "Shop Item[%d]Memory:%d used\n" + OS_REPORT("ショップアイテム[%d]メモリ:%x 使用\n", m_itemNo, heap->getHeapSize()); + CreateInit(); + } + break; + } + + return phase_state; +} + +/* 8059F0D8-8059F294 000798 01BC+00 1/0 0/0 0/0 .text daShopItem_Create__FPv */ +static int daShopItem_Create(void* i_this) { + return static_cast(i_this)->_create(); +} + +int daShopItem_c::_delete() { + DeleteBase(getShopArcname()); + return 1; +} + +/* 8059F394-8059F3D0 000A54 003C+00 1/0 0/0 0/0 .text daShopItem_Delete__FPv */ +static int daShopItem_Delete(void* i_this) { + return static_cast(i_this)->_delete(); +} + +/* 8059F3D0-8059F3F4 000A90 0024+00 1/0 0/0 0/0 .text daShopItem_Draw__FPv */ +static int daShopItem_Draw(void* i_this) { + return static_cast(i_this)->_draw(); +} + +/* 8059F3F4-8059F418 000AB4 0024+00 1/0 0/0 0/0 .text daShopItem_Execute__FPv */ +static int daShopItem_Execute(void* i_this) { + return static_cast(i_this)->_execute(); +} + +/* 8059F418-8059F420 000AD8 0008+00 1/0 0/0 0/0 .text daShopItem_IsDelete__FPv */ +static int daShopItem_IsDelete(void* i_this) { + return 1; +} + +/* 8059F49C-8059F4BC -00001 0020+00 1/0 0/0 0/0 .data daShopItemMethodTable */ +static actor_method_class daShopItemMethodTable = { + (process_method_func)daShopItem_Create, (process_method_func)daShopItem_Delete, + (process_method_func)daShopItem_Execute, (process_method_func)daShopItem_IsDelete, + (process_method_func)daShopItem_Draw, +}; + +/* 8059F4BC-8059F4EC -00001 0030+00 0/0 0/0 1/0 .data g_profile_ShopItem */ +extern actor_process_profile_definition g_profile_ShopItem = { + fpcLy_CURRENT_e, + 7, + fpcPi_CURRENT_e, + PROC_ShopItem, + &g_fpcLf_Method.mBase, + sizeof(daShopItem_c), + 0, + 0, + &g_fopAc_Method.base, + 242, + &daShopItemMethodTable, + 0x60100, + fopAc_ACTOR_e, + fopAc_CULLBOX_CUSTOM_e, +}; diff --git a/rel/d/a/d_a_spinner/d_a_spinner.cpp b/rel/d/a/d_a_spinner/d_a_spinner.cpp index 620bcf263b..29a5cd217c 100644 --- a/rel/d/a/d_a_spinner/d_a_spinner.cpp +++ b/rel/d/a/d_a_spinner/d_a_spinner.cpp @@ -884,7 +884,7 @@ int daSpinner_c::setNextPathNum() { } /* 804D3694-804D36F4 001DF4 0060+00 1/1 0/0 0/0 .text getPathNextPos__11daSpinner_cFv */ -cXyz* daSpinner_c::getPathNextPos() { +Vec* daSpinner_c::getPathNextPos() { s32 add = field_0xa72 + field_0xa73; if (add < 0) { return &(mpPathMove->m_points + mpPathMove->m_num - 1)->m_position; diff --git a/rel/d/a/d_a_startAndGoal/Makefile b/rel/d/a/d_a_startAndGoal/Makefile index bb10e5aecd..8e18654b3b 100644 --- a/rel/d/a/d_a_startAndGoal/Makefile +++ b/rel/d/a/d_a_startAndGoal/Makefile @@ -19,6 +19,7 @@ M706_LIBS := \ M706_CFLAGS := \ -sdata 0 \ -sdata2 0 \ + -sym on \ M706_LDFLAGS := \ -nodefaults \ diff --git a/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp b/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp index b6fb3eff59..f733bdfbb0 100644 --- a/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp +++ b/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp @@ -1,398 +1,258 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_startAndGoal -// +/** + * d_a_startAndGoal.cpp + * + */ #include "rel/d/a/d_a_startAndGoal/d_a_startAndGoal.h" -#include "dol2asm.h" +#include "d/a/d_a_npc.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_timer.h" +#include "d/meter/d_meter2_info.h" +#include "f_op/f_op_actor_mng.h" -// -// Types: -// +class daStartAndGoal_Path_c : public daNpcF_Path_c { +public: + /* 80D4D7B8 */ BOOL chkPassed2(cXyz); -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); + /* 80D4D928 */ virtual ~daStartAndGoal_Path_c() {} }; -struct daStartAndGoal_c { - /* 80D4D84C */ void getType(); - /* 80D4D884 */ void Create(); +class daStartAndGoal_c : public fopAc_ac_c { +public: + /* 80D4D84C */ int getType(); + /* 80D4D884 */ int Create(); /* 80D4D998 */ void init(); /* 80D4DA68 */ void actorPosCheck(); - /* 80D4DB30 */ void readyStartTimer(); - /* 80D4DBAC */ void isStartCheck(); - /* 80D4DBD0 */ void isReadyCheck(); - /* 80D4DC50 */ void Execute(); - /* 80D4DCF4 */ bool Draw(); - /* 80D4DCFC */ void Delete(); + /* 80D4DB30 */ int readyStartTimer(); + /* 80D4DBAC */ BOOL isStartCheck(); + /* 80D4DBD0 */ BOOL isReadyCheck(); + /* 80D4DC50 */ int Execute(); + /* 80D4DCF4 */ int Draw(); + /* 80D4DCFC */ int Delete(); + + /* 0x568 */ daStartAndGoal_Path_c mPath; + /* 0xB98 */ u8 field_0xb98; + /* 0xB99 */ u8 mType; + /* 0xB9C */ int mAction; + /* 0xBA0 */ bool mStarted; }; -struct cXyz {}; - -struct daStartAndGoal_Path_c { - /* 80D4D7B8 */ void chkPassed2(cXyz); - /* 80D4D928 */ ~daStartAndGoal_Path_c(); -}; - -struct dPath {}; - -struct daNpcF_SPCurve_c { - /* 80150870 */ void initialize(dPath*, int); - /* 80D4DE68 */ ~daNpcF_SPCurve_c(); -}; - -struct daNpcF_Path_c { - /* 80150900 */ void initialize(); - /* 8015095C */ void setPathInfo(u8, s8, u8); - /* 80150A24 */ void chkPassed(cXyz); - /* 80150BE0 */ void setNextIdx(); - /* 80150C18 */ void getNextIdx(); - /* 80D4DE08 */ ~daNpcF_Path_c(); -}; - -struct dComIfG_play_c { - /* 8002CB9C */ void getTimerNowTimeMs(); - /* 8002CBDC */ void getTimerPtr(); -}; - -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); - /* 802AF884 */ void subBgmStop(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -// -// Forward References: -// - -extern "C" void chkPassed2__21daStartAndGoal_Path_cF4cXyz(); -extern "C" void getType__16daStartAndGoal_cFv(); -extern "C" void Create__16daStartAndGoal_cFv(); -extern "C" void __dt__21daStartAndGoal_Path_cFv(); -extern "C" void init__16daStartAndGoal_cFv(); -extern "C" void actorPosCheck__16daStartAndGoal_cFv(); -extern "C" void readyStartTimer__16daStartAndGoal_cFv(); -extern "C" void isStartCheck__16daStartAndGoal_cFv(); -extern "C" void isReadyCheck__16daStartAndGoal_cFv(); -extern "C" void Execute__16daStartAndGoal_cFv(); -extern "C" bool Draw__16daStartAndGoal_cFv(); -extern "C" void Delete__16daStartAndGoal_cFv(); -extern "C" static void daStartAndGoal_Execute__FP16daStartAndGoal_c(); -extern "C" static void daStartAndGoal_Draw__FP16daStartAndGoal_c(); -extern "C" static bool daStartAndGoal_IsDelete__FP16daStartAndGoal_c(); -extern "C" static void daStartAndGoal_Delete__FP16daStartAndGoal_c(); -extern "C" static void daStartAndGoal_create__FP10fopAc_ac_c(); -extern "C" void __dt__13daNpcF_Path_cFv(); -extern "C" void __dt__16daNpcF_SPCurve_cFv(); - -// -// External References: -// - -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void getTimerNowTimeMs__14dComIfG_play_cFv(); -extern "C" void getTimerPtr__14dComIfG_play_cFv(); -extern "C" void dComIfG_TimerStart__Fis(); -extern "C" void dComIfG_TimerEnd__Fii(); -extern "C" void dComIfG_TimerDeleteRequest__Fi(); -extern "C" void initialize__16daNpcF_SPCurve_cFP5dPathi(); -extern "C" void initialize__13daNpcF_Path_cFv(); -extern "C" void setPathInfo__13daNpcF_Path_cFUcScUc(); -extern "C" void chkPassed__13daNpcF_Path_cF4cXyz(); -extern "C" void setNextIdx__13daNpcF_Path_cFv(); -extern "C" void getNextIdx__13daNpcF_Path_cFv(); -extern "C" void dTimer_createTimer__FlUlUcUcffff(); -extern "C" void dTimer_isStart__Fv(); -extern "C" void dTimer_isReadyFlag__Fv(); -extern "C" void subBgmStart__8Z2SeqMgrFUl(); -extern "C" void subBgmStop__8Z2SeqMgrFv(); -extern "C" void __dl__FPv(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_meter2_info[248]; -extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; - -// -// Declarations: -// - /* 80D4D7B8-80D4D84C 000078 0094+00 1/1 0/0 0/0 .text chkPassed2__21daStartAndGoal_Path_cF4cXyz */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_Path_c::chkPassed2(cXyz param_0) { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/chkPassed2__21daStartAndGoal_Path_cF4cXyz.s" +BOOL daStartAndGoal_Path_c::chkPassed2(cXyz i_checkPos) { + int var_r31 = 0; + while (var_r31 < 1) { + if (!chkPassed(i_checkPos)) { + break; + } + + var_r31 = 1; + if (setNextIdx()) { + var_r31 = 2; + } + } + + return var_r31 > 0; } -#pragma pop /* 80D4D84C-80D4D884 00010C 0038+00 1/1 0/0 0/0 .text getType__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::getType() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/getType__16daStartAndGoal_cFv.s" +int daStartAndGoal_c::getType() { + switch (fopAcM_GetParam(this) & 0xFF) { + case 0: + return 0; + case 1: + return 1; + default: + return 2; + } } -#pragma pop /* ############################################################################################## */ +struct timer_info { + /* 0x0 */ s32 mode; + /* 0x4 */ u8 type; + /* 0x5 */ u8 field_0x5; +}; + /* 80D4DECC-80D4DEE4 000000 0018+00 4/4 0/0 0/0 .data l_timerType */ -SECTION_DATA static u8 l_timerType[24] = { - 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, - 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x00, 0x00, -}; - -/* 80D4DEE4-80D4DF04 -00001 0020+00 1/0 0/0 0/0 .data l_daStartAndGoal_Method */ -SECTION_DATA static void* l_daStartAndGoal_Method[8] = { - (void*)daStartAndGoal_create__FP10fopAc_ac_c, - (void*)daStartAndGoal_Delete__FP16daStartAndGoal_c, - (void*)daStartAndGoal_Execute__FP16daStartAndGoal_c, - (void*)daStartAndGoal_IsDelete__FP16daStartAndGoal_c, - (void*)daStartAndGoal_Draw__FP16daStartAndGoal_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, -}; - -/* 80D4DF04-80D4DF34 -00001 0030+00 0/0 0/0 1/0 .data g_profile_START_AND_GOAL */ -SECTION_DATA extern void* g_profile_START_AND_GOAL[12] = { - (void*)0xFFFFFFFD, (void*)0x0009FFFD, - (void*)0x03060000, (void*)&g_fpcLf_Method, - (void*)0x00000BA4, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01870000, (void*)&l_daStartAndGoal_Method, - (void*)0x00044000, (void*)0x000E0000, -}; - -/* 80D4DF34-80D4DF40 000068 000C+00 2/2 0/0 0/0 .data __vt__21daStartAndGoal_Path_c */ -SECTION_DATA extern void* __vt__21daStartAndGoal_Path_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__21daStartAndGoal_Path_cFv, -}; - -/* 80D4DF40-80D4DF4C 000074 000C+00 4/4 0/0 0/0 .data __vt__16daNpcF_SPCurve_c */ -SECTION_DATA extern void* __vt__16daNpcF_SPCurve_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__16daNpcF_SPCurve_cFv, -}; - -/* 80D4DF4C-80D4DF58 000080 000C+00 3/3 0/0 0/0 .data __vt__13daNpcF_Path_c */ -SECTION_DATA extern void* __vt__13daNpcF_Path_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__13daNpcF_Path_cFv, +static timer_info l_timerType[] = { + {3, 0, 1}, + {4, 2, 0}, + {3, 1, 1}, }; /* 80D4D884-80D4D928 000144 00A4+00 1/1 0/0 0/0 .text Create__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::Create() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Create__16daStartAndGoal_cFv.s" -} -#pragma pop +int daStartAndGoal_c::Create() { + fopAcM_SetupActor(this, daStartAndGoal_c); -/* 80D4D928-80D4D998 0001E8 0070+00 1/0 0/0 0/0 .text __dt__21daStartAndGoal_Path_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daStartAndGoal_Path_c::~daStartAndGoal_Path_c() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__21daStartAndGoal_Path_cFv.s" + init(); + return cPhs_COMPLEATE_e; } -#pragma pop -/* ############################################################################################## */ /* 80D4DEB8-80D4DEBC 000000 0001+03 1/1 0/0 0/0 .rodata l_DATA */ -SECTION_RODATA static u8 const l_DATA[1 + 3 /* padding */] = { - 0x00, - /* padding */ - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x80D4DEB8, &l_DATA); - -/* 80D4DEBC-80D4DEC0 000004 0004+00 0/1 0/0 0/0 .rodata @3913 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3913 = 210.0f; -COMPILER_STRIP_GATE(0x80D4DEBC, &lit_3913); -#pragma pop - -/* 80D4DEC0-80D4DEC4 000008 0004+00 0/1 0/0 0/0 .rodata @3914 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3914 = 410.0f; -COMPILER_STRIP_GATE(0x80D4DEC0, &lit_3914); -#pragma pop - -/* 80D4DEC4-80D4DEC8 00000C 0004+00 0/1 0/0 0/0 .rodata @3915 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3915 = 32.0f; -COMPILER_STRIP_GATE(0x80D4DEC4, &lit_3915); -#pragma pop - -/* 80D4DEC8-80D4DECC 000010 0004+00 0/1 0/0 0/0 .rodata @3916 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3916 = 419.0f; -COMPILER_STRIP_GATE(0x80D4DEC8, &lit_3916); -#pragma pop +static const u8 l_DATA[1] = {0}; // unused /* 80D4D998-80D4DA68 000258 00D0+00 1/1 0/0 0/0 .text init__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::init() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/init__16daStartAndGoal_cFv.s" +void daStartAndGoal_c::init() { + field_0xb98 = 1; + mStarted = false; + mType = getType(); + + mPath.initialize(); + mPath.setPathInfo(fopAcM_GetParam(this) >> 8, fopAcM_GetRoomNo(this), 0); + JUT_ASSERT(0 != mPath.getPathInfo()); + + if (dComIfG_getTimerPtr() == NULL) { + dTimer_createTimer(l_timerType[mType].mode, 9999000, l_timerType[mType].type, 0, 210.0f, + 410.0f, 32.0f, 419.0f); + } + + mAction = 0; } -#pragma pop /* 80D4DA68-80D4DB30 000328 00C8+00 1/1 0/0 0/0 .text actorPosCheck__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::actorPosCheck() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/actorPosCheck__16daStartAndGoal_cFv.s" +void daStartAndGoal_c::actorPosCheck() { + cXyz pos(daPy_getPlayerActorClass()->current.pos); + if (mPath.chkPassed2(pos)) { + int idx = mPath.getIdx(); + int next_idx = mPath.getNextIdx(); + + if (idx == next_idx) { + mAction = 3; + dComIfG_TimerEnd(l_timerType[mType].mode, -1); + dMeter2Info_setMsgTimeMs(dComIfG_getTimerNowTimeMs()); + } + } } -#pragma pop /* 80D4DB30-80D4DBAC 0003F0 007C+00 0/0 0/0 2/2 .text readyStartTimer__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::readyStartTimer() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/readyStartTimer__16daStartAndGoal_cFv.s" +int daStartAndGoal_c::readyStartTimer() { + if (dComIfG_TimerStart(l_timerType[mType].mode, 0)) { + mAction = 1; + field_0xb98 = l_timerType[mType].field_0x5; + return 1; + } + + return 0; } -#pragma pop /* 80D4DBAC-80D4DBD0 00046C 0024+00 1/1 0/0 2/2 .text isStartCheck__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::isStartCheck() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isStartCheck__16daStartAndGoal_cFv.s" +BOOL daStartAndGoal_c::isStartCheck() { + return dTimer_isStart(); } -#pragma pop /* 80D4DBD0-80D4DC50 000490 0080+00 1/1 0/0 0/0 .text isReadyCheck__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::isReadyCheck() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/isReadyCheck__16daStartAndGoal_cFv.s" +BOOL daStartAndGoal_c::isReadyCheck() { + if (mStarted) { + return TRUE; + } + + if (dTimer_isReadyFlag()) { + mStarted = true; + + if (mType == 1) { + Z2GetAudioMgr()->subBgmStart(Z2BGM_RIVER_GAME); + } + } + + return dTimer_isStart(); } -#pragma pop /* 80D4DC50-80D4DCF4 000510 00A4+00 1/1 0/0 0/0 .text Execute__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::Execute() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Execute__16daStartAndGoal_cFv.s" +int daStartAndGoal_c::Execute() { + switch (mAction) { + case 0: + break; + case 1: + if (isStartCheck()) { + mAction = 2; + + if (mType == 0) { + Z2GetAudioMgr()->subBgmStart(Z2BGM_RIVER_GAME_00); + } + } else { + isReadyCheck(); + break; + } + case 2: + actorPosCheck(); + break; + case 3: + break; + } + + return 1; } -#pragma pop /* 80D4DCF4-80D4DCFC 0005B4 0008+00 1/1 0/0 0/0 .text Draw__16daStartAndGoal_cFv */ -bool daStartAndGoal_c::Draw() { - return true; +int daStartAndGoal_c::Draw() { + return 1; } /* 80D4DCFC-80D4DD80 0005BC 0084+00 1/1 0/0 0/0 .text Delete__16daStartAndGoal_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daStartAndGoal_c::Delete() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/Delete__16daStartAndGoal_cFv.s" +int daStartAndGoal_c::Delete() { + if (field_0xb98 == 1) { + dComIfG_TimerDeleteRequest(l_timerType[mType].mode); + } + + if (mStarted == true && (mType == 0 || mType == 1)) { + Z2GetAudioMgr()->subBgmStop(); + } + + return 1; } -#pragma pop /* 80D4DD80-80D4DDA0 000640 0020+00 1/0 0/0 0/0 .text daStartAndGoal_Execute__FP16daStartAndGoal_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daStartAndGoal_Execute(daStartAndGoal_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Execute__FP16daStartAndGoal_c.s" +static int daStartAndGoal_Execute(daStartAndGoal_c* i_this) { + return i_this->Execute(); } -#pragma pop /* 80D4DDA0-80D4DDC0 000660 0020+00 1/0 0/0 0/0 .text daStartAndGoal_Draw__FP16daStartAndGoal_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daStartAndGoal_Draw(daStartAndGoal_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Draw__FP16daStartAndGoal_c.s" +static int daStartAndGoal_Draw(daStartAndGoal_c* i_this) { + return i_this->Draw(); } -#pragma pop /* 80D4DDC0-80D4DDC8 000680 0008+00 1/0 0/0 0/0 .text * daStartAndGoal_IsDelete__FP16daStartAndGoal_c */ -static bool daStartAndGoal_IsDelete(daStartAndGoal_c* param_0) { - return true; +static int daStartAndGoal_IsDelete(daStartAndGoal_c* i_this) { + return 1; } /* 80D4DDC8-80D4DDE8 000688 0020+00 1/0 0/0 0/0 .text daStartAndGoal_Delete__FP16daStartAndGoal_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daStartAndGoal_Delete(daStartAndGoal_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_Delete__FP16daStartAndGoal_c.s" +static int daStartAndGoal_Delete(daStartAndGoal_c* i_this) { + return i_this->Delete(); } -#pragma pop /* 80D4DDE8-80D4DE08 0006A8 0020+00 1/0 0/0 0/0 .text daStartAndGoal_create__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daStartAndGoal_create(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/daStartAndGoal_create__FP10fopAc_ac_c.s" +static int daStartAndGoal_create(fopAc_ac_c* i_this) { + return static_cast(i_this)->Create(); } -#pragma pop -/* 80D4DE08-80D4DE68 0006C8 0060+00 1/0 0/0 0/0 .text __dt__13daNpcF_Path_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daNpcF_Path_c::~daNpcF_Path_c() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__13daNpcF_Path_cFv.s" -} -#pragma pop +/* 80D4DEE4-80D4DF04 -00001 0020+00 1/0 0/0 0/0 .data l_daStartAndGoal_Method */ +static actor_method_class l_daStartAndGoal_Method = { + (process_method_func)daStartAndGoal_create, (process_method_func)daStartAndGoal_Delete, + (process_method_func)daStartAndGoal_Execute, (process_method_func)daStartAndGoal_IsDelete, + (process_method_func)daStartAndGoal_Draw, +}; -/* 80D4DE68-80D4DEB0 000728 0048+00 1/0 0/0 0/0 .text __dt__16daNpcF_SPCurve_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daNpcF_SPCurve_c::~daNpcF_SPCurve_c() { - nofralloc -#include "asm/rel/d/a/d_a_startAndGoal/d_a_startAndGoal/__dt__16daNpcF_SPCurve_cFv.s" -} -#pragma pop +/* 80D4DF04-80D4DF34 -00001 0030+00 0/0 0/0 1/0 .data g_profile_START_AND_GOAL */ +extern actor_process_profile_definition g_profile_START_AND_GOAL = { + fpcLy_CURRENT_e, + 9, + fpcPi_CURRENT_e, + PROC_START_AND_GOAL, + &g_fpcLf_Method.mBase, + sizeof(daStartAndGoal_c), + 0, + 0, + &g_fopAc_Method.base, + 391, + &l_daStartAndGoal_Method, + 0x44000, + fopAc_ACTOR_e, + fopAc_CULLBOX_CUSTOM_e, +}; \ No newline at end of file diff --git a/src/d/a/d_a_itembase.cpp b/src/d/a/d_a_itembase.cpp index bf0d8a9eeb..5dda2b8d49 100644 --- a/src/d/a/d_a_itembase.cpp +++ b/src/d/a/d_a_itembase.cpp @@ -185,7 +185,7 @@ void daItemBase_c::setShadow() { shadowSize = 150.0f; } - field_0x91c = dComIfGd_setShadow(field_0x91c, 3, mpModel, ¤t.pos, shadowSize, 0.0f, + mShadowKey = dComIfGd_setShadow(mShadowKey, 3, mpModel, ¤t.pos, shadowSize, 0.0f, current.pos.y, mAcch.GetGroundH(), mAcch.m_gnd, &tevStr, 0, 1.0f, dDlst_shadowControl_c::getSimpleTex()); } diff --git a/src/d/a/d_a_npc.cpp b/src/d/a/d_a_npc.cpp index fdc9ae6ad5..d1bad39509 100644 --- a/src/d/a/d_a_npc.cpp +++ b/src/d/a/d_a_npc.cpp @@ -4217,7 +4217,7 @@ int daNpcF_Path_c::setNextIdx() { } /* 80150C18-80150C60 14B558 0048+00 0/0 0/0 9/9 .text getNextIdx__13daNpcF_Path_cFv */ -u16 daNpcF_Path_c::getNextIdx() { +int daNpcF_Path_c::getNextIdx() { u16 ret = mIdx; daNpcF_incIdx(mpRoomPath->m_num, ret, chkClose(), field_0x02); diff --git a/src/d/a/d_a_shop_item_static.cpp b/src/d/a/d_a_shop_item_static.cpp index 12fdc6a3bc..699bb3a027 100644 --- a/src/d/a/d_a_shop_item_static.cpp +++ b/src/d/a/d_a_shop_item_static.cpp @@ -1,6 +1,6 @@ /** * d_a_shop_item_static.cpp - * + * */ #include "d/a/d_a_shop_item_static.h" @@ -43,15 +43,16 @@ ResourceData const daShopItem_c::mData[23] = { }; /* 80037C24-80037C7C 032564 0058+00 0/0 0/0 1/1 .text CheckShopItemCreateHeap__FP10fopAc_ac_c */ -void CheckShopItemCreateHeap(fopAc_ac_c* actor) { - daShopItem_c* item = static_cast(actor); +int CheckShopItemCreateHeap(fopAc_ac_c* i_this) { + daShopItem_c* a_this = static_cast(i_this); - u8 item_id = item->getShopItemID(); - item->CreateItemHeap( - daShopItem_c::mData[item_id].get_arcName(), daShopItem_c::mData[item_id].get_bmdName(), - daShopItem_c::mData[item_id].get_btk1Name(), daShopItem_c::mData[item_id].get_bpk1Name(), - daShopItem_c::mData[item_id].get_bck1Name(), daShopItem_c::mData[item_id].get_bxa1Name(), - daShopItem_c::mData[item_id].get_brk1Name(), daShopItem_c::mData[item_id].get_btp1Name()); + u8 a_ShopItemID = a_this->getShopItemID(); + return a_this->CreateItemHeap(daShopItem_c::mData[a_ShopItemID].get_arcName(), + daShopItem_c::mData[a_ShopItemID].get_bmdName(), + daShopItem_c::mData[a_ShopItemID].get_btk1Name(), + daShopItem_c::mData[a_ShopItemID].get_bpk1Name(), + daShopItem_c::mData[a_ShopItemID].get_bck1Name(), + daShopItem_c::mData[a_ShopItemID].get_bxa1Name(), + daShopItem_c::mData[a_ShopItemID].get_brk1Name(), + daShopItem_c::mData[a_ShopItemID].get_btp1Name()); } - -/* 80379738-80379738 005D98 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/d_timer.cpp b/src/d/d_timer.cpp index 0a0ecf4b44..3e72d130ea 100644 --- a/src/d/d_timer.cpp +++ b/src/d/d_timer.cpp @@ -480,7 +480,7 @@ int dTimer_c::getRestTimeMs() { } /* 8025DB10-8025DB38 258450 0028+00 1/1 0/0 4/4 .text isStart__8dTimer_cFv */ -int dTimer_c::isStart() { +u8 dTimer_c::isStart() { if (field_0x16A != 1 && m_mode == 4) { return 1; } @@ -1618,7 +1618,7 @@ static int dTimer_createStart2D(s32 param_0, u16 param_1) { } /* 802611F0-80261244 25BB30 0054+00 0/0 0/0 5/5 .text dTimer_isStart__Fv */ -int dTimer_isStart() { +u8 dTimer_isStart() { if (dComIfG_getTimerPtr() != NULL) { return dComIfG_getTimerPtr()->isStart(); } @@ -1650,7 +1650,7 @@ void dTimer_hide() { } /* 80261340-80261394 25BC80 0054+00 0/0 0/0 1/1 .text dTimer_isReadyFlag__Fv */ -u32 dTimer_isReadyFlag() { +u8 dTimer_isReadyFlag() { if (dComIfG_getTimerPtr() != NULL) { return dComIfG_getTimerPtr()->isReadyFlag(); }