From 1a168255d2098593f0afeb40e56c53df5ace43fd Mon Sep 17 00:00:00 2001 From: TakaRikka <38417346+TakaRikka@users.noreply.github.com> Date: Mon, 3 Jul 2023 21:10:29 -0700 Subject: [PATCH] d_a_tag_hjump / d_a_scene_exit2 OK (#361) * d_a_tag_hjump OK * d_a_scene_exit2 OK * remove asm --- .../d_a_scene_exit2/Create__10daScExit_cFv.s | 33 -- .../d_a_scene_exit2/_delete__10daScExit_cFv.s | 14 - .../actionEvent__10daScExit_cFv.s | 34 -- .../actionOrderEvent__10daScExit_cFv.s | 35 -- .../actionWait__10daScExit_cFv.s | 28 - .../checkArea__10daScExit_cFv.s | 19 - .../daScExit_Create__FP10daScExit_c.s | 9 - .../daScExit_Delete__FP10daScExit_c.s | 9 - .../daScExit_Draw__FP10daScExit_c.s | 9 - .../daScExit_Execute__FP10daScExit_c.s | 9 - .../demoProc__10daScExit_cFv.s | 124 ---- .../event_proc_call__10daScExit_cFv.s | 49 -- .../d_a_scene_exit2/execute__10daScExit_cFv.s | 10 - .../d_a_scene_exit2/func_8059E230.s | 41 -- .../initBaseMtx__10daScExit_cFv.s | 9 - .../setBaseMtx__10daScExit_cFv.s | 15 - .../CreateHeap__12daTagHjump_cFv.s | 28 - .../d_a_tag_hjump/Draw__12daTagHjump_cFv.s | 46 -- .../d_a_tag_hjump/__dt__12daTagHjump_cFv.s | 41 -- .../d_a_tag_hjump/create__12daTagHjump_cFv.s | 159 ----- .../daTagHjump_Create__FP10fopAc_ac_c.s | 9 - .../daTagHjump_Delete__FP12daTagHjump_c.s | 16 - .../daTagHjump_Draw__FP12daTagHjump_c.s | 12 - .../daTagHjump_Execute__FP12daTagHjump_c.s | 9 - .../d_a_tag_hjump/execute__12daTagHjump_cFv.s | 192 ------ include/d/bg/d_bg_w.h | 1 + include/d/com/d_com_inf_game.h | 5 + include/f_op/f_op_actor_mng.h | 4 + include/rel/d/a/d_a_horse/d_a_horse.h | 10 + .../rel/d/a/d_a_scene_exit2/d_a_scene_exit2.h | 44 +- .../rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.h | 28 +- rel/d/a/d_a_scene_exit2/Makefile | 2 - rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp | 545 +++++------------- .../unknown_translation_unit_bss.cpp | 27 - rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp | 527 ++++++----------- 35 files changed, 437 insertions(+), 1715 deletions(-) delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/Create__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/_delete__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionEvent__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionOrderEvent__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionWait__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/checkArea__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Create__FP10daScExit_c.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Delete__FP10daScExit_c.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Draw__FP10daScExit_c.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Execute__FP10daScExit_c.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/demoProc__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/event_proc_call__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/execute__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/func_8059E230.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/initBaseMtx__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/setBaseMtx__10daScExit_cFv.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/CreateHeap__12daTagHjump_cFv.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/Draw__12daTagHjump_cFv.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/__dt__12daTagHjump_cFv.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/create__12daTagHjump_cFv.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Create__FP10fopAc_ac_c.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Delete__FP12daTagHjump_c.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Draw__FP12daTagHjump_c.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Execute__FP12daTagHjump_c.s delete mode 100644 asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/execute__12daTagHjump_cFv.s delete mode 100644 rel/d/a/d_a_scene_exit2/unknown_translation_unit_bss.cpp diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/Create__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/Create__10daScExit_cFv.s deleted file mode 100644 index bac4ab57820..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/Create__10daScExit_cFv.s +++ /dev/null @@ -1,33 +0,0 @@ -lbl_8059E1B0: -/* 8059E1B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E1B4 7C 08 02 A6 */ mflr r0 -/* 8059E1B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E1BC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059E1C0 7C 7F 1B 78 */ mr r31, r3 -/* 8059E1C4 3C 80 80 5A */ lis r4, lit_3659@ha /* 0x8059E7F4@ha */ -/* 8059E1C8 C0 24 E7 F4 */ lfs f1, lit_3659@l(r4) /* 0x8059E7F4@l */ -/* 8059E1CC C0 03 04 EC */ lfs f0, 0x4ec(r3) -/* 8059E1D0 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8059E1D4 D0 03 05 74 */ stfs f0, 0x574(r3) -/* 8059E1D8 4B FF FF 81 */ bl initBaseMtx__10daScExit_cFv -/* 8059E1DC 38 00 00 FF */ li r0, 0xff -/* 8059E1E0 98 1F 05 7A */ stb r0, 0x57a(r31) -/* 8059E1E4 3C 60 80 5A */ lis r3, l_arcName@ha /* 0x8059E858@ha */ -/* 8059E1E8 80 03 E8 58 */ lwz r0, l_arcName@l(r3) /* 0x8059E858@l */ -/* 8059E1EC 90 1F 01 00 */ stw r0, 0x100(r31) -/* 8059E1F0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059E1F4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059E1F8 38 63 4F F8 */ addi r3, r3, 0x4ff8 -/* 8059E1FC 7F E4 FB 78 */ mr r4, r31 -/* 8059E200 3C A0 80 5A */ lis r5, l_evName@ha /* 0x8059E85C@ha */ -/* 8059E204 38 A5 E8 5C */ addi r5, r5, l_evName@l /* 0x8059E85C@l */ -/* 8059E208 80 A5 00 00 */ lwz r5, 0(r5) -/* 8059E20C 38 C0 00 FF */ li r6, 0xff -/* 8059E210 4B AA 95 49 */ bl getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc -/* 8059E214 B0 7F 05 78 */ sth r3, 0x578(r31) -/* 8059E218 38 60 00 01 */ li r3, 1 -/* 8059E21C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059E220 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E224 7C 08 03 A6 */ mtlr r0 -/* 8059E228 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E22C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/_delete__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/_delete__10daScExit_cFv.s deleted file mode 100644 index cf1c6a448da..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/_delete__10daScExit_cFv.s +++ /dev/null @@ -1,14 +0,0 @@ -lbl_8059E71C: -/* 8059E71C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E720 7C 08 02 A6 */ mflr r0 -/* 8059E724 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E728 3C 80 80 5A */ lis r4, l_arcName@ha /* 0x8059E858@ha */ -/* 8059E72C 38 84 E8 58 */ addi r4, r4, l_arcName@l /* 0x8059E858@l */ -/* 8059E730 80 84 00 00 */ lwz r4, 0(r4) -/* 8059E734 38 63 05 68 */ addi r3, r3, 0x568 -/* 8059E738 4B A8 E8 D1 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc -/* 8059E73C 38 60 00 01 */ li r3, 1 -/* 8059E740 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E744 7C 08 03 A6 */ mtlr r0 -/* 8059E748 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E74C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionEvent__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionEvent__10daScExit_cFv.s deleted file mode 100644 index 9a2eb1cdac9..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionEvent__10daScExit_cFv.s +++ /dev/null @@ -1,34 +0,0 @@ -lbl_8059E488: -/* 8059E488 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E48C 7C 08 02 A6 */ mflr r0 -/* 8059E490 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E494 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059E498 93 C1 00 08 */ stw r30, 8(r1) -/* 8059E49C 7C 7E 1B 78 */ mr r30, r3 -/* 8059E4A0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059E4A4 3B E3 61 C0 */ addi r31, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059E4A8 38 7F 4F F8 */ addi r3, r31, 0x4ff8 -/* 8059E4AC A8 9E 05 78 */ lha r4, 0x578(r30) -/* 8059E4B0 4B AA 95 C9 */ bl endCheck__16dEvent_manager_cFs -/* 8059E4B4 2C 03 00 00 */ cmpwi r3, 0 -/* 8059E4B8 41 82 00 18 */ beq lbl_8059E4D0 -/* 8059E4BC 38 00 00 03 */ li r0, 3 -/* 8059E4C0 98 1E 05 7B */ stb r0, 0x57b(r30) -/* 8059E4C4 38 7F 4E C8 */ addi r3, r31, 0x4ec8 -/* 8059E4C8 4B AA 3F A1 */ bl reset__14dEvt_control_cFv -/* 8059E4CC 48 00 00 20 */ b lbl_8059E4EC -lbl_8059E4D0: -/* 8059E4D0 7F C3 F3 78 */ mr r3, r30 -/* 8059E4D4 48 00 00 35 */ bl demoProc__10daScExit_cFv -/* 8059E4D8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059E4DC 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059E4E0 80 03 5F 1C */ lwz r0, 0x5f1c(r3) -/* 8059E4E4 64 00 04 00 */ oris r0, r0, 0x400 -/* 8059E4E8 90 03 5F 1C */ stw r0, 0x5f1c(r3) -lbl_8059E4EC: -/* 8059E4EC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059E4F0 83 C1 00 08 */ lwz r30, 8(r1) -/* 8059E4F4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E4F8 7C 08 03 A6 */ mtlr r0 -/* 8059E4FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E500 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionOrderEvent__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionOrderEvent__10daScExit_cFv.s deleted file mode 100644 index 2dc28c5e8d9..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionOrderEvent__10daScExit_cFv.s +++ /dev/null @@ -1,35 +0,0 @@ -lbl_8059E408: -/* 8059E408 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E40C 7C 08 02 A6 */ mflr r0 -/* 8059E410 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E414 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059E418 7C 7F 1B 78 */ mr r31, r3 -/* 8059E41C A0 03 00 F8 */ lhz r0, 0xf8(r3) -/* 8059E420 28 00 00 02 */ cmplwi r0, 2 -/* 8059E424 40 82 00 28 */ bne lbl_8059E44C -/* 8059E428 38 00 00 02 */ li r0, 2 -/* 8059E42C 98 1F 05 7B */ stb r0, 0x57b(r31) -/* 8059E430 48 00 00 D9 */ bl demoProc__10daScExit_cFv -/* 8059E434 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059E438 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059E43C 80 03 5F 1C */ lwz r0, 0x5f1c(r3) -/* 8059E440 64 00 04 00 */ oris r0, r0, 0x400 -/* 8059E444 90 03 5F 1C */ stw r0, 0x5f1c(r3) -/* 8059E448 48 00 00 2C */ b lbl_8059E474 -lbl_8059E44C: -/* 8059E44C A8 9F 05 78 */ lha r4, 0x578(r31) -/* 8059E450 88 BF 05 7A */ lbz r5, 0x57a(r31) -/* 8059E454 3C C0 00 01 */ lis r6, 0x0001 /* 0x0000FFFF@ha */ -/* 8059E458 38 C6 FF FF */ addi r6, r6, 0xFFFF /* 0x0000FFFF@l */ -/* 8059E45C 38 E0 00 00 */ li r7, 0 -/* 8059E460 39 00 00 01 */ li r8, 1 -/* 8059E464 4B A7 D2 19 */ bl fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs -/* 8059E468 A0 1F 00 FA */ lhz r0, 0xfa(r31) -/* 8059E46C 60 00 00 02 */ ori r0, r0, 2 -/* 8059E470 B0 1F 00 FA */ sth r0, 0xfa(r31) -lbl_8059E474: -/* 8059E474 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059E478 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E47C 7C 08 03 A6 */ mtlr r0 -/* 8059E480 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E484 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionWait__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionWait__10daScExit_cFv.s deleted file mode 100644 index 88f72a92b11..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionWait__10daScExit_cFv.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_8059E3A0: -/* 8059E3A0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E3A4 7C 08 02 A6 */ mflr r0 -/* 8059E3A8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E3AC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059E3B0 7C 7F 1B 78 */ mr r31, r3 -/* 8059E3B4 48 00 03 19 */ bl checkArea__10daScExit_cFv -/* 8059E3B8 2C 03 00 00 */ cmpwi r3, 0 -/* 8059E3BC 41 82 00 38 */ beq lbl_8059E3F4 -/* 8059E3C0 38 00 00 01 */ li r0, 1 -/* 8059E3C4 98 1F 05 7B */ stb r0, 0x57b(r31) -/* 8059E3C8 7F E3 FB 78 */ mr r3, r31 -/* 8059E3CC A8 9F 05 78 */ lha r4, 0x578(r31) -/* 8059E3D0 88 BF 05 7A */ lbz r5, 0x57a(r31) -/* 8059E3D4 3C C0 00 01 */ lis r6, 0x0001 /* 0x0000FFFF@ha */ -/* 8059E3D8 38 C6 FF FF */ addi r6, r6, 0xFFFF /* 0x0000FFFF@l */ -/* 8059E3DC 38 E0 00 00 */ li r7, 0 -/* 8059E3E0 39 00 00 01 */ li r8, 1 -/* 8059E3E4 4B A7 D2 99 */ bl fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs -/* 8059E3E8 A0 1F 00 FA */ lhz r0, 0xfa(r31) -/* 8059E3EC 60 00 00 02 */ ori r0, r0, 2 -/* 8059E3F0 B0 1F 00 FA */ sth r0, 0xfa(r31) -lbl_8059E3F4: -/* 8059E3F4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059E3F8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E3FC 7C 08 03 A6 */ mtlr r0 -/* 8059E400 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E404 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/checkArea__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/checkArea__10daScExit_cFv.s deleted file mode 100644 index 77666d80b61..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/checkArea__10daScExit_cFv.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_8059E6CC: -/* 8059E6CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E6D0 7C 08 02 A6 */ mflr r0 -/* 8059E6D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E6D8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059E6DC 7C 7F 1B 78 */ mr r31, r3 -/* 8059E6E0 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059E6E4 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059E6E8 80 84 5D AC */ lwz r4, 0x5dac(r4) -/* 8059E6EC 4B A7 C2 79 */ bl fopAcM_searchActorDistanceXZ__FPC10fopAc_ac_cPC10fopAc_ac_c -/* 8059E6F0 C0 1F 05 74 */ lfs f0, 0x574(r31) -/* 8059E6F4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8059E6F8 7C 00 00 26 */ mfcr r0 -/* 8059E6FC 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8059E700 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059E704 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E708 7C 08 03 A6 */ mtlr r0 -/* 8059E70C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E710 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Create__FP10daScExit_c.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Create__FP10daScExit_c.s deleted file mode 100644 index 462cbcb839e..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Create__FP10daScExit_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8059E7B0: -/* 8059E7B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E7B4 7C 08 02 A6 */ mflr r0 -/* 8059E7B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E7BC 4B FF FA 75 */ bl create__10daScExit_cFv -/* 8059E7C0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E7C4 7C 08 03 A6 */ mtlr r0 -/* 8059E7C8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E7CC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Delete__FP10daScExit_c.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Delete__FP10daScExit_c.s deleted file mode 100644 index 45d69779a1e..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Delete__FP10daScExit_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8059E790: -/* 8059E790 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E794 7C 08 02 A6 */ mflr r0 -/* 8059E798 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E79C 4B FF FF 81 */ bl _delete__10daScExit_cFv -/* 8059E7A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E7A4 7C 08 03 A6 */ mtlr r0 -/* 8059E7A8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E7AC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Draw__FP10daScExit_c.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Draw__FP10daScExit_c.s deleted file mode 100644 index 7870e3951d1..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Draw__FP10daScExit_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8059E750: -/* 8059E750 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E754 7C 08 02 A6 */ mflr r0 -/* 8059E758 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E75C 4B FF FF B9 */ bl draw__10daScExit_cFv -/* 8059E760 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E764 7C 08 03 A6 */ mtlr r0 -/* 8059E768 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E76C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Execute__FP10daScExit_c.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Execute__FP10daScExit_c.s deleted file mode 100644 index 6755ea6cd65..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Execute__FP10daScExit_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8059E770: -/* 8059E770 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E774 7C 08 02 A6 */ mflr r0 -/* 8059E778 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E77C 4B FF FB 45 */ bl execute__10daScExit_cFv -/* 8059E780 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E784 7C 08 03 A6 */ mtlr r0 -/* 8059E788 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E78C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/demoProc__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/demoProc__10daScExit_cFv.s deleted file mode 100644 index 0f9e300c191..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/demoProc__10daScExit_cFv.s +++ /dev/null @@ -1,124 +0,0 @@ -lbl_8059E508: -/* 8059E508 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8059E50C 7C 08 02 A6 */ mflr r0 -/* 8059E510 90 01 00 34 */ stw r0, 0x34(r1) -/* 8059E514 39 61 00 30 */ addi r11, r1, 0x30 -/* 8059E518 4B DC 3C BD */ bl _savegpr_27 -/* 8059E51C 7C 7C 1B 78 */ mr r28, r3 -/* 8059E520 3C 60 80 5A */ lis r3, lit_3659@ha /* 0x8059E7F4@ha */ -/* 8059E524 3B C3 E7 F4 */ addi r30, r3, lit_3659@l /* 0x8059E7F4@l */ -/* 8059E528 80 1C 00 B0 */ lwz r0, 0xb0(r28) -/* 8059E52C 54 1F 06 3E */ clrlwi r31, r0, 0x18 -/* 8059E530 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8059E534 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8059E538 3B A3 4F F8 */ addi r29, r3, 0x4ff8 -/* 8059E53C 7F A3 EB 78 */ mr r3, r29 -/* 8059E540 80 9C 05 70 */ lwz r4, 0x570(r28) -/* 8059E544 3C A0 80 5A */ lis r5, action_table@ha /* 0x8059E8C0@ha */ -/* 8059E548 38 A5 E8 C0 */ addi r5, r5, action_table@l /* 0x8059E8C0@l */ -/* 8059E54C 38 C0 00 03 */ li r6, 3 -/* 8059E550 38 E0 00 00 */ li r7, 0 -/* 8059E554 39 00 00 00 */ li r8, 0 -/* 8059E558 4B AA 98 B9 */ bl getMyActIdx__16dEvent_manager_cFiPCPCciii -/* 8059E55C 7C 7B 1B 78 */ mr r27, r3 -/* 8059E560 7F A3 EB 78 */ mr r3, r29 -/* 8059E564 80 9C 05 70 */ lwz r4, 0x570(r28) -/* 8059E568 4B AA 97 E5 */ bl getIsAddvance__16dEvent_manager_cFi -/* 8059E56C 2C 03 00 00 */ cmpwi r3, 0 -/* 8059E570 41 82 00 BC */ beq lbl_8059E62C -/* 8059E574 2C 1B 00 01 */ cmpwi r27, 1 -/* 8059E578 41 82 00 54 */ beq lbl_8059E5CC -/* 8059E57C 40 80 00 B0 */ bge lbl_8059E62C -/* 8059E580 2C 1B 00 00 */ cmpwi r27, 0 -/* 8059E584 40 80 00 0C */ bge lbl_8059E590 -/* 8059E588 48 00 00 A4 */ b lbl_8059E62C -/* 8059E58C 48 00 00 A0 */ b lbl_8059E62C -lbl_8059E590: -/* 8059E590 7F A3 EB 78 */ mr r3, r29 -/* 8059E594 80 9C 05 70 */ lwz r4, 0x570(r28) -/* 8059E598 3C A0 80 5A */ lis r5, d_a_scene_exit2__stringBase0@ha /* 0x8059E808@ha */ -/* 8059E59C 38 A5 E8 08 */ addi r5, r5, d_a_scene_exit2__stringBase0@l /* 0x8059E808@l */ -/* 8059E5A0 38 A5 00 2A */ addi r5, r5, 0x2a -/* 8059E5A4 38 C0 00 03 */ li r6, 3 -/* 8059E5A8 4B AA 9B 45 */ bl getMySubstanceP__16dEvent_manager_cFiPCci -/* 8059E5AC 28 03 00 00 */ cmplwi r3, 0 -/* 8059E5B0 40 82 00 10 */ bne lbl_8059E5C0 -/* 8059E5B4 38 00 00 01 */ li r0, 1 -/* 8059E5B8 98 1C 05 7C */ stb r0, 0x57c(r28) -/* 8059E5BC 48 00 00 70 */ b lbl_8059E62C -lbl_8059E5C0: -/* 8059E5C0 80 03 00 00 */ lwz r0, 0(r3) -/* 8059E5C4 98 1C 05 7C */ stb r0, 0x57c(r28) -/* 8059E5C8 48 00 00 64 */ b lbl_8059E62C -lbl_8059E5CC: -/* 8059E5CC 88 1C 04 E2 */ lbz r0, 0x4e2(r28) -/* 8059E5D0 7C 03 07 74 */ extsb r3, r0 -/* 8059E5D4 4B A8 EA 99 */ bl dComIfGp_getReverb__Fi -/* 8059E5D8 7C 67 1B 78 */ mr r7, r3 -/* 8059E5DC 38 00 00 86 */ li r0, 0x86 -/* 8059E5E0 90 01 00 08 */ stw r0, 8(r1) -/* 8059E5E4 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */ -/* 8059E5E8 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */ -/* 8059E5EC 80 63 00 00 */ lwz r3, 0(r3) -/* 8059E5F0 38 81 00 08 */ addi r4, r1, 8 -/* 8059E5F4 38 BC 05 38 */ addi r5, r28, 0x538 -/* 8059E5F8 38 C0 00 00 */ li r6, 0 -/* 8059E5FC C0 3E 00 04 */ lfs f1, 4(r30) -/* 8059E600 FC 40 08 90 */ fmr f2, f1 -/* 8059E604 C0 7E 00 08 */ lfs f3, 8(r30) -/* 8059E608 FC 80 18 90 */ fmr f4, f3 -/* 8059E60C 39 00 00 00 */ li r8, 0 -/* 8059E610 4B D0 D3 75 */ bl seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc -/* 8059E614 C0 3E 00 0C */ lfs f1, 0xc(r30) -/* 8059E618 C0 1C 04 D4 */ lfs f0, 0x4d4(r28) -/* 8059E61C EC 01 00 2A */ fadds f0, f1, f0 -/* 8059E620 D0 1C 05 54 */ stfs f0, 0x554(r28) -/* 8059E624 C0 1C 05 54 */ lfs f0, 0x554(r28) -/* 8059E628 D0 1C 05 3C */ stfs f0, 0x53c(r28) -lbl_8059E62C: -/* 8059E62C 2C 1B 00 01 */ cmpwi r27, 1 -/* 8059E630 41 82 00 40 */ beq lbl_8059E670 -/* 8059E634 40 80 00 10 */ bge lbl_8059E644 -/* 8059E638 2C 1B 00 00 */ cmpwi r27, 0 -/* 8059E63C 40 80 00 14 */ bge lbl_8059E650 -/* 8059E640 48 00 00 64 */ b lbl_8059E6A4 -lbl_8059E644: -/* 8059E644 2C 1B 00 03 */ cmpwi r27, 3 -/* 8059E648 40 80 00 5C */ bge lbl_8059E6A4 -/* 8059E64C 48 00 00 34 */ b lbl_8059E680 -lbl_8059E650: -/* 8059E650 38 7C 05 7C */ addi r3, r28, 0x57c -/* 8059E654 48 00 01 7D */ bl func_8059E7D0 -/* 8059E658 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8059E65C 40 82 00 54 */ bne lbl_8059E6B0 -/* 8059E660 7F A3 EB 78 */ mr r3, r29 -/* 8059E664 80 9C 05 70 */ lwz r4, 0x570(r28) -/* 8059E668 4B AA 9B 15 */ bl cutEnd__16dEvent_manager_cFi -/* 8059E66C 48 00 00 44 */ b lbl_8059E6B0 -lbl_8059E670: -/* 8059E670 7F A3 EB 78 */ mr r3, r29 -/* 8059E674 80 9C 05 70 */ lwz r4, 0x570(r28) -/* 8059E678 4B AA 9B 05 */ bl cutEnd__16dEvent_manager_cFi -/* 8059E67C 48 00 00 34 */ b lbl_8059E6B0 -lbl_8059E680: -/* 8059E680 7F E3 FB 78 */ mr r3, r31 -/* 8059E684 C0 3E 00 10 */ lfs f1, 0x10(r30) -/* 8059E688 38 80 00 00 */ li r4, 0 -/* 8059E68C 88 1C 04 E2 */ lbz r0, 0x4e2(r28) -/* 8059E690 7C 05 07 74 */ extsb r5, r0 -/* 8059E694 38 C0 00 00 */ li r6, 0 -/* 8059E698 38 E0 FF FF */ li r7, -1 -/* 8059E69C 4B A8 8A D5 */ bl dStage_changeScene__FifUlScsi -/* 8059E6A0 48 00 00 10 */ b lbl_8059E6B0 -lbl_8059E6A4: -/* 8059E6A4 7F A3 EB 78 */ mr r3, r29 -/* 8059E6A8 80 9C 05 70 */ lwz r4, 0x570(r28) -/* 8059E6AC 4B AA 9A D1 */ bl cutEnd__16dEvent_manager_cFi -lbl_8059E6B0: -/* 8059E6B0 38 60 00 00 */ li r3, 0 -/* 8059E6B4 39 61 00 30 */ addi r11, r1, 0x30 -/* 8059E6B8 4B DC 3B 69 */ bl _restgpr_27 -/* 8059E6BC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8059E6C0 7C 08 03 A6 */ mtlr r0 -/* 8059E6C4 38 21 00 30 */ addi r1, r1, 0x30 -/* 8059E6C8 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/event_proc_call__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/event_proc_call__10daScExit_cFv.s deleted file mode 100644 index d43eeb0ac3a..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/event_proc_call__10daScExit_cFv.s +++ /dev/null @@ -1,49 +0,0 @@ -lbl_8059E2E4: -/* 8059E2E4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E2E8 7C 08 02 A6 */ mflr r0 -/* 8059E2EC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E2F0 3C 80 80 5A */ lis r4, cNullVec__6Z2Calc@ha /* 0x8059E838@ha */ -/* 8059E2F4 38 E4 E8 38 */ addi r7, r4, cNullVec__6Z2Calc@l /* 0x8059E838@l */ -/* 8059E2F8 3C 80 80 5A */ lis r4, data_8059E920@ha /* 0x8059E920@ha */ -/* 8059E2FC 38 C4 E9 20 */ addi r6, r4, data_8059E920@l /* 0x8059E920@l */ -/* 8059E300 88 06 00 00 */ lbz r0, 0(r6) -/* 8059E304 7C 00 07 75 */ extsb. r0, r0 -/* 8059E308 40 82 00 70 */ bne lbl_8059E378 -/* 8059E30C 80 87 00 28 */ lwz r4, 0x28(r7) -/* 8059E310 80 07 00 2C */ lwz r0, 0x2c(r7) -/* 8059E314 90 87 00 58 */ stw r4, 0x58(r7) -/* 8059E318 90 07 00 5C */ stw r0, 0x5c(r7) -/* 8059E31C 80 07 00 30 */ lwz r0, 0x30(r7) -/* 8059E320 90 07 00 60 */ stw r0, 0x60(r7) -/* 8059E324 38 A7 00 58 */ addi r5, r7, 0x58 -/* 8059E328 80 87 00 34 */ lwz r4, 0x34(r7) -/* 8059E32C 80 07 00 38 */ lwz r0, 0x38(r7) -/* 8059E330 90 85 00 0C */ stw r4, 0xc(r5) -/* 8059E334 90 05 00 10 */ stw r0, 0x10(r5) -/* 8059E338 80 07 00 3C */ lwz r0, 0x3c(r7) -/* 8059E33C 90 05 00 14 */ stw r0, 0x14(r5) -/* 8059E340 80 87 00 40 */ lwz r4, 0x40(r7) -/* 8059E344 80 07 00 44 */ lwz r0, 0x44(r7) -/* 8059E348 90 85 00 18 */ stw r4, 0x18(r5) -/* 8059E34C 90 05 00 1C */ stw r0, 0x1c(r5) -/* 8059E350 80 07 00 48 */ lwz r0, 0x48(r7) -/* 8059E354 90 05 00 20 */ stw r0, 0x20(r5) -/* 8059E358 80 87 00 4C */ lwz r4, 0x4c(r7) -/* 8059E35C 80 07 00 50 */ lwz r0, 0x50(r7) -/* 8059E360 90 85 00 24 */ stw r4, 0x24(r5) -/* 8059E364 90 05 00 28 */ stw r0, 0x28(r5) -/* 8059E368 80 07 00 54 */ lwz r0, 0x54(r7) -/* 8059E36C 90 05 00 2C */ stw r0, 0x2c(r5) -/* 8059E370 38 00 00 01 */ li r0, 1 -/* 8059E374 98 06 00 00 */ stb r0, 0(r6) -lbl_8059E378: -/* 8059E378 88 03 05 7B */ lbz r0, 0x57b(r3) -/* 8059E37C 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8059E380 39 87 00 58 */ addi r12, r7, 0x58 -/* 8059E384 7D 8C 02 14 */ add r12, r12, r0 -/* 8059E388 4B DC 3C FD */ bl __ptmf_scall -/* 8059E38C 60 00 00 00 */ nop -/* 8059E390 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E394 7C 08 03 A6 */ mtlr r0 -/* 8059E398 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E39C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/execute__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/execute__10daScExit_cFv.s deleted file mode 100644 index 9c4cbbaaf86..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/execute__10daScExit_cFv.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_8059E2C0: -/* 8059E2C0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E2C4 7C 08 02 A6 */ mflr r0 -/* 8059E2C8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E2CC 48 00 00 19 */ bl event_proc_call__10daScExit_cFv -/* 8059E2D0 38 60 00 01 */ li r3, 1 -/* 8059E2D4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E2D8 7C 08 03 A6 */ mtlr r0 -/* 8059E2DC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E2E0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/func_8059E230.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/func_8059E230.s deleted file mode 100644 index e1fa59ae806..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/func_8059E230.s +++ /dev/null @@ -1,41 +0,0 @@ -lbl_8059E230: -/* 8059E230 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E234 7C 08 02 A6 */ mflr r0 -/* 8059E238 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E23C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059E240 93 C1 00 08 */ stw r30, 8(r1) -/* 8059E244 7C 7E 1B 78 */ mr r30, r3 -/* 8059E248 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 8059E24C 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 8059E250 40 82 00 1C */ bne lbl_8059E26C -/* 8059E254 28 1E 00 00 */ cmplwi r30, 0 -/* 8059E258 41 82 00 08 */ beq lbl_8059E260 -/* 8059E25C 4B A7 A9 09 */ bl __ct__10fopAc_ac_cFv -lbl_8059E260: -/* 8059E260 80 1E 04 A0 */ lwz r0, 0x4a0(r30) -/* 8059E264 60 00 00 08 */ ori r0, r0, 8 -/* 8059E268 90 1E 04 A0 */ stw r0, 0x4a0(r30) -lbl_8059E26C: -/* 8059E26C 38 7E 05 68 */ addi r3, r30, 0x568 -/* 8059E270 3C 80 80 5A */ lis r4, l_arcName@ha /* 0x8059E858@ha */ -/* 8059E274 38 84 E8 58 */ addi r4, r4, l_arcName@l /* 0x8059E858@l */ -/* 8059E278 80 84 00 00 */ lwz r4, 0(r4) -/* 8059E27C 4B A8 EC 41 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc -/* 8059E280 7C 7F 1B 78 */ mr r31, r3 -/* 8059E284 2C 1F 00 04 */ cmpwi r31, 4 -/* 8059E288 40 82 00 1C */ bne lbl_8059E2A4 -/* 8059E28C 7F C3 F3 78 */ mr r3, r30 -/* 8059E290 4B FF FF 21 */ bl Create__10daScExit_cFv -/* 8059E294 2C 03 00 00 */ cmpwi r3, 0 -/* 8059E298 40 82 00 0C */ bne lbl_8059E2A4 -/* 8059E29C 38 60 00 05 */ li r3, 5 -/* 8059E2A0 48 00 00 08 */ b lbl_8059E2A8 -lbl_8059E2A4: -/* 8059E2A4 7F E3 FB 78 */ mr r3, r31 -lbl_8059E2A8: -/* 8059E2A8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059E2AC 83 C1 00 08 */ lwz r30, 8(r1) -/* 8059E2B0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E2B4 7C 08 03 A6 */ mtlr r0 -/* 8059E2B8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E2BC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/initBaseMtx__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/initBaseMtx__10daScExit_cFv.s deleted file mode 100644 index 57f5bd6795d..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/initBaseMtx__10daScExit_cFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8059E158: -/* 8059E158 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E15C 7C 08 02 A6 */ mflr r0 -/* 8059E160 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E164 48 00 00 15 */ bl setBaseMtx__10daScExit_cFv -/* 8059E168 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E16C 7C 08 03 A6 */ mtlr r0 -/* 8059E170 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E174 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/setBaseMtx__10daScExit_cFv.s b/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/setBaseMtx__10daScExit_cFv.s deleted file mode 100644 index 7bb00eacea4..00000000000 --- a/asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/setBaseMtx__10daScExit_cFv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_8059E178: -/* 8059E178 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8059E17C 7C 08 02 A6 */ mflr r0 -/* 8059E180 90 01 00 14 */ stw r0, 0x14(r1) -/* 8059E184 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8059E188 7C 7F 1B 78 */ mr r31, r3 -/* 8059E18C 38 7F 04 D0 */ addi r3, r31, 0x4d0 -/* 8059E190 4B A6 EB D5 */ bl transS__14mDoMtx_stack_cFRC4cXyz -/* 8059E194 38 7F 04 E4 */ addi r3, r31, 0x4e4 -/* 8059E198 4B A6 ED AD */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz -/* 8059E19C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8059E1A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8059E1A4 7C 08 03 A6 */ mtlr r0 -/* 8059E1A8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8059E1AC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/CreateHeap__12daTagHjump_cFv.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/CreateHeap__12daTagHjump_cFv.s deleted file mode 100644 index 6f946cde61b..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/CreateHeap__12daTagHjump_cFv.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_805A3AB8: -/* 805A3AB8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805A3ABC 7C 08 02 A6 */ mflr r0 -/* 805A3AC0 90 01 00 14 */ stw r0, 0x14(r1) -/* 805A3AC4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 805A3AC8 7C 7F 1B 78 */ mr r31, r3 -/* 805A3ACC 3C 60 80 5A */ lis r3, l_arcName@ha /* 0x805A4238@ha */ -/* 805A3AD0 38 63 42 38 */ addi r3, r3, l_arcName@l /* 0x805A4238@l */ -/* 805A3AD4 38 80 00 04 */ li r4, 4 -/* 805A3AD8 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 805A3ADC 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 805A3AE0 3C A5 00 02 */ addis r5, r5, 2 -/* 805A3AE4 38 C0 00 80 */ li r6, 0x80 -/* 805A3AE8 38 A5 C2 F8 */ addi r5, r5, -15624 -/* 805A3AEC 4B A9 88 01 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 805A3AF0 3C 80 00 08 */ lis r4, 8 -/* 805A3AF4 3C A0 11 00 */ lis r5, 0x1100 /* 0x11000084@ha */ -/* 805A3AF8 38 A5 00 84 */ addi r5, r5, 0x0084 /* 0x11000084@l */ -/* 805A3AFC 4B A7 11 59 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl -/* 805A3B00 90 7F 05 A8 */ stw r3, 0x5a8(r31) -/* 805A3B04 80 7F 05 A8 */ lwz r3, 0x5a8(r31) -/* 805A3B08 30 03 FF FF */ addic r0, r3, -1 -/* 805A3B0C 7C 60 19 10 */ subfe r3, r0, r3 -/* 805A3B10 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 805A3B14 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805A3B18 7C 08 03 A6 */ mtlr r0 -/* 805A3B1C 38 21 00 10 */ addi r1, r1, 0x10 -/* 805A3B20 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/Draw__12daTagHjump_cFv.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/Draw__12daTagHjump_cFv.s deleted file mode 100644 index f69627eda14..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/Draw__12daTagHjump_cFv.s +++ /dev/null @@ -1,46 +0,0 @@ -lbl_805A4154: -/* 805A4154 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805A4158 7C 08 02 A6 */ mflr r0 -/* 805A415C 90 01 00 14 */ stw r0, 0x14(r1) -/* 805A4160 93 E1 00 0C */ stw r31, 0xc(r1) -/* 805A4164 93 C1 00 08 */ stw r30, 8(r1) -/* 805A4168 7C 7E 1B 78 */ mr r30, r3 -/* 805A416C 88 03 05 AC */ lbz r0, 0x5ac(r3) -/* 805A4170 28 00 00 00 */ cmplwi r0, 0 -/* 805A4174 41 82 00 74 */ beq lbl_805A41E8 -/* 805A4178 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */ -/* 805A417C 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */ -/* 805A4180 38 80 00 10 */ li r4, 0x10 -/* 805A4184 38 BE 04 D0 */ addi r5, r30, 0x4d0 -/* 805A4188 38 DE 01 0C */ addi r6, r30, 0x10c -/* 805A418C 4B BF F6 39 */ bl settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c -/* 805A4190 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */ -/* 805A4194 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */ -/* 805A4198 80 9E 05 A8 */ lwz r4, 0x5a8(r30) -/* 805A419C 80 84 00 04 */ lwz r4, 4(r4) -/* 805A41A0 38 BE 01 0C */ addi r5, r30, 0x10c -/* 805A41A4 4B C0 0B FD */ bl setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c -/* 805A41A8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 805A41AC 38 83 61 C0 */ addi r4, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 805A41B0 80 04 5F 70 */ lwz r0, 0x5f70(r4) -/* 805A41B4 3C 60 80 43 */ lis r3, j3dSys@ha /* 0x80434AC8@ha */ -/* 805A41B8 3B E3 4A C8 */ addi r31, r3, j3dSys@l /* 0x80434AC8@l */ -/* 805A41BC 90 1F 00 48 */ stw r0, 0x48(r31) -/* 805A41C0 80 04 5F 74 */ lwz r0, 0x5f74(r4) -/* 805A41C4 90 1F 00 4C */ stw r0, 0x4c(r31) -/* 805A41C8 80 7E 05 A8 */ lwz r3, 0x5a8(r30) -/* 805A41CC 4B A6 9A F9 */ bl mDoExt_modelUpdateDL__FP8J3DModel -/* 805A41D0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 805A41D4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 805A41D8 80 03 5F 80 */ lwz r0, 0x5f80(r3) -/* 805A41DC 90 1F 00 48 */ stw r0, 0x48(r31) -/* 805A41E0 80 03 5F 84 */ lwz r0, 0x5f84(r3) -/* 805A41E4 90 1F 00 4C */ stw r0, 0x4c(r31) -lbl_805A41E8: -/* 805A41E8 38 60 00 01 */ li r3, 1 -/* 805A41EC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 805A41F0 83 C1 00 08 */ lwz r30, 8(r1) -/* 805A41F4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805A41F8 7C 08 03 A6 */ mtlr r0 -/* 805A41FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 805A4200 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/__dt__12daTagHjump_cFv.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/__dt__12daTagHjump_cFv.s deleted file mode 100644 index 897d5a6fc5d..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/__dt__12daTagHjump_cFv.s +++ /dev/null @@ -1,41 +0,0 @@ -lbl_805A3DA0: -/* 805A3DA0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805A3DA4 7C 08 02 A6 */ mflr r0 -/* 805A3DA8 90 01 00 14 */ stw r0, 0x14(r1) -/* 805A3DAC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 805A3DB0 93 C1 00 08 */ stw r30, 8(r1) -/* 805A3DB4 7C 7E 1B 79 */ or. r30, r3, r3 -/* 805A3DB8 7C 9F 23 78 */ mr r31, r4 -/* 805A3DBC 41 82 00 5C */ beq lbl_805A3E18 -/* 805A3DC0 3C 60 80 5A */ lis r3, __vt__12daTagHjump_c@ha /* 0x805A42BC@ha */ -/* 805A3DC4 38 03 42 BC */ addi r0, r3, __vt__12daTagHjump_c@l /* 0x805A42BC@l */ -/* 805A3DC8 90 1E 05 9C */ stw r0, 0x59c(r30) -/* 805A3DCC 88 1E 05 AC */ lbz r0, 0x5ac(r30) -/* 805A3DD0 28 00 00 00 */ cmplwi r0, 0 -/* 805A3DD4 41 82 00 14 */ beq lbl_805A3DE8 -/* 805A3DD8 38 7E 05 A0 */ addi r3, r30, 0x5a0 -/* 805A3DDC 3C 80 80 5A */ lis r4, l_arcName@ha /* 0x805A4238@ha */ -/* 805A3DE0 38 84 42 38 */ addi r4, r4, l_arcName@l /* 0x805A4238@l */ -/* 805A3DE4 4B A8 92 25 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc -lbl_805A3DE8: -/* 805A3DE8 28 1E 00 00 */ cmplwi r30, 0 -/* 805A3DEC 41 82 00 1C */ beq lbl_805A3E08 -/* 805A3DF0 3C 60 80 3B */ lis r3, __vt__16dBgS_MoveBgActor@ha /* 0x803AB9A0@ha */ -/* 805A3DF4 38 03 B9 A0 */ addi r0, r3, __vt__16dBgS_MoveBgActor@l /* 0x803AB9A0@l */ -/* 805A3DF8 90 1E 05 9C */ stw r0, 0x59c(r30) -/* 805A3DFC 7F C3 F3 78 */ mr r3, r30 -/* 805A3E00 38 80 00 00 */ li r4, 0 -/* 805A3E04 4B A7 4E 89 */ bl __dt__10fopAc_ac_cFv -lbl_805A3E08: -/* 805A3E08 7F E0 07 35 */ extsh. r0, r31 -/* 805A3E0C 40 81 00 0C */ ble lbl_805A3E18 -/* 805A3E10 7F C3 F3 78 */ mr r3, r30 -/* 805A3E14 4B D2 AF 29 */ bl __dl__FPv -lbl_805A3E18: -/* 805A3E18 7F C3 F3 78 */ mr r3, r30 -/* 805A3E1C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 805A3E20 83 C1 00 08 */ lwz r30, 8(r1) -/* 805A3E24 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805A3E28 7C 08 03 A6 */ mtlr r0 -/* 805A3E2C 38 21 00 10 */ addi r1, r1, 0x10 -/* 805A3E30 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/create__12daTagHjump_cFv.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/create__12daTagHjump_cFv.s deleted file mode 100644 index 5168bbb8c4b..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/create__12daTagHjump_cFv.s +++ /dev/null @@ -1,159 +0,0 @@ -lbl_805A3B24: -/* 805A3B24 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 805A3B28 7C 08 02 A6 */ mflr r0 -/* 805A3B2C 90 01 00 24 */ stw r0, 0x24(r1) -/* 805A3B30 39 61 00 20 */ addi r11, r1, 0x20 -/* 805A3B34 4B DB E6 A9 */ bl _savegpr_29 -/* 805A3B38 7C 7D 1B 78 */ mr r29, r3 -/* 805A3B3C 3C 80 80 5A */ lis r4, l_arcName@ha /* 0x805A4238@ha */ -/* 805A3B40 3B E4 42 38 */ addi r31, r4, l_arcName@l /* 0x805A4238@l */ -/* 805A3B44 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 805A3B48 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 805A3B4C 40 82 00 28 */ bne lbl_805A3B74 -/* 805A3B50 28 1D 00 00 */ cmplwi r29, 0 -/* 805A3B54 41 82 00 14 */ beq lbl_805A3B68 -/* 805A3B58 4B AD 4A CD */ bl __ct__16dBgS_MoveBgActorFv -/* 805A3B5C 3C 60 80 5A */ lis r3, __vt__12daTagHjump_c@ha /* 0x805A42BC@ha */ -/* 805A3B60 38 03 42 BC */ addi r0, r3, __vt__12daTagHjump_c@l /* 0x805A42BC@l */ -/* 805A3B64 90 1D 05 9C */ stw r0, 0x59c(r29) -lbl_805A3B68: -/* 805A3B68 80 1D 04 A0 */ lwz r0, 0x4a0(r29) -/* 805A3B6C 60 00 00 08 */ ori r0, r0, 8 -/* 805A3B70 90 1D 04 A0 */ stw r0, 0x4a0(r29) -lbl_805A3B74: -/* 805A3B74 80 1D 00 B0 */ lwz r0, 0xb0(r29) -/* 805A3B78 54 00 E7 3E */ rlwinm r0, r0, 0x1c, 0x1c, 0x1f -/* 805A3B7C 98 1D 05 AC */ stb r0, 0x5ac(r29) -/* 805A3B80 80 1D 00 B0 */ lwz r0, 0xb0(r29) -/* 805A3B84 54 00 07 3E */ clrlwi r0, r0, 0x1c -/* 805A3B88 98 1D 05 AD */ stb r0, 0x5ad(r29) -/* 805A3B8C 80 1D 00 B0 */ lwz r0, 0xb0(r29) -/* 805A3B90 54 00 C5 3E */ rlwinm r0, r0, 0x18, 0x14, 0x1f -/* 805A3B94 B0 1D 05 B0 */ sth r0, 0x5b0(r29) -/* 805A3B98 80 1D 00 B0 */ lwz r0, 0xb0(r29) -/* 805A3B9C 54 00 65 3E */ srwi r0, r0, 0x14 -/* 805A3BA0 B0 1D 05 B2 */ sth r0, 0x5b2(r29) -/* 805A3BA4 88 1D 05 AD */ lbz r0, 0x5ad(r29) -/* 805A3BA8 28 00 00 0F */ cmplwi r0, 0xf -/* 805A3BAC 40 82 00 0C */ bne lbl_805A3BB8 -/* 805A3BB0 38 00 00 00 */ li r0, 0 -/* 805A3BB4 98 1D 05 AD */ stb r0, 0x5ad(r29) -lbl_805A3BB8: -/* 805A3BB8 88 1D 05 AC */ lbz r0, 0x5ac(r29) -/* 805A3BBC 28 00 00 00 */ cmplwi r0, 0 -/* 805A3BC0 41 82 01 30 */ beq lbl_805A3CF0 -/* 805A3BC4 38 7D 05 A0 */ addi r3, r29, 0x5a0 -/* 805A3BC8 38 9F 00 00 */ addi r4, r31, 0 -/* 805A3BCC 4B A8 92 F1 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc -/* 805A3BD0 7C 7E 1B 78 */ mr r30, r3 -/* 805A3BD4 2C 1E 00 04 */ cmpwi r30, 4 -/* 805A3BD8 40 82 01 7C */ bne lbl_805A3D54 -/* 805A3BDC 7F A3 EB 78 */ mr r3, r29 -/* 805A3BE0 38 9F 00 00 */ addi r4, r31, 0 -/* 805A3BE4 38 A0 00 07 */ li r5, 7 -/* 805A3BE8 38 C0 00 00 */ li r6, 0 -/* 805A3BEC 38 E0 0C A0 */ li r7, 0xca0 -/* 805A3BF0 39 00 00 00 */ li r8, 0 -/* 805A3BF4 4B AD 4B C9 */ bl MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f -/* 805A3BF8 7C 7E 1B 78 */ mr r30, r3 -/* 805A3BFC 2C 1E 00 04 */ cmpwi r30, 4 -/* 805A3C00 40 82 01 54 */ bne lbl_805A3D54 -/* 805A3C04 80 7D 05 A8 */ lwz r3, 0x5a8(r29) -/* 805A3C08 38 03 00 24 */ addi r0, r3, 0x24 -/* 805A3C0C 90 1D 05 04 */ stw r0, 0x504(r29) -/* 805A3C10 88 1D 04 E2 */ lbz r0, 0x4e2(r29) -/* 805A3C14 98 1D 04 8C */ stb r0, 0x48c(r29) -/* 805A3C18 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 805A3C1C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 805A3C20 C0 3D 04 D0 */ lfs f1, 0x4d0(r29) -/* 805A3C24 C0 5D 04 D4 */ lfs f2, 0x4d4(r29) -/* 805A3C28 C0 7D 04 D8 */ lfs f3, 0x4d8(r29) -/* 805A3C2C 4B DA 2C BD */ bl PSMTXTrans -/* 805A3C30 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 805A3C34 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 805A3C38 A8 9D 04 E6 */ lha r4, 0x4e6(r29) -/* 805A3C3C 4B A6 87 F9 */ bl mDoMtx_YrotM__FPA4_fs -/* 805A3C40 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 805A3C44 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 805A3C48 80 9D 05 A8 */ lwz r4, 0x5a8(r29) -/* 805A3C4C 38 84 00 24 */ addi r4, r4, 0x24 -/* 805A3C50 4B DA 28 61 */ bl PSMTXCopy -/* 805A3C54 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 805A3C58 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 805A3C5C C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 805A3C60 C0 3F 00 08 */ lfs f1, 8(r31) -/* 805A3C64 EC 00 08 28 */ fsubs f0, f0, f1 -/* 805A3C68 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 805A3C6C C0 1D 04 D4 */ lfs f0, 0x4d4(r29) -/* 805A3C70 EC 00 08 28 */ fsubs f0, f0, f1 -/* 805A3C74 D0 1D 04 D4 */ stfs f0, 0x4d4(r29) -/* 805A3C78 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 805A3C7C 88 03 00 88 */ lbz r0, 0x88(r3) -/* 805A3C80 60 00 00 80 */ ori r0, r0, 0x80 -/* 805A3C84 98 03 00 88 */ stb r0, 0x88(r3) -/* 805A3C88 C0 1F 00 0C */ lfs f0, 0xc(r31) -/* 805A3C8C D0 1D 04 EC */ stfs f0, 0x4ec(r29) -/* 805A3C90 C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 805A3C94 D0 1D 04 F0 */ stfs f0, 0x4f0(r29) -/* 805A3C98 C0 1F 00 14 */ lfs f0, 0x14(r31) -/* 805A3C9C D0 1D 04 F4 */ stfs f0, 0x4f4(r29) -/* 805A3CA0 C0 1F 00 18 */ lfs f0, 0x18(r31) -/* 805A3CA4 D0 1D 05 B8 */ stfs f0, 0x5b8(r29) -/* 805A3CA8 7F A3 EB 78 */ mr r3, r29 -/* 805A3CAC C0 1D 04 EC */ lfs f0, 0x4ec(r29) -/* 805A3CB0 FC 20 00 50 */ fneg f1, f0 -/* 805A3CB4 C0 5F 00 1C */ lfs f2, 0x1c(r31) -/* 805A3CB8 C0 7F 00 20 */ lfs f3, 0x20(r31) -/* 805A3CBC 4B A7 68 6D */ bl fopAcM_SetMin__FP10fopAc_ac_cfff -/* 805A3CC0 7F A3 EB 78 */ mr r3, r29 -/* 805A3CC4 C0 3D 04 EC */ lfs f1, 0x4ec(r29) -/* 805A3CC8 C0 5F 00 18 */ lfs f2, 0x18(r31) -/* 805A3CCC C0 7F 00 24 */ lfs f3, 0x24(r31) -/* 805A3CD0 4B A7 68 69 */ bl fopAcM_SetMax__FP10fopAc_ac_cfff -/* 805A3CD4 38 00 20 00 */ li r0, 0x2000 -/* 805A3CD8 B0 1D 05 AE */ sth r0, 0x5ae(r29) -/* 805A3CDC C0 1F 00 28 */ lfs f0, 0x28(r31) -/* 805A3CE0 D0 1D 05 20 */ stfs f0, 0x520(r29) -/* 805A3CE4 38 00 00 04 */ li r0, 4 -/* 805A3CE8 98 1D 05 AD */ stb r0, 0x5ad(r29) -/* 805A3CEC 48 00 00 68 */ b lbl_805A3D54 -lbl_805A3CF0: -/* 805A3CF0 3B C0 00 04 */ li r30, 4 -/* 805A3CF4 C0 1D 04 EC */ lfs f0, 0x4ec(r29) -/* 805A3CF8 C0 3F 00 08 */ lfs f1, 8(r31) -/* 805A3CFC EC 00 00 72 */ fmuls f0, f0, f1 -/* 805A3D00 D0 1D 04 EC */ stfs f0, 0x4ec(r29) -/* 805A3D04 C0 1D 04 F4 */ lfs f0, 0x4f4(r29) -/* 805A3D08 EC 00 00 72 */ fmuls f0, f0, f1 -/* 805A3D0C D0 1D 04 F4 */ stfs f0, 0x4f4(r29) -/* 805A3D10 C0 1D 04 F0 */ lfs f0, 0x4f0(r29) -/* 805A3D14 EC 00 00 72 */ fmuls f0, f0, f1 -/* 805A3D18 D0 1D 04 F0 */ stfs f0, 0x4f0(r29) -/* 805A3D1C 88 1D 05 AD */ lbz r0, 0x5ad(r29) -/* 805A3D20 28 00 00 00 */ cmplwi r0, 0 -/* 805A3D24 41 82 00 0C */ beq lbl_805A3D30 -/* 805A3D28 28 00 00 01 */ cmplwi r0, 1 -/* 805A3D2C 40 82 00 18 */ bne lbl_805A3D44 -lbl_805A3D30: -/* 805A3D30 C0 1F 00 24 */ lfs f0, 0x24(r31) -/* 805A3D34 D0 1D 05 B8 */ stfs f0, 0x5b8(r29) -/* 805A3D38 38 00 10 00 */ li r0, 0x1000 -/* 805A3D3C B0 1D 05 AE */ sth r0, 0x5ae(r29) -/* 805A3D40 48 00 00 14 */ b lbl_805A3D54 -lbl_805A3D44: -/* 805A3D44 C0 1F 00 18 */ lfs f0, 0x18(r31) -/* 805A3D48 D0 1D 05 B8 */ stfs f0, 0x5b8(r29) -/* 805A3D4C 38 00 20 00 */ li r0, 0x2000 -/* 805A3D50 B0 1D 05 AE */ sth r0, 0x5ae(r29) -lbl_805A3D54: -/* 805A3D54 C0 3D 04 D4 */ lfs f1, 0x4d4(r29) -/* 805A3D58 C0 1D 04 F0 */ lfs f0, 0x4f0(r29) -/* 805A3D5C EC 01 00 2A */ fadds f0, f1, f0 -/* 805A3D60 D0 1D 05 B4 */ stfs f0, 0x5b4(r29) -/* 805A3D64 7F C3 F3 78 */ mr r3, r30 -/* 805A3D68 39 61 00 20 */ addi r11, r1, 0x20 -/* 805A3D6C 4B DB E4 BD */ bl _restgpr_29 -/* 805A3D70 80 01 00 24 */ lwz r0, 0x24(r1) -/* 805A3D74 7C 08 03 A6 */ mtlr r0 -/* 805A3D78 38 21 00 20 */ addi r1, r1, 0x20 -/* 805A3D7C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Create__FP10fopAc_ac_c.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Create__FP10fopAc_ac_c.s deleted file mode 100644 index 13bcf8a29a8..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Create__FP10fopAc_ac_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_805A3D80: -/* 805A3D80 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805A3D84 7C 08 02 A6 */ mflr r0 -/* 805A3D88 90 01 00 14 */ stw r0, 0x14(r1) -/* 805A3D8C 4B FF FD 99 */ bl create__12daTagHjump_cFv -/* 805A3D90 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805A3D94 7C 08 03 A6 */ mtlr r0 -/* 805A3D98 38 21 00 10 */ addi r1, r1, 0x10 -/* 805A3D9C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Delete__FP12daTagHjump_c.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Delete__FP12daTagHjump_c.s deleted file mode 100644 index 7284afe45f4..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Delete__FP12daTagHjump_c.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_805A3E34: -/* 805A3E34 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805A3E38 7C 08 02 A6 */ mflr r0 -/* 805A3E3C 90 01 00 14 */ stw r0, 0x14(r1) -/* 805A3E40 93 E1 00 0C */ stw r31, 0xc(r1) -/* 805A3E44 7C 7F 1B 78 */ mr r31, r3 -/* 805A3E48 4B AD 4A 95 */ bl MoveBGDelete__16dBgS_MoveBgActorFv -/* 805A3E4C 7F E3 FB 78 */ mr r3, r31 -/* 805A3E50 38 80 FF FF */ li r4, -1 -/* 805A3E54 4B FF FF 4D */ bl __dt__12daTagHjump_cFv -/* 805A3E58 38 60 00 01 */ li r3, 1 -/* 805A3E5C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 805A3E60 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805A3E64 7C 08 03 A6 */ mtlr r0 -/* 805A3E68 38 21 00 10 */ addi r1, r1, 0x10 -/* 805A3E6C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Draw__FP12daTagHjump_c.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Draw__FP12daTagHjump_c.s deleted file mode 100644 index 81eb6074db0..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Draw__FP12daTagHjump_c.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_805A4204: -/* 805A4204 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805A4208 7C 08 02 A6 */ mflr r0 -/* 805A420C 90 01 00 14 */ stw r0, 0x14(r1) -/* 805A4210 81 83 05 9C */ lwz r12, 0x59c(r3) -/* 805A4214 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 805A4218 7D 89 03 A6 */ mtctr r12 -/* 805A421C 4E 80 04 21 */ bctrl -/* 805A4220 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805A4224 7C 08 03 A6 */ mtlr r0 -/* 805A4228 38 21 00 10 */ addi r1, r1, 0x10 -/* 805A422C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Execute__FP12daTagHjump_c.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Execute__FP12daTagHjump_c.s deleted file mode 100644 index 4ff3d7d2540..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Execute__FP12daTagHjump_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_805A4134: -/* 805A4134 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 805A4138 7C 08 02 A6 */ mflr r0 -/* 805A413C 90 01 00 14 */ stw r0, 0x14(r1) -/* 805A4140 4B FF FD 31 */ bl execute__12daTagHjump_cFv -/* 805A4144 80 01 00 14 */ lwz r0, 0x14(r1) -/* 805A4148 7C 08 03 A6 */ mtlr r0 -/* 805A414C 38 21 00 10 */ addi r1, r1, 0x10 -/* 805A4150 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/execute__12daTagHjump_cFv.s b/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/execute__12daTagHjump_cFv.s deleted file mode 100644 index ec77b2abb83..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/execute__12daTagHjump_cFv.s +++ /dev/null @@ -1,192 +0,0 @@ -lbl_805A3E70: -/* 805A3E70 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 805A3E74 7C 08 02 A6 */ mflr r0 -/* 805A3E78 90 01 00 34 */ stw r0, 0x34(r1) -/* 805A3E7C 39 61 00 30 */ addi r11, r1, 0x30 -/* 805A3E80 4B DB E3 55 */ bl _savegpr_27 -/* 805A3E84 7C 7D 1B 78 */ mr r29, r3 -/* 805A3E88 3C 60 80 5A */ lis r3, l_arcName@ha /* 0x805A4238@ha */ -/* 805A3E8C 3B E3 42 38 */ addi r31, r3, l_arcName@l /* 0x805A4238@l */ -/* 805A3E90 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 805A3E94 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 805A3E98 83 C3 5D B8 */ lwz r30, 0x5db8(r3) -/* 805A3E9C 28 1E 00 00 */ cmplwi r30, 0 -/* 805A3EA0 41 82 02 78 */ beq lbl_805A4118 -/* 805A3EA4 88 1D 05 AC */ lbz r0, 0x5ac(r29) -/* 805A3EA8 28 00 00 00 */ cmplwi r0, 0 -/* 805A3EAC 40 82 00 64 */ bne lbl_805A3F10 -/* 805A3EB0 A0 1D 05 B0 */ lhz r0, 0x5b0(r29) -/* 805A3EB4 28 00 0F FF */ cmplwi r0, 0xfff -/* 805A3EB8 41 82 00 24 */ beq lbl_805A3EDC -/* 805A3EBC 38 63 07 F0 */ addi r3, r3, 0x7f0 -/* 805A3EC0 54 00 0B FC */ rlwinm r0, r0, 1, 0xf, 0x1e -/* 805A3EC4 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */ -/* 805A3EC8 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */ -/* 805A3ECC 7C 84 02 2E */ lhzx r4, r4, r0 -/* 805A3ED0 4B A9 0A ED */ bl isEventBit__11dSv_event_cCFUs -/* 805A3ED4 2C 03 00 00 */ cmpwi r3, 0 -/* 805A3ED8 41 82 02 40 */ beq lbl_805A4118 -lbl_805A3EDC: -/* 805A3EDC A0 1D 05 B2 */ lhz r0, 0x5b2(r29) -/* 805A3EE0 28 00 0F FF */ cmplwi r0, 0xfff -/* 805A3EE4 41 82 00 2C */ beq lbl_805A3F10 -/* 805A3EE8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 805A3EEC 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 805A3EF0 38 63 07 F0 */ addi r3, r3, 0x7f0 -/* 805A3EF4 54 00 0B FC */ rlwinm r0, r0, 1, 0xf, 0x1e -/* 805A3EF8 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */ -/* 805A3EFC 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */ -/* 805A3F00 7C 84 02 2E */ lhzx r4, r4, r0 -/* 805A3F04 4B A9 0A B9 */ bl isEventBit__11dSv_event_cCFUs -/* 805A3F08 2C 03 00 00 */ cmpwi r3, 0 -/* 805A3F0C 40 82 02 0C */ bne lbl_805A4118 -lbl_805A3F10: -/* 805A3F10 A8 7D 04 E6 */ lha r3, 0x4e6(r29) -/* 805A3F14 A8 1E 04 E6 */ lha r0, 0x4e6(r30) -/* 805A3F18 7C 03 00 50 */ subf r0, r3, r0 -/* 805A3F1C 7C 1B 07 34 */ extsh r27, r0 -/* 805A3F20 7F 63 DB 78 */ mr r3, r27 -/* 805A3F24 4B DC 11 AD */ bl abs -/* 805A3F28 7C 7C 1B 78 */ mr r28, r3 -/* 805A3F2C 88 1D 05 AD */ lbz r0, 0x5ad(r29) -/* 805A3F30 28 00 00 00 */ cmplwi r0, 0 -/* 805A3F34 41 82 00 0C */ beq lbl_805A3F40 -/* 805A3F38 28 00 00 02 */ cmplwi r0, 2 -/* 805A3F3C 40 82 00 14 */ bne lbl_805A3F50 -lbl_805A3F40: -/* 805A3F40 C0 3F 00 2C */ lfs f1, 0x2c(r31) -/* 805A3F44 C0 1E 17 90 */ lfs f0, 0x1790(r30) -/* 805A3F48 EC 21 00 32 */ fmuls f1, f1, f0 -/* 805A3F4C 48 00 00 3C */ b lbl_805A3F88 -lbl_805A3F50: -/* 805A3F50 28 00 00 01 */ cmplwi r0, 1 -/* 805A3F54 41 82 00 0C */ beq lbl_805A3F60 -/* 805A3F58 28 00 00 03 */ cmplwi r0, 3 -/* 805A3F5C 40 82 00 14 */ bne lbl_805A3F70 -lbl_805A3F60: -/* 805A3F60 C0 3F 00 2C */ lfs f1, 0x2c(r31) -/* 805A3F64 C0 1E 17 8C */ lfs f0, 0x178c(r30) -/* 805A3F68 EC 21 00 32 */ fmuls f1, f1, f0 -/* 805A3F6C 48 00 00 1C */ b lbl_805A3F88 -lbl_805A3F70: -/* 805A3F70 C0 5E 17 8C */ lfs f2, 0x178c(r30) -/* 805A3F74 C0 3F 00 30 */ lfs f1, 0x30(r31) -/* 805A3F78 C0 1E 17 90 */ lfs f0, 0x1790(r30) -/* 805A3F7C EC 00 10 28 */ fsubs f0, f0, f2 -/* 805A3F80 EC 01 00 32 */ fmuls f0, f1, f0 -/* 805A3F84 EC 22 00 2A */ fadds f1, f2, f0 -lbl_805A3F88: -/* 805A3F88 C0 1E 05 2C */ lfs f0, 0x52c(r30) -/* 805A3F8C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 805A3F90 40 80 01 88 */ bge lbl_805A4118 -/* 805A3F94 A8 9D 05 AE */ lha r4, 0x5ae(r29) -/* 805A3F98 7C 1C 20 00 */ cmpw r28, r4 -/* 805A3F9C 41 80 00 18 */ blt lbl_805A3FB4 -/* 805A3FA0 3C 60 00 01 */ lis r3, 0x0001 /* 0x00008000@ha */ -/* 805A3FA4 38 03 80 00 */ addi r0, r3, 0x8000 /* 0x00008000@l */ -/* 805A3FA8 7C 04 00 50 */ subf r0, r4, r0 -/* 805A3FAC 7C 1C 00 00 */ cmpw r28, r0 -/* 805A3FB0 40 81 01 68 */ ble lbl_805A4118 -lbl_805A3FB4: -/* 805A3FB4 7F A3 EB 78 */ mr r3, r29 -/* 805A3FB8 38 9E 04 D0 */ addi r4, r30, 0x4d0 -/* 805A3FBC 38 A1 00 08 */ addi r5, r1, 8 -/* 805A3FC0 4B A7 99 41 */ bl fpoAcM_relativePos__FPC10fopAc_ac_cPC4cXyzP4cXyz -/* 805A3FC4 C0 41 00 10 */ lfs f2, 0x10(r1) -/* 805A3FC8 FC 00 12 10 */ fabs f0, f2 -/* 805A3FCC FC 60 00 18 */ frsp f3, f0 -/* 805A3FD0 C0 81 00 0C */ lfs f4, 0xc(r1) -/* 805A3FD4 C0 3F 00 1C */ lfs f1, 0x1c(r31) -/* 805A3FD8 FC 04 08 40 */ fcmpo cr0, f4, f1 -/* 805A3FDC 4C 41 13 82 */ cror 2, 1, 2 -/* 805A3FE0 40 82 01 38 */ bne lbl_805A4118 -/* 805A3FE4 C0 1D 04 F0 */ lfs f0, 0x4f0(r29) -/* 805A3FE8 FC 04 00 40 */ fcmpo cr0, f4, f0 -/* 805A3FEC 4C 40 13 82 */ cror 2, 0, 2 -/* 805A3FF0 40 82 01 28 */ bne lbl_805A4118 -/* 805A3FF4 C0 01 00 08 */ lfs f0, 8(r1) -/* 805A3FF8 FC 00 02 10 */ fabs f0, f0 -/* 805A3FFC FC 80 00 18 */ frsp f4, f0 -/* 805A4000 C0 1D 04 EC */ lfs f0, 0x4ec(r29) -/* 805A4004 FC 04 00 40 */ fcmpo cr0, f4, f0 -/* 805A4008 4C 40 13 82 */ cror 2, 0, 2 -/* 805A400C 40 82 01 0C */ bne lbl_805A4118 -/* 805A4010 C0 BD 04 F4 */ lfs f5, 0x4f4(r29) -/* 805A4014 C0 9D 05 B8 */ lfs f4, 0x5b8(r29) -/* 805A4018 EC 05 20 28 */ fsubs f0, f5, f4 -/* 805A401C FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 805A4020 4C 41 13 82 */ cror 2, 1, 2 -/* 805A4024 40 82 00 F4 */ bne lbl_805A4118 -/* 805A4028 EC 05 20 2A */ fadds f0, f5, f4 -/* 805A402C FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 805A4030 4C 40 13 82 */ cror 2, 0, 2 -/* 805A4034 40 82 00 E4 */ bne lbl_805A4118 -/* 805A4038 FC 02 08 40 */ fcmpo cr0, f2, f1 -/* 805A403C 40 81 00 1C */ ble lbl_805A4058 -/* 805A4040 A8 9D 05 AE */ lha r4, 0x5ae(r29) -/* 805A4044 3C 60 00 01 */ lis r3, 0x0001 /* 0x00008000@ha */ -/* 805A4048 38 03 80 00 */ addi r0, r3, 0x8000 /* 0x00008000@l */ -/* 805A404C 7C 04 00 50 */ subf r0, r4, r0 -/* 805A4050 7C 1C 00 00 */ cmpw r28, r0 -/* 805A4054 41 81 00 1C */ bgt lbl_805A4070 -lbl_805A4058: -/* 805A4058 C0 1F 00 1C */ lfs f0, 0x1c(r31) -/* 805A405C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 805A4060 40 80 00 B8 */ bge lbl_805A4118 -/* 805A4064 A8 1D 05 AE */ lha r0, 0x5ae(r29) -/* 805A4068 7C 1C 00 00 */ cmpw r28, r0 -/* 805A406C 40 80 00 AC */ bge lbl_805A4118 -lbl_805A4070: -/* 805A4070 3C 60 80 44 */ lis r3, sincosTable___5JMath@ha /* 0x80439A20@ha */ -/* 805A4074 38 03 9A 20 */ addi r0, r3, sincosTable___5JMath@l /* 0x80439A20@l */ -/* 805A4078 57 64 04 38 */ rlwinm r4, r27, 0, 0x10, 0x1c -/* 805A407C 7C 60 22 14 */ add r3, r0, r4 -/* 805A4080 C0 03 00 04 */ lfs f0, 4(r3) -/* 805A4084 EC 02 00 24 */ fdivs f0, f2, f0 -/* 805A4088 FC 00 02 10 */ fabs f0, f0 -/* 805A408C FC 60 00 18 */ frsp f3, f0 -/* 805A4090 C0 1D 05 B8 */ lfs f0, 0x5b8(r29) -/* 805A4094 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 805A4098 40 80 00 0C */ bge lbl_805A40A4 -/* 805A409C FC 80 00 90 */ fmr f4, f0 -/* 805A40A0 48 00 00 08 */ b lbl_805A40A8 -lbl_805A40A4: -/* 805A40A4 FC 80 18 90 */ fmr f4, f3 -lbl_805A40A8: -/* 805A40A8 C0 41 00 08 */ lfs f2, 8(r1) -/* 805A40AC 3C 60 80 44 */ lis r3, sincosTable___5JMath@ha /* 0x80439A20@ha */ -/* 805A40B0 38 63 9A 20 */ addi r3, r3, sincosTable___5JMath@l /* 0x80439A20@l */ -/* 805A40B4 7C 03 24 2E */ lfsx f0, r3, r4 -/* 805A40B8 EC 23 00 32 */ fmuls f1, f3, f0 -/* 805A40BC EC 04 00 32 */ fmuls f0, f4, f0 -/* 805A40C0 EC 01 00 2A */ fadds f0, f1, f0 -/* 805A40C4 EC 02 00 2A */ fadds f0, f2, f0 -/* 805A40C8 D0 01 00 08 */ stfs f0, 8(r1) -/* 805A40CC FC 00 02 10 */ fabs f0, f0 -/* 805A40D0 FC 20 00 18 */ frsp f1, f0 -/* 805A40D4 C0 1D 04 EC */ lfs f0, 0x4ec(r29) -/* 805A40D8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 805A40DC 4C 40 13 82 */ cror 2, 0, 2 -/* 805A40E0 41 82 00 1C */ beq lbl_805A40FC -/* 805A40E4 88 1D 05 AC */ lbz r0, 0x5ac(r29) -/* 805A40E8 28 00 00 00 */ cmplwi r0, 0 -/* 805A40EC 40 82 00 2C */ bne lbl_805A4118 -/* 805A40F0 88 1D 05 AD */ lbz r0, 0x5ad(r29) -/* 805A40F4 28 00 00 04 */ cmplwi r0, 4 -/* 805A40F8 40 82 00 20 */ bne lbl_805A4118 -lbl_805A40FC: -/* 805A40FC C0 1D 05 B4 */ lfs f0, 0x5b4(r29) -/* 805A4100 D0 7E 17 68 */ stfs f3, 0x1768(r30) -/* 805A4104 D0 1E 17 6C */ stfs f0, 0x176c(r30) -/* 805A4108 D0 9E 17 70 */ stfs f4, 0x1770(r30) -/* 805A410C 80 1E 17 4C */ lwz r0, 0x174c(r30) -/* 805A4110 60 00 00 01 */ ori r0, r0, 1 -/* 805A4114 90 1E 17 4C */ stw r0, 0x174c(r30) -lbl_805A4118: -/* 805A4118 38 60 00 01 */ li r3, 1 -/* 805A411C 39 61 00 30 */ addi r11, r1, 0x30 -/* 805A4120 4B DB E1 01 */ bl _restgpr_27 -/* 805A4124 80 01 00 34 */ lwz r0, 0x34(r1) -/* 805A4128 7C 08 03 A6 */ mtlr r0 -/* 805A412C 38 21 00 30 */ addi r1, r1, 0x30 -/* 805A4130 4E 80 00 20 */ blr diff --git a/include/d/bg/d_bg_w.h b/include/d/bg/d_bg_w.h index c2c9f232102..0b22d8dd3d0 100644 --- a/include/d/bg/d_bg_w.h +++ b/include/d/bg/d_bg_w.h @@ -208,6 +208,7 @@ public: MtxP GetBaseMtxP() { return pm_base; } bool ChkNoCalcVtx() { return field_0x88 & 2; } bool ChkFlush() { return field_0x91 & 8; } + void SetLock() { field_0x88 |= 0x80; } public: /* 0x18 */ MtxP pm_base; diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index 04662771715..237c15af9ac 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -2936,6 +2936,11 @@ inline int i_dComIfGp_evmng_getMyStaffId(const char* pName, fopAc_ac_c* pActor, return dComIfGp_getPEvtManager()->getMyStaffId(pName, pActor, param_2); } +inline int dComIfGp_evmng_getMyActIdx(int i_staffIdx, char** param_1, int param_2, int param_3, + int param_4) { + return dComIfGp_getPEvtManager()->getMyActIdx(i_staffIdx, param_1, param_2, param_3, param_4); +} + inline int dComIfGp_evmng_getIsAddvance(int param_0) { return dComIfGp_getPEvtManager()->getIsAddvance(param_0); } diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index 22d2ae1eb2b..6106bb1ae94 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -301,6 +301,10 @@ inline dJntCol_c* fopAcM_GetJntCol(fopAc_ac_c* i_actor) { return i_actor->mJntCol; } +inline void fopAcM_setCullSizeFar(fopAc_ac_c* i_actor, f32 i_far) { + i_actor->mCullSizeFar = i_far; +} + inline f32 fopAcM_getCullSizeFar(const fopAc_ac_c* i_actor) { return i_actor->mCullSizeFar; } diff --git a/include/rel/d/a/d_a_horse/d_a_horse.h b/include/rel/d/a/d_a_horse/d_a_horse.h index 757eae29300..07caaee34c7 100644 --- a/include/rel/d/a/d_a_horse/d_a_horse.h +++ b/include/rel/d/a/d_a_horse/d_a_horse.h @@ -39,6 +39,7 @@ private: class daHorse_c : public fopAc_ac_c { public: enum daHorse_ERFLG0 { + /* 0x001 */ ERFLG0_UNK_1 = 0x1, /* 0x010 */ MOVE_ACCEPT = 0x10, /* 0x080 */ RIDE_RUN_FLG = 0x80, /* 0x100 */ CUT_TURN_CANCEL = 0x100, @@ -157,6 +158,7 @@ public: bool checkEndResetStateFlg0(daHorse_ERFLG0 flag) { return mEndResetStateFlg0 & flag; } bool checkStateFlg0(daHorse_FLG0 flag) const { return mStateFlg0 & flag; } f32 getNormalMaxSpeedF() { return mNormalMaxSpeedF; } + f32 getLashMaxSpeedF() { return mLashMaxSpeedF; } void changeDemoMoveAngle(s16 angle) { mDemoMoveAngle = angle; } void setDemoStickR(f32 stick) { mDemoStickR = stick; } void i_changeDemoMode(u32 param_0, int param_1) { field_0x1740 = param_0; field_0x1728 = param_1; } @@ -166,6 +168,7 @@ public: void offRideFlg() { (this->*mpOffRideFlgFn)(); } void onStateFlg0(daHorse_FLG0 flag) { mStateFlg0 |= flag; } void offStateFlg0(daHorse_FLG0 flag) { mStateFlg0 &= ~flag; } + void onEndResetStateFlg0(daHorse_ERFLG0 i_flag) { mEndResetStateFlg0 |= i_flag;} void offNoDrawWait() { offStateFlg0(NO_DRAW_WAIT); } int checkSpecialWallHit(const cXyz& param_0) { return (this->*mpCheckSpecialWallHitFn)(param_0); } @@ -173,6 +176,13 @@ public: bool checkTurnStand() const { return checkResetStateFlg0(TURN_STAND); } bool checkRodeoMode() const { return checkStateFlg0(RODEO_MODE); } + void onTagJump(f32 param_0, f32 param_1, f32 param_2) { + field_0x1768 = param_0; + field_0x176c = param_1; + field_0x1770 = param_2; + onEndResetStateFlg0(ERFLG0_UNK_1); + } + static u8 const m_footJointTable[8]; static f32 const m_callLimitDistance2; diff --git a/include/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.h b/include/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.h index 0c59521bebb..7c6713cbf2d 100644 --- a/include/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.h +++ b/include/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.h @@ -1,6 +1,48 @@ #ifndef D_A_SCENE_EXIT2_H #define D_A_SCENE_EXIT2_H -#include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" + +class daScExit_c : public fopAc_ac_c { +public: + enum act_e { + WAIT_e, + START_e, + SCENE_CHG_e, + }; + + enum action_e { + ACTION_WAIT_e, + ACTION_ORDER_EVENT_e, + ACTION_EVENT_e, + ACTION_DEAD_e, + }; + + /* 8059E158 */ void initBaseMtx(); + /* 8059E178 */ void setBaseMtx(); + /* 8059E1B0 */ int Create(); + /* 8059E230 */ int create(); + /* 8059E2C0 */ int execute(); + /* 8059E2E4 */ void event_proc_call(); + /* 8059E3A0 */ void actionWait(); + /* 8059E408 */ void actionOrderEvent(); + /* 8059E488 */ void actionEvent(); + /* 8059E504 */ void actionDead(); + /* 8059E508 */ int demoProc(); + /* 8059E6CC */ BOOL checkArea(); + /* 8059E714 */ int draw(); + /* 8059E71C */ int _delete(); + + int getSceneID() { return fopAcM_GetParamBit(this, 0, 8); } + void setAction(u8 i_action) { mAction = i_action; } + + /* 0x568 */ request_of_phase_process_class mPhase; + /* 0x570 */ int mStaffID; + /* 0x574 */ f32 mRadius; + /* 0x578 */ s16 mEventID; + /* 0x57A */ u8 mToolID; + /* 0x57B */ u8 mAction; + /* 0x57C */ u8 mTimer; +}; #endif /* D_A_SCENE_EXIT2_H */ diff --git a/include/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.h b/include/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.h index 001d6cd9daf..93ae37fd292 100644 --- a/include/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.h +++ b/include/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.h @@ -1,6 +1,32 @@ #ifndef D_A_TAG_HJUMP_H #define D_A_TAG_HJUMP_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "f_op/f_op_actor_mng.h" + +class daTagHjump_c : public dBgS_MoveBgActor { +public: + enum Type_e { + TYPE_TRIGGER_e = 0, + TYPE_OBJECT_e = 3, + }; + + /* 805A3B24 */ int create(); + /* 805A3DA0 */ ~daTagHjump_c(); + /* 805A3E70 */ int execute(); + + /* 805A3AB8 */ virtual int CreateHeap(); + /* 805A4154 */ virtual int Draw(); + + /* 0x5A0 */ request_of_phase_process_class mPhase; + /* 0x5A8 */ J3DModel* mpModel; + /* 0x5AC */ u8 mType; + /* 0x5AD */ u8 field_0x5ad; + /* 0x5AE */ s16 field_0x5ae; + /* 0x5B0 */ u16 mOnFlagID; + /* 0x5B2 */ u16 mOffFlagID; + /* 0x5B4 */ f32 field_0x5b4; + /* 0x5B8 */ f32 field_0x5b8; +}; #endif /* D_A_TAG_HJUMP_H */ diff --git a/rel/d/a/d_a_scene_exit2/Makefile b/rel/d/a/d_a_scene_exit2/Makefile index 611c51dc72b..253b81a826c 100644 --- a/rel/d/a/d_a_scene_exit2/Makefile +++ b/rel/d/a/d_a_scene_exit2/Makefile @@ -8,12 +8,10 @@ M117_MAP := $(BUILD_DIR)/rel/d/a/d_a_scene_exit2.map M117_CPP_FILES := \ rel/executor.cpp \ - rel/d/a/d_a_scene_exit2/unknown_translation_unit_bss.cpp \ rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp \ M117_O_FILES := \ $(BUILD_DIR)/rel/executor.o \ - $(BUILD_DIR)/rel/d/a/d_a_scene_exit2/unknown_translation_unit_bss.o \ $(BUILD_DIR)/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.o \ M117_LIBS := \ diff --git a/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp b/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp index 97708d43d24..1f9a82304ff 100644 --- a/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp +++ b/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp @@ -1,174 +1,25 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_scene_exit2 -// +/** + * d_a_scene_exit2.cpp + * Grotto Scene Exit trigger + */ #include "rel/d/a/d_a_scene_exit2/d_a_scene_exit2.h" -#include "dol2asm.h" -#include "dolphin/types.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz {}; - -struct cXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daScExit_c { - /* 8059E158 */ void initBaseMtx(); - /* 8059E178 */ void setBaseMtx(); - /* 8059E1B0 */ void Create(); - /* 8059E230 */ void create(); - /* 8059E2C0 */ void execute(); - /* 8059E2E4 */ void event_proc_call(); - /* 8059E3A0 */ void actionWait(); - /* 8059E408 */ void actionOrderEvent(); - /* 8059E488 */ void actionEvent(); - /* 8059E504 */ void actionDead(); - /* 8059E508 */ void demoProc(); - /* 8059E6CC */ void checkArea(); - /* 8059E714 */ bool draw(); - /* 8059E71C */ void _delete(); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); -}; - -struct JAISoundID {}; - -struct Vec {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -// -// Forward References: -// - -extern "C" void initBaseMtx__10daScExit_cFv(); -extern "C" void setBaseMtx__10daScExit_cFv(); -extern "C" void Create__10daScExit_cFv(); -extern "C" void create__10daScExit_cFv(); -extern "C" void execute__10daScExit_cFv(); -extern "C" void event_proc_call__10daScExit_cFv(); -extern "C" void actionWait__10daScExit_cFv(); -extern "C" void actionOrderEvent__10daScExit_cFv(); -extern "C" void actionEvent__10daScExit_cFv(); -extern "C" void actionDead__10daScExit_cFv(); -extern "C" void demoProc__10daScExit_cFv(); -extern "C" void checkArea__10daScExit_cFv(); -extern "C" bool draw__10daScExit_cFv(); -extern "C" void _delete__10daScExit_cFv(); -extern "C" static void daScExit_Draw__FP10daScExit_c(); -extern "C" static void daScExit_Execute__FP10daScExit_c(); -extern "C" static void daScExit_Delete__FP10daScExit_c(); -extern "C" static void daScExit_Create__FP10daScExit_c(); -extern "C" void func_8059E7D0(void* _this, u8*); -extern "C" extern char const* const d_a_scene_exit2__stringBase0; -extern "C" extern void* g_profile_SCENE_EXIT2[12]; - -// -// External References: -// - -extern "C" void transS__14mDoMtx_stack_cFRC4cXyz(); -extern "C" void ZXYrotM__14mDoMtx_stack_cFRC5csXyz(); -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void fopAcM_searchActorDistanceXZ__FPC10fopAc_ac_cPC10fopAc_ac_c(); -extern "C" void fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs(); -extern "C" void dStage_changeScene__FifUlScsi(); -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 reset__14dEvt_control_cFv(); -extern "C" void getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc(); -extern "C" void endCheck__16dEvent_manager_cFs(); -extern "C" void getIsAddvance__16dEvent_manager_cFi(); -extern "C" void getMyActIdx__16dEvent_manager_cFiPCPCciii(); -extern "C" void getMySubstanceP__16dEvent_manager_cFiPCci(); -extern "C" void cutEnd__16dEvent_manager_cFi(); -extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); -extern "C" void __ptmf_scall(); -extern "C" void _savegpr_27(); -extern "C" void _restgpr_27(); -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" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; -extern "C" extern u8 data_8059E920[4]; - -// -// Declarations: -// - -/* 8059E158-8059E178 000078 0020+00 1/1 0/0 0/0 .text initBaseMtx__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::initBaseMtx() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/initBaseMtx__10daScExit_cFv.s" -} -#pragma pop - -/* 8059E178-8059E1B0 000098 0038+00 1/1 0/0 0/0 .text setBaseMtx__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::setBaseMtx() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/setBaseMtx__10daScExit_cFv.s" -} -#pragma pop - -/* ############################################################################################## */ -/* 8059E7F4-8059E7F8 000000 0004+00 2/2 0/0 0/0 .rodata @3659 */ -SECTION_RODATA static f32 const lit_3659 = 100.0f; -COMPILER_STRIP_GATE(0x8059E7F4, &lit_3659); - -/* 8059E808-8059E808 000014 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_8059E808 = "SceneExit"; -SECTION_DEAD static char const* const stringBase_8059E812 = "SCENE_EXIT"; -#pragma pop +extern "C" u8 func_8059E7D0(u8*); /* 8059E838-8059E844 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ -SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { +static u8 cNullVec__6Z2Calc[12] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; /* 8059E844-8059E858 00000C 0004+10 0/0 0/0 0/0 .data @1787 */ #pragma push #pragma force_active on -SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { +// unused data? +static u32 lit_1787[1 + 4 /* padding */] = { 0x02000201, /* padding */ 0x40080000, @@ -178,294 +29,216 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { }; #pragma pop +/* 8059E158-8059E178 000078 0020+00 1/1 0/0 0/0 .text initBaseMtx__10daScExit_cFv */ +void daScExit_c::initBaseMtx() { + setBaseMtx(); +} + +/* 8059E178-8059E1B0 000098 0038+00 1/1 0/0 0/0 .text setBaseMtx__10daScExit_cFv */ +void daScExit_c::setBaseMtx() { + mDoMtx_stack_c::transS(current.pos); + mDoMtx_stack_c::ZXYrotM(shape_angle); +} + /* 8059E858-8059E85C -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_scene_exit2__stringBase0; +static char* l_arcName = "SceneExit"; /* 8059E85C-8059E860 -00001 0004+00 1/1 0/0 0/0 .data l_evName */ -SECTION_DATA static void* l_evName = (void*)(((char*)&d_a_scene_exit2__stringBase0) + 0xA); +static char* l_evName = "SCENE_EXIT"; /* 8059E1B0-8059E230 0000D0 0080+00 1/1 0/0 0/0 .text Create__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::Create() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/Create__10daScExit_cFv.s" +int daScExit_c::Create() { + mRadius = mScale.x * 100.0f; + initBaseMtx(); + + mToolID = 0xFF; + mEvtInfo.setArchiveName(l_arcName); + mEventID = i_dComIfGp_getEventManager().getEventIdx(this, l_evName, 0xFF); + return 1; } -#pragma pop /* 8059E230-8059E2C0 000150 0090+00 1/1 0/0 0/0 .text create__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::create() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/func_8059E230.s" +int daScExit_c::create() { + if (!fopAcM_CheckCondition(this, 8)) { + new (this) daScExit_c(); + fopAcM_OnCondition(this, 8); + } + + int phase = dComIfG_resLoad(&mPhase, l_arcName); + if (phase == cPhs_COMPLEATE_e) { + if (!Create()) { + return cPhs_ERROR_e; + } + } + + return phase; } -#pragma pop /* 8059E2C0-8059E2E4 0001E0 0024+00 1/1 0/0 0/0 .text execute__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::execute() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/execute__10daScExit_cFv.s" +int daScExit_c::execute() { + event_proc_call(); + return 1; } -#pragma pop - -/* ############################################################################################## */ -/* 8059E860-8059E86C -00001 000C+00 0/1 0/0 0/0 .data @3699 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3699[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)actionWait__10daScExit_cFv, -}; -#pragma pop - -/* 8059E86C-8059E878 -00001 000C+00 0/1 0/0 0/0 .data @3700 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3700[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)actionOrderEvent__10daScExit_cFv, -}; -#pragma pop - -/* 8059E878-8059E884 -00001 000C+00 0/1 0/0 0/0 .data @3701 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3701[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)actionEvent__10daScExit_cFv, -}; -#pragma pop - -/* 8059E884-8059E890 -00001 000C+00 0/1 0/0 0/0 .data @3702 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3702[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)actionDead__10daScExit_cFv, -}; -#pragma pop - -/* 8059E890-8059E8C0 000058 0030+00 0/1 0/0 0/0 .data l_func$3698 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_func[48] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop /* 8059E2E4-8059E3A0 000204 00BC+00 1/1 0/0 0/0 .text event_proc_call__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::event_proc_call() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/event_proc_call__10daScExit_cFv.s" +void daScExit_c::event_proc_call() { + typedef void (daScExit_c::*actionFunc)(); + static actionFunc l_func[] = {&daScExit_c::actionWait, &daScExit_c::actionOrderEvent, + &daScExit_c::actionEvent, &daScExit_c::actionDead}; + + (this->*l_func[mAction])(); } -#pragma pop /* 8059E3A0-8059E408 0002C0 0068+00 1/0 0/0 0/0 .text actionWait__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::actionWait() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionWait__10daScExit_cFv.s" +void daScExit_c::actionWait() { + if (checkArea()) { + setAction(ACTION_ORDER_EVENT_e); + fopAcM_orderOtherEventId(this, mEventID, mToolID, 0xFFFF, 0, 1); + mEvtInfo.i_onCondition(2); + } } -#pragma pop /* 8059E408-8059E488 000328 0080+00 1/0 0/0 0/0 .text actionOrderEvent__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::actionOrderEvent() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionOrderEvent__10daScExit_cFv.s" +void daScExit_c::actionOrderEvent() { + if (mEvtInfo.i_checkCommandDemoAccrpt()) { + setAction(ACTION_EVENT_e); + demoProc(); + dComIfGp_setPlayerStatus1(0, 0x4000000); + } else { + fopAcM_orderOtherEventId(this, mEventID, mToolID, 0xFFFF, 0, 1); + mEvtInfo.i_onCondition(2); + } } -#pragma pop /* 8059E488-8059E504 0003A8 007C+00 1/0 0/0 0/0 .text actionEvent__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::actionEvent() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/actionEvent__10daScExit_cFv.s" +void daScExit_c::actionEvent() { + if (dComIfGp_evmng_endCheck(mEventID)) { + setAction(ACTION_DEAD_e); + i_dComIfGp_event_reset(); + } else { + demoProc(); + dComIfGp_setPlayerStatus1(0, 0x4000000); + } } -#pragma pop /* 8059E504-8059E508 000424 0004+00 1/0 0/0 0/0 .text actionDead__10daScExit_cFv */ -void daScExit_c::actionDead() { - /* empty function */ -} - -/* ############################################################################################## */ -/* 8059E7F8-8059E7FC 000004 0004+00 0/1 0/0 0/0 .rodata @3797 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3797 = 1.0f; -COMPILER_STRIP_GATE(0x8059E7F8, &lit_3797); -#pragma pop - -/* 8059E7FC-8059E800 000008 0004+00 0/1 0/0 0/0 .rodata @3798 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3798 = -1.0f; -COMPILER_STRIP_GATE(0x8059E7FC, &lit_3798); -#pragma pop - -/* 8059E800-8059E804 00000C 0004+00 0/1 0/0 0/0 .rodata @3799 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3799 = 800.0f; -COMPILER_STRIP_GATE(0x8059E800, &lit_3799); -#pragma pop - -/* 8059E808-8059E808 000014 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_8059E81D = "WAIT"; -SECTION_DEAD static char const* const stringBase_8059E822 = "START"; -SECTION_DEAD static char const* const stringBase_8059E828 = "SCENE_CHG"; -SECTION_DEAD static char const* const stringBase_8059E832 = "Timer"; -#pragma pop - -/* 8059E8C0-8059E8CC -00001 000C+00 1/1 0/0 0/0 .data action_table$3745 */ -SECTION_DATA static void* action_table[3] = { - (void*)(((char*)&d_a_scene_exit2__stringBase0) + 0x15), - (void*)(((char*)&d_a_scene_exit2__stringBase0) + 0x1A), - (void*)(((char*)&d_a_scene_exit2__stringBase0) + 0x20), -}; +void daScExit_c::actionDead() {} /* 8059E508-8059E6CC 000428 01C4+00 2/2 0/0 0/0 .text demoProc__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::demoProc() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/demoProc__10daScExit_cFv.s" +int daScExit_c::demoProc() { + static char* action_table[3] = {"WAIT", "START", "SCENE_CHG"}; + + u8 scene_id = getSceneID(); + int act_id = dComIfGp_evmng_getMyActIdx(mStaffID, action_table, 3, 0, 0); + + if (dComIfGp_evmng_getIsAddvance(mStaffID)) { + switch (act_id) { + case WAIT_e: + int* timer_p = dComIfGp_evmng_getMyIntegerP(mStaffID, "Timer"); + + if (timer_p == NULL) { + mTimer = 1; + } else { + mTimer = *timer_p; + } + break; + case START_e: + fopAcM_seStart(this, Z2SE_SY_WARP_FADE, 0); + mAttentionInfo.mPosition.y = current.pos.y + 800.0f; + mEyePos.y = mAttentionInfo.mPosition.y; + break; + case SCENE_CHG_e: + break; + } + } + + switch (act_id) { + case WAIT_e: + if (func_8059E7D0(&mTimer) == 0) { + dComIfGp_evmng_cutEnd(mStaffID); + } + break; + case START_e: + dComIfGp_evmng_cutEnd(mStaffID); + break; + case SCENE_CHG_e: + dStage_changeScene(scene_id, 0.0f, 0, fopAcM_GetRoomNo(this), 0, -1); + break; + default: + dComIfGp_evmng_cutEnd(mStaffID); + break; + } + + return 0; } -#pragma pop /* 8059E6CC-8059E714 0005EC 0048+00 1/1 0/0 0/0 .text checkArea__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::checkArea() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/checkArea__10daScExit_cFv.s" +BOOL daScExit_c::checkArea() { + return fopAcM_searchPlayerDistanceXZ(this) < mRadius; } -#pragma pop /* 8059E714-8059E71C 000634 0008+00 1/1 0/0 0/0 .text draw__10daScExit_cFv */ -bool daScExit_c::draw() { - return true; +int daScExit_c::draw() { + return 1; } /* 8059E71C-8059E750 00063C 0034+00 1/1 0/0 0/0 .text _delete__10daScExit_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daScExit_c::_delete() { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/_delete__10daScExit_cFv.s" +int daScExit_c::_delete() { + dComIfG_resDelete(&mPhase, l_arcName); + return 1; } -#pragma pop /* 8059E750-8059E770 000670 0020+00 1/0 0/0 0/0 .text daScExit_Draw__FP10daScExit_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daScExit_Draw(daScExit_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Draw__FP10daScExit_c.s" +static int daScExit_Draw(daScExit_c* i_this) { + return i_this->draw(); } -#pragma pop /* 8059E770-8059E790 000690 0020+00 1/0 0/0 0/0 .text daScExit_Execute__FP10daScExit_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daScExit_Execute(daScExit_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Execute__FP10daScExit_c.s" +static int daScExit_Execute(daScExit_c* i_this) { + return i_this->execute(); } -#pragma pop /* 8059E790-8059E7B0 0006B0 0020+00 1/0 0/0 0/0 .text daScExit_Delete__FP10daScExit_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daScExit_Delete(daScExit_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Delete__FP10daScExit_c.s" +static int daScExit_Delete(daScExit_c* i_this) { + return i_this->_delete(); } -#pragma pop /* 8059E7B0-8059E7D0 0006D0 0020+00 1/0 0/0 0/0 .text daScExit_Create__FP10daScExit_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daScExit_Create(daScExit_c* param_0) { - nofralloc -#include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/daScExit_Create__FP10daScExit_c.s" +static int daScExit_Create(daScExit_c* i_this) { + return i_this->create(); } -#pragma pop /* 8059E7D0-8059E7EC 0006F0 001C+00 1/1 0/0 0/0 .text cLib_calcTimer__FPUc */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -extern "C" asm void func_8059E7D0(void* _this, u8* param_0) { +extern "C" asm u8 func_8059E7D0(u8* param_0) { nofralloc #include "asm/rel/d/a/d_a_scene_exit2/d_a_scene_exit2/func_8059E7D0.s" } #pragma pop -/* ############################################################################################## */ -/* 8059E804-8059E808 000010 0004+00 0/0 0/0 0/0 .rodata @3800 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_3800[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x8059E804, &lit_3800); -#pragma pop - /* 8059E8CC-8059E8EC -00001 0020+00 1/0 0/0 0/0 .data l_daScExit_Method */ -SECTION_DATA static void* l_daScExit_Method[8] = { - (void*)daScExit_Create__FP10daScExit_c, - (void*)daScExit_Delete__FP10daScExit_c, - (void*)daScExit_Execute__FP10daScExit_c, - (void*)NULL, - (void*)daScExit_Draw__FP10daScExit_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daScExit_Method = { + (process_method_func)daScExit_Create, (process_method_func)daScExit_Delete, + (process_method_func)daScExit_Execute, (process_method_func)NULL, + (process_method_func)daScExit_Draw, }; /* 8059E8EC-8059E91C -00001 0030+00 0/0 0/0 1/0 .data g_profile_SCENE_EXIT2 */ -SECTION_DATA extern void* g_profile_SCENE_EXIT2[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x01A70000, (void*)&g_fpcLf_Method, - (void*)0x00000580, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x02470000, (void*)&l_daScExit_Method, - (void*)0x00040000, (void*)0x000E0000, +extern actor_process_profile_definition g_profile_SCENE_EXIT2 = { + -3, + 7, + -3, + PROC_SCENE_EXIT2, + &g_fpcLf_Method.mBase, + sizeof(daScExit_c), + 0, + 0, + &g_fopAc_Method.base, + 583, + &l_daScExit_Method, + 0x40000, + 0, + 14, }; - -/* 8059E808-8059E808 000014 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/d_a_scene_exit2/unknown_translation_unit_bss.cpp b/rel/d/a/d_a_scene_exit2/unknown_translation_unit_bss.cpp deleted file mode 100644 index 98550cb102f..00000000000 --- a/rel/d/a/d_a_scene_exit2/unknown_translation_unit_bss.cpp +++ /dev/null @@ -1,27 +0,0 @@ -// -// Generated By: dol2asm -// Translation Unit: unknown_translation_unit_bss -// - -#include "rel/d/a/d_a_scene_exit2/unknown_translation_unit_bss.h" -#include "dol2asm.h" -#include "dolphin/types.h" - -// -// Forward References: -// - -extern "C" extern u8 data_8059E920[4]; - -// -// External References: -// - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 8059E920-8059E924 000000 0004+00 0/0 1/1 0/0 .bss None */ -extern u8 data_8059E920[4]; -u8 data_8059E920[4]; diff --git a/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp b/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp index 5e06f1cb21d..d3425993b75 100644 --- a/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp +++ b/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp @@ -1,373 +1,222 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_tag_hjump -// +/** + * d_a_tag_hjump.cpp + * Epona fence jump trigger / object + */ #include "rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.h" -#include "dol2asm.h" -#include "dolphin/types.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "SSystem/SComponent/c_math.h" +#include "d/bg/d_bg_w.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" +#include "rel/d/a/d_a_horse/d_a_horse.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct fopAc_ac_c { - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTagHjump_c { - /* 805A3AB8 */ void CreateHeap(); - /* 805A3B24 */ void create(); - /* 805A3DA0 */ ~daTagHjump_c(); - /* 805A3E70 */ void execute(); - /* 805A4154 */ void Draw(); -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct cXyz {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgW {}; - -struct cBgS_PolyInfo {}; - -struct csXyz {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 80078690 */ bool Create(); - /* 80078698 */ bool Execute(f32 (**)[3][4]); - /* 800786A8 */ bool Delete(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DModel {}; - -// -// Forward References: -// - -extern "C" void CreateHeap__12daTagHjump_cFv(); -extern "C" void create__12daTagHjump_cFv(); -extern "C" static void daTagHjump_Create__FP10fopAc_ac_c(); -extern "C" void __dt__12daTagHjump_cFv(); -extern "C" static void daTagHjump_Delete__FP12daTagHjump_c(); -extern "C" void execute__12daTagHjump_cFv(); -extern "C" static void daTagHjump_Execute__FP12daTagHjump_c(); -extern "C" void Draw__12daTagHjump_cFv(); -extern "C" static void daTagHjump_Draw__FP12daTagHjump_c(); - -// -// External References: -// - -extern "C" void mDoMtx_YrotM__FPA4_fs(); -extern "C" void mDoExt_modelUpdateDL__FP8J3DModel(); -extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl(); -extern "C" void __dt__10fopAc_ac_cFv(); -extern "C" void fopAcM_SetMin__FP10fopAc_ac_cfff(); -extern "C" void fopAcM_SetMax__FP10fopAc_ac_cfff(); -extern "C" void fpoAcM_relativePos__FPC10fopAc_ac_cPC4cXyzP4cXyz(); -extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc(); -extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc(); -extern "C" void isEventBit__11dSv_event_cCFUs(); -extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); -extern "C" void __ct__16dBgS_MoveBgActorFv(); -extern "C" bool Create__16dBgS_MoveBgActorFv(); -extern "C" bool Execute__16dBgS_MoveBgActorFPPA3_A4_f(); -extern "C" bool Delete__16dBgS_MoveBgActorFv(); -extern "C" bool IsDelete__16dBgS_MoveBgActorFv(); -extern "C" bool ToFore__16dBgS_MoveBgActorFv(); -extern "C" bool ToBack__16dBgS_MoveBgActorFv(); -extern "C" void -MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f(); -extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv(); -extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); -extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); -extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void _savegpr_27(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_27(); -extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; -extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; -extern "C" extern void* __vt__16dBgS_MoveBgActor[10]; -extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" u8 sincosTable___5JMath[65536]; - -// -// Declarations: -// - -/* ############################################################################################## */ /* 805A4238-805A4240 000000 0007+01 4/4 0/0 0/0 .rodata l_arcName */ -SECTION_RODATA static u8 const l_arcName[7 + 1 /* padding */] = { - 0x48, - 0x66, - 0x65, - 0x6E, - 0x63, - 0x65, - 0x00, - /* padding */ - 0x00, -}; -COMPILER_STRIP_GATE(0x805A4238, &l_arcName); +static char const l_arcName[] = "Hfence"; /* 805A3AB8-805A3B24 000078 006C+00 1/0 0/0 0/0 .text CreateHeap__12daTagHjump_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daTagHjump_c::CreateHeap() { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/CreateHeap__12daTagHjump_cFv.s" +int daTagHjump_c::CreateHeap() { + J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 4); + mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); + if (mpModel == NULL) { + return 0; + } + + return 1; } -#pragma pop - -/* ############################################################################################## */ -/* 805A4240-805A4244 000008 0004+00 0/1 0/0 0/0 .rodata @3747 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3747 = 100.0f; -COMPILER_STRIP_GATE(0x805A4240, &lit_3747); -#pragma pop - -/* 805A4244-805A4248 00000C 0004+00 0/1 0/0 0/0 .rodata @3748 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3748 = 250.0f; -COMPILER_STRIP_GATE(0x805A4244, &lit_3748); -#pragma pop - -/* 805A4248-805A424C 000010 0004+00 0/1 0/0 0/0 .rodata @3749 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3749 = 350.0f; -COMPILER_STRIP_GATE(0x805A4248, &lit_3749); -#pragma pop - -/* 805A424C-805A4250 000014 0004+00 0/1 0/0 0/0 .rodata @3750 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3750 = 400.0f; -COMPILER_STRIP_GATE(0x805A424C, &lit_3750); -#pragma pop - -/* 805A4250-805A4254 000018 0004+00 0/1 0/0 0/0 .rodata @3751 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3751 = 200.0f; -COMPILER_STRIP_GATE(0x805A4250, &lit_3751); -#pragma pop - -/* 805A4254-805A4258 00001C 0004+00 0/2 0/0 0/0 .rodata @3752 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_3752[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x805A4254, &lit_3752); -#pragma pop - -/* 805A4258-805A425C 000020 0004+00 0/1 0/0 0/0 .rodata @3753 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3753 = -50.0f; -COMPILER_STRIP_GATE(0x805A4258, &lit_3753); -#pragma pop - -/* 805A425C-805A4260 000024 0004+00 0/1 0/0 0/0 .rodata @3754 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3754 = 50.0f; -COMPILER_STRIP_GATE(0x805A425C, &lit_3754); -#pragma pop - -/* 805A4260-805A4264 000028 0004+00 0/1 0/0 0/0 .rodata @3755 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3755 = 5.0f; -COMPILER_STRIP_GATE(0x805A4260, &lit_3755); -#pragma pop - -/* 805A426C-805A428C -00001 0020+00 1/0 0/0 0/0 .data l_daTagHjump_Method */ -SECTION_DATA static void* l_daTagHjump_Method[8] = { - (void*)daTagHjump_Create__FP10fopAc_ac_c, - (void*)daTagHjump_Delete__FP12daTagHjump_c, - (void*)daTagHjump_Execute__FP12daTagHjump_c, - (void*)NULL, - (void*)daTagHjump_Draw__FP12daTagHjump_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, -}; - -/* 805A428C-805A42BC -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Hjump */ -SECTION_DATA extern void* g_profile_Tag_Hjump[12] = { - (void*)0xFFFFFFFD, (void*)0x0003FFFD, - (void*)0x00EA0000, (void*)&g_fpcLf_Method, - (void*)0x000005BC, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01B20000, (void*)&l_daTagHjump_Method, - (void*)0x00044100, (void*)0x030E0000, -}; - -/* 805A42BC-805A42E4 000050 0028+00 2/2 0/0 0/0 .data __vt__12daTagHjump_c */ -SECTION_DATA extern void* __vt__12daTagHjump_c[10] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)CreateHeap__12daTagHjump_cFv, - (void*)Create__16dBgS_MoveBgActorFv, - (void*)Execute__16dBgS_MoveBgActorFPPA3_A4_f, - (void*)Draw__12daTagHjump_cFv, - (void*)Delete__16dBgS_MoveBgActorFv, - (void*)IsDelete__16dBgS_MoveBgActorFv, - (void*)ToFore__16dBgS_MoveBgActorFv, - (void*)ToBack__16dBgS_MoveBgActorFv, -}; /* 805A3B24-805A3D80 0000E4 025C+00 1/1 0/0 0/0 .text create__12daTagHjump_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daTagHjump_c::create() { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/create__12daTagHjump_cFv.s" +int daTagHjump_c::create() { + if (!fopAcM_CheckCondition(this, 8)) { + new (this) daTagHjump_c(); + fopAcM_OnCondition(this, 8); + } + + mType = (fopAcM_GetParam(this) >> 4) & 0xF; + field_0x5ad = fopAcM_GetParam(this) & 0xF; + mOnFlagID = (fopAcM_GetParam(this) >> 8) & 0xFFF; + mOffFlagID = fopAcM_GetParam(this) >> 0x14; + + if (field_0x5ad == 15) { + field_0x5ad = 0; + } + + int phase; + if (mType != TYPE_TRIGGER_e) { + phase = dComIfG_resLoad(&mPhase, l_arcName); + if (phase == cPhs_COMPLEATE_e) { + phase = MoveBGCreate(l_arcName, 7, NULL, 0xCA0, NULL); + + if (phase == cPhs_COMPLEATE_e) { + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + mTevStr.mRoomNo = fopAcM_GetRoomNo(this); + + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::YrotM(shape_angle.y); + mpModel->i_setBaseTRMtx(mDoMtx_stack_c::get()); + + mDoMtx_stack_c::get()[1][3] -= 100.0f; + current.pos.y -= 100.0f; + + field_0x568->SetLock(); + mScale.x = 250.0f; + mScale.y = 350.0f; + mScale.z = 400.0f; + field_0x5b8 = 200.0f; + + fopAcM_SetMin(this, -mScale.x, 0.0f, -50.0f); + fopAcM_SetMax(this, mScale.x, 200.0f, 50.0f); + + field_0x5ae = 0x2000; + fopAcM_setCullSizeFar(this, 5.0f); + field_0x5ad = 4; + } + } + } else { + phase = cPhs_COMPLEATE_e; + mScale.x *= 100.0f; + mScale.z *= 100.0f; + mScale.y *= 100.0f; + + if (field_0x5ad == 0 || field_0x5ad == 1) { + field_0x5b8 = 50.0f; + field_0x5ae = 0x1000; + } else { + field_0x5b8 = 200.0f; + field_0x5ae = 0x2000; + } + } + + field_0x5b4 = current.pos.y + mScale.y; + return phase; } -#pragma pop /* 805A3D80-805A3DA0 000340 0020+00 1/0 0/0 0/0 .text daTagHjump_Create__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daTagHjump_Create(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Create__FP10fopAc_ac_c.s" +static int daTagHjump_Create(fopAc_ac_c* i_this) { + return static_cast(i_this)->create(); } -#pragma pop /* 805A3DA0-805A3E34 000360 0094+00 1/1 0/0 0/0 .text __dt__12daTagHjump_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daTagHjump_c::~daTagHjump_c() { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/__dt__12daTagHjump_cFv.s" +daTagHjump_c::~daTagHjump_c() { + if (mType != TYPE_TRIGGER_e) { + dComIfG_resDelete(&mPhase, l_arcName); + } } -#pragma pop /* 805A3E34-805A3E70 0003F4 003C+00 1/0 0/0 0/0 .text daTagHjump_Delete__FP12daTagHjump_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daTagHjump_Delete(daTagHjump_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Delete__FP12daTagHjump_c.s" +static int daTagHjump_Delete(daTagHjump_c* i_this) { + i_this->MoveBGDelete(); + i_this->~daTagHjump_c(); + return 1; } -#pragma pop - -/* ############################################################################################## */ -/* 805A4264-805A4268 00002C 0004+00 0/1 0/0 0/0 .rodata @3904 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3904 = 4.0f / 5.0f; -COMPILER_STRIP_GATE(0x805A4264, &lit_3904); -#pragma pop - -/* 805A4268-805A426C 000030 0004+00 0/1 0/0 0/0 .rodata @3905 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3905 = 0.5f; -COMPILER_STRIP_GATE(0x805A4268, &lit_3905); -#pragma pop /* 805A3E70-805A4134 000430 02C4+00 1/1 0/0 0/0 .text execute__12daTagHjump_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daTagHjump_c::execute() { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/execute__12daTagHjump_cFv.s" +int daTagHjump_c::execute() { + daHorse_c* horse_p = i_dComIfGp_getHorseActor(); + + if (horse_p != NULL && + (mType != TYPE_TRIGGER_e || + ((mOnFlagID == 0xFFF || + i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[mOnFlagID])) && + (mOffFlagID == 0xFFF || + !i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[mOffFlagID]))))) + { + s16 angle_diff = horse_p->shape_angle.y - shape_angle.y; + int abs_angle = abs(angle_diff); + f32 min_jump_speed; + + if (field_0x5ad == 0 || field_0x5ad == 2) { + min_jump_speed = horse_p->getLashMaxSpeedF() * 0.8f; + } else if (field_0x5ad == 1 || field_0x5ad == 3) { + min_jump_speed = horse_p->getNormalMaxSpeedF() * 0.8f; + } else { + min_jump_speed = horse_p->getNormalMaxSpeedF() + + (horse_p->getLashMaxSpeedF() - horse_p->getNormalMaxSpeedF()) * 0.5f; + } + + if (min_jump_speed < horse_p->speedF && + (abs_angle < field_0x5ae || abs_angle > 0x8000 - field_0x5ae)) + { + cXyz rel_pos; + fpoAcM_relativePos(this, &horse_p->current.pos, &rel_pos); + + f32 temp_f3 = fabsf(rel_pos.z); + if (rel_pos.y >= 0.0f && rel_pos.y <= mScale.y && fabsf(rel_pos.x) <= mScale.x) { + if (temp_f3 >= (mScale.z - field_0x5b8) && temp_f3 <= (mScale.z + field_0x5b8) && + ((rel_pos.z > 0.0f && abs_angle > 0x8000 - field_0x5ae) || + (rel_pos.z < 0.0f && abs_angle < field_0x5ae))) + { + f32 temp_f3_2 = fabsf(rel_pos.z / cM_scos(angle_diff)); + f32 var_f4; + + if (temp_f3_2 < field_0x5b8) { + var_f4 = field_0x5b8; + } else { + var_f4 = temp_f3_2; + } + + rel_pos.x += (temp_f3_2 * cM_ssin(angle_diff)) + (var_f4 * cM_ssin(angle_diff)); + if (fabsf(rel_pos.x) <= mScale.x || + (mType == TYPE_TRIGGER_e && field_0x5ad == 4)) + { + horse_p->onTagJump(temp_f3_2, field_0x5b4, var_f4); + } + } + } + } + } + + return 1; } -#pragma pop /* 805A4134-805A4154 0006F4 0020+00 1/0 0/0 0/0 .text daTagHjump_Execute__FP12daTagHjump_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daTagHjump_Execute(daTagHjump_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Execute__FP12daTagHjump_c.s" +static int daTagHjump_Execute(daTagHjump_c* i_this) { + return i_this->execute(); } -#pragma pop /* 805A4154-805A4204 000714 00B0+00 1/0 0/0 0/0 .text Draw__12daTagHjump_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daTagHjump_c::Draw() { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/Draw__12daTagHjump_cFv.s" +int daTagHjump_c::Draw() { + if (mType != TYPE_TRIGGER_e) { + g_env_light.settingTevStruct(0x10, ¤t.pos, &mTevStr); + g_env_light.setLightTevColorType_MAJI(mpModel, &mTevStr); + + dComIfGd_setListBG(); + mDoExt_modelUpdateDL(mpModel); + dComIfGd_setList(); + } + + return 1; } -#pragma pop /* 805A4204-805A4230 0007C4 002C+00 1/0 0/0 0/0 .text daTagHjump_Draw__FP12daTagHjump_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daTagHjump_Draw(daTagHjump_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump/daTagHjump_Draw__FP12daTagHjump_c.s" +static int daTagHjump_Draw(daTagHjump_c* i_this) { + return i_this->MoveBGDraw(); } -#pragma pop + +/* 805A426C-805A428C -00001 0020+00 1/0 0/0 0/0 .data l_daTagHjump_Method */ +static actor_method_class l_daTagHjump_Method = { + (process_method_func)daTagHjump_Create, (process_method_func)daTagHjump_Delete, + (process_method_func)daTagHjump_Execute, (process_method_func)NULL, + (process_method_func)daTagHjump_Draw, +}; + +/* 805A428C-805A42BC -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Hjump */ +extern actor_process_profile_definition g_profile_Tag_Hjump = { + -3, + 3, + -3, + PROC_Tag_Hjump, + &g_fpcLf_Method.mBase, + sizeof(daTagHjump_c), + 0, + 0, + &g_fopAc_Method.base, + 434, + &l_daTagHjump_Method, + 0x44100, + 3, + 14, +};