diff --git a/Progress.md b/Progress.md index 5c952561cff..5aa2daacd3a 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 97.972973% | 9280 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 46.811606% | 1683600 | 3596544 +.text | 47.083756% | 1693388 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 52.417506% | 2107536 | 4020672 +Total | 52.660948% | 2117324 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 52.417506% | 2107536 | 4020672 -RELs | 36.060758% | 4147104 | 11500324 -Total | 40.297929% | 6254640 | 15520996 +main.dol | 52.660948% | 2117324 | 4020672 +RELs | 36.096931% | 4151264 | 11500324 +Total | 40.387795% | 6268588 | 15520996 ## RELs @@ -631,7 +631,7 @@ d_a_obj_swturn | 31.295716% | 2396 | 7656 d_a_obj_syRock | 38.458961% | 4592 | 11940 d_a_obj_szbridge | 43.280632% | 1752 | 4048 d_a_obj_taFence | 41.279360% | 3304 | 8004 -d_a_obj_table | 45.544554% | 1656 | 3636 +d_a_obj_table | 100.000000% | 3636 | 3636 d_a_obj_takaraDai | 46.376812% | 2304 | 4968 d_a_obj_tatigi | 40.549020% | 2068 | 5100 d_a_obj_ten | 30.064631% | 5396 | 17948 @@ -706,7 +706,7 @@ d_a_swhit0 | 35.577421% | 2748 | 7724 d_a_tag_CstaSw | 100.000000% | 2560 | 2560 d_a_tag_Lv6Gate | 71.494786% | 4936 | 6904 d_a_tag_Lv7Gate | 100.000000% | 6296 | 6296 -d_a_tag_Lv8Gate | 43.347193% | 1668 | 3848 +d_a_tag_Lv8Gate | 100.000000% | 3848 | 3848 d_a_tag_TWgate | 55.682049% | 10956 | 19676 d_a_tag_ajnot | 100.000000% | 1232 | 1232 d_a_tag_allmato | 30.234070% | 3720 | 12304 @@ -785,4 +785,4 @@ d_a_vrbox2 | 44.907111% | 2804 | 6244 d_a_warp_bug | 100.000000% | 2024 | 2024 d_a_ykgr | 44.400631% | 2252 | 5072 f_pc_profile_lst | 100.000000% | 28156 | 28156 -Total | 36.060758% | 4147104 | 11500324 +Total | 36.096931% | 4151264 | 11500324 diff --git a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/__dt__12J3DFrameCtrlFv.s b/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/__dt__12J3DFrameCtrlFv.s deleted file mode 100644 index a5dbc1ce292..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/__dt__12J3DFrameCtrlFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80D51D80: -/* 80D51D80 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D51D84 7C 08 02 A6 */ mflr r0 -/* 80D51D88 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D51D8C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D51D90 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80D51D94 41 82 00 1C */ beq lbl_80D51DB0 -/* 80D51D98 3C A0 80 D5 */ lis r5, __vt__12J3DFrameCtrl@ha /* 0x80D52564@ha */ -/* 80D51D9C 38 05 25 64 */ addi r0, r5, __vt__12J3DFrameCtrl@l /* 0x80D52564@l */ -/* 80D51DA0 90 1F 00 00 */ stw r0, 0(r31) -/* 80D51DA4 7C 80 07 35 */ extsh. r0, r4 -/* 80D51DA8 40 81 00 08 */ ble lbl_80D51DB0 -/* 80D51DAC 4B 57 CF 91 */ bl __dl__FPv -lbl_80D51DB0: -/* 80D51DB0 7F E3 FB 78 */ mr r3, r31 -/* 80D51DB4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D51DB8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D51DBC 7C 08 03 A6 */ mtlr r0 -/* 80D51DC0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D51DC4 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/createHeap__14daTagLv8Gate_cFv.s b/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/createHeap__14daTagLv8Gate_cFv.s deleted file mode 100644 index 114a600d5d8..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/createHeap__14daTagLv8Gate_cFv.s +++ /dev/null @@ -1,79 +0,0 @@ -lbl_80D51C58: -/* 80D51C58 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80D51C5C 7C 08 02 A6 */ mflr r0 -/* 80D51C60 90 01 00 24 */ stw r0, 0x24(r1) -/* 80D51C64 39 61 00 20 */ addi r11, r1, 0x20 -/* 80D51C68 4B 61 05 75 */ bl _savegpr_29 -/* 80D51C6C 7C 7F 1B 78 */ mr r31, r3 -/* 80D51C70 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D51C74 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D51C78 38 63 4E 00 */ addi r3, r3, 0x4e00 -/* 80D51C7C 3C 80 80 D5 */ lis r4, d_a_tag_Lv8Gate__stringBase0@ha /* 0x80D524F0@ha */ -/* 80D51C80 38 84 24 F0 */ addi r4, r4, d_a_tag_Lv8Gate__stringBase0@l /* 0x80D524F0@l */ -/* 80D51C84 38 84 00 08 */ addi r4, r4, 8 -/* 80D51C88 4B 61 6D 0D */ bl strcmp -/* 80D51C8C 2C 03 00 00 */ cmpwi r3, 0 -/* 80D51C90 40 82 00 D4 */ bne lbl_80D51D64 -/* 80D51C94 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D52510@ha */ -/* 80D51C98 38 63 25 10 */ addi r3, r3, l_arcName@l /* 0x80D52510@l */ -/* 80D51C9C 80 63 00 00 */ lwz r3, 0(r3) -/* 80D51CA0 38 80 00 08 */ li r4, 8 -/* 80D51CA4 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D51CA8 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D51CAC 3F C5 00 02 */ addis r30, r5, 2 -/* 80D51CB0 3B DE C2 F8 */ addi r30, r30, -15624 -/* 80D51CB4 7F C5 F3 78 */ mr r5, r30 -/* 80D51CB8 38 C0 00 80 */ li r6, 0x80 -/* 80D51CBC 4B 2E A6 31 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 80D51CC0 3C 80 00 08 */ lis r4, 8 -/* 80D51CC4 3C A0 11 00 */ lis r5, 0x1100 /* 0x11000084@ha */ -/* 80D51CC8 38 A5 00 84 */ addi r5, r5, 0x0084 /* 0x11000084@l */ -/* 80D51CCC 4B 2C 2F 89 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl -/* 80D51CD0 90 7F 05 68 */ stw r3, 0x568(r31) -/* 80D51CD4 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D52510@ha */ -/* 80D51CD8 38 63 25 10 */ addi r3, r3, l_arcName@l /* 0x80D52510@l */ -/* 80D51CDC 80 63 00 00 */ lwz r3, 0(r3) -/* 80D51CE0 38 80 00 05 */ li r4, 5 -/* 80D51CE4 7F C5 F3 78 */ mr r5, r30 -/* 80D51CE8 38 C0 00 80 */ li r6, 0x80 -/* 80D51CEC 4B 2E A6 01 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 80D51CF0 7C 7D 1B 78 */ mr r29, r3 -/* 80D51CF4 38 60 00 1C */ li r3, 0x1c -/* 80D51CF8 4B 57 CF 55 */ bl __nw__FUl -/* 80D51CFC 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80D51D00 41 82 00 20 */ beq lbl_80D51D20 -/* 80D51D04 3C 80 80 D5 */ lis r4, __vt__12J3DFrameCtrl@ha /* 0x80D52564@ha */ -/* 80D51D08 38 04 25 64 */ addi r0, r4, __vt__12J3DFrameCtrl@l /* 0x80D52564@l */ -/* 80D51D0C 90 1E 00 00 */ stw r0, 0(r30) -/* 80D51D10 38 80 00 00 */ li r4, 0 -/* 80D51D14 4B 5D 66 E9 */ bl init__12J3DFrameCtrlFs -/* 80D51D18 38 00 00 00 */ li r0, 0 -/* 80D51D1C 90 1E 00 18 */ stw r0, 0x18(r30) -lbl_80D51D20: -/* 80D51D20 93 DF 05 6C */ stw r30, 0x56c(r31) -/* 80D51D24 80 7F 05 6C */ lwz r3, 0x56c(r31) -/* 80D51D28 28 03 00 00 */ cmplwi r3, 0 -/* 80D51D2C 41 82 00 30 */ beq lbl_80D51D5C -/* 80D51D30 7F A4 EB 78 */ mr r4, r29 -/* 80D51D34 38 A0 00 01 */ li r5, 1 -/* 80D51D38 38 C0 00 02 */ li r6, 2 -/* 80D51D3C 3C E0 80 D5 */ lis r7, lit_3749@ha /* 0x80D524CC@ha */ -/* 80D51D40 C0 27 24 CC */ lfs f1, lit_3749@l(r7) /* 0x80D524CC@l */ -/* 80D51D44 38 E0 00 00 */ li r7, 0 -/* 80D51D48 39 00 FF FF */ li r8, -1 -/* 80D51D4C 39 20 00 00 */ li r9, 0 -/* 80D51D50 4B 2B BA 8D */ bl init__13mDoExt_bckAnmFP15J3DAnmTransformiifssb -/* 80D51D54 2C 03 00 00 */ cmpwi r3, 0 -/* 80D51D58 40 82 00 0C */ bne lbl_80D51D64 -lbl_80D51D5C: -/* 80D51D5C 38 60 00 00 */ li r3, 0 -/* 80D51D60 48 00 00 08 */ b lbl_80D51D68 -lbl_80D51D64: -/* 80D51D64 38 60 00 01 */ li r3, 1 -lbl_80D51D68: -/* 80D51D68 39 61 00 20 */ addi r11, r1, 0x20 -/* 80D51D6C 4B 61 04 BD */ bl _restgpr_29 -/* 80D51D70 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80D51D74 7C 08 03 A6 */ mtlr r0 -/* 80D51D78 38 21 00 20 */ addi r1, r1, 0x20 -/* 80D51D7C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/createSolidHeap__FP10fopAc_ac_c.s b/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/createSolidHeap__FP10fopAc_ac_c.s deleted file mode 100644 index 739f7681835..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/createSolidHeap__FP10fopAc_ac_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80D51C38: -/* 80D51C38 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D51C3C 7C 08 02 A6 */ mflr r0 -/* 80D51C40 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D51C44 48 00 00 15 */ bl createHeap__14daTagLv8Gate_cFv -/* 80D51C48 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D51C4C 7C 08 03 A6 */ mtlr r0 -/* 80D51C50 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D51C54 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Create__FP10fopAc_ac_c.s b/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Create__FP10fopAc_ac_c.s deleted file mode 100644 index f30883232fc..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Create__FP10fopAc_ac_c.s +++ /dev/null @@ -1,94 +0,0 @@ -lbl_80D51DC8: -/* 80D51DC8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80D51DCC 7C 08 02 A6 */ mflr r0 -/* 80D51DD0 90 01 00 24 */ stw r0, 0x24(r1) -/* 80D51DD4 39 61 00 20 */ addi r11, r1, 0x20 -/* 80D51DD8 4B 61 04 05 */ bl _savegpr_29 -/* 80D51DDC 3C 80 80 D5 */ lis r4, lit_3749@ha /* 0x80D524CC@ha */ -/* 80D51DE0 3B E4 24 CC */ addi r31, r4, lit_3749@l /* 0x80D524CC@l */ -/* 80D51DE4 7C 7D 1B 78 */ mr r29, r3 -/* 80D51DE8 80 03 04 A0 */ lwz r0, 0x4a0(r3) -/* 80D51DEC 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 80D51DF0 40 82 00 1C */ bne lbl_80D51E0C -/* 80D51DF4 28 1D 00 00 */ cmplwi r29, 0 -/* 80D51DF8 41 82 00 08 */ beq lbl_80D51E00 -/* 80D51DFC 4B 2C 6D 69 */ bl __ct__10fopAc_ac_cFv -lbl_80D51E00: -/* 80D51E00 80 1D 04 A0 */ lwz r0, 0x4a0(r29) -/* 80D51E04 60 00 00 08 */ ori r0, r0, 8 -/* 80D51E08 90 1D 04 A0 */ stw r0, 0x4a0(r29) -lbl_80D51E0C: -/* 80D51E0C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D51E10 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D51E14 38 63 07 F0 */ addi r3, r3, 0x7f0 -/* 80D51E18 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */ -/* 80D51E1C 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */ -/* 80D51E20 A0 84 02 C4 */ lhz r4, 0x2c4(r4) -/* 80D51E24 4B 2E 2B 99 */ bl isEventBit__11dSv_event_cCFUs -/* 80D51E28 2C 03 00 00 */ cmpwi r3, 0 -/* 80D51E2C 40 82 00 0C */ bne lbl_80D51E38 -/* 80D51E30 3B C0 00 05 */ li r30, 5 -/* 80D51E34 48 00 00 D8 */ b lbl_80D51F0C -lbl_80D51E38: -/* 80D51E38 38 7D 05 70 */ addi r3, r29, 0x570 -/* 80D51E3C 3C 80 80 D5 */ lis r4, l_arcName@ha /* 0x80D52510@ha */ -/* 80D51E40 38 84 25 10 */ addi r4, r4, l_arcName@l /* 0x80D52510@l */ -/* 80D51E44 80 84 00 00 */ lwz r4, 0(r4) -/* 80D51E48 4B 2D B0 75 */ bl dComIfG_resLoad__FP30request_of_phase_process_classPCc -/* 80D51E4C 7C 7E 1B 78 */ mr r30, r3 -/* 80D51E50 2C 1E 00 04 */ cmpwi r30, 4 -/* 80D51E54 40 82 00 B8 */ bne lbl_80D51F0C -/* 80D51E58 7F A3 EB 78 */ mr r3, r29 -/* 80D51E5C 3C 80 80 D5 */ lis r4, createSolidHeap__FP10fopAc_ac_c@ha /* 0x80D51C38@ha */ -/* 80D51E60 38 84 1C 38 */ addi r4, r4, createSolidHeap__FP10fopAc_ac_c@l /* 0x80D51C38@l */ -/* 80D51E64 38 A0 16 00 */ li r5, 0x1600 -/* 80D51E68 4B 2C 86 49 */ bl fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl -/* 80D51E6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80D51E70 40 82 00 0C */ bne lbl_80D51E7C -/* 80D51E74 3B C0 00 05 */ li r30, 5 -/* 80D51E78 48 00 00 94 */ b lbl_80D51F0C -lbl_80D51E7C: -/* 80D51E7C 7F A3 EB 78 */ mr r3, r29 -/* 80D51E80 C0 3F 00 04 */ lfs f1, 4(r31) -/* 80D51E84 C0 5F 00 08 */ lfs f2, 8(r31) -/* 80D51E88 FC 60 08 90 */ fmr f3, f1 -/* 80D51E8C C0 9F 00 0C */ lfs f4, 0xc(r31) -/* 80D51E90 C0 BF 00 10 */ lfs f5, 0x10(r31) -/* 80D51E94 FC C0 20 90 */ fmr f6, f4 -/* 80D51E98 4B 2C 86 B1 */ bl fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff -/* 80D51E9C 88 1D 04 9A */ lbz r0, 0x49a(r29) -/* 80D51EA0 60 00 00 10 */ ori r0, r0, 0x10 -/* 80D51EA4 98 1D 04 9A */ stb r0, 0x49a(r29) -/* 80D51EA8 38 00 00 10 */ li r0, 0x10 -/* 80D51EAC 90 1D 05 5C */ stw r0, 0x55c(r29) -/* 80D51EB0 38 00 00 5A */ li r0, 0x5a -/* 80D51EB4 98 1D 05 48 */ stb r0, 0x548(r29) -/* 80D51EB8 38 00 FF FF */ li r0, -1 -/* 80D51EBC B0 1D 05 78 */ sth r0, 0x578(r29) -/* 80D51EC0 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 80D51EC4 28 03 00 00 */ cmplwi r3, 0 -/* 80D51EC8 41 82 00 44 */ beq lbl_80D51F0C -/* 80D51ECC 38 03 00 24 */ addi r0, r3, 0x24 -/* 80D51ED0 90 1D 05 04 */ stw r0, 0x504(r29) -/* 80D51ED4 38 7D 04 D0 */ addi r3, r29, 0x4d0 -/* 80D51ED8 4B 2B AE 8D */ bl transS__14mDoMtx_stack_cFRC4cXyz -/* 80D51EDC 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80D51EE0 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80D51EE4 A8 9D 04 E6 */ lha r4, 0x4e6(r29) -/* 80D51EE8 3C 84 00 01 */ addis r4, r4, 1 -/* 80D51EEC 38 04 80 00 */ addi r0, r4, -32768 -/* 80D51EF0 7C 04 07 34 */ extsh r4, r0 -/* 80D51EF4 4B 2B A5 41 */ bl mDoMtx_YrotM__FPA4_fs -/* 80D51EF8 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80D51EFC 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80D51F00 80 9D 05 68 */ lwz r4, 0x568(r29) -/* 80D51F04 38 84 00 24 */ addi r4, r4, 0x24 -/* 80D51F08 4B 5F 45 A9 */ bl PSMTXCopy -lbl_80D51F0C: -/* 80D51F0C 7F C3 F3 78 */ mr r3, r30 -/* 80D51F10 39 61 00 20 */ addi r11, r1, 0x20 -/* 80D51F14 4B 61 03 15 */ bl _restgpr_29 -/* 80D51F18 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80D51F1C 7C 08 03 A6 */ mtlr r0 -/* 80D51F20 38 21 00 20 */ addi r1, r1, 0x20 -/* 80D51F24 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Delete__FP14daTagLv8Gate_c.s b/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Delete__FP14daTagLv8Gate_c.s deleted file mode 100644 index 3f69a2b5b86..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Delete__FP14daTagLv8Gate_c.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_80D52474: -/* 80D52474 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D52478 7C 08 02 A6 */ mflr r0 -/* 80D5247C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D52480 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80D52484 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80D52488 41 82 00 24 */ beq lbl_80D524AC -/* 80D5248C 38 7F 05 70 */ addi r3, r31, 0x570 -/* 80D52490 3C 80 80 D5 */ lis r4, l_arcName@ha /* 0x80D52510@ha */ -/* 80D52494 38 84 25 10 */ addi r4, r4, l_arcName@l /* 0x80D52510@l */ -/* 80D52498 80 84 00 00 */ lwz r4, 0(r4) -/* 80D5249C 4B 2D AB 6D */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc -/* 80D524A0 7F E3 FB 78 */ mr r3, r31 -/* 80D524A4 38 80 00 00 */ li r4, 0 -/* 80D524A8 4B 2C 67 E5 */ bl __dt__10fopAc_ac_cFv -lbl_80D524AC: -/* 80D524AC 38 60 00 01 */ li r3, 1 -/* 80D524B0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80D524B4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D524B8 7C 08 03 A6 */ mtlr r0 -/* 80D524BC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D524C0 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Draw__FP14daTagLv8Gate_c.s b/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Draw__FP14daTagLv8Gate_c.s deleted file mode 100644 index c8c64834559..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Draw__FP14daTagLv8Gate_c.s +++ /dev/null @@ -1,100 +0,0 @@ -lbl_80D522F0: -/* 80D522F0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80D522F4 7C 08 02 A6 */ mflr r0 -/* 80D522F8 90 01 00 24 */ stw r0, 0x24(r1) -/* 80D522FC 39 61 00 20 */ addi r11, r1, 0x20 -/* 80D52300 4B 60 FE DD */ bl _savegpr_29 -/* 80D52304 7C 7F 1B 78 */ mr r31, r3 -/* 80D52308 80 03 05 68 */ lwz r0, 0x568(r3) -/* 80D5230C 28 00 00 00 */ cmplwi r0, 0 -/* 80D52310 41 82 01 40 */ beq lbl_80D52450 -/* 80D52314 3B C0 00 00 */ li r30, 0 -/* 80D52318 48 00 00 7C */ b lbl_80D52394 -lbl_80D5231C: -/* 80D5231C 80 7F 05 68 */ lwz r3, 0x568(r31) -/* 80D52320 80 63 00 04 */ lwz r3, 4(r3) -/* 80D52324 80 63 00 60 */ lwz r3, 0x60(r3) -/* 80D52328 57 C0 13 BA */ rlwinm r0, r30, 2, 0xe, 0x1d -/* 80D5232C 7F A3 00 2E */ lwzx r29, r3, r0 -/* 80D52330 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 80D52334 38 80 00 01 */ li r4, 1 -/* 80D52338 81 83 00 00 */ lwz r12, 0(r3) -/* 80D5233C 81 8C 00 74 */ lwz r12, 0x74(r12) -/* 80D52340 7D 89 03 A6 */ mtctr r12 -/* 80D52344 4E 80 04 21 */ bctrl -/* 80D52348 38 00 00 80 */ li r0, 0x80 -/* 80D5234C 98 03 00 00 */ stb r0, 0(r3) -/* 80D52350 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 80D52354 38 80 00 01 */ li r4, 1 -/* 80D52358 81 83 00 00 */ lwz r12, 0(r3) -/* 80D5235C 81 8C 00 74 */ lwz r12, 0x74(r12) -/* 80D52360 7D 89 03 A6 */ mtctr r12 -/* 80D52364 4E 80 04 21 */ bctrl -/* 80D52368 38 00 00 78 */ li r0, 0x78 -/* 80D5236C 98 03 00 01 */ stb r0, 1(r3) -/* 80D52370 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 80D52374 38 80 00 01 */ li r4, 1 -/* 80D52378 81 83 00 00 */ lwz r12, 0(r3) -/* 80D5237C 81 8C 00 74 */ lwz r12, 0x74(r12) -/* 80D52380 7D 89 03 A6 */ mtctr r12 -/* 80D52384 4E 80 04 21 */ bctrl -/* 80D52388 38 00 00 64 */ li r0, 0x64 -/* 80D5238C 98 03 00 02 */ stb r0, 2(r3) -/* 80D52390 3B DE 00 01 */ addi r30, r30, 1 -lbl_80D52394: -/* 80D52394 57 C0 04 3E */ clrlwi r0, r30, 0x10 -/* 80D52398 28 00 00 03 */ cmplwi r0, 3 -/* 80D5239C 41 80 FF 80 */ blt lbl_80D5231C -/* 80D523A0 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */ -/* 80D523A4 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */ -/* 80D523A8 38 80 00 10 */ li r4, 0x10 -/* 80D523AC 38 BF 04 D0 */ addi r5, r31, 0x4d0 -/* 80D523B0 38 DF 01 0C */ addi r6, r31, 0x10c -/* 80D523B4 4B 45 14 11 */ bl settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c -/* 80D523B8 3C 60 80 43 */ lis r3, g_env_light@ha /* 0x8042CA54@ha */ -/* 80D523BC 38 63 CA 54 */ addi r3, r3, g_env_light@l /* 0x8042CA54@l */ -/* 80D523C0 80 9F 05 68 */ lwz r4, 0x568(r31) -/* 80D523C4 80 84 00 04 */ lwz r4, 4(r4) -/* 80D523C8 38 BF 01 0C */ addi r5, r31, 0x10c -/* 80D523CC 4B 45 29 D5 */ bl setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c -/* 80D523D0 80 7F 05 6C */ lwz r3, 0x56c(r31) -/* 80D523D4 28 03 00 00 */ cmplwi r3, 0 -/* 80D523D8 41 82 00 14 */ beq lbl_80D523EC -/* 80D523DC 80 9F 05 68 */ lwz r4, 0x568(r31) -/* 80D523E0 80 84 00 04 */ lwz r4, 4(r4) -/* 80D523E4 C0 23 00 10 */ lfs f1, 0x10(r3) -/* 80D523E8 4B 2B B5 E5 */ bl entry__13mDoExt_bckAnmFP12J3DModelDataf -lbl_80D523EC: -/* 80D523EC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D523F0 38 83 61 C0 */ addi r4, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D523F4 80 04 5F 70 */ lwz r0, 0x5f70(r4) -/* 80D523F8 3C 60 80 43 */ lis r3, j3dSys@ha /* 0x80434AC8@ha */ -/* 80D523FC 3B C3 4A C8 */ addi r30, r3, j3dSys@l /* 0x80434AC8@l */ -/* 80D52400 90 1E 00 48 */ stw r0, 0x48(r30) -/* 80D52404 80 04 5F 74 */ lwz r0, 0x5f74(r4) -/* 80D52408 90 1E 00 4C */ stw r0, 0x4c(r30) -/* 80D5240C 80 7F 05 68 */ lwz r3, 0x568(r31) -/* 80D52410 4B 2B B8 B5 */ bl mDoExt_modelUpdateDL__FP8J3DModel -/* 80D52414 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D52418 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D5241C 80 03 5F 80 */ lwz r0, 0x5f80(r3) -/* 80D52420 90 1E 00 48 */ stw r0, 0x48(r30) -/* 80D52424 80 03 5F 84 */ lwz r0, 0x5f84(r3) -/* 80D52428 90 1E 00 4C */ stw r0, 0x4c(r30) -/* 80D5242C 80 1F 05 6C */ lwz r0, 0x56c(r31) -/* 80D52430 28 00 00 00 */ cmplwi r0, 0 -/* 80D52434 41 82 00 1C */ beq lbl_80D52450 -/* 80D52438 80 7F 05 68 */ lwz r3, 0x568(r31) -/* 80D5243C 80 63 00 04 */ lwz r3, 4(r3) -/* 80D52440 80 63 00 28 */ lwz r3, 0x28(r3) -/* 80D52444 80 63 00 00 */ lwz r3, 0(r3) -/* 80D52448 38 00 00 00 */ li r0, 0 -/* 80D5244C 90 03 00 54 */ stw r0, 0x54(r3) -lbl_80D52450: -/* 80D52450 38 60 00 01 */ li r3, 1 -/* 80D52454 39 61 00 20 */ addi r11, r1, 0x20 -/* 80D52458 4B 60 FD D1 */ bl _restgpr_29 -/* 80D5245C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80D52460 7C 08 03 A6 */ mtlr r0 -/* 80D52464 38 21 00 20 */ addi r1, r1, 0x20 -/* 80D52468 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Execute__FP14daTagLv8Gate_c.s b/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Execute__FP14daTagLv8Gate_c.s deleted file mode 100644 index b4d162bd538..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Execute__FP14daTagLv8Gate_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80D51F28: -/* 80D51F28 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80D51F2C 7C 08 02 A6 */ mflr r0 -/* 80D51F30 90 01 00 14 */ stw r0, 0x14(r1) -/* 80D51F34 48 00 00 15 */ bl execute__14daTagLv8Gate_cFv -/* 80D51F38 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80D51F3C 7C 08 03 A6 */ mtlr r0 -/* 80D51F40 38 21 00 10 */ addi r1, r1, 0x10 -/* 80D51F44 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/execute__14daTagLv8Gate_cFv.s b/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/execute__14daTagLv8Gate_cFv.s deleted file mode 100644 index 22abcedf8f0..00000000000 --- a/asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/execute__14daTagLv8Gate_cFv.s +++ /dev/null @@ -1,248 +0,0 @@ -lbl_80D51F48: -/* 80D51F48 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80D51F4C 7C 08 02 A6 */ mflr r0 -/* 80D51F50 90 01 00 44 */ stw r0, 0x44(r1) -/* 80D51F54 39 61 00 40 */ addi r11, r1, 0x40 -/* 80D51F58 4B 61 02 71 */ bl _savegpr_24 -/* 80D51F5C 7C 7A 1B 78 */ mr r26, r3 -/* 80D51F60 3C 60 80 D5 */ lis r3, lit_3749@ha /* 0x80D524CC@ha */ -/* 80D51F64 3B A3 24 CC */ addi r29, r3, lit_3749@l /* 0x80D524CC@l */ -/* 80D51F68 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D51F6C 3B C3 61 C0 */ addi r30, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D51F70 88 1E 4F AD */ lbz r0, 0x4fad(r30) -/* 80D51F74 28 00 00 00 */ cmplwi r0, 0 -/* 80D51F78 41 82 01 B8 */ beq lbl_80D52130 -/* 80D51F7C A0 1A 00 F8 */ lhz r0, 0xf8(r26) -/* 80D51F80 28 00 00 01 */ cmplwi r0, 1 -/* 80D51F84 41 82 01 AC */ beq lbl_80D52130 -/* 80D51F88 3B 9E 4F F8 */ addi r28, r30, 0x4ff8 -/* 80D51F8C 7F 83 E3 78 */ mr r3, r28 -/* 80D51F90 3C 80 80 D5 */ lis r4, l_arcName@ha /* 0x80D52510@ha */ -/* 80D51F94 38 84 25 10 */ addi r4, r4, l_arcName@l /* 0x80D52510@l */ -/* 80D51F98 80 84 00 00 */ lwz r4, 0(r4) -/* 80D51F9C 38 A0 00 00 */ li r5, 0 -/* 80D51FA0 38 C0 00 00 */ li r6, 0 -/* 80D51FA4 4B 2F 5B 79 */ bl getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci -/* 80D51FA8 7C 79 1B 78 */ mr r25, r3 -/* 80D51FAC 2C 19 FF FF */ cmpwi r25, -1 -/* 80D51FB0 41 82 02 90 */ beq lbl_80D52240 -/* 80D51FB4 7F 83 E3 78 */ mr r3, r28 -/* 80D51FB8 7F 3B CB 78 */ mr r27, r25 -/* 80D51FBC 7F 24 CB 78 */ mr r4, r25 -/* 80D51FC0 4B 2F 5F 9D */ bl getMyNowCutName__16dEvent_manager_cFi -/* 80D51FC4 7C 7F 1B 78 */ mr r31, r3 -/* 80D51FC8 7F 83 E3 78 */ mr r3, r28 -/* 80D51FCC 7F 24 CB 78 */ mr r4, r25 -/* 80D51FD0 4B 2F 5D 7D */ bl getIsAddvance__16dEvent_manager_cFi -/* 80D51FD4 2C 03 00 00 */ cmpwi r3, 0 -/* 80D51FD8 41 82 00 BC */ beq lbl_80D52094 -/* 80D51FDC 80 9F 00 00 */ lwz r4, 0(r31) -/* 80D51FE0 3C 60 30 30 */ lis r3, 0x3030 /* 0x30303032@ha */ -/* 80D51FE4 38 03 30 32 */ addi r0, r3, 0x3032 /* 0x30303032@l */ -/* 80D51FE8 7C 04 00 00 */ cmpw r4, r0 -/* 80D51FEC 41 82 00 84 */ beq lbl_80D52070 -/* 80D51FF0 40 80 00 A4 */ bge lbl_80D52094 -/* 80D51FF4 38 03 30 31 */ addi r0, r3, 0x3031 -/* 80D51FF8 7C 04 00 00 */ cmpw r4, r0 -/* 80D51FFC 40 80 00 08 */ bge lbl_80D52004 -/* 80D52000 48 00 00 94 */ b lbl_80D52094 -lbl_80D52004: -/* 80D52004 38 7E 4E C8 */ addi r3, r30, 0x4ec8 -/* 80D52008 7F 44 D3 78 */ mr r4, r26 -/* 80D5200C 3C A0 80 04 */ lis r5, dEv_noFinishSkipProc__FPvi@ha /* 0x800428DC@ha */ -/* 80D52010 38 A5 28 DC */ addi r5, r5, dEv_noFinishSkipProc__FPvi@l /* 0x800428DC@l */ -/* 80D52014 38 C0 00 00 */ li r6, 0 -/* 80D52018 4B 2F 08 FD */ bl setSkipProc__14dEvt_control_cFPvPFPvi_ii -/* 80D5201C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D52020 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D52024 80 63 5D AC */ lwz r3, 0x5dac(r3) -/* 80D52028 38 9A 04 D0 */ addi r4, r26, 0x4d0 -/* 80D5202C A8 BA 04 E6 */ lha r5, 0x4e6(r26) -/* 80D52030 38 C0 00 00 */ li r6, 0 -/* 80D52034 81 83 06 28 */ lwz r12, 0x628(r3) -/* 80D52038 81 8C 01 54 */ lwz r12, 0x154(r12) -/* 80D5203C 7D 89 03 A6 */ mtctr r12 -/* 80D52040 4E 80 04 21 */ bctrl -/* 80D52044 38 00 00 B0 */ li r0, 0xb0 -/* 80D52048 B0 01 00 08 */ sth r0, 8(r1) -/* 80D5204C 3C 60 80 02 */ lis r3, fpcSch_JudgeForPName__FPvPv@ha /* 0x80023578@ha */ -/* 80D52050 38 63 35 78 */ addi r3, r3, fpcSch_JudgeForPName__FPvPv@l /* 0x80023578@l */ -/* 80D52054 38 81 00 08 */ addi r4, r1, 8 -/* 80D52058 4B 2C 77 A1 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 80D5205C 28 03 00 00 */ cmplwi r3, 0 -/* 80D52060 41 82 00 34 */ beq lbl_80D52094 -/* 80D52064 38 00 00 01 */ li r0, 1 -/* 80D52068 98 03 08 74 */ stb r0, 0x874(r3) -/* 80D5206C 48 00 00 28 */ b lbl_80D52094 -lbl_80D52070: -/* 80D52070 80 1A 00 B0 */ lwz r0, 0xb0(r26) -/* 80D52074 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 80D52078 C0 3D 00 14 */ lfs f1, 0x14(r29) -/* 80D5207C 38 80 00 00 */ li r4, 0 -/* 80D52080 88 1A 04 E2 */ lbz r0, 0x4e2(r26) -/* 80D52084 7C 05 07 74 */ extsb r5, r0 -/* 80D52088 38 C0 00 00 */ li r6, 0 -/* 80D5208C 38 E0 FF FF */ li r7, -1 -/* 80D52090 4B 2D 50 E1 */ bl dStage_changeScene__FifUlScsi -lbl_80D52094: -/* 80D52094 38 7E 4E C8 */ addi r3, r30, 0x4ec8 -/* 80D52098 A0 1E 4F A2 */ lhz r0, 0x4fa2(r30) -/* 80D5209C 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 80D520A0 41 82 00 2C */ beq lbl_80D520CC -/* 80D520A4 4B 2F 03 C5 */ bl reset__14dEvt_control_cFv -/* 80D520A8 80 1A 00 B0 */ lwz r0, 0xb0(r26) -/* 80D520AC 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 80D520B0 C0 3D 00 14 */ lfs f1, 0x14(r29) -/* 80D520B4 38 80 00 00 */ li r4, 0 -/* 80D520B8 88 1A 04 E2 */ lbz r0, 0x4e2(r26) -/* 80D520BC 7C 05 07 74 */ extsb r5, r0 -/* 80D520C0 38 C0 00 00 */ li r6, 0 -/* 80D520C4 38 E0 FF FF */ li r7, -1 -/* 80D520C8 4B 2D 50 A9 */ bl dStage_changeScene__FifUlScsi -lbl_80D520CC: -/* 80D520CC 80 9F 00 00 */ lwz r4, 0(r31) -/* 80D520D0 3C 60 30 30 */ lis r3, 0x3030 /* 0x30303033@ha */ -/* 80D520D4 38 03 30 33 */ addi r0, r3, 0x3033 /* 0x30303033@l */ -/* 80D520D8 7C 04 00 00 */ cmpw r4, r0 -/* 80D520DC 40 80 00 20 */ bge lbl_80D520FC -/* 80D520E0 38 03 30 31 */ addi r0, r3, 0x3031 -/* 80D520E4 7C 04 00 00 */ cmpw r4, r0 -/* 80D520E8 40 80 00 08 */ bge lbl_80D520F0 -/* 80D520EC 48 00 00 10 */ b lbl_80D520FC -lbl_80D520F0: -/* 80D520F0 7F 83 E3 78 */ mr r3, r28 -/* 80D520F4 7F 64 DB 78 */ mr r4, r27 -/* 80D520F8 4B 2F 60 85 */ bl cutEnd__16dEvent_manager_cFi -lbl_80D520FC: -/* 80D520FC A0 1A 00 F8 */ lhz r0, 0xf8(r26) -/* 80D52100 28 00 00 02 */ cmplwi r0, 2 -/* 80D52104 40 82 01 3C */ bne lbl_80D52240 -/* 80D52108 A8 9A 05 78 */ lha r4, 0x578(r26) -/* 80D5210C 2C 04 FF FF */ cmpwi r4, -1 -/* 80D52110 41 82 01 30 */ beq lbl_80D52240 -/* 80D52114 7F 83 E3 78 */ mr r3, r28 -/* 80D52118 4B 2F 59 61 */ bl endCheck__16dEvent_manager_cFs -/* 80D5211C 2C 03 00 00 */ cmpwi r3, 0 -/* 80D52120 41 82 01 20 */ beq lbl_80D52240 -/* 80D52124 38 00 FF FF */ li r0, -1 -/* 80D52128 B0 1A 05 78 */ sth r0, 0x578(r26) -/* 80D5212C 48 00 01 14 */ b lbl_80D52240 -lbl_80D52130: -/* 80D52130 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D52134 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D52138 80 63 5D AC */ lwz r3, 0x5dac(r3) -/* 80D5213C 7F 44 D3 78 */ mr r4, r26 -/* 80D52140 81 83 06 28 */ lwz r12, 0x628(r3) -/* 80D52144 81 8C 01 D8 */ lwz r12, 0x1d8(r12) -/* 80D52148 7D 89 03 A6 */ mtctr r12 -/* 80D5214C 4E 80 04 21 */ bctrl -/* 80D52150 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80D52154 41 82 00 70 */ beq lbl_80D521C4 -/* 80D52158 3B 00 00 00 */ li r24, 0 -/* 80D5215C 3B 3E 56 B8 */ addi r25, r30, 0x56b8 -/* 80D52160 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80D52164 3B E3 61 C0 */ addi r31, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80D52168 3B 80 00 07 */ li r28, 7 -/* 80D5216C 3B 60 00 00 */ li r27, 0 -/* 80D52170 48 00 00 48 */ b lbl_80D521B8 -lbl_80D52174: -/* 80D52174 7F 23 CB 78 */ mr r3, r25 -/* 80D52178 7F 04 C3 78 */ mr r4, r24 -/* 80D5217C 4B 32 15 B9 */ bl ActionTarget__12dAttention_cFl -/* 80D52180 7C 03 D0 40 */ cmplw r3, r26 -/* 80D52184 40 82 00 30 */ bne lbl_80D521B4 -/* 80D52188 7F 23 CB 78 */ mr r3, r25 -/* 80D5218C 4B 31 E6 F5 */ bl getActionBtnB__12dAttention_cFv -/* 80D52190 28 03 00 00 */ cmplwi r3, 0 -/* 80D52194 41 82 00 20 */ beq lbl_80D521B4 -/* 80D52198 7F 23 CB 78 */ mr r3, r25 -/* 80D5219C 4B 31 E6 E5 */ bl getActionBtnB__12dAttention_cFv -/* 80D521A0 80 03 00 0C */ lwz r0, 0xc(r3) -/* 80D521A4 28 00 00 04 */ cmplwi r0, 4 -/* 80D521A8 40 82 00 0C */ bne lbl_80D521B4 -/* 80D521AC 9B 9F 5E 3C */ stb r28, 0x5e3c(r31) -/* 80D521B0 9B 7F 5E 57 */ stb r27, 0x5e57(r31) -lbl_80D521B4: -/* 80D521B4 3B 18 00 01 */ addi r24, r24, 1 -lbl_80D521B8: -/* 80D521B8 80 19 04 30 */ lwz r0, 0x430(r25) -/* 80D521BC 7C 18 00 00 */ cmpw r24, r0 -/* 80D521C0 41 80 FF B4 */ blt lbl_80D52174 -lbl_80D521C4: -/* 80D521C4 80 1A 04 9C */ lwz r0, 0x49c(r26) -/* 80D521C8 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 -/* 80D521CC 41 82 00 74 */ beq lbl_80D52240 -/* 80D521D0 7F 43 D3 78 */ mr r3, r26 -/* 80D521D4 4B 2C A9 CD */ bl fopAcM_cancelCarryNow__FP10fopAc_ac_c -/* 80D521D8 80 1A 05 5C */ lwz r0, 0x55c(r26) -/* 80D521DC 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a -/* 80D521E0 90 1A 05 5C */ stw r0, 0x55c(r26) -/* 80D521E4 3C 60 80 D5 */ lis r3, l_arcName@ha /* 0x80D52510@ha */ -/* 80D521E8 80 03 25 10 */ lwz r0, l_arcName@l(r3) /* 0x80D52510@l */ -/* 80D521EC 90 1A 01 00 */ stw r0, 0x100(r26) -/* 80D521F0 3B 3E 4F F8 */ addi r25, r30, 0x4ff8 -/* 80D521F4 7F 23 CB 78 */ mr r3, r25 -/* 80D521F8 80 9A 01 00 */ lwz r4, 0x100(r26) -/* 80D521FC 4B 2F 46 05 */ bl setObjectArchive__16dEvent_manager_cFPc -/* 80D52200 7F 23 CB 78 */ mr r3, r25 -/* 80D52204 7F 44 D3 78 */ mr r4, r26 -/* 80D52208 3C A0 80 D5 */ lis r5, d_a_tag_Lv8Gate__stringBase0@ha /* 0x80D524F0@ha */ -/* 80D5220C 38 A5 24 F0 */ addi r5, r5, d_a_tag_Lv8Gate__stringBase0@l /* 0x80D524F0@l */ -/* 80D52210 38 A5 00 0F */ addi r5, r5, 0xf -/* 80D52214 38 C0 00 FF */ li r6, 0xff -/* 80D52218 4B 2F 55 41 */ bl getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc -/* 80D5221C B0 7A 05 78 */ sth r3, 0x578(r26) -/* 80D52220 7F 43 D3 78 */ mr r3, r26 -/* 80D52224 A8 9A 05 78 */ lha r4, 0x578(r26) -/* 80D52228 38 A0 00 FF */ li r5, 0xff -/* 80D5222C 3C C0 00 01 */ lis r6, 0x0001 /* 0x0000FFFF@ha */ -/* 80D52230 38 C6 FF FF */ addi r6, r6, 0xFFFF /* 0x0000FFFF@l */ -/* 80D52234 38 E0 00 00 */ li r7, 0 -/* 80D52238 39 00 00 01 */ li r8, 1 -/* 80D5223C 4B 2C 94 41 */ bl fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs -lbl_80D52240: -/* 80D52240 80 7A 05 6C */ lwz r3, 0x56c(r26) -/* 80D52244 28 03 00 00 */ cmplwi r3, 0 -/* 80D52248 41 82 00 08 */ beq lbl_80D52250 -/* 80D5224C 4B 2B B1 DD */ bl play__14mDoExt_baseAnmFv -lbl_80D52250: -/* 80D52250 C0 1D 00 14 */ lfs f0, 0x14(r29) -/* 80D52254 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80D52258 C0 1D 00 18 */ lfs f0, 0x18(r29) -/* 80D5225C D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80D52260 C0 1D 00 1C */ lfs f0, 0x1c(r29) -/* 80D52264 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80D52268 38 7A 04 D0 */ addi r3, r26, 0x4d0 -/* 80D5226C 4B 2B AA F9 */ bl transS__14mDoMtx_stack_cFRC4cXyz -/* 80D52270 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80D52274 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80D52278 A8 9A 04 DE */ lha r4, 0x4de(r26) -/* 80D5227C 4B 2B A1 B9 */ bl mDoMtx_YrotM__FPA4_fs -/* 80D52280 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80D52284 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80D52288 38 81 00 10 */ addi r4, r1, 0x10 -/* 80D5228C 7C 85 23 78 */ mr r5, r4 -/* 80D52290 4B 5F 4A DD */ bl PSMTXMultVec -/* 80D52294 3C 60 00 08 */ lis r3, 0x0008 /* 0x000802C9@ha */ -/* 80D52298 38 03 02 C9 */ addi r0, r3, 0x02C9 /* 0x000802C9@l */ -/* 80D5229C 90 01 00 0C */ stw r0, 0xc(r1) -/* 80D522A0 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */ -/* 80D522A4 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */ -/* 80D522A8 80 63 00 00 */ lwz r3, 0(r3) -/* 80D522AC 38 81 00 0C */ addi r4, r1, 0xc -/* 80D522B0 38 A1 00 10 */ addi r5, r1, 0x10 -/* 80D522B4 38 C0 00 00 */ li r6, 0 -/* 80D522B8 38 E0 00 00 */ li r7, 0 -/* 80D522BC C0 3D 00 00 */ lfs f1, 0(r29) -/* 80D522C0 FC 40 08 90 */ fmr f2, f1 -/* 80D522C4 C0 7D 00 20 */ lfs f3, 0x20(r29) -/* 80D522C8 FC 80 18 90 */ fmr f4, f3 -/* 80D522CC 39 00 00 00 */ li r8, 0 -/* 80D522D0 4B 55 A2 3D */ bl seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc -/* 80D522D4 38 60 00 01 */ li r3, 1 -/* 80D522D8 39 61 00 40 */ addi r11, r1, 0x40 -/* 80D522DC 4B 60 FF 39 */ bl _restgpr_24 -/* 80D522E0 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80D522E4 7C 08 03 A6 */ mtlr r0 -/* 80D522E8 38 21 00 40 */ addi r1, r1, 0x40 -/* 80D522EC 4E 80 00 20 */ blr diff --git a/include/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h b/include/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h index fd4fad104a5..9fd822ab898 100644 --- a/include/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h +++ b/include/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h @@ -1,6 +1,33 @@ #ifndef D_A_TAG_LV8GATE_H #define D_A_TAG_LV8GATE_H +#include "SSystem/SComponent/c_phase.h" #include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" + +class J3DModel; +class mDoExt_bckAnm; + +class daTagLv8Gate_c : public fopAc_ac_c { +public: + inline ~daTagLv8Gate_c(); + + /* 80D51C58 */ int createHeap(); + /* 80D51F48 */ int execute(); + + void initBaseMtx(); + void create_init(); + int create(); + int draw(); + + u8 getSceneNo() { return fopAcM_GetParam(this) & 0xff; } + + /* 0x568 */ J3DModel* mpModel; + /* 0x56C */ mDoExt_bckAnm* mpBck; + /* 0x570 */ request_of_phase_process_class mPhaseReq; + /* 0x578 */ s16 mEventID; +}; + +STATIC_ASSERT(sizeof(daTagLv8Gate_c) == 0x57C); #endif /* D_A_TAG_LV8GATE_H */ diff --git a/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.cpp b/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.cpp index d7b34ed87c1..e7a599e90b8 100644 --- a/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.cpp +++ b/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.cpp @@ -4,379 +4,247 @@ // #include "rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h" -#include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct cXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DModelData {}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); - /* 8000D9CC */ void entry(J3DModelData*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daTagLv8Gate_c { - /* 80D51C58 */ void createHeap(); - /* 80D51F48 */ void execute(); -}; - -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 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 dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); -}; - -struct dEvent_manager_c { - /* 80046800 */ void setObjectArchive(char*); - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047F5C */ void getMyNowCutName(int); - /* 8004817C */ void cutEnd(int); -}; - -struct dAttention_c { - /* 80070880 */ void getActionBtnB(); - /* 80073734 */ void ActionTarget(s32); -}; - -struct JAISoundID {}; - -struct Vec {}; - -struct Z2SeMgr { - /* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DModel {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80D51D80 */ ~J3DFrameCtrl(); -}; - -// -// Forward References: -// - -extern "C" static void createSolidHeap__FP10fopAc_ac_c(); -extern "C" void createHeap__14daTagLv8Gate_cFv(); -extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" static void daTagLv8Gate_Create__FP10fopAc_ac_c(); -extern "C" static void daTagLv8Gate_Execute__FP14daTagLv8Gate_c(); -extern "C" void execute__14daTagLv8Gate_cFv(); -extern "C" static void daTagLv8Gate_Draw__FP14daTagLv8Gate_c(); -extern "C" static bool daTagLv8Gate_IsDelete__FP14daTagLv8Gate_c(); -extern "C" static void daTagLv8Gate_Delete__FP14daTagLv8Gate_c(); -extern "C" extern char const* const d_a_tag_Lv8Gate__stringBase0; - -// -// External References: -// - -extern "C" void mDoMtx_YrotM__FPA4_fs(); -extern "C" void transS__14mDoMtx_stack_cFRC4cXyz(); -extern "C" void play__14mDoExt_baseAnmFv(); -extern "C" void init__13mDoExt_bckAnmFP15J3DAnmTransformiifssb(); -extern "C" void entry__13mDoExt_bckAnmFP12J3DModelDataf(); -extern "C" void mDoExt_modelUpdateDL__FP8J3DModel(); -extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl(); -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void __dt__10fopAc_ac_cFv(); -extern "C" void fopAcIt_Judge__FPFPvPv_PvPv(); -extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl(); -extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff(); -extern "C" void fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs(); -extern "C" void fopAcM_cancelCarryNow__FP10fopAc_ac_c(); -extern "C" void fpcSch_JudgeForPName__FPvPv(); -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 isEventBit__11dSv_event_cCFUs(); -extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); -extern "C" void reset__14dEvt_control_cFv(); -extern "C" void dEv_noFinishSkipProc__FPvi(); -extern "C" void setSkipProc__14dEvt_control_cFPvPFPvi_ii(); -extern "C" void setObjectArchive__16dEvent_manager_cFPc(); -extern "C" void getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc(); -extern "C" void endCheck__16dEvent_manager_cFs(); -extern "C" void getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci(); -extern "C" void getIsAddvance__16dEvent_manager_cFi(); -extern "C" void getMyNowCutName__16dEvent_manager_cFi(); -extern "C" void cutEnd__16dEvent_manager_cFi(); -extern "C" void getActionBtnB__12dAttention_cFv(); -extern "C" void ActionTarget__12dAttention_cFl(); -extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); -extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); -extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); -extern "C" void* __nw__FUl(); -extern "C" void __dl__FPv(); -extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void _savegpr_24(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_24(); -extern "C" void _restgpr_29(); -extern "C" void strcmp(); -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" 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 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; +#include "JSystem/J3DGraphBase/J3DMaterial.h" +#include "d/a/d_a_player.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" +#include "rel/d/a/obj/mirror/d_a_obj_mirror_table/d_a_obj_mirror_table.h" // // Declarations: // +static char* l_arcName = "Lv8Gate"; + /* 80D51C38-80D51C58 000078 0020+00 1/1 0/0 0/0 .text createSolidHeap__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void createSolidHeap(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/createSolidHeap__FP10fopAc_ac_c.s" +static int createSolidHeap(fopAc_ac_c* i_this) { + return static_cast(i_this)->createHeap(); } -#pragma pop -/* ############################################################################################## */ -/* 80D524CC-80D524D0 000000 0004+00 3/3 0/0 0/0 .rodata @3749 */ -SECTION_RODATA static f32 const lit_3749 = 1.0f; -COMPILER_STRIP_GATE(0x80D524CC, &lit_3749); +daTagLv8Gate_c::~daTagLv8Gate_c() { + dComIfG_resDelete(&mPhaseReq, l_arcName); +} -/* 80D524F0-80D524F0 000024 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D524F0 = "Lv8Gate"; -SECTION_DEAD static char const* const stringBase_80D524F8 = "D_MN08"; -#pragma pop +inline void daTagLv8Gate_c::initBaseMtx() { + if (mpModel != NULL) { + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + mDoMtx_stack_c::transS(current.pos); + mDoMtx_stack_c::YrotM(shape_angle.y + 0x8000); + mpModel->i_setBaseTRMtx(mDoMtx_stack_c::get()); + } +} -/* 80D52510-80D52514 -00001 0004+00 4/4 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_tag_Lv8Gate__stringBase0; +inline void daTagLv8Gate_c::create_init() { + fopAcM_setCullSizeBox(this, -100.0f, -50.0f, -100.0f, 100.0f, 220.0f, 100.0f); + fopAcM_OnCarryType(this, fopAcM_CARRY_LIGHT); -/* 80D52514-80D52534 -00001 0020+00 1/0 0/0 0/0 .data l_daTagLv8Gate_Method */ -SECTION_DATA static void* l_daTagLv8Gate_Method[8] = { - (void*)daTagLv8Gate_Create__FP10fopAc_ac_c, - (void*)daTagLv8Gate_Delete__FP14daTagLv8Gate_c, - (void*)daTagLv8Gate_Execute__FP14daTagLv8Gate_c, - (void*)daTagLv8Gate_IsDelete__FP14daTagLv8Gate_c, - (void*)daTagLv8Gate_Draw__FP14daTagLv8Gate_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, -}; + mAttentionInfo.mFlags = 0x10; + mAttentionInfo.field_0x0[4] = 90; -/* 80D52534-80D52564 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Lv8Gate */ -SECTION_DATA extern void* g_profile_Tag_Lv8Gate[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x02CB0000, (void*)&g_fpcLf_Method, - (void*)0x0000057C, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x01080000, (void*)&l_daTagLv8Gate_Method, - (void*)0x00040000, (void*)0x000E0000, -}; + mEventID = -1; -/* 80D52564-80D52570 000054 000C+00 2/2 0/0 0/0 .data __vt__12J3DFrameCtrl */ -SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12J3DFrameCtrlFv, -}; + initBaseMtx(); +} + +inline int daTagLv8Gate_c::create() { + fopAcM_SetupActor(this, daTagLv8Gate_c); + + cPhs__Step step; + if (!i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[354])) { + step = cPhs_ERROR_e; + } else { + step = (cPhs__Step)dComIfG_resLoad(&mPhaseReq, l_arcName); + if (step == cPhs_COMPLEATE_e) { + if (!fopAcM_entrySolidHeap(this, createSolidHeap, 0x1600)) { + step = cPhs_ERROR_e; + } else { + create_init(); + } + } + } + + return step; +} + +inline int daTagLv8Gate_c::draw() { + if (mpModel != NULL) { + for (u16 index = 0; index < 3; index++) { + J3DMaterial* material = mpModel->getModelData()->getMaterialNodePointer(index); + material->getTevKColor(1)->r = 128; + material->getTevKColor(1)->g = 120; + material->getTevKColor(1)->b = 100; + } + + g_env_light.settingTevStruct(0x10, ¤t.pos, &mTevStr); + g_env_light.setLightTevColorType_MAJI(mpModel, &mTevStr); + + if (mpBck != NULL) { + mpBck->entry(mpModel->getModelData()); + } + + dComIfGd_setListBG(); + mDoExt_modelUpdateDL(mpModel); + dComIfGd_setList(); + + if (mpBck != NULL) { + mpModel->getModelData()->getJointNodePointer(0)->setMtxCalc(NULL); + } + } + return TRUE; +} /* 80D51C58-80D51D80 000098 0128+00 1/1 0/0 0/0 .text createHeap__14daTagLv8Gate_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daTagLv8Gate_c::createHeap() { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/createHeap__14daTagLv8Gate_cFv.s" +int daTagLv8Gate_c::createHeap() { + if (strcmp(dComIfGp_getStartStageName(), "D_MN08") == 0) { + J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 8); + mpModel = mDoExt_J3DModel__create(model_data, 0x80000, 0x11000084); + + J3DAnmTransform* bck = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, 5); + mpBck = new mDoExt_bckAnm(); + if (mpBck == NULL || + !mpBck->init(bck, TRUE, J3DFrameCtrl::LOOP_REPEAT_e, 1.0f, 0, -1, false)) + { + return 0; + } + } + + return 1; } -#pragma pop - -/* 80D51D80-80D51DC8 0001C0 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/__dt__12J3DFrameCtrlFv.s" -} -#pragma pop - -/* ############################################################################################## */ -/* 80D524D0-80D524D4 000004 0004+00 0/1 0/0 0/0 .rodata @3805 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3805 = -100.0f; -COMPILER_STRIP_GATE(0x80D524D0, &lit_3805); -#pragma pop - -/* 80D524D4-80D524D8 000008 0004+00 0/1 0/0 0/0 .rodata @3806 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3806 = -50.0f; -COMPILER_STRIP_GATE(0x80D524D4, &lit_3806); -#pragma pop - -/* 80D524D8-80D524DC 00000C 0004+00 0/1 0/0 0/0 .rodata @3807 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3807 = 100.0f; -COMPILER_STRIP_GATE(0x80D524D8, &lit_3807); -#pragma pop - -/* 80D524DC-80D524E0 000010 0004+00 0/1 0/0 0/0 .rodata @3808 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3808 = 220.0f; -COMPILER_STRIP_GATE(0x80D524DC, &lit_3808); -#pragma pop /* 80D51DC8-80D51F28 000208 0160+00 1/0 0/0 0/0 .text daTagLv8Gate_Create__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daTagLv8Gate_Create(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Create__FP10fopAc_ac_c.s" +static int daTagLv8Gate_Create(fopAc_ac_c* i_this) { + daTagLv8Gate_c* a_this = static_cast(i_this); + return a_this->create(); } -#pragma pop /* 80D51F28-80D51F48 000368 0020+00 1/0 0/0 0/0 .text daTagLv8Gate_Execute__FP14daTagLv8Gate_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daTagLv8Gate_Execute(daTagLv8Gate_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Execute__FP14daTagLv8Gate_c.s" +static int daTagLv8Gate_Execute(daTagLv8Gate_c* i_this) { + return i_this->execute(); } -#pragma pop - -/* ############################################################################################## */ -/* 80D524E0-80D524E4 000014 0004+00 0/1 0/0 0/0 .rodata @3891 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_3891[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x80D524E0, &lit_3891); -#pragma pop - -/* 80D524E4-80D524E8 000018 0004+00 0/1 0/0 0/0 .rodata @3892 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3892 = 400.0f; -COMPILER_STRIP_GATE(0x80D524E4, &lit_3892); -#pragma pop - -/* 80D524E8-80D524EC 00001C 0004+00 0/1 0/0 0/0 .rodata @3893 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3893 = 1400.0f; -COMPILER_STRIP_GATE(0x80D524E8, &lit_3893); -#pragma pop - -/* 80D524EC-80D524F0 000020 0004+00 0/1 0/0 0/0 .rodata @3894 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3894 = -1.0f; -COMPILER_STRIP_GATE(0x80D524EC, &lit_3894); -#pragma pop - -/* 80D524F0-80D524F0 000024 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D524FF = "LV8_GATE_ENTRY"; -#pragma pop /* 80D51F48-80D522F0 000388 03A8+00 1/1 0/0 0/0 .text execute__14daTagLv8Gate_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daTagLv8Gate_c::execute() { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/execute__14daTagLv8Gate_cFv.s" +int daTagLv8Gate_c::execute() { + dComIfG_inf_c& game_info = g_dComIfG_gameInfo; // Fake match? + + if (game_info.getPlay().getEvent().runCheck() && !mEvtInfo.checkCommandTalk()) { + s32 cut_index = i_dComIfGp_getEventManager().getMyStaffId(l_arcName, NULL, 0); + + if (cut_index != -1) { + int* cut_name = (int*)i_dComIfGp_getEventManager().getMyNowCutName(cut_index); + + if (i_dComIfGp_getEventManager().getIsAddvance(cut_index)) { + switch (*cut_name) { + case '0001': + i_dComIfGp_getEvent().setSkipProc(this, dEv_noFinishSkipProc, 0); + daPy_getPlayerActorClass()->setPlayerPosAndAngle(¤t.pos, shape_angle.y, + 0); + + fopAc_ac_c* mirror_table = i_fopAcM_SearchByName(PROC_Obj_MirrorTable); + if (mirror_table != NULL) { + static_cast(mirror_table)->field_0x874 = true; + } + break; + + case '0002': + dStage_changeScene(getSceneNo(), 0.0f, 0, getRoomNo(), 0, -1); + break; + } + } + + if (i_dComIfGp_getEvent().i_checkSkipEdge()) { + i_dComIfGp_event_reset(); + dStage_changeScene(getSceneNo(), 0.0f, 0, getRoomNo(), 0, -1); + } + + switch (*cut_name) { + case '0001': + case '0002': + dComIfGp_evmng_cutEnd(cut_index); + break; + } + + if (mEvtInfo.i_checkCommandDemoAccrpt() && mEventID != -1) { + if (dComIfGp_evmng_endCheck(mEventID)) { + mEventID = -1; + } + } + } + } else { + if (daPy_getPlayerActorClass()->checkPriActorOwn(this)) { + for (int i = 0; i < dComIfGp_getAttention().GetActionCount(); i++) { + if (dComIfGp_getAttention().ActionTarget(i) == this) { + if (dComIfGp_getAttention().getActionBtnB() != NULL && + dComIfGp_getAttention().getActionBtnB()->mType == 4) + { + dComIfGp_setDoStatusForce(7, 0); + } + } + } + } + + if (fopAcM_checkCarryNow(this)) { + fopAcM_cancelCarryNow(this); + mAttentionInfo.mFlags &= ~0x10; + mEvtInfo.setArchiveName(l_arcName); + i_dComIfGp_getEventManager().setObjectArchive(mEvtInfo.getArchiveName()); + mEventID = i_dComIfGp_getEventManager().getEventIdx(this, "LV8_GATE_ENTRY", -1); + fopAcM_orderOtherEventId(this, mEventID, -1, -1, 0, 1); + } + } + + if (mpBck != NULL) { + mpBck->play(); + } + + cXyz pos(0.0f, 400.0f, 1400.0f); + mDoMtx_stack_c::transS(current.pos); + mDoMtx_stack_c::YrotM(current.angle.y); + mDoMtx_stack_c::multVec(&pos, &pos); + + Z2GetAudioMgr()->seStartLevel(Z2SE_OBJ_MONOLIS_HOLE, &pos, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); + + return 1; } -#pragma pop /* 80D522F0-80D5246C 000730 017C+00 1/0 0/0 0/0 .text daTagLv8Gate_Draw__FP14daTagLv8Gate_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daTagLv8Gate_Draw(daTagLv8Gate_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Draw__FP14daTagLv8Gate_c.s" +static int daTagLv8Gate_Draw(daTagLv8Gate_c* i_this) { + return i_this->draw(); } -#pragma pop /* 80D5246C-80D52474 0008AC 0008+00 1/0 0/0 0/0 .text daTagLv8Gate_IsDelete__FP14daTagLv8Gate_c */ -static bool daTagLv8Gate_IsDelete(daTagLv8Gate_c* param_0) { - return true; +static int daTagLv8Gate_IsDelete(daTagLv8Gate_c* i_this) { + return TRUE; } /* 80D52474-80D524C4 0008B4 0050+00 1/0 0/0 0/0 .text daTagLv8Gate_Delete__FP14daTagLv8Gate_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daTagLv8Gate_Delete(daTagLv8Gate_c* param_0) { - nofralloc -#include "asm/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate/daTagLv8Gate_Delete__FP14daTagLv8Gate_c.s" +static int daTagLv8Gate_Delete(daTagLv8Gate_c* i_this) { + i_this->~daTagLv8Gate_c(); + return TRUE; } -#pragma pop -/* 80D524F0-80D524F0 000024 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +/* 80D52514-80D52534 -00001 0020+00 1/0 0/0 0/0 .data l_daTagLv8Gate_Method */ +static actor_method_class l_daTagLv8Gate_Method = { + (process_method_func)daTagLv8Gate_Create, (process_method_func)daTagLv8Gate_Delete, + (process_method_func)daTagLv8Gate_Execute, (process_method_func)daTagLv8Gate_IsDelete, + (process_method_func)daTagLv8Gate_Draw, +}; + +/* 80D52534-80D52564 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_Lv8Gate */ +extern actor_process_profile_definition g_profile_Tag_Lv8Gate = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_Tag_Lv8Gate, // mProcName + &g_fpcLf_Method.mBase, // mSubMtd + sizeof(daTagLv8Gate_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // mSubMtd + 0x108, // mPriority + &l_daTagLv8Gate_Method, // mSubMtd + 0x40000, // mStatus + 0, // mActorType + fopAc_CULLBOX_CUSTOM_e, // mCullType +};