From 02c7a47f133add5e4c1d8d7f88d1a7bddc13d9ad Mon Sep 17 00:00:00 2001 From: TakaRikka <38417346+TakaRikka@users.noreply.github.com> Date: Sat, 26 Mar 2022 10:17:17 -0700 Subject: [PATCH] move remaining old progress (#186) * move remaining old progress * remove asm --- .../fopCam_Draw__FP12camera_class.s | 18 -- .../createAppend__FiP4cXyzP4cXyz.s | 41 --- .../f_op_kankyo_mng/fopKyM_CreateAppend__Fv.s | 24 -- .../fopKyM_Create__FsPFPv_iPv.s | 21 -- asm/f_op/f_op_kankyo_mng/fopKyM_Delete__FPv.s | 9 - .../fopKyM_createMpillar__FPC4cXyzf.s | 44 ---- .../fopKyM_createWpillar__FPC4cXyzfi.s | 39 --- .../fopKyM_create__FsiP4cXyzP4cXyzPFPv_i.s | 27 -- ...fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i.s | 28 --- asm/f_op/f_op_msg/fopMsg_Delete__FPv.s | 20 -- asm/f_op/f_op_msg/fopMsg_Draw__FPv.s | 11 - asm/f_op/f_op_msg/fopMsg_Execute__FPv.s | 16 -- asm/f_op/f_op_msg/fopMsg_IsDelete__FPv.s | 23 -- .../f_op_msg_mng/append__10J2DPictureFPCcf.s | 13 - ...eateAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi.s | 65 ----- asm/f_op/f_op_msg_mng/fopMsgM_Delete__FPv.s | 9 - .../f_op_msg_mng/fopMsgM_GetAppend__FPv.s | 3 - .../f_op_msg_mng/fopMsgM_SearchByID__FUi.s | 9 - .../fopMsgM_createExpHeap__FUlP7JKRHeap.s | 19 -- ...reate__FsP10fopAc_ac_cP4cXyzPUlPUlPFPv_i.s | 32 --- .../fopMsgM_destroyExpHeap__FP10JKRExpHeap.s | 9 - .../f_op_msg_mng/fopMsgM_messageGet__FPcUl.s | 17 -- .../f_op_msg_mng/fopMsgM_setMessageID__FUi.s | 3 - .../f_op_msg_mng/fopMsgM_setStageLayer__FPv.s | 31 --- .../fop_Timer_create__FsUcUlUcUcffffPFPv_i.s | 32 --- .../insert__10J2DPictureFPCcUcf.s | 14 -- .../setBlendRatio__10J2DPictureFff.s | 28 --- asm/f_op/f_op_overlap/fopOvlp_Delete__FPv.s | 11 - asm/f_op/f_op_overlap/fopOvlp_Draw__FPv.s | 11 - asm/f_op/f_op_overlap/fopOvlp_Execute__FPv.s | 11 - asm/f_op/f_op_overlap/fopOvlp_IsDelete__FPv.s | 11 - ...8mDoCPd_cFP27interface_of_controller_pad.s | 47 ---- .../m_Do_controller_pad/read__8mDoCPd_cFv.s | 64 ----- include/SSystem/SComponent/c_lib.h | 2 +- include/SSystem/SComponent/c_m3d.h | 2 +- include/SSystem/SComponent/c_xyz.h | 2 +- include/d/meter/d_meter_HIO.h | 2 +- include/d/msg/d_msg_object.h | 8 +- include/d/s/d_s_play.h | 2 + include/f_ap/f_ap_game.h | 14 +- include/f_op/f_op_kankyo_mng.h | 18 +- include/f_op/f_op_msg_mng.h | 26 +- include/f_op/f_op_overlap.h | 2 +- include/f_op/f_op_overlap_mng.h | 4 +- include/f_op/f_op_scene.h | 4 +- include/f_op/f_op_scene_mng.h | 12 +- include/f_pc/f_pc_manager.h | 10 + include/f_pc/f_pc_profile.h | 18 +- include/m_Do/m_Do_controller_pad.h | 2 +- libs/JSystem/J2DGraph/J2DGrafContext.cpp | 2 +- libs/JSystem/J3DU/J3DUClipper.cpp | 2 +- libs/JSystem/JKernel/JKRAramArchive.cpp | 2 +- libs/JSystem/JKernel/JKRSolidHeap.cpp | 2 +- libs/JSystem/JMath/JMATrigonometric.cpp | 2 +- .../JSystem/JStudio/JStudio/functionvalue.cpp | 2 +- libs/SSystem/SComponent/c_angle.cpp | 2 +- libs/SSystem/SComponent/c_lib.cpp | 2 +- libs/SSystem/SComponent/c_m3d.cpp | 2 +- libs/SSystem/SComponent/c_m3d_g_pla.cpp | 2 +- libs/SSystem/SComponent/c_math.cpp | 2 +- libs/SSystem/SComponent/c_xyz.cpp | 2 +- libs/Z2AudioLib/Z2Calc.cpp | 2 +- libs/dolphin/mtx/mtx.cpp | 2 +- libs/dolphin/mtx/mtx44.cpp | 2 +- libs/dolphin/mtx/quat.cpp | 2 +- src/d/cc/d_cc_uty.cpp | 1 - src/d/s/d_s_play.cpp | 1 - src/f_ap/f_ap_game.cpp | 4 +- src/f_op/f_op_actor_mng.cpp | 4 +- src/f_op/f_op_camera.cpp | 38 +-- src/f_op/f_op_kankyo_mng.cpp | 224 ++++++----------- src/f_op/f_op_msg.cpp | 61 ++--- src/f_op/f_op_msg_mng.cpp | 237 +++++++----------- src/f_op/f_op_overlap.cpp | 41 +-- src/f_op/f_op_scene_mng.cpp | 4 +- src/m_Do/m_Do_controller_pad.cpp | 112 +++------ 76 files changed, 387 insertions(+), 1260 deletions(-) delete mode 100644 asm/f_op/f_op_camera/fopCam_Draw__FP12camera_class.s delete mode 100644 asm/f_op/f_op_kankyo_mng/createAppend__FiP4cXyzP4cXyz.s delete mode 100644 asm/f_op/f_op_kankyo_mng/fopKyM_CreateAppend__Fv.s delete mode 100644 asm/f_op/f_op_kankyo_mng/fopKyM_Create__FsPFPv_iPv.s delete mode 100644 asm/f_op/f_op_kankyo_mng/fopKyM_Delete__FPv.s delete mode 100644 asm/f_op/f_op_kankyo_mng/fopKyM_createMpillar__FPC4cXyzf.s delete mode 100644 asm/f_op/f_op_kankyo_mng/fopKyM_createWpillar__FPC4cXyzfi.s delete mode 100644 asm/f_op/f_op_kankyo_mng/fopKyM_create__FsiP4cXyzP4cXyzPFPv_i.s delete mode 100644 asm/f_op/f_op_kankyo_mng/fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i.s delete mode 100644 asm/f_op/f_op_msg/fopMsg_Delete__FPv.s delete mode 100644 asm/f_op/f_op_msg/fopMsg_Draw__FPv.s delete mode 100644 asm/f_op/f_op_msg/fopMsg_Execute__FPv.s delete mode 100644 asm/f_op/f_op_msg/fopMsg_IsDelete__FPv.s delete mode 100644 asm/f_op/f_op_msg_mng/append__10J2DPictureFPCcf.s delete mode 100644 asm/f_op/f_op_msg_mng/createAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_Delete__FPv.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_GetAppend__FPv.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_SearchByID__FUi.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_createExpHeap__FUlP7JKRHeap.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_create__FsP10fopAc_ac_cP4cXyzPUlPUlPFPv_i.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_destroyExpHeap__FP10JKRExpHeap.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_messageGet__FPcUl.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_setMessageID__FUi.s delete mode 100644 asm/f_op/f_op_msg_mng/fopMsgM_setStageLayer__FPv.s delete mode 100644 asm/f_op/f_op_msg_mng/fop_Timer_create__FsUcUlUcUcffffPFPv_i.s delete mode 100644 asm/f_op/f_op_msg_mng/insert__10J2DPictureFPCcUcf.s delete mode 100644 asm/f_op/f_op_msg_mng/setBlendRatio__10J2DPictureFff.s delete mode 100644 asm/f_op/f_op_overlap/fopOvlp_Delete__FPv.s delete mode 100644 asm/f_op/f_op_overlap/fopOvlp_Draw__FPv.s delete mode 100644 asm/f_op/f_op_overlap/fopOvlp_Execute__FPv.s delete mode 100644 asm/f_op/f_op_overlap/fopOvlp_IsDelete__FPv.s delete mode 100644 asm/m_Do/m_Do_controller_pad/LRlockCheck__8mDoCPd_cFP27interface_of_controller_pad.s delete mode 100644 asm/m_Do/m_Do_controller_pad/read__8mDoCPd_cFv.s diff --git a/asm/f_op/f_op_camera/fopCam_Draw__FP12camera_class.s b/asm/f_op/f_op_camera/fopCam_Draw__FP12camera_class.s deleted file mode 100644 index 3ea8b7d054..0000000000 --- a/asm/f_op/f_op_camera/fopCam_Draw__FP12camera_class.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_8001E140: -/* 8001E140 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001E144 7C 08 02 A6 */ mflr r0 -/* 8001E148 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001E14C 7C 64 1B 78 */ mr r4, r3 -/* 8001E150 38 60 00 01 */ li r3, 1 -/* 8001E154 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8001E158 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8001E15C 88 05 5E B5 */ lbz r0, 0x5eb5(r5) -/* 8001E160 28 00 00 00 */ cmplwi r0, 0 -/* 8001E164 40 82 00 0C */ bne lbl_8001E170 -/* 8001E168 80 64 02 24 */ lwz r3, 0x224(r4) -/* 8001E16C 48 00 38 B9 */ bl fpcLf_DrawMethod__FP21leafdraw_method_classPv -lbl_8001E170: -/* 8001E170 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001E174 7C 08 03 A6 */ mtlr r0 -/* 8001E178 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001E17C 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_kankyo_mng/createAppend__FiP4cXyzP4cXyz.s b/asm/f_op/f_op_kankyo_mng/createAppend__FiP4cXyzP4cXyz.s deleted file mode 100644 index f1cc41ffe0..0000000000 --- a/asm/f_op/f_op_kankyo_mng/createAppend__FiP4cXyzP4cXyz.s +++ /dev/null @@ -1,41 +0,0 @@ -lbl_8001F6B8: -/* 8001F6B8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8001F6BC 7C 08 02 A6 */ mflr r0 -/* 8001F6C0 90 01 00 24 */ stw r0, 0x24(r1) -/* 8001F6C4 39 61 00 20 */ addi r11, r1, 0x20 -/* 8001F6C8 48 34 2B 15 */ bl _savegpr_29 -/* 8001F6CC 7C 7D 1B 78 */ mr r29, r3 -/* 8001F6D0 7C 9E 23 78 */ mr r30, r4 -/* 8001F6D4 7C BF 2B 78 */ mr r31, r5 -/* 8001F6D8 4B FF FF 89 */ bl fopKyM_CreateAppend__Fv -/* 8001F6DC 28 03 00 00 */ cmplwi r3, 0 -/* 8001F6E0 40 82 00 0C */ bne lbl_8001F6EC -/* 8001F6E4 38 60 00 00 */ li r3, 0 -/* 8001F6E8 48 00 00 48 */ b lbl_8001F730 -lbl_8001F6EC: -/* 8001F6EC 28 1E 00 00 */ cmplwi r30, 0 -/* 8001F6F0 41 82 00 1C */ beq lbl_8001F70C -/* 8001F6F4 C0 1E 00 00 */ lfs f0, 0(r30) -/* 8001F6F8 D0 03 00 00 */ stfs f0, 0(r3) -/* 8001F6FC C0 1E 00 04 */ lfs f0, 4(r30) -/* 8001F700 D0 03 00 04 */ stfs f0, 4(r3) -/* 8001F704 C0 1E 00 08 */ lfs f0, 8(r30) -/* 8001F708 D0 03 00 08 */ stfs f0, 8(r3) -lbl_8001F70C: -/* 8001F70C 28 1F 00 00 */ cmplwi r31, 0 -/* 8001F710 41 82 00 1C */ beq lbl_8001F72C -/* 8001F714 C0 1F 00 00 */ lfs f0, 0(r31) -/* 8001F718 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 8001F71C C0 1F 00 04 */ lfs f0, 4(r31) -/* 8001F720 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 8001F724 C0 1F 00 08 */ lfs f0, 8(r31) -/* 8001F728 D0 03 00 14 */ stfs f0, 0x14(r3) -lbl_8001F72C: -/* 8001F72C 93 A3 00 18 */ stw r29, 0x18(r3) -lbl_8001F730: -/* 8001F730 39 61 00 20 */ addi r11, r1, 0x20 -/* 8001F734 48 34 2A F5 */ bl _restgpr_29 -/* 8001F738 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8001F73C 7C 08 03 A6 */ mtlr r0 -/* 8001F740 38 21 00 20 */ addi r1, r1, 0x20 -/* 8001F744 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_kankyo_mng/fopKyM_CreateAppend__Fv.s b/asm/f_op/f_op_kankyo_mng/fopKyM_CreateAppend__Fv.s deleted file mode 100644 index a930b6dc11..0000000000 --- a/asm/f_op/f_op_kankyo_mng/fopKyM_CreateAppend__Fv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_8001F660: -/* 8001F660 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F664 7C 08 02 A6 */ mflr r0 -/* 8001F668 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F66C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8001F670 38 60 FF FC */ li r3, -4 -/* 8001F674 38 80 00 1C */ li r4, 0x1c -/* 8001F678 48 24 3B B1 */ bl memalignB__3cMlFiUl -/* 8001F67C 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8001F680 41 82 00 20 */ beq lbl_8001F6A0 -/* 8001F684 38 80 00 00 */ li r4, 0 -/* 8001F688 38 A0 00 1C */ li r5, 0x1c -/* 8001F68C 48 25 02 D1 */ bl cLib_memSet__FPviUl -/* 8001F690 C0 02 82 68 */ lfs f0, lit_3713(r2) -/* 8001F694 D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 8001F698 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 8001F69C D0 1F 00 14 */ stfs f0, 0x14(r31) -lbl_8001F6A0: -/* 8001F6A0 7F E3 FB 78 */ mr r3, r31 -/* 8001F6A4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8001F6A8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001F6AC 7C 08 03 A6 */ mtlr r0 -/* 8001F6B0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001F6B4 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_kankyo_mng/fopKyM_Create__FsPFPv_iPv.s b/asm/f_op/f_op_kankyo_mng/fopKyM_Create__FsPFPv_iPv.s deleted file mode 100644 index 111a42a58b..0000000000 --- a/asm/f_op/f_op_kankyo_mng/fopKyM_Create__FsPFPv_iPv.s +++ /dev/null @@ -1,21 +0,0 @@ -lbl_8001F768: -/* 8001F768 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8001F76C 7C 08 02 A6 */ mflr r0 -/* 8001F770 90 01 00 24 */ stw r0, 0x24(r1) -/* 8001F774 39 61 00 20 */ addi r11, r1, 0x20 -/* 8001F778 48 34 2A 65 */ bl _savegpr_29 -/* 8001F77C 7C 7D 1B 78 */ mr r29, r3 -/* 8001F780 7C 9E 23 78 */ mr r30, r4 -/* 8001F784 7C BF 2B 78 */ mr r31, r5 -/* 8001F788 48 00 1F 6D */ bl fpcLy_CurrentLayer__Fv -/* 8001F78C 7F A4 EB 78 */ mr r4, r29 -/* 8001F790 7F C5 F3 78 */ mr r5, r30 -/* 8001F794 38 C0 00 00 */ li r6, 0 -/* 8001F798 7F E7 FB 78 */ mr r7, r31 -/* 8001F79C 48 00 45 F9 */ bl fpcSCtRq_Request__FP11layer_classsPFPvPv_iPvPv -/* 8001F7A0 39 61 00 20 */ addi r11, r1, 0x20 -/* 8001F7A4 48 34 2A 85 */ bl _restgpr_29 -/* 8001F7A8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8001F7AC 7C 08 03 A6 */ mtlr r0 -/* 8001F7B0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8001F7B4 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_kankyo_mng/fopKyM_Delete__FPv.s b/asm/f_op/f_op_kankyo_mng/fopKyM_Delete__FPv.s deleted file mode 100644 index 842bbdc588..0000000000 --- a/asm/f_op/f_op_kankyo_mng/fopKyM_Delete__FPv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8001F748: -/* 8001F748 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F74C 7C 08 02 A6 */ mflr r0 -/* 8001F750 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F754 48 00 29 C5 */ bl fpcM_Delete__FPv -/* 8001F758 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001F75C 7C 08 03 A6 */ mtlr r0 -/* 8001F760 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001F764 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_kankyo_mng/fopKyM_createMpillar__FPC4cXyzf.s b/asm/f_op/f_op_kankyo_mng/fopKyM_createMpillar__FPC4cXyzf.s deleted file mode 100644 index f431493f8b..0000000000 --- a/asm/f_op/f_op_kankyo_mng/fopKyM_createMpillar__FPC4cXyzf.s +++ /dev/null @@ -1,44 +0,0 @@ -lbl_8001F90C: -/* 8001F90C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8001F910 7C 08 02 A6 */ mflr r0 -/* 8001F914 90 01 00 44 */ stw r0, 0x44(r1) -/* 8001F918 39 61 00 40 */ addi r11, r1, 0x40 -/* 8001F91C 48 34 28 BD */ bl _savegpr_28 -/* 8001F920 7C 7C 1B 78 */ mr r28, r3 -/* 8001F924 D0 21 00 20 */ stfs f1, 0x20(r1) -/* 8001F928 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 8001F92C D0 21 00 28 */ stfs f1, 0x28(r1) -/* 8001F930 3B A0 00 00 */ li r29, 0 -/* 8001F934 3B E0 00 00 */ li r31, 0 -/* 8001F938 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8001F93C 3B C3 61 C0 */ addi r30, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -lbl_8001F940: -/* 8001F940 80 7E 5D 3C */ lwz r3, 0x5d3c(r30) -/* 8001F944 38 80 00 00 */ li r4, 0 -/* 8001F948 90 81 00 08 */ stw r4, 8(r1) -/* 8001F94C 38 00 FF FF */ li r0, -1 -/* 8001F950 90 01 00 0C */ stw r0, 0xc(r1) -/* 8001F954 90 81 00 10 */ stw r4, 0x10(r1) -/* 8001F958 90 81 00 14 */ stw r4, 0x14(r1) -/* 8001F95C 90 81 00 18 */ stw r4, 0x18(r1) -/* 8001F960 38 80 00 00 */ li r4, 0 -/* 8001F964 38 AD 80 40 */ la r5, m_name(r13) /* 804505C0-_SDA_BASE_ */ -/* 8001F968 7C A5 FA 2E */ lhzx r5, r5, r31 -/* 8001F96C 7F 86 E3 78 */ mr r6, r28 -/* 8001F970 38 E0 00 00 */ li r7, 0 -/* 8001F974 39 00 00 00 */ li r8, 0 -/* 8001F978 39 21 00 20 */ addi r9, r1, 0x20 -/* 8001F97C 39 40 00 FF */ li r10, 0xff -/* 8001F980 C0 22 82 68 */ lfs f1, lit_3713(r2) -/* 8001F984 48 02 D1 0D */ bl set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf -/* 8001F988 3B BD 00 01 */ addi r29, r29, 1 -/* 8001F98C 2C 1D 00 02 */ cmpwi r29, 2 -/* 8001F990 3B FF 00 02 */ addi r31, r31, 2 -/* 8001F994 41 80 FF AC */ blt lbl_8001F940 -/* 8001F998 38 60 FF FF */ li r3, -1 -/* 8001F99C 39 61 00 40 */ addi r11, r1, 0x40 -/* 8001F9A0 48 34 28 85 */ bl _restgpr_28 -/* 8001F9A4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8001F9A8 7C 08 03 A6 */ mtlr r0 -/* 8001F9AC 38 21 00 40 */ addi r1, r1, 0x40 -/* 8001F9B0 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_kankyo_mng/fopKyM_createWpillar__FPC4cXyzfi.s b/asm/f_op/f_op_kankyo_mng/fopKyM_createWpillar__FPC4cXyzfi.s deleted file mode 100644 index 28bfeed4f9..0000000000 --- a/asm/f_op/f_op_kankyo_mng/fopKyM_createWpillar__FPC4cXyzfi.s +++ /dev/null @@ -1,39 +0,0 @@ -lbl_8001F87C: -/* 8001F87C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8001F880 7C 08 02 A6 */ mflr r0 -/* 8001F884 90 01 00 24 */ stw r0, 0x24(r1) -/* 8001F888 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 8001F88C F3 E1 00 18 */ psq_st f31, 24(r1), 0, 0 /* qr0 */ -/* 8001F890 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8001F894 93 C1 00 08 */ stw r30, 8(r1) -/* 8001F898 7C 7E 1B 78 */ mr r30, r3 -/* 8001F89C FF E0 08 90 */ fmr f31, f1 -/* 8001F8A0 7C 9F 23 78 */ mr r31, r4 -/* 8001F8A4 4B FF FD BD */ bl fopKyM_CreateAppend__Fv -/* 8001F8A8 7C 65 1B 79 */ or. r5, r3, r3 -/* 8001F8AC 40 82 00 0C */ bne lbl_8001F8B8 -/* 8001F8B0 38 60 FF FF */ li r3, -1 -/* 8001F8B4 48 00 00 38 */ b lbl_8001F8EC -lbl_8001F8B8: -/* 8001F8B8 C0 1E 00 00 */ lfs f0, 0(r30) -/* 8001F8BC D0 05 00 00 */ stfs f0, 0(r5) -/* 8001F8C0 C0 1E 00 04 */ lfs f0, 4(r30) -/* 8001F8C4 D0 05 00 04 */ stfs f0, 4(r5) -/* 8001F8C8 C0 1E 00 08 */ lfs f0, 8(r30) -/* 8001F8CC D0 05 00 08 */ stfs f0, 8(r5) -/* 8001F8D0 D3 E5 00 0C */ stfs f31, 0xc(r5) -/* 8001F8D4 D3 E5 00 10 */ stfs f31, 0x10(r5) -/* 8001F8D8 D3 E5 00 14 */ stfs f31, 0x14(r5) -/* 8001F8DC 93 E5 00 18 */ stw r31, 0x18(r5) -/* 8001F8E0 38 60 03 02 */ li r3, 0x302 -/* 8001F8E4 38 80 00 00 */ li r4, 0 -/* 8001F8E8 4B FF FE 81 */ bl fopKyM_Create__FsPFPv_iPv -lbl_8001F8EC: -/* 8001F8EC E3 E1 00 18 */ psq_l f31, 24(r1), 0, 0 /* qr0 */ -/* 8001F8F0 CB E1 00 10 */ lfd f31, 0x10(r1) -/* 8001F8F4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8001F8F8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8001F8FC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8001F900 7C 08 03 A6 */ mtlr r0 -/* 8001F904 38 21 00 20 */ addi r1, r1, 0x20 -/* 8001F908 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_kankyo_mng/fopKyM_create__FsiP4cXyzP4cXyzPFPv_i.s b/asm/f_op/f_op_kankyo_mng/fopKyM_create__FsiP4cXyzP4cXyzPFPv_i.s deleted file mode 100644 index dc3ac4b995..0000000000 --- a/asm/f_op/f_op_kankyo_mng/fopKyM_create__FsiP4cXyzP4cXyzPFPv_i.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_8001F7B8: -/* 8001F7B8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F7BC 7C 08 02 A6 */ mflr r0 -/* 8001F7C0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F7C4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8001F7C8 93 C1 00 08 */ stw r30, 8(r1) -/* 8001F7CC 7C 7E 1B 78 */ mr r30, r3 -/* 8001F7D0 7C FF 3B 78 */ mr r31, r7 -/* 8001F7D4 7C 83 23 78 */ mr r3, r4 -/* 8001F7D8 7C A4 2B 78 */ mr r4, r5 -/* 8001F7DC 7C C5 33 78 */ mr r5, r6 -/* 8001F7E0 4B FF FE D9 */ bl createAppend__FiP4cXyzP4cXyz -/* 8001F7E4 7C 65 1B 79 */ or. r5, r3, r3 -/* 8001F7E8 40 82 00 0C */ bne lbl_8001F7F4 -/* 8001F7EC 38 60 FF FF */ li r3, -1 -/* 8001F7F0 48 00 00 10 */ b lbl_8001F800 -lbl_8001F7F4: -/* 8001F7F4 7F C3 F3 78 */ mr r3, r30 -/* 8001F7F8 7F E4 FB 78 */ mr r4, r31 -/* 8001F7FC 4B FF FF 6D */ bl fopKyM_Create__FsPFPv_iPv -lbl_8001F800: -/* 8001F800 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8001F804 83 C1 00 08 */ lwz r30, 8(r1) -/* 8001F808 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001F80C 7C 08 03 A6 */ mtlr r0 -/* 8001F810 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001F814 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_kankyo_mng/fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i.s b/asm/f_op/f_op_kankyo_mng/fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i.s deleted file mode 100644 index cd26ee7005..0000000000 --- a/asm/f_op/f_op_kankyo_mng/fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_8001F818: -/* 8001F818 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F81C 7C 08 02 A6 */ mflr r0 -/* 8001F820 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F824 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8001F828 93 C1 00 08 */ stw r30, 8(r1) -/* 8001F82C 7C 7E 1B 78 */ mr r30, r3 -/* 8001F830 7C FF 3B 78 */ mr r31, r7 -/* 8001F834 7C 83 23 78 */ mr r3, r4 -/* 8001F838 7C A4 2B 78 */ mr r4, r5 -/* 8001F83C 7C C5 33 78 */ mr r5, r6 -/* 8001F840 4B FF FE 79 */ bl createAppend__FiP4cXyzP4cXyz -/* 8001F844 7C 66 1B 79 */ or. r6, r3, r3 -/* 8001F848 40 82 00 0C */ bne lbl_8001F854 -/* 8001F84C 38 60 00 00 */ li r3, 0 -/* 8001F850 48 00 00 14 */ b lbl_8001F864 -lbl_8001F854: -/* 8001F854 7F C3 F3 78 */ mr r3, r30 -/* 8001F858 7F E4 FB 78 */ mr r4, r31 -/* 8001F85C 38 A0 00 00 */ li r5, 0 -/* 8001F860 48 00 2A 95 */ bl fpcM_FastCreate__FsPFPv_iPvPv -lbl_8001F864: -/* 8001F864 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8001F868 83 C1 00 08 */ lwz r30, 8(r1) -/* 8001F86C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001F870 7C 08 03 A6 */ mtlr r0 -/* 8001F874 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001F878 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg/fopMsg_Delete__FPv.s b/asm/f_op/f_op_msg/fopMsg_Delete__FPv.s deleted file mode 100644 index f4b75bd41a..0000000000 --- a/asm/f_op/f_op_msg/fopMsg_Delete__FPv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_8001F53C: -/* 8001F53C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F540 7C 08 02 A6 */ mflr r0 -/* 8001F544 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F548 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8001F54C 93 C1 00 08 */ stw r30, 8(r1) -/* 8001F550 7C 7E 1B 78 */ mr r30, r3 -/* 8001F554 80 63 00 D8 */ lwz r3, 0xd8(r3) -/* 8001F558 7F C4 F3 78 */ mr r4, r30 -/* 8001F55C 48 00 2F 4D */ bl fpcMtd_Delete__FP20process_method_classPv -/* 8001F560 7C 7F 1B 78 */ mr r31, r3 -/* 8001F564 38 7E 00 C4 */ addi r3, r30, 0xc4 -/* 8001F568 48 00 0F 6D */ bl fopDwTg_DrawQTo__FP16create_tag_class -/* 8001F56C 7F E3 FB 78 */ mr r3, r31 -/* 8001F570 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8001F574 83 C1 00 08 */ lwz r30, 8(r1) -/* 8001F578 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001F57C 7C 08 03 A6 */ mtlr r0 -/* 8001F580 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001F584 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg/fopMsg_Draw__FPv.s b/asm/f_op/f_op_msg/fopMsg_Draw__FPv.s deleted file mode 100644 index bf6dc63dcd..0000000000 --- a/asm/f_op/f_op_msg/fopMsg_Draw__FPv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8001F488: -/* 8001F488 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F48C 7C 08 02 A6 */ mflr r0 -/* 8001F490 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F494 7C 64 1B 78 */ mr r4, r3 -/* 8001F498 80 63 00 D8 */ lwz r3, 0xd8(r3) -/* 8001F49C 48 00 25 89 */ bl fpcLf_DrawMethod__FP21leafdraw_method_classPv -/* 8001F4A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001F4A4 7C 08 03 A6 */ mtlr r0 -/* 8001F4A8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001F4AC 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg/fopMsg_Execute__FPv.s b/asm/f_op/f_op_msg/fopMsg_Execute__FPv.s deleted file mode 100644 index a15d7b2fef..0000000000 --- a/asm/f_op/f_op_msg/fopMsg_Execute__FPv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_8001F4B0: -/* 8001F4B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F4B4 7C 08 02 A6 */ mflr r0 -/* 8001F4B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F4BC 7C 64 1B 78 */ mr r4, r3 -/* 8001F4C0 38 60 00 01 */ li r3, 1 -/* 8001F4C4 88 0D 8B A4 */ lbz r0, struct_80451124+0x0(r13) -/* 8001F4C8 7C 00 07 75 */ extsb. r0, r0 -/* 8001F4CC 40 82 00 0C */ bne lbl_8001F4D8 -/* 8001F4D0 80 64 00 D8 */ lwz r3, 0xd8(r4) -/* 8001F4D4 48 00 2F 8D */ bl fpcMtd_Execute__FP20process_method_classPv -lbl_8001F4D8: -/* 8001F4D8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001F4DC 7C 08 03 A6 */ mtlr r0 -/* 8001F4E0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001F4E4 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg/fopMsg_IsDelete__FPv.s b/asm/f_op/f_op_msg/fopMsg_IsDelete__FPv.s deleted file mode 100644 index 4ed0d7b558..0000000000 --- a/asm/f_op/f_op_msg/fopMsg_IsDelete__FPv.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_8001F4E8: -/* 8001F4E8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F4EC 7C 08 02 A6 */ mflr r0 -/* 8001F4F0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F4F4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8001F4F8 93 C1 00 08 */ stw r30, 8(r1) -/* 8001F4FC 7C 7E 1B 78 */ mr r30, r3 -/* 8001F500 80 63 00 D8 */ lwz r3, 0xd8(r3) -/* 8001F504 7F C4 F3 78 */ mr r4, r30 -/* 8001F508 48 00 2F 7D */ bl fpcMtd_IsDelete__FP20process_method_classPv -/* 8001F50C 7C 7F 1B 78 */ mr r31, r3 -/* 8001F510 2C 1F 00 01 */ cmpwi r31, 1 -/* 8001F514 40 82 00 0C */ bne lbl_8001F520 -/* 8001F518 38 7E 00 C4 */ addi r3, r30, 0xc4 -/* 8001F51C 48 00 0F B9 */ bl fopDwTg_DrawQTo__FP16create_tag_class -lbl_8001F520: -/* 8001F520 7F E3 FB 78 */ mr r3, r31 -/* 8001F524 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8001F528 83 C1 00 08 */ lwz r30, 8(r1) -/* 8001F52C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001F530 7C 08 03 A6 */ mtlr r0 -/* 8001F534 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001F538 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/append__10J2DPictureFPCcf.s b/asm/f_op/f_op_msg_mng/append__10J2DPictureFPCcf.s deleted file mode 100644 index 0d5f2cb8dd..0000000000 --- a/asm/f_op/f_op_msg_mng/append__10J2DPictureFPCcf.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_80020338: -/* 80020338 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8002033C 7C 08 02 A6 */ mflr r0 -/* 80020340 90 01 00 14 */ stw r0, 0x14(r1) -/* 80020344 88 A3 01 08 */ lbz r5, 0x108(r3) -/* 80020348 81 83 00 00 */ lwz r12, 0(r3) -/* 8002034C 81 8C 00 CC */ lwz r12, 0xcc(r12) -/* 80020350 7D 89 03 A6 */ mtctr r12 -/* 80020354 4E 80 04 21 */ bctrl -/* 80020358 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8002035C 7C 08 03 A6 */ mtlr r0 -/* 80020360 38 21 00 10 */ addi r1, r1, 0x10 -/* 80020364 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/createAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi.s b/asm/f_op/f_op_msg_mng/createAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi.s deleted file mode 100644 index d4db79f364..0000000000 --- a/asm/f_op/f_op_msg_mng/createAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi.s +++ /dev/null @@ -1,65 +0,0 @@ -lbl_8001FA6C: -/* 8001FA6C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8001FA70 7C 08 02 A6 */ mflr r0 -/* 8001FA74 90 01 00 34 */ stw r0, 0x34(r1) -/* 8001FA78 39 61 00 30 */ addi r11, r1, 0x30 -/* 8001FA7C 48 34 27 55 */ bl _savegpr_26 -/* 8001FA80 7C 7A 1B 78 */ mr r26, r3 -/* 8001FA84 7C 9B 23 78 */ mr r27, r4 -/* 8001FA88 7C BC 2B 78 */ mr r28, r5 -/* 8001FA8C 7C DD 33 78 */ mr r29, r6 -/* 8001FA90 7C FE 3B 78 */ mr r30, r7 -/* 8001FA94 38 60 FF FC */ li r3, -4 -/* 8001FA98 38 80 00 1C */ li r4, 0x1c -/* 8001FA9C 48 24 37 8D */ bl memalignB__3cMlFiUl -/* 8001FAA0 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8001FAA4 40 82 00 0C */ bne lbl_8001FAB0 -/* 8001FAA8 38 60 00 00 */ li r3, 0 -/* 8001FAAC 48 00 00 8C */ b lbl_8001FB38 -lbl_8001FAB0: -/* 8001FAB0 93 5F 00 00 */ stw r26, 0(r31) -/* 8001FAB4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8001FAB8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8001FABC 80 03 5D BC */ lwz r0, 0x5dbc(r3) -/* 8001FAC0 28 00 00 00 */ cmplwi r0, 0 -/* 8001FAC4 41 82 00 0C */ beq lbl_8001FAD0 -/* 8001FAC8 7F 43 D3 78 */ mr r3, r26 -/* 8001FACC 48 21 87 A1 */ bl setTalkActor__12dMsgObject_cFP10fopAc_ac_c -lbl_8001FAD0: -/* 8001FAD0 28 1C 00 00 */ cmplwi r28, 0 -/* 8001FAD4 41 82 00 0C */ beq lbl_8001FAE0 -/* 8001FAD8 80 1C 00 00 */ lwz r0, 0(r28) -/* 8001FADC 90 1F 00 10 */ stw r0, 0x10(r31) -lbl_8001FAE0: -/* 8001FAE0 28 1D 00 00 */ cmplwi r29, 0 -/* 8001FAE4 41 82 00 0C */ beq lbl_8001FAF0 -/* 8001FAE8 80 1D 00 00 */ lwz r0, 0(r29) -/* 8001FAEC 90 1F 00 14 */ stw r0, 0x14(r31) -lbl_8001FAF0: -/* 8001FAF0 28 1B 00 00 */ cmplwi r27, 0 -/* 8001FAF4 41 82 00 20 */ beq lbl_8001FB14 -/* 8001FAF8 C0 1B 00 00 */ lfs f0, 0(r27) -/* 8001FAFC D0 1F 00 04 */ stfs f0, 4(r31) -/* 8001FB00 C0 1B 00 04 */ lfs f0, 4(r27) -/* 8001FB04 D0 1F 00 08 */ stfs f0, 8(r31) -/* 8001FB08 C0 1B 00 08 */ lfs f0, 8(r27) -/* 8001FB0C D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 8001FB10 48 00 00 20 */ b lbl_8001FB30 -lbl_8001FB14: -/* 8001FB14 C0 02 82 70 */ lfs f0, lit_3902(r2) -/* 8001FB18 D0 01 00 08 */ stfs f0, 8(r1) -/* 8001FB1C D0 01 00 0C */ stfs f0, 0xc(r1) -/* 8001FB20 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8001FB24 D0 1F 00 04 */ stfs f0, 4(r31) -/* 8001FB28 D0 1F 00 08 */ stfs f0, 8(r31) -/* 8001FB2C D0 1F 00 0C */ stfs f0, 0xc(r31) -lbl_8001FB30: -/* 8001FB30 93 DF 00 18 */ stw r30, 0x18(r31) -/* 8001FB34 7F E3 FB 78 */ mr r3, r31 -lbl_8001FB38: -/* 8001FB38 39 61 00 30 */ addi r11, r1, 0x30 -/* 8001FB3C 48 34 26 E1 */ bl _restgpr_26 -/* 8001FB40 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8001FB44 7C 08 03 A6 */ mtlr r0 -/* 8001FB48 38 21 00 30 */ addi r1, r1, 0x30 -/* 8001FB4C 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_Delete__FPv.s b/asm/f_op/f_op_msg_mng/fopMsgM_Delete__FPv.s deleted file mode 100644 index b8a214b33d..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_Delete__FPv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8001FA4C: -/* 8001FA4C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001FA50 7C 08 02 A6 */ mflr r0 -/* 8001FA54 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001FA58 48 00 26 C1 */ bl fpcM_Delete__FPv -/* 8001FA5C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001FA60 7C 08 03 A6 */ mtlr r0 -/* 8001FA64 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001FA68 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_GetAppend__FPv.s b/asm/f_op/f_op_msg_mng/fopMsgM_GetAppend__FPv.s deleted file mode 100644 index 24dd7223c7..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_GetAppend__FPv.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_8001FA44: -/* 8001FA44 80 63 00 AC */ lwz r3, 0xac(r3) -/* 8001FA48 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_SearchByID__FUi.s b/asm/f_op/f_op_msg_mng/fopMsgM_SearchByID__FUi.s deleted file mode 100644 index 38bbf1bbb1..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_SearchByID__FUi.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8001FA24: -/* 8001FA24 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001FA28 7C 08 02 A6 */ mflr r0 -/* 8001FA2C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001FA30 48 00 19 29 */ bl fpcEx_SearchByID__FUi -/* 8001FA34 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001FA38 7C 08 03 A6 */ mtlr r0 -/* 8001FA3C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001FA40 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_createExpHeap__FUlP7JKRHeap.s b/asm/f_op/f_op_msg_mng/fopMsgM_createExpHeap__FUlP7JKRHeap.s deleted file mode 100644 index a0446a2213..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_createExpHeap__FUlP7JKRHeap.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_8002039C: -/* 8002039C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800203A0 7C 08 02 A6 */ mflr r0 -/* 800203A4 90 01 00 14 */ stw r0, 0x14(r1) -/* 800203A8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800203AC 7C 7F 1B 78 */ mr r31, r3 -/* 800203B0 28 04 00 00 */ cmplwi r4, 0 -/* 800203B4 40 82 00 0C */ bne lbl_800203C0 -/* 800203B8 4B FE E9 99 */ bl mDoExt_getGameHeap__Fv -/* 800203BC 7C 64 1B 78 */ mr r4, r3 -lbl_800203C0: -/* 800203C0 7F E3 FB 78 */ mr r3, r31 -/* 800203C4 38 A0 00 00 */ li r5, 0 -/* 800203C8 48 2A EA 65 */ bl create__10JKRExpHeapFUlP7JKRHeapb -/* 800203CC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800203D0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800203D4 7C 08 03 A6 */ mtlr r0 -/* 800203D8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800203DC 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_create__FsP10fopAc_ac_cP4cXyzPUlPUlPFPv_i.s b/asm/f_op/f_op_msg_mng/fopMsgM_create__FsP10fopAc_ac_cP4cXyzPUlPUlPFPv_i.s deleted file mode 100644 index 270cfcb11c..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_create__FsP10fopAc_ac_cP4cXyzPUlPUlPFPv_i.s +++ /dev/null @@ -1,32 +0,0 @@ -lbl_8001FC4C: -/* 8001FC4C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8001FC50 7C 08 02 A6 */ mflr r0 -/* 8001FC54 90 01 00 24 */ stw r0, 0x24(r1) -/* 8001FC58 39 61 00 20 */ addi r11, r1, 0x20 -/* 8001FC5C 48 34 25 81 */ bl _savegpr_29 -/* 8001FC60 7C 7D 1B 78 */ mr r29, r3 -/* 8001FC64 7D 1E 43 78 */ mr r30, r8 -/* 8001FC68 7C 83 23 78 */ mr r3, r4 -/* 8001FC6C 7C A4 2B 78 */ mr r4, r5 -/* 8001FC70 7C C5 33 78 */ mr r5, r6 -/* 8001FC74 7C E6 3B 78 */ mr r6, r7 -/* 8001FC78 38 E0 FF FF */ li r7, -1 -/* 8001FC7C 4B FF FD F1 */ bl createAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi -/* 8001FC80 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8001FC84 40 82 00 0C */ bne lbl_8001FC90 -/* 8001FC88 38 60 FF FF */ li r3, -1 -/* 8001FC8C 48 00 00 1C */ b lbl_8001FCA8 -lbl_8001FC90: -/* 8001FC90 48 00 1A 65 */ bl fpcLy_CurrentLayer__Fv -/* 8001FC94 7F A4 EB 78 */ mr r4, r29 -/* 8001FC98 7F C5 F3 78 */ mr r5, r30 -/* 8001FC9C 38 C0 00 00 */ li r6, 0 -/* 8001FCA0 7F E7 FB 78 */ mr r7, r31 -/* 8001FCA4 48 00 40 F1 */ bl fpcSCtRq_Request__FP11layer_classsPFPvPv_iPvPv -lbl_8001FCA8: -/* 8001FCA8 39 61 00 20 */ addi r11, r1, 0x20 -/* 8001FCAC 48 34 25 7D */ bl _restgpr_29 -/* 8001FCB0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8001FCB4 7C 08 03 A6 */ mtlr r0 -/* 8001FCB8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8001FCBC 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_destroyExpHeap__FP10JKRExpHeap.s b/asm/f_op/f_op_msg_mng/fopMsgM_destroyExpHeap__FP10JKRExpHeap.s deleted file mode 100644 index fb7f0de4c7..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_destroyExpHeap__FP10JKRExpHeap.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_800203E0: -/* 800203E0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800203E4 7C 08 02 A6 */ mflr r0 -/* 800203E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800203EC 48 2A E0 5D */ bl destroy__7JKRHeapFv -/* 800203F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800203F4 7C 08 03 A6 */ mtlr r0 -/* 800203F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800203FC 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_messageGet__FPcUl.s b/asm/f_op/f_op_msg_mng/fopMsgM_messageGet__FPcUl.s deleted file mode 100644 index 6230d682cf..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_messageGet__FPcUl.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_800200C0: -/* 800200C0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800200C4 7C 08 02 A6 */ mflr r0 -/* 800200C8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800200CC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800200D0 7C 7F 1B 78 */ mr r31, r3 -/* 800200D4 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 800200D8 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 800200DC 7F E5 FB 78 */ mr r5, r31 -/* 800200E0 38 C0 00 00 */ li r6, 0 -/* 800200E4 48 1F C1 6D */ bl getString__13dMeter2Info_cFUlPcP14JMSMesgEntry_c -/* 800200E8 7F E3 FB 78 */ mr r3, r31 -/* 800200EC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800200F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800200F4 7C 08 03 A6 */ mtlr r0 -/* 800200F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800200FC 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_setMessageID__FUi.s b/asm/f_op/f_op_msg_mng/fopMsgM_setMessageID__FUi.s deleted file mode 100644 index 199e9b4aac..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_setMessageID__FUi.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_80020100: -/* 80020100 90 6D 80 48 */ stw r3, i_msgID(r13) -/* 80020104 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fopMsgM_setStageLayer__FPv.s b/asm/f_op/f_op_msg_mng/fopMsgM_setStageLayer__FPv.s deleted file mode 100644 index b92ad25a30..0000000000 --- a/asm/f_op/f_op_msg_mng/fopMsgM_setStageLayer__FPv.s +++ /dev/null @@ -1,31 +0,0 @@ -lbl_8001F9B4: -/* 8001F9B4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001F9B8 7C 08 02 A6 */ mflr r0 -/* 8001F9BC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001F9C0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8001F9C4 93 C1 00 08 */ stw r30, 8(r1) -/* 8001F9C8 7C 7E 1B 78 */ mr r30, r3 -/* 8001F9CC 80 6D 87 E0 */ lwz r3, mProcID__20dStage_roomControl_c(r13) -/* 8001F9D0 4B FF F2 E1 */ bl fopScnM_SearchByID__FUi -/* 8001F9D4 7C 7F 1B 78 */ mr r31, r3 -/* 8001F9D8 80 6D 87 C0 */ lwz r3, g_fpcNd_type(r13) -/* 8001F9DC 80 9F 00 B4 */ lwz r4, 0xb4(r31) -/* 8001F9E0 48 00 0C 6D */ bl fpcBs_Is_JustOfType__Fii -/* 8001F9E4 2C 03 00 00 */ cmpwi r3, 0 -/* 8001F9E8 41 82 00 0C */ beq lbl_8001F9F4 -/* 8001F9EC 80 9F 00 C8 */ lwz r4, 0xc8(r31) -/* 8001F9F0 48 00 00 08 */ b lbl_8001F9F8 -lbl_8001F9F4: -/* 8001F9F4 38 80 FF FF */ li r4, -1 -lbl_8001F9F8: -/* 8001F9F8 38 7E 00 68 */ addi r3, r30, 0x68 -/* 8001F9FC 3C A0 00 01 */ lis r5, 0x0001 /* 0x0000FFFD@ha */ -/* 8001FA00 38 A5 FF FD */ addi r5, r5, 0xFFFD /* 0x0000FFFD@l */ -/* 8001FA04 7C A6 2B 78 */ mr r6, r5 -/* 8001FA08 48 00 38 E1 */ bl fpcPi_Change__FP22process_priority_classUiUsUs -/* 8001FA0C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8001FA10 83 C1 00 08 */ lwz r30, 8(r1) -/* 8001FA14 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001FA18 7C 08 03 A6 */ mtlr r0 -/* 8001FA1C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001FA20 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/fop_Timer_create__FsUcUlUcUcffffPFPv_i.s b/asm/f_op/f_op_msg_mng/fop_Timer_create__FsUcUlUcUcffffPFPv_i.s deleted file mode 100644 index 9bdd6b6636..0000000000 --- a/asm/f_op/f_op_msg_mng/fop_Timer_create__FsUcUlUcUcffffPFPv_i.s +++ /dev/null @@ -1,32 +0,0 @@ -lbl_8001FCC0: -/* 8001FCC0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8001FCC4 7C 08 02 A6 */ mflr r0 -/* 8001FCC8 90 01 00 24 */ stw r0, 0x24(r1) -/* 8001FCCC 39 61 00 20 */ addi r11, r1, 0x20 -/* 8001FCD0 48 34 25 0D */ bl _savegpr_29 -/* 8001FCD4 7C 7D 1B 78 */ mr r29, r3 -/* 8001FCD8 7D 1E 43 78 */ mr r30, r8 -/* 8001FCDC 54 83 06 3E */ clrlwi r3, r4, 0x18 -/* 8001FCE0 7C A4 2B 78 */ mr r4, r5 -/* 8001FCE4 7C C5 33 78 */ mr r5, r6 -/* 8001FCE8 7C E6 3B 78 */ mr r6, r7 -/* 8001FCEC 38 E0 FF FF */ li r7, -1 -/* 8001FCF0 4B FF FE 61 */ bl createTimerAppend__FiUlUcUcffffUi -/* 8001FCF4 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8001FCF8 40 82 00 0C */ bne lbl_8001FD04 -/* 8001FCFC 38 60 FF FF */ li r3, -1 -/* 8001FD00 48 00 00 1C */ b lbl_8001FD1C -lbl_8001FD04: -/* 8001FD04 48 00 19 F1 */ bl fpcLy_CurrentLayer__Fv -/* 8001FD08 7F A4 EB 78 */ mr r4, r29 -/* 8001FD0C 7F C5 F3 78 */ mr r5, r30 -/* 8001FD10 38 C0 00 00 */ li r6, 0 -/* 8001FD14 7F E7 FB 78 */ mr r7, r31 -/* 8001FD18 48 00 40 7D */ bl fpcSCtRq_Request__FP11layer_classsPFPvPv_iPvPv -lbl_8001FD1C: -/* 8001FD1C 39 61 00 20 */ addi r11, r1, 0x20 -/* 8001FD20 48 34 25 09 */ bl _restgpr_29 -/* 8001FD24 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8001FD28 7C 08 03 A6 */ mtlr r0 -/* 8001FD2C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8001FD30 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/insert__10J2DPictureFPCcUcf.s b/asm/f_op/f_op_msg_mng/insert__10J2DPictureFPCcUcf.s deleted file mode 100644 index fc84210879..0000000000 --- a/asm/f_op/f_op_msg_mng/insert__10J2DPictureFPCcUcf.s +++ /dev/null @@ -1,14 +0,0 @@ -lbl_80020368: -/* 80020368 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8002036C 7C 08 02 A6 */ mflr r0 -/* 80020370 90 01 00 14 */ stw r0, 0x14(r1) -/* 80020374 7C A6 2B 78 */ mr r6, r5 -/* 80020378 38 A0 00 00 */ li r5, 0 -/* 8002037C 81 83 00 00 */ lwz r12, 0(r3) -/* 80020380 81 8C 00 D0 */ lwz r12, 0xd0(r12) -/* 80020384 7D 89 03 A6 */ mtctr r12 -/* 80020388 4E 80 04 21 */ bctrl -/* 8002038C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80020390 7C 08 03 A6 */ mtlr r0 -/* 80020394 38 21 00 10 */ addi r1, r1, 0x10 -/* 80020398 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_msg_mng/setBlendRatio__10J2DPictureFff.s b/asm/f_op/f_op_msg_mng/setBlendRatio__10J2DPictureFff.s deleted file mode 100644 index 21e7d27882..0000000000 --- a/asm/f_op/f_op_msg_mng/setBlendRatio__10J2DPictureFff.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_800202CC: -/* 800202CC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 800202D0 7C 08 02 A6 */ mflr r0 -/* 800202D4 90 01 00 24 */ stw r0, 0x24(r1) -/* 800202D8 DB E1 00 18 */ stfd f31, 0x18(r1) -/* 800202DC DB C1 00 10 */ stfd f30, 0x10(r1) -/* 800202E0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800202E4 7C 7F 1B 78 */ mr r31, r3 -/* 800202E8 FF C0 08 90 */ fmr f30, f1 -/* 800202EC FF E0 10 90 */ fmr f31, f2 -/* 800202F0 81 83 00 00 */ lwz r12, 0(r3) -/* 800202F4 81 8C 01 08 */ lwz r12, 0x108(r12) -/* 800202F8 7D 89 03 A6 */ mtctr r12 -/* 800202FC 4E 80 04 21 */ bctrl -/* 80020300 7F E3 FB 78 */ mr r3, r31 -/* 80020304 FC 20 F0 90 */ fmr f1, f30 -/* 80020308 FC 40 F8 90 */ fmr f2, f31 -/* 8002030C 81 9F 00 00 */ lwz r12, 0(r31) -/* 80020310 81 8C 01 0C */ lwz r12, 0x10c(r12) -/* 80020314 7D 89 03 A6 */ mtctr r12 -/* 80020318 4E 80 04 21 */ bctrl -/* 8002031C CB E1 00 18 */ lfd f31, 0x18(r1) -/* 80020320 CB C1 00 10 */ lfd f30, 0x10(r1) -/* 80020324 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80020328 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8002032C 7C 08 03 A6 */ mtlr r0 -/* 80020330 38 21 00 20 */ addi r1, r1, 0x20 -/* 80020334 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_overlap/fopOvlp_Delete__FPv.s b/asm/f_op/f_op_overlap/fopOvlp_Delete__FPv.s deleted file mode 100644 index ad28aaf9fa..0000000000 --- a/asm/f_op/f_op_overlap/fopOvlp_Delete__FPv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8001E3F4: -/* 8001E3F4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001E3F8 7C 08 02 A6 */ mflr r0 -/* 8001E3FC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001E400 7C 64 1B 78 */ mr r4, r3 -/* 8001E404 80 63 00 C0 */ lwz r3, 0xc0(r3) -/* 8001E408 48 00 40 A1 */ bl fpcMtd_Delete__FP20process_method_classPv -/* 8001E40C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001E410 7C 08 03 A6 */ mtlr r0 -/* 8001E414 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001E418 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_overlap/fopOvlp_Draw__FPv.s b/asm/f_op/f_op_overlap/fopOvlp_Draw__FPv.s deleted file mode 100644 index 275012f249..0000000000 --- a/asm/f_op/f_op_overlap/fopOvlp_Draw__FPv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8001E37C: -/* 8001E37C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001E380 7C 08 02 A6 */ mflr r0 -/* 8001E384 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001E388 7C 64 1B 78 */ mr r4, r3 -/* 8001E38C 80 63 00 C0 */ lwz r3, 0xc0(r3) -/* 8001E390 48 00 36 95 */ bl fpcLf_DrawMethod__FP21leafdraw_method_classPv -/* 8001E394 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001E398 7C 08 03 A6 */ mtlr r0 -/* 8001E39C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001E3A0 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_overlap/fopOvlp_Execute__FPv.s b/asm/f_op/f_op_overlap/fopOvlp_Execute__FPv.s deleted file mode 100644 index 2919436874..0000000000 --- a/asm/f_op/f_op_overlap/fopOvlp_Execute__FPv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8001E3A4: -/* 8001E3A4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001E3A8 7C 08 02 A6 */ mflr r0 -/* 8001E3AC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001E3B0 7C 64 1B 78 */ mr r4, r3 -/* 8001E3B4 80 63 00 C0 */ lwz r3, 0xc0(r3) -/* 8001E3B8 48 00 40 A9 */ bl fpcMtd_Execute__FP20process_method_classPv -/* 8001E3BC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001E3C0 7C 08 03 A6 */ mtlr r0 -/* 8001E3C4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001E3C8 4E 80 00 20 */ blr diff --git a/asm/f_op/f_op_overlap/fopOvlp_IsDelete__FPv.s b/asm/f_op/f_op_overlap/fopOvlp_IsDelete__FPv.s deleted file mode 100644 index ecb275664e..0000000000 --- a/asm/f_op/f_op_overlap/fopOvlp_IsDelete__FPv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8001E3CC: -/* 8001E3CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8001E3D0 7C 08 02 A6 */ mflr r0 -/* 8001E3D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8001E3D8 7C 64 1B 78 */ mr r4, r3 -/* 8001E3DC 80 63 00 C0 */ lwz r3, 0xc0(r3) -/* 8001E3E0 48 00 40 A5 */ bl fpcMtd_IsDelete__FP20process_method_classPv -/* 8001E3E4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8001E3E8 7C 08 03 A6 */ mtlr r0 -/* 8001E3EC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8001E3F0 4E 80 00 20 */ blr diff --git a/asm/m_Do/m_Do_controller_pad/LRlockCheck__8mDoCPd_cFP27interface_of_controller_pad.s b/asm/m_Do/m_Do_controller_pad/LRlockCheck__8mDoCPd_cFP27interface_of_controller_pad.s deleted file mode 100644 index db731531dc..0000000000 --- a/asm/m_Do/m_Do_controller_pad/LRlockCheck__8mDoCPd_cFP27interface_of_controller_pad.s +++ /dev/null @@ -1,47 +0,0 @@ -lbl_80007CD0: -/* 80007CD0 C0 23 00 28 */ lfs f1, 0x28(r3) -/* 80007CD4 38 00 00 00 */ li r0, 0 -/* 80007CD8 98 03 00 3A */ stb r0, 0x3a(r3) -/* 80007CDC 98 03 00 3C */ stb r0, 0x3c(r3) -/* 80007CE0 3C 80 80 3F */ lis r4, g_HIO@ha /* 0x803F1BBC@ha */ -/* 80007CE4 38 84 1B BC */ addi r4, r4, g_HIO@l /* 0x803F1BBC@l */ -/* 80007CE8 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 80007CEC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80007CF0 40 81 00 24 */ ble lbl_80007D14 -/* 80007CF4 88 03 00 39 */ lbz r0, 0x39(r3) -/* 80007CF8 28 00 00 01 */ cmplwi r0, 1 -/* 80007CFC 41 82 00 0C */ beq lbl_80007D08 -/* 80007D00 38 00 00 01 */ li r0, 1 -/* 80007D04 98 03 00 3A */ stb r0, 0x3a(r3) -lbl_80007D08: -/* 80007D08 38 00 00 01 */ li r0, 1 -/* 80007D0C 98 03 00 39 */ stb r0, 0x39(r3) -/* 80007D10 48 00 00 14 */ b lbl_80007D24 -lbl_80007D14: -/* 80007D14 C0 04 00 10 */ lfs f0, 0x10(r4) -/* 80007D18 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80007D1C 40 80 00 08 */ bge lbl_80007D24 -/* 80007D20 98 03 00 39 */ stb r0, 0x39(r3) -lbl_80007D24: -/* 80007D24 C0 23 00 2C */ lfs f1, 0x2c(r3) -/* 80007D28 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 80007D2C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80007D30 40 81 00 24 */ ble lbl_80007D54 -/* 80007D34 88 03 00 3B */ lbz r0, 0x3b(r3) -/* 80007D38 28 00 00 01 */ cmplwi r0, 1 -/* 80007D3C 41 82 00 0C */ beq lbl_80007D48 -/* 80007D40 38 00 00 01 */ li r0, 1 -/* 80007D44 98 03 00 3C */ stb r0, 0x3c(r3) -lbl_80007D48: -/* 80007D48 38 00 00 01 */ li r0, 1 -/* 80007D4C 98 03 00 3B */ stb r0, 0x3b(r3) -/* 80007D50 4E 80 00 20 */ blr -lbl_80007D54: -/* 80007D54 3C 80 80 3F */ lis r4, g_HIO@ha /* 0x803F1BBC@ha */ -/* 80007D58 38 84 1B BC */ addi r4, r4, g_HIO@l /* 0x803F1BBC@l */ -/* 80007D5C C0 04 00 10 */ lfs f0, 0x10(r4) -/* 80007D60 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80007D64 4C 80 00 20 */ bgelr -/* 80007D68 38 00 00 00 */ li r0, 0 -/* 80007D6C 98 03 00 3B */ stb r0, 0x3b(r3) -/* 80007D70 4E 80 00 20 */ blr diff --git a/asm/m_Do/m_Do_controller_pad/read__8mDoCPd_cFv.s b/asm/m_Do/m_Do_controller_pad/read__8mDoCPd_cFv.s deleted file mode 100644 index b99b4eb12b..0000000000 --- a/asm/m_Do/m_Do_controller_pad/read__8mDoCPd_cFv.s +++ /dev/null @@ -1,64 +0,0 @@ -lbl_80007A94: -/* 80007A94 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80007A98 7C 08 02 A6 */ mflr r0 -/* 80007A9C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80007AA0 39 61 00 20 */ addi r11, r1, 0x20 -/* 80007AA4 48 35 A7 39 */ bl _savegpr_29 -/* 80007AA8 48 2D 8E 3D */ bl read__10JUTGamePadFv -/* 80007AAC 80 6D 86 F8 */ lwz r3, mResetData__6mDoRst(r13) -/* 80007AB0 80 03 00 00 */ lwz r0, 0(r3) -/* 80007AB4 2C 00 00 00 */ cmpwi r0, 0 -/* 80007AB8 40 82 00 4C */ bne lbl_80007B04 -/* 80007ABC 80 03 00 08 */ lwz r0, 8(r3) -/* 80007AC0 2C 00 00 00 */ cmpwi r0, 0 -/* 80007AC4 41 82 00 40 */ beq lbl_80007B04 -/* 80007AC8 80 63 00 0C */ lwz r3, 0xc(r3) -/* 80007ACC 48 2D 9E D1 */ bl getGamePad__10JUTGamePadFi -/* 80007AD0 38 80 00 00 */ li r4, 0 -/* 80007AD4 A8 03 00 7C */ lha r0, 0x7c(r3) -/* 80007AD8 2C 00 FF FF */ cmpwi r0, -1 -/* 80007ADC 41 82 00 14 */ beq lbl_80007AF0 -/* 80007AE0 88 03 00 98 */ lbz r0, 0x98(r3) -/* 80007AE4 28 00 00 00 */ cmplwi r0, 0 -/* 80007AE8 41 82 00 08 */ beq lbl_80007AF0 -/* 80007AEC 38 80 00 01 */ li r4, 1 -lbl_80007AF0: -/* 80007AF0 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 80007AF4 40 82 00 10 */ bne lbl_80007B04 -/* 80007AF8 38 00 00 00 */ li r0, 0 -/* 80007AFC 80 6D 86 F8 */ lwz r3, mResetData__6mDoRst(r13) -/* 80007B00 90 03 00 08 */ stw r0, 8(r3) -lbl_80007B04: -/* 80007B04 3C 60 80 3E */ lis r3, m_gamePad__8mDoCPd_c@ha /* 0x803DD2D8@ha */ -/* 80007B08 38 03 D2 D8 */ addi r0, r3, m_gamePad__8mDoCPd_c@l /* 0x803DD2D8@l */ -/* 80007B0C 7C 1F 03 78 */ mr r31, r0 -/* 80007B10 3C 60 80 3E */ lis r3, m_cpadInfo__8mDoCPd_c@ha /* 0x803DD2E8@ha */ -/* 80007B14 38 03 D2 E8 */ addi r0, r3, m_cpadInfo__8mDoCPd_c@l /* 0x803DD2E8@l */ -/* 80007B18 7C 1E 03 78 */ mr r30, r0 -/* 80007B1C 3B A0 00 00 */ li r29, 0 -lbl_80007B20: -/* 80007B20 80 9F 00 00 */ lwz r4, 0(r31) -/* 80007B24 28 04 00 00 */ cmplwi r4, 0 -/* 80007B28 40 82 00 18 */ bne lbl_80007B40 -/* 80007B2C 7F C3 F3 78 */ mr r3, r30 -/* 80007B30 38 80 00 00 */ li r4, 0 -/* 80007B34 38 A0 00 40 */ li r5, 0x40 -/* 80007B38 48 26 7E 25 */ bl cLib_memSet__FPviUl -/* 80007B3C 48 00 00 14 */ b lbl_80007B50 -lbl_80007B40: -/* 80007B40 7F C3 F3 78 */ mr r3, r30 -/* 80007B44 48 00 00 39 */ bl convert__8mDoCPd_cFP27interface_of_controller_padP10JUTGamePad -/* 80007B48 7F C3 F3 78 */ mr r3, r30 -/* 80007B4C 48 00 01 85 */ bl LRlockCheck__8mDoCPd_cFP27interface_of_controller_pad -lbl_80007B50: -/* 80007B50 3B BD 00 01 */ addi r29, r29, 1 -/* 80007B54 28 1D 00 04 */ cmplwi r29, 4 -/* 80007B58 3B FF 00 04 */ addi r31, r31, 4 -/* 80007B5C 3B DE 00 40 */ addi r30, r30, 0x40 -/* 80007B60 41 80 FF C0 */ blt lbl_80007B20 -/* 80007B64 39 61 00 20 */ addi r11, r1, 0x20 -/* 80007B68 48 35 A6 C1 */ bl _restgpr_29 -/* 80007B6C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80007B70 7C 08 03 A6 */ mtlr r0 -/* 80007B74 38 21 00 20 */ addi r1, r1, 0x20 -/* 80007B78 4E 80 00 20 */ blr diff --git a/include/SSystem/SComponent/c_lib.h b/include/SSystem/SComponent/c_lib.h index 6a3c1b295a..aae7cc1ae7 100644 --- a/include/SSystem/SComponent/c_lib.h +++ b/include/SSystem/SComponent/c_lib.h @@ -1,10 +1,10 @@ #ifndef C_LIB_H_ #define C_LIB_H_ +#include "MSL_C/math.h" #include "SSystem/SComponent/c_xyz.h" #include "dolphin/mtx/mtx.h" #include "dolphin/types.h" -#include "MSL_C/math.h" inline bool cLib_IsZero(f32 f) { return fabsf(f) < 8e-11f; diff --git a/include/SSystem/SComponent/c_m3d.h b/include/SSystem/SComponent/c_m3d.h index 54f17b81cc..f024fd44df 100644 --- a/include/SSystem/SComponent/c_m3d.h +++ b/include/SSystem/SComponent/c_m3d.h @@ -1,8 +1,8 @@ #ifndef C_M3D_H_ #define C_M3D_H_ -#include "dolphin/types.h" #include "MSL_C/math.h" +#include "dolphin/types.h" class cM3dGAab; class cM3dGCps; diff --git a/include/SSystem/SComponent/c_xyz.h b/include/SSystem/SComponent/c_xyz.h index 395540d746..e218303fc1 100644 --- a/include/SSystem/SComponent/c_xyz.h +++ b/include/SSystem/SComponent/c_xyz.h @@ -1,9 +1,9 @@ #ifndef C_XYZ_H #define C_XYZ_H +#include "MSL_C/math.h" #include "dolphin/mtx/vec.h" #include "global.h" -#include "MSL_C/math.h" struct cXyz : Vec { static const cXyz Zero; diff --git a/include/d/meter/d_meter_HIO.h b/include/d/meter/d_meter_HIO.h index b93b0c3265..e4c2bb5841 100644 --- a/include/d/meter/d_meter_HIO.h +++ b/include/d/meter/d_meter_HIO.h @@ -3,8 +3,8 @@ #include "JSystem/JKernel/JKRArchive.h" #include "JSystem/JUtility/TColor.h" -#include "SSystem/SComponent/c_xyz.h" #include "SSystem/SComponent/c_sxyz.h" +#include "SSystem/SComponent/c_xyz.h" #include "dolphin/types.h" #include "m_Do/m_Do_ext.h" diff --git a/include/d/msg/d_msg_object.h b/include/d/msg/d_msg_object.h index c477b4c9cb..58b0912dbb 100644 --- a/include/d/msg/d_msg_object.h +++ b/include/d/msg/d_msg_object.h @@ -123,7 +123,7 @@ public: /* 802381FC */ void setStatus(u16); /* 8023822C */ static u16 getStatus(); /* 80238258 */ void getScrnDrawPtr(); - /* 8023826C */ void setTalkActor(fopAc_ac_c*); + /* 8023826C */ static void setTalkActor(fopAc_ac_c*); /* 8023829C */ void onMsgSendControl(); /* 802382C8 */ void offMsgSendControl(); /* 802382F4 */ static int isMsgSendControl(); @@ -273,4 +273,10 @@ inline void dMsgObject_changeFlowGroup(long flow) { dMsgObject_c::changeFlowGroup(flow); } +inline void dMsgObject_setTalkActor(fopAc_ac_c* actor) { + if (dMsgObject_getMsgObjectClass() != NULL) { + dMsgObject_c::setTalkActor(actor); + } +} + #endif /* D_MSG_D_MSG_OBJECT_H */ diff --git a/include/d/s/d_s_play.h b/include/d/s/d_s_play.h index 6bd2bd99f9..d4e3f8f4ed 100644 --- a/include/d/s/d_s_play.h +++ b/include/d/s/d_s_play.h @@ -57,6 +57,7 @@ private: /* 0x14 */ dScnPly_env_debugHIO_c mDebug; }; +extern s8 struct_80451124; extern s8 data_80451125; // sPauseTimer class dScnPly_c : public scene_class { @@ -65,6 +66,7 @@ public: /* 80259AC4 */ bool resetGame(); /* 80259BFC */ void offReset(); + static bool isPause() { return struct_80451124 == 0; } static void setPauseTimer(s8 time) { data_80451125 = time; } }; diff --git a/include/f_ap/f_ap_game.h b/include/f_ap/f_ap_game.h index c4320f6b26..611a9feae0 100644 --- a/include/f_ap/f_ap_game.h +++ b/include/f_ap/f_ap_game.h @@ -14,8 +14,8 @@ public: /* 0x04 */ s8 field_0x04; /* 0x05 */ u8 field_0x03[3]; /* 0x08 */ JUtility::TColor mColor; - /* 0x0C */ f32 field_0xc; - /* 0x10 */ f32 field_0x10; + /* 0x0C */ f32 mLROnValue; + /* 0x10 */ f32 mLROffValue; /* 0x14 */ bool mUsingHostIO; /* 0x15 */ bool mDisplayMeter; /* 0x16 */ u8 mDisplayPrint; @@ -44,11 +44,21 @@ extern fapGm_HIO_c g_HIO; inline bool fapGmHIO_isMenu() { return g_HIO.mDisplayPrint & 2; } + inline bool fapGmHIO_isPrint() { return g_HIO.mDisplayPrint & 1; } + inline bool fapGmHIO_getMeter() { return g_HIO.mDisplayMeter; } +inline f32 fapGmHIO_getLROnValue() { + return g_HIO.mLROnValue; +} + +inline f32 fapGmHIO_getLROffValue() { + return g_HIO.mLROffValue; +} + #endif /* F_AP_F_AP_GAME_H */ diff --git a/include/f_op/f_op_kankyo_mng.h b/include/f_op/f_op_kankyo_mng.h index 8c7a8b99f5..9790838964 100644 --- a/include/f_op/f_op_kankyo_mng.h +++ b/include/f_op/f_op_kankyo_mng.h @@ -3,13 +3,21 @@ #include "SSystem/SComponent/c_xyz.h" #include "dolphin/types.h" +#include "f_pc/f_pc_manager.h" -typedef int (*fopKyMCreateFunc)(void*); +struct fopKyM_prm_class { + /* 0x00 */ cXyz field_0x0; + /* 0x0C */ cXyz field_0xc; + /* 0x18 */ int field_0x18; +}; // Size: 0x1C -void* fopKyM_CreateAppend(void); -f32* createAppend(int param_1, cXyz* param_2, cXyz* param_3); +typedef int (*fopKyM_CreateFunc)(void*); + +static fopKyM_prm_class* fopKyM_CreateAppend(void); +static fopKyM_prm_class* createAppend(int param_1, cXyz* param_2, cXyz* param_3); void fopKyM_Delete(void* param_1); -void fopKyM_Create(s16 param_1, fopKyMCreateFunc param_2, void* param_3); -void fopKyM_fastCreate(s16 param_0, int param_1, cXyz* param_2, cXyz* param_3, fopKyMCreateFunc); +static int fopKyM_Create(s16 param_1, fopKyM_CreateFunc param_2, void* param_3); +base_process_class* fopKyM_fastCreate(s16 param_0, int param_1, cXyz* param_2, cXyz* param_3, + fopKyM_CreateFunc); #endif \ No newline at end of file diff --git a/include/f_op/f_op_msg_mng.h b/include/f_op/f_op_msg_mng.h index 3493e0f590..d78edf381b 100644 --- a/include/f_op/f_op_msg_mng.h +++ b/include/f_op/f_op_msg_mng.h @@ -5,13 +5,37 @@ #include "dolphin/types.h" #include "f_op/f_op_actor.h" +struct fopMsg_prm_class { + /* 0x00 */ fopAc_ac_c* field_0x0; + /* 0x04 */ cXyz field_0x4; + /* 0x10 */ u32 field_0x10; + /* 0x14 */ u32 field_0x14; + /* 0x18 */ int field_0x18; +}; // Size: 0x1C + +struct fopMsg_prm_timer { + /* 0x00 */ int field_0x0; + /* 0x04 */ cXyz field_0x4; + /* 0x10 */ int field_0x10; + /* 0x14 */ int field_0x14; + /* 0x18 */ u32 field_0x18; + /* 0x1C */ int field_0x1c; + /* 0x20 */ u32 field_0x20; + /* 0x24 */ u8 field_0x24; + /* 0x25 */ u8 field_0x25; + /* 0x28 */ f32 field_0x28; + /* 0x2C */ f32 field_0x2c; + /* 0x30 */ f32 field_0x30; + /* 0x34 */ f32 field_0x34; +}; // Size: 0x38 + typedef int (*fopMsgCreateFunc)(void*); JKRExpHeap* fopMsgM_createExpHeap(u32, JKRHeap*); u32 fopMsgM_Create(s16, fopMsgCreateFunc, void*); void fopMsgM_setMessageID(unsigned int); void fopMsgM_destroyExpHeap(JKRExpHeap*); -void fopMsgM_setStageLayer(void*); +s32 fopMsgM_setStageLayer(void*); void fopMsgM_messageSetDemo(u32 param_0); msg_class* fopMsgM_SearchByID(unsigned int param_0); diff --git a/include/f_op/f_op_overlap.h b/include/f_op/f_op_overlap.h index 768d610f17..680f3ac502 100644 --- a/include/f_op/f_op_overlap.h +++ b/include/f_op/f_op_overlap.h @@ -3,6 +3,6 @@ #include "dolphin/types.h" -static void fopOvlp_Draw(void* param_1); +static s32 fopOvlp_Draw(void* param_1); #endif \ No newline at end of file diff --git a/include/f_op/f_op_overlap_mng.h b/include/f_op/f_op_overlap_mng.h index 33d5bdeb66..fa524638c9 100644 --- a/include/f_op/f_op_overlap_mng.h +++ b/include/f_op/f_op_overlap_mng.h @@ -3,10 +3,12 @@ #include "SSystem/SComponent/c_request.h" #include "dolphin/types.h" +#include "f_pc/f_pc_leaf.h" class overlap_task_class { public: - /* 0x00 */ u8 field_0x00[0xC4]; + /* 0x00 */ u8 field_0x00[0xC0]; + /* 0xC0 */ leafdraw_method_class* field_0xc0; /* 0xC4 */ u8 field_0xc4; }; diff --git a/include/f_op/f_op_scene.h b/include/f_op/f_op_scene.h index f2d5588aa6..b68fae10d8 100644 --- a/include/f_op/f_op_scene.h +++ b/include/f_op/f_op_scene.h @@ -14,7 +14,9 @@ class mDoDvdThd_command_c; class scene_class { public: /* 0x000 */ base_process_class field_0x0; - /* 0x0B8 */ u8 field_0xb8[0xF4]; + /* 0x0B8 */ u8 field_0xb8[0x10]; + /* 0x0C8 */ u32 field_0xc8; + /* 0x0CC */ u8 field_0xcc[0xE0]; /* 0x1AC */ process_method_class* mpProcessMtd; /* 0x1B0 */ scene_tag_class* field_0x1b0; /* 0x1B4 */ u8 field_0x1b4[0x10]; diff --git a/include/f_op/f_op_scene_mng.h b/include/f_op/f_op_scene_mng.h index 3f2378c947..321482f43f 100644 --- a/include/f_op/f_op_scene_mng.h +++ b/include/f_op/f_op_scene_mng.h @@ -4,7 +4,7 @@ #include "f_op/f_op_actor_mng.h" #include "f_op/f_op_scene_pause.h" -void* fopScnM_SearchByID(unsigned int id); +scene_class* fopScnM_SearchByID(unsigned int id); int fopScnM_ChangeReq(scene_class*, s16, s16, u16); unsigned int fopScnM_DeleteReq(scene_class*); int fopScnM_CreateReq(s16, s16, u16, u32); @@ -12,8 +12,18 @@ u32 fopScnM_ReRequest(s16, u32); void fopScnM_Management(void); void fopScnM_Init(void); +inline u32 fpcM_LayerID(const void* pProc) { + return fpcBs_Is_JustOfType(g_fpcNd_type, ((base_process_class*)pProc)->mSubType) != FALSE ? + ((scene_class*)pProc)->field_0xc8 : + 0xFFFFFFFF; +} + inline u32 fopScnM_GetID(void* proc) { return fpcM_GetID(proc); } +inline int fopScnM_LayerID(void* proc) { + return fpcM_LayerID(proc); +} + #endif \ No newline at end of file diff --git a/include/f_pc/f_pc_manager.h b/include/f_pc/f_pc_manager.h index 772db2e504..f71009a5f8 100644 --- a/include/f_pc/f_pc_manager.h +++ b/include/f_pc/f_pc_manager.h @@ -7,6 +7,7 @@ #include "f_pc/f_pc_base.h" #include "f_pc/f_pc_create_iter.h" #include "f_pc/f_pc_node_req.h" +#include "f_pc/f_pc_stdcreate_req.h" typedef int (*FastCreateReqFunc)(void*); typedef void (*fpcM_ManagementFunc)(void); @@ -26,6 +27,15 @@ inline void fpcM_SetParam(void* p_actor, u32 param) { ((base_process_class*)p_actor)->mParameters = param; } +inline int fpcM_Create(s16 procName, FastCreateReqFunc createFunc, void* process) { + return fpcSCtRq_Request(fpcLy_CurrentLayer(), procName, (stdCreateFunc)createFunc, NULL, + process); +} + +inline s32 fpcM_ChangeLayerID(void* proc, int layerID) { + return fpcPi_Change(&((base_process_class*)proc)->mPi, layerID, 0xFFFD, 0xFFFD); +} + void fpcM_Draw(void* pProc); s32 fpcM_DrawIterater(fpcM_DrawIteraterFunc pFunc); void fpcM_Execute(void* pProc); diff --git a/include/f_pc/f_pc_profile.h b/include/f_pc/f_pc_profile.h index 12a2c6e361..f1c74ee24d 100644 --- a/include/f_pc/f_pc_profile.h +++ b/include/f_pc/f_pc_profile.h @@ -8,15 +8,15 @@ struct nodedraw_method_class; typedef struct process_profile_definition { - s32 mLayerID; - u16 mListID; - u16 mListPrio; - s16 mProcName; - s16 unkA; // probably padding - struct process_method_class* mpPcMtd; - s32 mSize; - s32 mSizeOther; - s32 mParameters; + /* 0x00 */ s32 mLayerID; + /* 0x04 */ u16 mListID; + /* 0x06 */ u16 mListPrio; + /* 0x08 */ s16 mProcName; + /* 0x0A */ s16 unkA; // probably padding + /* 0x0C */ struct process_method_class* mpPcMtd; + /* 0x10 */ s32 mSize; + /* 0x14 */ s32 mSizeOther; + /* 0x18 */ s32 mParameters; } process_profile_definition; #define LAYER_DEFAULT (-2) diff --git a/include/m_Do/m_Do_controller_pad.h b/include/m_Do/m_Do_controller_pad.h index f95e8a05a4..12e87d80bd 100644 --- a/include/m_Do/m_Do_controller_pad.h +++ b/include/m_Do/m_Do_controller_pad.h @@ -14,7 +14,7 @@ public: static void create(); static void read(); static void convert(interface_of_controller_pad*, JUTGamePad*); - void LRlockCheck(interface_of_controller_pad*); + static void LRlockCheck(interface_of_controller_pad*); void recalibrate(); static interface_of_controller_pad& getCpadInfo(u32 pad) { return m_cpadInfo[pad]; } diff --git a/libs/JSystem/J2DGraph/J2DGrafContext.cpp b/libs/JSystem/J2DGraph/J2DGrafContext.cpp index b21ecb4b43..5fa4f5200b 100644 --- a/libs/JSystem/J2DGraph/J2DGrafContext.cpp +++ b/libs/JSystem/J2DGraph/J2DGrafContext.cpp @@ -4,9 +4,9 @@ // #include "JSystem/J2DGraph/J2DGrafContext.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/libs/JSystem/J3DU/J3DUClipper.cpp b/libs/JSystem/J3DU/J3DUClipper.cpp index 4e6e116598..ecd01d99df 100644 --- a/libs/JSystem/J3DU/J3DUClipper.cpp +++ b/libs/JSystem/J3DU/J3DUClipper.cpp @@ -4,10 +4,10 @@ // #include "JSystem/J3DU/J3DUClipper.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/mtx/mtxvec.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Forward References: diff --git a/libs/JSystem/JKernel/JKRAramArchive.cpp b/libs/JSystem/JKernel/JKRAramArchive.cpp index 570cc007ce..4e8f46d6ce 100644 --- a/libs/JSystem/JKernel/JKRAramArchive.cpp +++ b/libs/JSystem/JKernel/JKRAramArchive.cpp @@ -9,10 +9,10 @@ #include "JSystem/JKernel/JKRDvdRipper.h" #include "JSystem/JKernel/JKRFile.h" #include "MSL_C/MSL_Common/Src/string.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/os/OSCache.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Types: diff --git a/libs/JSystem/JKernel/JKRSolidHeap.cpp b/libs/JSystem/JKernel/JKRSolidHeap.cpp index df7d46e7c8..9c5d33ca36 100644 --- a/libs/JSystem/JKernel/JKRSolidHeap.cpp +++ b/libs/JSystem/JKernel/JKRSolidHeap.cpp @@ -5,9 +5,9 @@ #include "JSystem/JKernel/JKRSolidHeap.h" #include "JSystem/JUtility/JUTAssert.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "global.h" -#include "MSL_C/math.h" // // Forward References: diff --git a/libs/JSystem/JMath/JMATrigonometric.cpp b/libs/JSystem/JMath/JMATrigonometric.cpp index eeef9f6221..88c107cb14 100644 --- a/libs/JSystem/JMath/JMATrigonometric.cpp +++ b/libs/JSystem/JMath/JMATrigonometric.cpp @@ -5,9 +5,9 @@ // don't include header until this "zero" mess is figured out // #include "JSystem/JMath/JMATrigonometric.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "global.h" -#include "MSL_C/math.h" namespace std { template diff --git a/libs/JSystem/JStudio/JStudio/functionvalue.cpp b/libs/JSystem/JStudio/JStudio/functionvalue.cpp index ed47dc5e4b..b71f773d01 100644 --- a/libs/JSystem/JStudio/JStudio/functionvalue.cpp +++ b/libs/JSystem/JStudio/JStudio/functionvalue.cpp @@ -4,9 +4,9 @@ // #include "JSystem/JStudio/JStudio/functionvalue.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Types: diff --git a/libs/SSystem/SComponent/c_angle.cpp b/libs/SSystem/SComponent/c_angle.cpp index a3c91d3482..aaa7309988 100644 --- a/libs/SSystem/SComponent/c_angle.cpp +++ b/libs/SSystem/SComponent/c_angle.cpp @@ -4,9 +4,9 @@ // #include "SSystem/SComponent/c_angle.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" extern f32 cM_atan2f(f32, f32); diff --git a/libs/SSystem/SComponent/c_lib.cpp b/libs/SSystem/SComponent/c_lib.cpp index 4ec0554af5..69eeddf81a 100644 --- a/libs/SSystem/SComponent/c_lib.cpp +++ b/libs/SSystem/SComponent/c_lib.cpp @@ -6,12 +6,12 @@ #include "SSystem/SComponent/c_lib.h" #include "JSystem/JMath/JMath.h" #include "MSL_C/MSL_Common/Src/string.h" +#include "MSL_C/math.h" #include "SSystem/SComponent/c_math.h" #include "SSystem/SComponent/c_xyz.h" #include "dol2asm.h" #include "dolphin/mtx/mtxvec.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/libs/SSystem/SComponent/c_m3d.cpp b/libs/SSystem/SComponent/c_m3d.cpp index 55da543cd6..aa7acc5375 100644 --- a/libs/SSystem/SComponent/c_m3d.cpp +++ b/libs/SSystem/SComponent/c_m3d.cpp @@ -4,6 +4,7 @@ // #include "SSystem/SComponent/c_m3d.h" +#include "MSL_C/math.h" #include "SSystem/SComponent/c_m3d_g_aab.h" #include "SSystem/SComponent/c_m3d_g_cps.h" #include "SSystem/SComponent/c_m3d_g_cyl.h" @@ -15,7 +16,6 @@ #include "SSystem/SComponent/c_xyz.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Forward References: diff --git a/libs/SSystem/SComponent/c_m3d_g_pla.cpp b/libs/SSystem/SComponent/c_m3d_g_pla.cpp index 8cc49f9f51..9a166a5b34 100644 --- a/libs/SSystem/SComponent/c_m3d_g_pla.cpp +++ b/libs/SSystem/SComponent/c_m3d_g_pla.cpp @@ -4,10 +4,10 @@ // #include "SSystem/SComponent/c_m3d_g_pla.h" +#include "MSL_C/math.h" #include "SSystem/SComponent/c_m3d.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/libs/SSystem/SComponent/c_math.cpp b/libs/SSystem/SComponent/c_math.cpp index 6684975212..01811d573e 100644 --- a/libs/SSystem/SComponent/c_math.cpp +++ b/libs/SSystem/SComponent/c_math.cpp @@ -4,10 +4,10 @@ // #include "SSystem/SComponent/c_math.h" +#include "MSL_C/math.h" #include "SSystem/SComponent/c_m3d.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/libs/SSystem/SComponent/c_xyz.cpp b/libs/SSystem/SComponent/c_xyz.cpp index 3416b38ada..85a55dc444 100644 --- a/libs/SSystem/SComponent/c_xyz.cpp +++ b/libs/SSystem/SComponent/c_xyz.cpp @@ -4,10 +4,10 @@ // #include "SSystem/SComponent/c_xyz.h" +#include "MSL_C/math.h" #include "SSystem/SComponent/c_math.h" #include "dol2asm.h" #include "global.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/libs/Z2AudioLib/Z2Calc.cpp b/libs/Z2AudioLib/Z2Calc.cpp index 47280b8a76..1ba9e478e6 100644 --- a/libs/Z2AudioLib/Z2Calc.cpp +++ b/libs/Z2AudioLib/Z2Calc.cpp @@ -5,9 +5,9 @@ #include "Z2AudioLib/Z2Calc.h" #include "JSystem/JMath/random.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "global.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/libs/dolphin/mtx/mtx.cpp b/libs/dolphin/mtx/mtx.cpp index 53e335dd65..aabe3642ec 100644 --- a/libs/dolphin/mtx/mtx.cpp +++ b/libs/dolphin/mtx/mtx.cpp @@ -4,10 +4,10 @@ // #include "dolphin/mtx/mtx.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/mtx/mtxvec.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/libs/dolphin/mtx/mtx44.cpp b/libs/dolphin/mtx/mtx44.cpp index d3d69a9e29..3952c5507c 100644 --- a/libs/dolphin/mtx/mtx44.cpp +++ b/libs/dolphin/mtx/mtx44.cpp @@ -4,9 +4,9 @@ // #include "dolphin/mtx/mtx44.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/libs/dolphin/mtx/quat.cpp b/libs/dolphin/mtx/quat.cpp index f53dddc596..42764c6a01 100644 --- a/libs/dolphin/mtx/quat.cpp +++ b/libs/dolphin/mtx/quat.cpp @@ -4,9 +4,9 @@ // #include "dolphin/mtx/quat.h" +#include "MSL_C/math.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "MSL_C/math.h" // // Declarations: diff --git a/src/d/cc/d_cc_uty.cpp b/src/d/cc/d_cc_uty.cpp index 0680657eed..08bba8d939 100644 --- a/src/d/cc/d_cc_uty.cpp +++ b/src/d/cc/d_cc_uty.cpp @@ -36,7 +36,6 @@ extern "C" void cM_atan2s__Fff(); extern "C" void cM_rndFX__Ff(); extern "C" void _savegpr_25(); extern "C" void _restgpr_25(); -extern "C" extern u8 struct_80451124[4]; // // Declarations: diff --git a/src/d/s/d_s_play.cpp b/src/d/s/d_s_play.cpp index e04521f15d..c9ec6f018c 100644 --- a/src/d/s/d_s_play.cpp +++ b/src/d/s/d_s_play.cpp @@ -253,7 +253,6 @@ static u8 g_preLoadHIO[4]; /* 80451124-80451128 -00001 0004+00 3/3 7/7 38/38 .sbss None */ /* 80451124 0001+00 data_80451124 None */ /* 80451125 0003+00 data_80451125 None */ -extern s8 struct_80451124; s8 struct_80451124; s8 data_80451125; diff --git a/src/f_ap/f_ap_game.cpp b/src/f_ap/f_ap_game.cpp index 4fb6a4652d..d77fd5d5aa 100644 --- a/src/f_ap/f_ap_game.cpp +++ b/src/f_ap/f_ap_game.cpp @@ -28,8 +28,8 @@ fapGm_HIO_c::fapGm_HIO_c() mDisplayProcessID = false; mMemBlockOff = false; mColor.set(255, 255, 255, 255); - field_0xc = 0.9f; - field_0x10 = 0.6f; + mLROnValue = 0.9f; + mLROffValue = 0.6f; mLetterTopColor.set(255, 150, 0, 255); mLetterBottomColor.set(255, 120, 0, 255); mLetterTopShadowColor.set(0, 0, 0, 255); diff --git a/src/f_op/f_op_actor_mng.cpp b/src/f_op/f_op_actor_mng.cpp index b10d6f6e02..dcb067a643 100644 --- a/src/f_op/f_op_actor_mng.cpp +++ b/src/f_op/f_op_actor_mng.cpp @@ -6,20 +6,20 @@ #include "f_op/f_op_actor_mng.h" #include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JKernel/JKRSolidHeap.h" +#include "MSL_C/math.h" #include "SSystem/SComponent/c_lib.h" #include "SSystem/SComponent/c_malloc.h" #include "dol2asm.h" #include "global.h" -#include "MSL_C/math.h" // #include "d/com/d_com_inf_game.h" #include "JSystem/J3DGraphBase/J3DSys.h" #include "JSystem/J3DU/J3DUClipper.h" +#include "MSL_C/math.h" #include "SSystem/SComponent/c_math.h" #include "d/d_stage.h" #include "f_op/f_op_actor.h" #include "m_Do/m_Do_ext.h" #include "m_Do/m_Do_lib.h" -#include "MSL_C/math.h" // // Types: diff --git a/src/f_op/f_op_camera.cpp b/src/f_op/f_op_camera.cpp index 50b01d2cc1..f912cf3da3 100644 --- a/src/f_op/f_op_camera.cpp +++ b/src/f_op/f_op_camera.cpp @@ -4,6 +4,8 @@ // #include "f_op/f_op_camera.h" +#include "d/com/d_com_inf_game.h" +#include "d/s/d_s_play.h" #include "dol2asm.h" #include "dolphin/types.h" #include "f_op/f_op_draw_tag.h" @@ -33,40 +35,26 @@ extern "C" void fpcMtd_Execute__FP20process_method_classPv(); extern "C" void fpcMtd_IsDelete__FP20process_method_classPv(); extern "C" void fpcMtd_Delete__FP20process_method_classPv(); extern "C" void fpcMtd_Create__FP20process_method_classPv(); -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 struct_80451124[4]; // // Declarations: // /* 8001E140-8001E180 018A80 0040+00 1/0 0/0 0/0 .text fopCam_Draw__FP12camera_class */ -#if 0 -// TODO: move dComIfG static s32 fopCam_Draw(camera_class* pCamera) { - s32 tmp = 1; + s32 cam_proc = 1; - if (g_dComIfG_gameInfo.getPlay().isPauseFlag() == false) { - tmp = fpcLf_DrawMethod(pCamera->pMthd, pCamera); + if (!dComIfGp_isPauseFlag()) { + cam_proc = fpcLf_DrawMethod(pCamera->pMthd, pCamera); } - return tmp; + return cam_proc; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm s32 fopCam_Draw(camera_class* param_0) { - nofralloc -#include "asm/f_op/f_op_camera/fopCam_Draw__FP12camera_class.s" -} -#pragma pop -#endif /* 8001E180-8001E1C8 018AC0 0048+00 1/0 0/0 0/0 .text fopCam_Execute__FP12camera_class */ // Matches, but wrong registers #ifdef NONMATCHING static void fopCam_Execute(camera_class* pCamera) { - if (!g_dComIfG_gameInfo.getPlay().isPauseFlag() && !lbl_80451124) { + if (!dComIfGp_isPauseFlag() && dScnPly_c::isPause()) { fpcMtd_Execute((process_method_class*)pCamera->pMthd, pCamera); } } @@ -84,22 +72,22 @@ static asm void fopCam_Execute(camera_class* param_0) { /* 8001E1C8-8001E21C 018B08 0054+00 1/0 0/0 0/0 .text fopCam_IsDelete__FP12camera_class */ int fopCam_IsDelete(camera_class* pCamera) { - int tmp = fpcMtd_IsDelete((process_method_class*)pCamera->pMthd, pCamera); - if (tmp == 1) { + int delete_stat = fpcMtd_IsDelete((process_method_class*)pCamera->pMthd, pCamera); + if (delete_stat == 1) { fopDwTg_DrawQTo(&pCamera->pCreateTag); } - return tmp; + return delete_stat; } /* 8001E21C-8001E270 018B5C 0054+00 1/0 0/0 0/0 .text fopCam_Delete__FP12camera_class */ int fopCam_Delete(camera_class* pCamera) { - int tmp = fpcMtd_Delete((process_method_class*)pCamera->pMthd, pCamera); - if (tmp == 1) { + int delete_stat = fpcMtd_Delete((process_method_class*)pCamera->pMthd, pCamera); + if (delete_stat == 1) { fopDwTg_DrawQTo(&pCamera->pCreateTag); } - return tmp; + return delete_stat; } /* 8001E270-8001E308 018BB0 0098+00 1/0 0/0 0/0 .text fopCam_Create__FPv */ diff --git a/src/f_op/f_op_kankyo_mng.cpp b/src/f_op/f_op_kankyo_mng.cpp index 7d06e88c75..c64c2df6e9 100644 --- a/src/f_op/f_op_kankyo_mng.cpp +++ b/src/f_op/f_op_kankyo_mng.cpp @@ -3,172 +3,112 @@ // Translation Unit: f_op/f_op_kankyo_mng // -// #include "f_op/f_op_kankyo_mng.h" +#include "f_op/f_op_kankyo_mng.h" +#include "SSystem/SComponent/c_lib.h" +#include "SSystem/SComponent/c_malloc.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct layer_class {}; - -struct dPa_levelEcallBack {}; - -struct dKy_tevstr_c {}; - -struct csXyz {}; - -struct _GXColor {}; - -struct cXyz {}; - -struct dPa_control_c { - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); -}; - -struct cMl { - /* 80263228 */ void memalignB(int, u32); -}; - -// -// Forward References: -// - -extern "C" static void fopKyM_CreateAppend__Fv(); -extern "C" static void createAppend__FiP4cXyzP4cXyz(); -extern "C" void fopKyM_Delete__FPv(); -extern "C" static void fopKyM_Create__FsPFPv_iPv(); -extern "C" void fopKyM_create__FsiP4cXyzP4cXyzPFPv_i(); -extern "C" void fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i(); -extern "C" void fopKyM_createWpillar__FPC4cXyzfi(); -extern "C" void fopKyM_createMpillar__FPC4cXyzf(); - -// -// External References: -// - -extern "C" void fpcLy_CurrentLayer__Fv(); -extern "C" void fpcM_Delete__FPv(); -extern "C" void fpcM_FastCreate__FsPFPv_iPvPv(); -extern "C" void fpcSCtRq_Request__FP11layer_classsPFPvPv_iPvPv(); -extern "C" void -set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf(); -extern "C" void memalignB__3cMlFiUl(); -extern "C" void cLib_memSet__FPviUl(); -extern "C" void _savegpr_28(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_28(); -extern "C" void _restgpr_29(); -extern "C" extern u8 g_dComIfG_gameInfo[122384]; - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 80451C68-80451C70 000268 0004+04 2/2 0/0 0/0 .sdata2 @3713 */ -SECTION_SDATA2 static f32 lit_3713[1 + 1 /* padding */] = { - 1.0f, - /* padding */ - 0.0f, -}; - /* 8001F660-8001F6B8 019FA0 0058+00 2/2 0/0 0/0 .text fopKyM_CreateAppend__Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void fopKyM_CreateAppend() { - nofralloc -#include "asm/f_op/f_op_kankyo_mng/fopKyM_CreateAppend__Fv.s" +static fopKyM_prm_class* fopKyM_CreateAppend() { + fopKyM_prm_class* params = + static_cast(cMl::memalignB(-4, sizeof(fopKyM_prm_class))); + + if (params != NULL) { + cLib_memSet(params, 0, sizeof(fopKyM_prm_class)); + params->field_0xc.set(1.0f, 1.0f, 1.0f); + } + return params; } -#pragma pop /* 8001F6B8-8001F748 019FF8 0090+00 2/2 0/0 0/0 .text createAppend__FiP4cXyzP4cXyz */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void createAppend(int param_0, cXyz* param_1, cXyz* param_2) { - nofralloc -#include "asm/f_op/f_op_kankyo_mng/createAppend__FiP4cXyzP4cXyz.s" +static fopKyM_prm_class* createAppend(int param_0, cXyz* param_1, cXyz* param_2) { + fopKyM_prm_class* params = fopKyM_CreateAppend(); + + if (params == NULL) { + return NULL; + } + + if (param_1 != NULL) { + params->field_0x0 = *param_1; + } + + if (param_2 != NULL) { + params->field_0xc = *param_2; + } + params->field_0x18 = param_0; + + return params; } -#pragma pop /* 8001F748-8001F768 01A088 0020+00 0/0 3/3 1/1 .text fopKyM_Delete__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopKyM_Delete(void* param_0) { - nofralloc -#include "asm/f_op/f_op_kankyo_mng/fopKyM_Delete__FPv.s" +void fopKyM_Delete(void* process) { + fpcM_Delete(process); } -#pragma pop /* 8001F768-8001F7B8 01A0A8 0050+00 2/2 0/0 0/0 .text fopKyM_Create__FsPFPv_iPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void fopKyM_Create(s16 param_0, int (*param_1)(void*), void* param_2) { - nofralloc -#include "asm/f_op/f_op_kankyo_mng/fopKyM_Create__FsPFPv_iPv.s" +static int fopKyM_Create(s16 procName, fopKyM_CreateFunc createFunc, void* process) { + return fpcM_Create(procName, createFunc, process); } -#pragma pop /* 8001F7B8-8001F818 01A0F8 0060+00 0/0 3/3 1/1 .text fopKyM_create__FsiP4cXyzP4cXyzPFPv_i */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopKyM_create(s16 param_0, int param_1, cXyz* param_2, cXyz* param_3, - int (*param_4)(void*)) { - nofralloc -#include "asm/f_op/f_op_kankyo_mng/fopKyM_create__FsiP4cXyzP4cXyzPFPv_i.s" +int fopKyM_create(s16 procName, int param_1, cXyz* param_2, cXyz* param_3, + fopKyM_CreateFunc createFunc) { + fopKyM_prm_class* params = createAppend(param_1, param_2, param_3); + + if (params == NULL) { + return -1; + } + + return fopKyM_Create(procName, createFunc, params); } -#pragma pop /* 8001F818-8001F87C 01A158 0064+00 0/0 1/1 0/0 .text fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopKyM_fastCreate(s16 param_0, int param_1, cXyz* param_2, cXyz* param_3, - int (*param_4)(void*)) { - nofralloc -#include "asm/f_op/f_op_kankyo_mng/fopKyM_fastCreate__FsiP4cXyzP4cXyzPFPv_i.s" +base_process_class* fopKyM_fastCreate(s16 procName, int param_1, cXyz* param_2, cXyz* param_3, + fopKyM_CreateFunc createFunc) { + fopKyM_prm_class* params = createAppend(param_1, param_2, param_3); + + if (params == NULL) { + return NULL; + } + + return fpcM_FastCreate(procName, createFunc, NULL, params); } -#pragma pop /* 8001F87C-8001F90C 01A1BC 0090+00 0/0 6/6 37/37 .text fopKyM_createWpillar__FPC4cXyzfi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopKyM_createWpillar(cXyz const* param_0, f32 param_1, int param_2) { - nofralloc -#include "asm/f_op/f_op_kankyo_mng/fopKyM_createWpillar__FPC4cXyzfi.s" -} -#pragma pop +int fopKyM_createWpillar(cXyz const* param_0, f32 param_1, int param_2) { + fopKyM_prm_class* params = fopKyM_CreateAppend(); -/* ############################################################################################## */ -/* 804505C0-804505C8 000040 0004+04 1/1 0/0 0/0 .sdata m_name$3788 */ -SECTION_SDATA static u8 m_name[4 + 4 /* padding */] = { - 0x87, - 0x57, - 0x87, - 0x58, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, -}; + if (params == NULL) { + return -1; + } + + params->field_0x0 = *param_0; + params->field_0xc.x = param_1; + params->field_0xc.y = param_1; + params->field_0xc.z = param_1; + params->field_0x18 = param_2; + + return fopKyM_Create(PROC_WPILLAR, NULL, params); +} /* 8001F90C-8001F9B4 01A24C 00A8+00 0/0 0/0 3/3 .text fopKyM_createMpillar__FPC4cXyzf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopKyM_createMpillar(cXyz const* param_0, f32 param_1) { - nofralloc -#include "asm/f_op/f_op_kankyo_mng/fopKyM_createMpillar__FPC4cXyzf.s" +int fopKyM_createMpillar(cXyz const* param_0, f32 param_1) { + static u16 m_name[2] = { + 0x8757, + 0x8758, + }; + + cXyz tmp; + tmp.x = param_1; + tmp.y = param_1; + tmp.z = param_1; + + for (int i = 0; i < 2; i++) { + dComIfGp_particle_set(m_name[i], param_0, NULL, &tmp); + } + return -1; } -#pragma pop diff --git a/src/f_op/f_op_msg.cpp b/src/f_op/f_op_msg.cpp index c80912ee98..cc8d9c42f2 100644 --- a/src/f_op/f_op_msg.cpp +++ b/src/f_op/f_op_msg.cpp @@ -4,6 +4,8 @@ // #include "f_op/f_op_msg.h" +#include "d/msg/d_msg_class.h" +#include "d/s/d_s_play.h" #include "dol2asm.h" #include "dolphin/types.h" @@ -32,55 +34,54 @@ extern "C" void fpcMtd_Execute__FP20process_method_classPv(); extern "C" void fpcMtd_IsDelete__FP20process_method_classPv(); extern "C" void fpcMtd_Delete__FP20process_method_classPv(); extern "C" void fpcMtd_Create__FP20process_method_classPv(); -extern "C" extern u8 struct_80451124[4]; // // Declarations: // /* 8001F488-8001F4B0 019DC8 0028+00 1/0 0/0 0/0 .text fopMsg_Draw__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm int fopMsg_Draw(void* param_0) { - nofralloc -#include "asm/f_op/f_op_msg/fopMsg_Draw__FPv.s" +static int fopMsg_Draw(void* msg) { + msg_class* m = static_cast(msg); + return fpcLf_DrawMethod(m->field_0xd8, msg); } -#pragma pop /* 8001F4B0-8001F4E8 019DF0 0038+00 1/0 0/0 0/0 .text fopMsg_Execute__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm int fopMsg_Execute(void* param_0) { - nofralloc -#include "asm/f_op/f_op_msg/fopMsg_Execute__FPv.s" +static int fopMsg_Execute(void* msg) { + msg_class* m = static_cast(msg); + + int stat = 1; + if (dScnPly_c::isPause()) { + stat = fpcMtd_Execute(&m->field_0xd8->mBase, msg); + } + + return stat; } -#pragma pop /* 8001F4E8-8001F53C 019E28 0054+00 1/0 0/0 0/0 .text fopMsg_IsDelete__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm int fopMsg_IsDelete(void* param_0) { - nofralloc -#include "asm/f_op/f_op_msg/fopMsg_IsDelete__FPv.s" +static int fopMsg_IsDelete(void* msg) { + msg_class* m = static_cast(msg); + + int stat = fpcMtd_IsDelete(&m->field_0xd8->mBase, msg); + if (stat == 1) { + fopDwTg_DrawQTo(&m->field_0xc4); + } + + return stat; } -#pragma pop /* 8001F53C-8001F588 019E7C 004C+00 1/0 0/0 0/0 .text fopMsg_Delete__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm int fopMsg_Delete(void* param_0) { - nofralloc -#include "asm/f_op/f_op_msg/fopMsg_Delete__FPv.s" +static int fopMsg_Delete(void* msg) { + msg_class* m = static_cast(msg); + + int stat = fpcMtd_Delete(&m->field_0xd8->mBase, msg); + fopDwTg_DrawQTo(&m->field_0xc4); + + return stat; } -#pragma pop /* ############################################################################################## */ /* 80450CF0-80450CF8 0001F0 0004+04 1/1 0/0 0/0 .sbss fopMsg_MSG_TYPE */ -static u8 fopMsg_MSG_TYPE[4 + 4 /* padding */]; +static int fopMsg_MSG_TYPE; /* 8001F588-8001F660 019EC8 00D8+00 1/0 0/0 0/0 .text fopMsg_Create__FPv */ #pragma push diff --git a/src/f_op/f_op_msg_mng.cpp b/src/f_op/f_op_msg_mng.cpp index f86916988c..3b92dad6cd 100644 --- a/src/f_op/f_op_msg_mng.cpp +++ b/src/f_op/f_op_msg_mng.cpp @@ -5,6 +5,9 @@ #include "f_op/f_op_msg_mng.h" #include "JSystem/J2DGraph/J2DPane.h" +#include "SSystem/SComponent/c_malloc.h" +#include "d/com/d_com_inf_game.h" +#include "d/msg/d_msg_object.h" #include "dol2asm.h" #include "dolphin/types.h" @@ -12,42 +15,10 @@ // Types: // -struct dStage_roomControl_c { - static u8 mProcID[4]; -}; - -struct dMsgObject_c { - /* 80233D04 */ void setMessageIndex(u32, u32, bool); - /* 80233E70 */ void setMessageIndexDemo(u32, bool); - /* 80237A74 */ void setTalkPartner(fopAc_ac_c*); - /* 80238098 */ void endFlowGroup(); - /* 8023826C */ void setTalkActor(fopAc_ac_c*); -}; - -struct dMeter2_c { - /* 8021F6EC */ void emphasisButtonDelete(); -}; - -struct JMSMesgEntry_c {}; - -struct dMeter2Info_c { - /* 8021C250 */ void getString(u32, char*, JMSMesgEntry_c*); -}; - -struct cMl { - /* 80263228 */ void memalignB(int, u32); -}; - struct JMath { static u8 sincosTable_[65536]; }; -struct J2DPicture { - /* 800202CC */ void setBlendRatio(f32, f32); - /* 80020338 */ void append(char const*, f32); - /* 80020368 */ void insert(char const*, u8, f32); -}; - // // Forward References: // @@ -104,11 +75,8 @@ extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_meter2_info[248]; extern "C" extern u8 g_MsgObject_HIO_c[1040]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u8 g_fpcNd_type[4 + 4 /* padding */]; extern "C" u8 mProcID__20dStage_roomControl_c[4]; // @@ -116,44 +84,28 @@ extern "C" u8 mProcID__20dStage_roomControl_c[4]; // /* 8001F9B4-8001FA24 01A2F4 0070+00 0/0 3/3 0/0 .text fopMsgM_setStageLayer__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopMsgM_setStageLayer(void* param_0) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_setStageLayer__FPv.s" +s32 fopMsgM_setStageLayer(void* param_0) { + scene_class* scn = fopScnM_SearchByID(dStage_roomControl_c::getProcID()); + + int id = fopScnM_LayerID(scn); + return fpcM_ChangeLayerID(param_0, id); } -#pragma pop /* 8001FA24-8001FA44 01A364 0020+00 3/3 14/14 4/4 .text fopMsgM_SearchByID__FUi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm msg_class* fopMsgM_SearchByID(unsigned int param_0) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_SearchByID__FUi.s" +msg_class* fopMsgM_SearchByID(unsigned int id) { + return (msg_class*)fpcEx_SearchByID(id); } -#pragma pop /* 8001FA44-8001FA4C 01A384 0008+00 0/0 2/2 0/0 .text fopMsgM_GetAppend__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopMsgM_GetAppend(void* param_0) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_GetAppend__FPv.s" +fopMsg_prm_class* fopMsgM_GetAppend(void* msg) { + msg_class* m = static_cast(msg); + return (fopMsg_prm_class*)m->field_0x0.mpUserData; } -#pragma pop /* 8001FA4C-8001FA6C 01A38C 0020+00 0/0 2/2 0/0 .text fopMsgM_Delete__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopMsgM_Delete(void* param_0) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_Delete__FPv.s" +void fopMsgM_Delete(void* process) { + fpcM_Delete(process); } -#pragma pop /* ############################################################################################## */ /* 80451C70-80451C74 000270 0004+00 6/6 0/0 0/0 .sdata2 @3902 */ @@ -166,23 +118,47 @@ SECTION_SDATA2 static u8 lit_3902[4] = { /* 8001FA6C-8001FB50 01A3AC 00E4+00 1/1 0/0 0/0 .text createAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void createAppend(fopAc_ac_c* param_0, cXyz* param_1, u32* param_2, u32* param_3, - unsigned int param_4) { - nofralloc -#include "asm/f_op/f_op_msg_mng/createAppend__FP10fopAc_ac_cP4cXyzPUlPUlUi.s" +static fopMsg_prm_class* createAppend(fopAc_ac_c* param_0, cXyz* param_1, u32* param_2, + u32* param_3, unsigned int param_4) { + fopMsg_prm_class* params = + static_cast(cMl::memalignB(-4, sizeof(fopMsg_prm_class))); + + if (params == NULL) { + return NULL; + } + + params->field_0x0 = param_0; + dMsgObject_setTalkActor(param_0); + + if (param_2 != NULL) { + params->field_0x10 = *param_2; + } + + if (param_3 != NULL) { + params->field_0x14 = *param_3; + } + + if (param_1 != NULL) { + params->field_0x4 = *param_1; + } else { + f32 tmp_0 = FLOAT_LABEL(lit_3902); + cXyz tmp(tmp_0, tmp_0, tmp_0); + params->field_0x4 = tmp; + } + + params->field_0x18 = param_4; + + return params; } -#pragma pop /* 8001FB50-8001FC4C 01A490 00FC+00 1/1 0/0 0/0 .text createTimerAppend__FiUlUcUcffffUi */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void createTimerAppend(int param_0, u32 param_1, u8 param_2, u8 param_3, f32 param_4, - f32 param_5, f32 param_6, f32 param_7, unsigned int param_8) { +static asm fopMsg_prm_timer* createTimerAppend(int param_0, u32 param_1, u8 param_2, u8 param_3, + f32 param_4, f32 param_5, f32 param_6, f32 param_7, + unsigned int param_8) { nofralloc #include "asm/f_op/f_op_msg_mng/createTimerAppend__FiUlUcUcffffUi.s" } @@ -190,34 +166,34 @@ static asm void createTimerAppend(int param_0, u32 param_1, u8 param_2, u8 param /* 8001FC4C-8001FCC0 01A58C 0074+00 0/0 1/1 0/0 .text * fopMsgM_create__FsP10fopAc_ac_cP4cXyzPUlPUlPFPv_i */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopMsgM_create(s16 param_0, fopAc_ac_c* param_1, cXyz* param_2, u32* param_3, u32* param_4, - int (*param_5)(void*)) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_create__FsP10fopAc_ac_cP4cXyzPUlPUlPFPv_i.s" +s32 fopMsgM_create(s16 param_0, fopAc_ac_c* param_1, cXyz* param_2, u32* param_3, u32* param_4, + fopMsgCreateFunc createFunc) { + fopMsg_prm_class* params = createAppend(param_1, param_2, param_3, param_4, -1); + + if (params == NULL) { + return -1; + } + + return fpcSCtRq_Request(fpcLy_CurrentLayer(), param_0, (stdCreateFunc)createFunc, NULL, params); } -#pragma pop /* 8001FCC0-8001FD34 01A600 0074+00 0/0 2/2 0/0 .text fop_Timer_create__FsUcUlUcUcffffPFPv_i */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fop_Timer_create(s16 param_0, u8 param_1, u32 param_2, u8 param_3, u8 param_4, f32 param_5, - f32 param_6, f32 param_7, f32 param_8, int (*param_9)(void*)) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fop_Timer_create__FsUcUlUcUcffffPFPv_i.s" +s32 fop_Timer_create(s16 param_0, u8 param_1, u32 param_2, u8 param_3, u8 param_4, f32 param_5, + f32 param_6, f32 param_7, f32 param_8, fopMsgCreateFunc createFunc) { + fopMsg_prm_timer* timer_prm = createTimerAppend(param_1, param_2, param_3, param_4, param_5, + param_6, param_7, param_8, -1); + + if (timer_prm == NULL) { + return -1; + } + + return fpcSCtRq_Request(fpcLy_CurrentLayer(), param_0, (stdCreateFunc)createFunc, NULL, + timer_prm); } -#pragma pop /* ############################################################################################## */ /* 804505C8-804505D0 000048 0004+04 4/4 0/0 0/0 .sdata i_msgID */ -SECTION_SDATA static u32 i_msgID[1 + 1 /* padding */] = { - 0xFFFFFFFF, - /* padding */ - 0x00000000, -}; +SECTION_SDATA static u32 i_msgID = 0xFFFFFFFF; /* 8001FD34-8001FE84 01A674 0150+00 0/0 2/2 1/1 .text fopMsgM_messageSet__FUlP10fopAc_ac_cUl */ #pragma push @@ -250,24 +226,15 @@ asm void fopMsgM_messageSetDemo(u32 param_0) { #pragma pop /* 800200C0-80020100 01AA00 0040+00 0/0 7/7 1/1 .text fopMsgM_messageGet__FPcUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopMsgM_messageGet(char* param_0, u32 param_1) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_messageGet__FPcUl.s" +char* fopMsgM_messageGet(char* msg, u32 string_id) { + dMeter2Info_getString(string_id, msg, NULL); + return msg; } -#pragma pop /* 80020100-80020108 01AA40 0008+00 0/0 1/1 0/0 .text fopMsgM_setMessageID__FUi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopMsgM_setMessageID(unsigned int param_0) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_setMessageID__FUi.s" +void fopMsgM_setMessageID(unsigned int msg_id) { + i_msgID = msg_id; } -#pragma pop /* 80020108-80020158 01AA48 0050+00 0/0 2/2 0/0 .text fopMsgM_Create__FsPFPv_iPv */ #pragma push @@ -280,8 +247,8 @@ asm u32 fopMsgM_Create(s16 param_0, int (*param_1)(void*), void* param_2) { #pragma pop /* 80020158-80020160 -00001 0008+00 0/0 0/0 0/0 .text setAlpha__7J2DPaneFUc */ -void J2DPane::setAlpha(u8 param_0) { - *(u8*)(((u8*)this) + 178) /* this->field_0xb2 */ = (u8)(param_0); +void J2DPane::setAlpha(u8 alpha) { + mAlpha = alpha; } /* ############################################################################################## */ @@ -327,52 +294,32 @@ asm void fopMsgM_valueIncrease(int param_0, int param_1, u8 param_2) { #pragma pop /* 800202CC-80020338 01AC0C 006C+00 0/0 2/0 0/0 .text setBlendRatio__10J2DPictureFff */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DPicture::setBlendRatio(f32 param_0, f32 param_1) { - nofralloc -#include "asm/f_op/f_op_msg_mng/setBlendRatio__10J2DPictureFff.s" +void J2DPicture::setBlendRatio(f32 param_0, f32 param_1) { + setBlendColorRatio(param_0, param_1); + setBlendAlphaRatio(param_0, param_1); } -#pragma pop /* 80020338-80020368 01AC78 0030+00 0/0 1/0 0/0 .text append__10J2DPictureFPCcf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DPicture::append(char const* param_0, f32 param_1) { - nofralloc -#include "asm/f_op/f_op_msg_mng/append__10J2DPictureFPCcf.s" +void J2DPicture::append(char const* param_0, f32 param_1) { + insert(param_0, mTextureCount, param_1); } -#pragma pop /* 80020368-8002039C 01ACA8 0034+00 0/0 1/0 0/0 .text insert__10J2DPictureFPCcUcf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J2DPicture::insert(char const* param_0, u8 param_1, f32 param_2) { - nofralloc -#include "asm/f_op/f_op_msg_mng/insert__10J2DPictureFPCcUcf.s" +void J2DPicture::insert(char const* param_0, u8 param_1, f32 param_2) { + insert(param_0, NULL, param_1, param_2); } -#pragma pop /* 8002039C-800203E0 01ACDC 0044+00 0/0 3/3 0/0 .text fopMsgM_createExpHeap__FUlP7JKRHeap */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm JKRExpHeap* fopMsgM_createExpHeap(u32 param_0, JKRHeap* param_1) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_createExpHeap__FUlP7JKRHeap.s" +JKRExpHeap* fopMsgM_createExpHeap(u32 param_0, JKRHeap* heap) { + if (heap == NULL) { + heap = mDoExt_getGameHeap(); + } + + return JKRExpHeap::create(param_0, heap, false); } -#pragma pop /* 800203E0-80020400 01AD20 0020+00 0/0 3/3 0/0 .text fopMsgM_destroyExpHeap__FP10JKRExpHeap */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void fopMsgM_destroyExpHeap(JKRExpHeap* param_0) { - nofralloc -#include "asm/f_op/f_op_msg_mng/fopMsgM_destroyExpHeap__FP10JKRExpHeap.s" +void fopMsgM_destroyExpHeap(JKRExpHeap* heap) { + heap->destroy(); } -#pragma pop diff --git a/src/f_op/f_op_overlap.cpp b/src/f_op/f_op_overlap.cpp index 4438ab317c..73fe5487e1 100644 --- a/src/f_op/f_op_overlap.cpp +++ b/src/f_op/f_op_overlap.cpp @@ -6,6 +6,7 @@ #include "f_op/f_op_overlap.h" #include "dol2asm.h" #include "dolphin/types.h" +#include "f_op/f_op_overlap_mng.h" // // Forward References: @@ -34,44 +35,28 @@ extern "C" void cReq_Create__FP18request_base_classUc(); // /* 8001E37C-8001E3A4 018CBC 0028+00 1/0 0/0 0/0 .text fopOvlp_Draw__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void fopOvlp_Draw(void* param_0) { - nofralloc -#include "asm/f_op/f_op_overlap/fopOvlp_Draw__FPv.s" +static s32 fopOvlp_Draw(void* ovlp) { + overlap_task_class* overlap = (overlap_task_class*)ovlp; + return fpcLf_DrawMethod(overlap->field_0xc0, ovlp); } -#pragma pop /* 8001E3A4-8001E3CC 018CE4 0028+00 1/0 0/0 0/0 .text fopOvlp_Execute__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void fopOvlp_Execute(void* param_0) { - nofralloc -#include "asm/f_op/f_op_overlap/fopOvlp_Execute__FPv.s" +static s32 fopOvlp_Execute(void* ovlp) { + overlap_task_class* overlap = (overlap_task_class*)ovlp; + return fpcMtd_Execute(&overlap->field_0xc0->mBase, ovlp); } -#pragma pop /* 8001E3CC-8001E3F4 018D0C 0028+00 1/0 0/0 0/0 .text fopOvlp_IsDelete__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void fopOvlp_IsDelete(void* param_0) { - nofralloc -#include "asm/f_op/f_op_overlap/fopOvlp_IsDelete__FPv.s" +static s32 fopOvlp_IsDelete(void* ovlp) { + overlap_task_class* overlap = (overlap_task_class*)ovlp; + return fpcMtd_IsDelete(&overlap->field_0xc0->mBase, ovlp); } -#pragma pop /* 8001E3F4-8001E41C 018D34 0028+00 1/0 0/0 0/0 .text fopOvlp_Delete__FPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void fopOvlp_Delete(void* param_0) { - nofralloc -#include "asm/f_op/f_op_overlap/fopOvlp_Delete__FPv.s" +static s32 fopOvlp_Delete(void* ovlp) { + overlap_task_class* overlap = (overlap_task_class*)ovlp; + return fpcMtd_Delete(&overlap->field_0xc0->mBase, ovlp); } -#pragma pop /* 8001E41C-8001E484 018D5C 0068+00 1/0 0/0 0/0 .text fopOvlp_Create__FPv */ #pragma push diff --git a/src/f_op/f_op_scene_mng.cpp b/src/f_op/f_op_scene_mng.cpp index a71b3d7e48..6beef4ed59 100644 --- a/src/f_op/f_op_scene_mng.cpp +++ b/src/f_op/f_op_scene_mng.cpp @@ -15,8 +15,8 @@ // /* 8001ECB0-8001ECE0 0195F0 0030+00 0/0 7/7 1/1 .text fopScnM_SearchByID__FUi */ -void* fopScnM_SearchByID(unsigned int id) { - return fopScnIt_Judge((fop_ScnItFunc)fpcSch_JudgeByID, &id); +scene_class* fopScnM_SearchByID(unsigned int id) { + return (scene_class*)fopScnIt_Judge((fop_ScnItFunc)fpcSch_JudgeByID, &id); } /* ############################################################################################## */ diff --git a/src/m_Do/m_Do_controller_pad.cpp b/src/m_Do/m_Do_controller_pad.cpp index 0a3ebec8ac..45f9581cce 100644 --- a/src/m_Do/m_Do_controller_pad.cpp +++ b/src/m_Do/m_Do_controller_pad.cpp @@ -7,40 +7,13 @@ #include "SSystem/SComponent/c_lib.h" #include "dol2asm.h" #include "dolphin/types.h" - -// -// Forward References: -// - -extern "C" void create__8mDoCPd_cFv(); -extern "C" void read__8mDoCPd_cFv(); -extern "C" void convert__8mDoCPd_cFP27interface_of_controller_padP10JUTGamePad(); -extern "C" void LRlockCheck__8mDoCPd_cFP27interface_of_controller_pad(); -extern "C" void recalibrate__8mDoCPd_cFv(); -extern "C" u8 m_gamePad__8mDoCPd_c[16]; -extern "C" u8 m_cpadInfo__8mDoCPd_c[256]; +#include "f_ap/f_ap_game.h" // // External References: // -extern "C" void mDoRst_resetCallBack__FiPv(); -extern "C" void cLib_memSet__FPviUl(); -extern "C" void* __nw__FUl(); -extern "C" void __ct__10JUTGamePadFQ210JUTGamePad8EPadPort(); -extern "C" void read__10JUTGamePadFv(); -extern "C" void clearForReset__10JUTGamePadFv(); -extern "C" void getGamePad__10JUTGamePadFi(); -extern "C" void setEnabled__Q210JUTGamePad7CRumbleFUl(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_29(); -extern "C" extern u8 g_HIO[64 + 4 /* padding */]; extern "C" extern s8 data_80450580; -extern "C" u8 mResetData__6mDoRst[4 + 4 /* padding */]; -extern "C" u8 sAnalogMode__10JUTGamePad[4]; -extern "C" u8 sCallback__Q210JUTGamePad13C3ButtonReset[4]; -extern "C" u8 sCallbackArg__Q210JUTGamePad13C3ButtonReset[4 + 4 /* padding */]; -extern "C" extern bool struct_80451500; // // Declarations: @@ -85,37 +58,32 @@ void mDoCPd_c::create() { } /* 80007A94-80007B7C 0023D4 00E8+00 0/0 1/1 0/0 .text read__8mDoCPd_cFv */ -#ifdef NONMATCHING void mDoCPd_c::read() { JUTGamePad::read(); if (!mDoRst::isReset() && mDoRst::is3ButtonReset()) { JUTGamePad* pad = JUTGamePad::getGamePad(mDoRst::get3ButtonResetPort()); - if (!pad->isPushing3ButtonReset()) { // Make the rumble thing right + if (!pad->isPushing3ButtonReset()) { mDoRst::off3ButtonReset(); } } - for (int i = 0; i < 4; i++) { - if (m_gamePad[i] == NULL) { - cLib_memSet(m_gamePad[i], 0, 0x40); + JUTGamePad** pad = m_gamePad; + interface_of_controller_pad* interface = m_cpadInfo; + + for (u32 i = 0; i < 4; i++) { + if (*pad == NULL) { + cLib_memSet(interface, 0, sizeof(interface_of_controller_pad)); } else { - convert(&m_cpadInfo[i], m_gamePad[i]); - LRlockCheck(&m_cpadInfo[i]); + convert(interface, *pad); + LRlockCheck(interface); } + + pad++; + interface++; } } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void mDoCPd_c::read() { - nofralloc -#include "asm/m_Do/m_Do_controller_pad/read__8mDoCPd_cFv.s" -} -#pragma pop -#endif /* 80007B7C-80007CD0 0024BC 0154+00 1/1 0/0 0/0 .text * convert__8mDoCPd_cFP27interface_of_controller_padP10JUTGamePad */ @@ -141,44 +109,30 @@ void mDoCPd_c::convert(interface_of_controller_pad* pInterface, JUTGamePad* pPad /* 80007CD0-80007D74 002610 00A4+00 1/1 0/0 0/0 .text * LRlockCheck__8mDoCPd_cFP27interface_of_controller_pad */ -#ifdef NONMATCHING -void mDoCPd_c::LRlockCheck(interface_of_controller_pad* controllerInterface) { - float temp_1 = controllerInterface->trigger_left; // not sure if temp is left or right - controllerInterface->field_0x3a = false; - controllerInterface->field_0x3c = false; - if (temp_1 <= g_HIO.float_global_1) { // controllerInterface->trigger_left) { - if (temp_1 < g_HIO.float_global_2) { - controllerInterface->field_0x39 = false; +void mDoCPd_c::LRlockCheck(interface_of_controller_pad* interface) { + f32 trig_left = interface->mTriggerLeft; + interface->mTrigLockL = false; + interface->mTrigLockR = false; + + if (trig_left > fapGmHIO_getLROnValue()) { + if (interface->mHoldLockL != true) { + interface->mTrigLockL = true; } - } else { - if (controllerInterface->field_0x39 == false) { - controllerInterface->field_0x3a = true; + interface->mHoldLockL = true; + } else if (trig_left < fapGmHIO_getLROffValue()) { + interface->mHoldLockL = false; + } + + f32 trig_right = interface->mTriggerRight; + if (trig_right > fapGmHIO_getLROnValue()) { + if (interface->mHoldLockR != true) { + interface->mTrigLockR = true; } - controllerInterface->field_0x39 = true; + interface->mHoldLockR = true; + } else if (trig_right < fapGmHIO_getLROffValue()) { + interface->mHoldLockR = false; } - if (controllerInterface->trigger_right > g_HIO.float_global_1) { - if (controllerInterface->field_0x3b == false) { - controllerInterface->field_0x3c = true; - } - controllerInterface->field_0x3b = true; - return; - } - if (controllerInterface->trigger_right >= g_HIO.float_global_2) { - return; - } - controllerInterface->field_0x3b = false; - return; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void mDoCPd_c::LRlockCheck(interface_of_controller_pad* param_0) { - nofralloc -#include "asm/m_Do/m_Do_controller_pad/LRlockCheck__8mDoCPd_cFP27interface_of_controller_pad.s" -} -#pragma pop -#endif void mDoCPd_c::recalibrate(void) { JUTGamePad::clearForReset();