diff --git a/asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/__dt__20daObj_Sekizo_Param_cFv.s b/asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/__dt__20daObj_Sekizo_Param_cFv.s deleted file mode 100644 index 33f8b231ffa..00000000000 --- a/asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/__dt__20daObj_Sekizo_Param_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80CCE118: -/* 80CCE118 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80CCE11C 7C 08 02 A6 */ mflr r0 -/* 80CCE120 90 01 00 14 */ stw r0, 0x14(r1) -/* 80CCE124 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80CCE128 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80CCE12C 41 82 00 1C */ beq lbl_80CCE148 -/* 80CCE130 3C A0 80 CD */ lis r5, __vt__20daObj_Sekizo_Param_c@ha /* 0x80CCE22C@ha */ -/* 80CCE134 38 05 E2 2C */ addi r0, r5, __vt__20daObj_Sekizo_Param_c@l /* 0x80CCE22C@l */ -/* 80CCE138 90 1F 00 00 */ stw r0, 0(r31) -/* 80CCE13C 7C 80 07 35 */ extsh. r0, r4 -/* 80CCE140 40 81 00 08 */ ble lbl_80CCE148 -/* 80CCE144 4B 60 0B F9 */ bl __dl__FPv -lbl_80CCE148: -/* 80CCE148 7F E3 FB 78 */ mr r3, r31 -/* 80CCE14C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80CCE150 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80CCE154 7C 08 03 A6 */ mtlr r0 -/* 80CCE158 38 21 00 10 */ addi r1, r1, 0x10 -/* 80CCE15C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/__sinit_d_a_obj_sekizo_cpp.s b/asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/__sinit_d_a_obj_sekizo_cpp.s deleted file mode 100644 index 289620274ef..00000000000 --- a/asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/__sinit_d_a_obj_sekizo_cpp.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_80CCE0D8: -/* 80CCE0D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80CCE0DC 7C 08 02 A6 */ mflr r0 -/* 80CCE0E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80CCE0E4 3C 60 80 CD */ lis r3, __vt__20daObj_Sekizo_Param_c@ha /* 0x80CCE22C@ha */ -/* 80CCE0E8 38 03 E2 2C */ addi r0, r3, __vt__20daObj_Sekizo_Param_c@l /* 0x80CCE22C@l */ -/* 80CCE0EC 3C 60 80 CD */ lis r3, l_HIO@ha /* 0x80CCE24C@ha */ -/* 80CCE0F0 94 03 E2 4C */ stwu r0, l_HIO@l(r3) /* 0x80CCE24C@l */ -/* 80CCE0F4 3C 80 80 CD */ lis r4, __dt__20daObj_Sekizo_Param_cFv@ha /* 0x80CCE118@ha */ -/* 80CCE0F8 38 84 E1 18 */ addi r4, r4, __dt__20daObj_Sekizo_Param_cFv@l /* 0x80CCE118@l */ -/* 80CCE0FC 3C A0 80 CD */ lis r5, lit_3800@ha /* 0x80CCE240@ha */ -/* 80CCE100 38 A5 E2 40 */ addi r5, r5, lit_3800@l /* 0x80CCE240@l */ -/* 80CCE104 4B FF FA 95 */ bl __register_global_object -/* 80CCE108 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80CCE10C 7C 08 03 A6 */ mtlr r0 -/* 80CCE110 38 21 00 10 */ addi r1, r1, 0x10 -/* 80CCE114 4E 80 00 20 */ blr diff --git a/include/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h b/include/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h index d2f11274fd4..4d925ce8e8a 100644 --- a/include/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h +++ b/include/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h @@ -1,6 +1,8 @@ #ifndef D_A_OBJ_DMELEVATOR_H #define D_A_OBJ_DMELEVATOR_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_DMELEVATOR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h b/include/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h index 51ea228f3d3..111da83bc7c 100644 --- a/include/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h +++ b/include/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h @@ -1,6 +1,8 @@ #ifndef D_A_OBJ_FALLOBJ_H #define D_A_OBJ_FALLOBJ_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_FALLOBJ_H */ diff --git a/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h b/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h index f9bcd0f02cd..6bfb6c774b3 100644 --- a/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h +++ b/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h @@ -1,6 +1,9 @@ #ifndef D_A_OBJ_FIREWOOD_H #define D_A_OBJ_FIREWOOD_H -#include "dolphin/types.h" +#include "d/cc/d_cc_d.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" +#include "m_Do/m_Do_hostIO.h" #endif /* D_A_OBJ_FIREWOOD_H */ diff --git a/include/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h b/include/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h index de1a9259cce..f5826358cf1 100644 --- a/include/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h +++ b/include/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h @@ -1,6 +1,7 @@ #ifndef D_A_OBJ_FIREWOOD2_H #define D_A_OBJ_FIREWOOD2_H -#include "dolphin/types.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_FIREWOOD2_H */ diff --git a/include/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h b/include/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h index 711eb3c896a..ce3b0a4f888 100644 --- a/include/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h +++ b/include/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h @@ -1,6 +1,7 @@ #ifndef D_A_OBJ_GANONWALL_H #define D_A_OBJ_GANONWALL_H -#include "dolphin/types.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_GANONWALL_H */ diff --git a/include/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h b/include/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h index 34e69b63702..127236e869a 100644 --- a/include/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h +++ b/include/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h @@ -1,6 +1,8 @@ #ifndef D_A_OBJ_GRAWALL_H #define D_A_OBJ_GRAWALL_H -#include "dolphin/types.h" +#include "d/cc/d_cc_d.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_GRAWALL_H */ diff --git a/include/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.h b/include/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.h index fe0ccdd8779..1ae264aec2a 100644 --- a/include/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.h +++ b/include/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.h @@ -1,6 +1,8 @@ #ifndef D_A_OBJ_SEKIZO_H #define D_A_OBJ_SEKIZO_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_SEKIZO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h b/include/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h index db855c4a83e..dfc26e63bca 100644 --- a/include/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h +++ b/include/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h @@ -1,6 +1,7 @@ #ifndef D_A_OBJ_STOPPER2_H #define D_A_OBJ_STOPPER2_H -#include "dolphin/types.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_STOPPER2_H */ diff --git a/include/rel/d/a/obj/d_a_obj_table/d_a_obj_table.h b/include/rel/d/a/obj/d_a_obj_table/d_a_obj_table.h index c54d39174fc..89760ffbc65 100644 --- a/include/rel/d/a/obj/d_a_obj_table/d_a_obj_table.h +++ b/include/rel/d/a/obj/d_a_obj_table/d_a_obj_table.h @@ -1,6 +1,9 @@ #ifndef D_A_OBJ_TABLE_H #define D_A_OBJ_TABLE_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/com/d_com_inf_game.h" +#include "d/msg/d_msg_flow.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_TABLE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h b/include/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h index 06dd387b453..340c97f2461 100644 --- a/include/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h +++ b/include/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h @@ -9,7 +9,7 @@ public: /* 80D12BB8 */ void initBaseMtx(); /* 80D12BF4 */ void setBaseMtx(); /* 80D12C48 */ int Create(); - /* 80D12C9C */ bool CreateHeap(); + /* 80D12C9C */ int CreateHeap(); /* 80D12D0C */ int create(); /* 80D12DC0 */ int execute(); /* 80D12EB4 */ int draw(); @@ -18,8 +18,8 @@ public: u32 getEventBit1() { return fopAcM_GetParamBit(this, 0, 10); } u32 getEventBit2() { return fopAcM_GetParamBit(this, 10, 10); } - /* 0x568 */ request_of_phase_process_class field_0x568; - /* 0x570 */ J3DModel* field_0x570; + /* 0x568 */ request_of_phase_process_class mPhaseReq; + /* 0x570 */ J3DModel* mpModel; /* 0x574 */ u16 field_0x574; /* 0x576 */ u16 field_0x576; }; // Size: 0x578 diff --git a/include/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h b/include/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h index 8324a2bb371..59ac1e675c6 100644 --- a/include/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h +++ b/include/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h @@ -1,6 +1,7 @@ #ifndef D_A_OBJ_TOARU_MAKI_H #define D_A_OBJ_TOARU_MAKI_H -#include "dolphin/types.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_TOARU_MAKI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h b/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h index 78960e179c3..f9a1a386db7 100644 --- a/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h +++ b/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h @@ -1,6 +1,8 @@ #ifndef D_A_OBJ_TORNADO_H #define D_A_OBJ_TORNADO_H -#include "dolphin/types.h" +#include "d/cc/d_cc_d.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_TORNADO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h b/include/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h index 176f8267b6e..5c572160e04 100644 --- a/include/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h +++ b/include/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h @@ -1,6 +1,8 @@ #ifndef D_A_OBJ_WELL_COVER_H #define D_A_OBJ_WELL_COVER_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_WELL_COVER_H */ diff --git a/include/rel/d/a/obj/d_a_obj_window/d_a_obj_window.h b/include/rel/d/a/obj/d_a_obj_window/d_a_obj_window.h index ef9b74947b4..73b024150f6 100644 --- a/include/rel/d/a/obj/d_a_obj_window/d_a_obj_window.h +++ b/include/rel/d/a/obj/d_a_obj_window/d_a_obj_window.h @@ -1,6 +1,9 @@ #ifndef D_A_OBJ_WINDOW_H #define D_A_OBJ_WINDOW_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/cc/d_cc_d.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_WINDOW_H */ diff --git a/include/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h b/include/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h index 9e5ee300d9e..43a41195286 100644 --- a/include/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h +++ b/include/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h @@ -1,6 +1,8 @@ #ifndef D_A_OBJ_WOOD_PENDULUM_H #define D_A_OBJ_WOOD_PENDULUM_H -#include "dolphin/types.h" +#include "d/cc/d_cc_d.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_WOOD_PENDULUM_H */ diff --git a/include/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h b/include/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h index 7934acbd7f9..cda892c0e79 100644 --- a/include/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h +++ b/include/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h @@ -1,6 +1,10 @@ #ifndef D_A_OBJ_ZDOOR_H #define D_A_OBJ_ZDOOR_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/cc/d_cc_d.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_ZDOOR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.h b/include/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.h index 03a89073cdb..d4f0ee8c2d3 100644 --- a/include/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.h +++ b/include/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.h @@ -1,6 +1,7 @@ #ifndef D_A_OBJ_ZRA_FREEZE_H #define D_A_OBJ_ZRA_FREEZE_H -#include "dolphin/types.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_ZRA_FREEZE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.h b/include/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.h index 28fd7f022fe..9b87f7eb520 100644 --- a/include/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.h +++ b/include/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.h @@ -1,6 +1,8 @@ #ifndef D_A_OBJ_ZRA_ROCK_H #define D_A_OBJ_ZRA_ROCK_H -#include "dolphin/types.h" +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_ZRA_ROCK_H */ diff --git a/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.cpp b/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.cpp index 9113faeb741..e4375572e07 100644 --- a/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.cpp +++ b/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.cpp @@ -1,42 +1,24 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_dmelevator -// +/** + * d_a_obj_dmelevator.cpp + * + */ #include "rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/bg/d_bg_w.h" +#include "d/d_path.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80BDDBB4 */ ~cXyz(); -}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CDD4 */ void transM(cXyz const&); - - static u8 now[48]; -}; - -struct fopAc_ac_c {}; - -struct daObjDmElevator_c { +class daObjDmElevator_c : public dBgS_MoveBgActor { +public: /* 80BDDD38 */ void initBaseMtx(); /* 80BDDD90 */ void setBaseMtx(); - /* 80BDDEFC */ void Create(); - /* 80BDE0A4 */ void init(); - /* 80BDE2F8 */ void CreateHeap(); - /* 80BDE448 */ void create1st(); - /* 80BDE500 */ void Execute(f32 (**)[3][4]); + /* 80BDDEFC */ int Create(); + /* 80BDE0A4 */ int init(); + /* 80BDE2F8 */ int CreateHeap(); + /* 80BDE448 */ int create1st(); + /* 80BDE500 */ int Execute(Mtx**); /* 80BDE5F8 */ void setting_ride_flag(); /* 80BDE6FC */ void event_sw_proc_call(); /* 80BDE7A0 */ void actionSwPauseNoneInit(); @@ -62,115 +44,50 @@ struct daObjDmElevator_c { /* 80BDF068 */ void actionStartEvent(); /* 80BDF0A0 */ void actionMoveStart(); /* 80BDF168 */ void actionDead(); - /* 80BDF16C */ void demoProc(); + /* 80BDF16C */ int demoProc(); /* 80BDF320 */ void moveInit(); - /* 80BDF3B8 */ void moveProc(); - /* 80BDF618 */ void Draw(); - /* 80BDF6DC */ void Delete(); -}; + /* 80BDF3B8 */ int moveProc(); + /* 80BDF618 */ int Draw(); + /* 80BDF6DC */ int Delete(); -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; + u32 getPathID() { return fopAcM_GetParamBit(this, 8, 8); } -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPath {}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); -}; - -struct dBgW_Base {}; - -struct dBgW { - /* 8007B970 */ dBgW(); - /* 8007B9C0 */ void Move(); -}; - -struct cBgS_PolyInfo {}; - -struct csXyz {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); - /* 80078950 */ void MoveBGExecute(); -}; - -struct dBgS { - /* 80074A08 */ void Regist(dBgW_Base*, fopAc_ac_c*); -}; - -struct cBgW_BgId { - /* 802681D4 */ void ChkUsed() const; -}; - -struct cBgD_t {}; - -struct cBgW { - /* 80079F38 */ void Set(cBgD_t*, u32, f32 (*)[3][4]); -}; - -struct cBgS { - /* 80074250 */ void Release(dBgW_Base*); -}; - -struct Z2SoundObjSimple { - /* 802BE844 */ Z2SoundObjSimple(); -}; - -struct Z2SoundObjBase { - /* 802BDFF8 */ void deleteObject(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DSys { - static u8 mCurrentMtx[48]; -}; - -struct J3DModel {}; - -struct J3DJoint {}; + /* 0x5A0 */ request_of_phase_process_class mPhaseReq; + /* 0x5A8 */ request_of_phase_process_class mPhaseReq2; + /* 0x5B0 */ J3DModel* mpElevatorModel; + /* 0x5B4 */ J3DModel* mpSwitchModel; + /* 0x5B8 */ Z2SoundObjSimple mSoundObj; + /* 0x5D8 */ u8 field_0x5D8[0x5DC - 0x5D8]; + /* 0x5DC */ s32 field_0x5dc; + /* 0x5E0 */ u8 field_0x5e0; + /* 0x5E1 */ u8 field_0x5e1; + /* 0x5E2 */ u8 field_0x5e2; + /* 0x5E3 */ u8 field_0x5e3; + /* 0x5E4 */ s16 field_0x5e4; + /* 0x5E6 */ s16 field_0x5e6; + /* 0x5E8 */ dBgW* mpBgW; + /* 0x5EC */ Mtx mMtx; + /* 0x61C */ cXyz mXyz; + /* 0x628 */ u8 field_0x628; + /* 0x629 */ u8 field_0x629; + /* 0x62A */ u8 field_0x62a; + /* 0x62B */ u8 field_0x62b; + /* 0x62C */ u8 field_0x62C[0x62D - 0x62C]; + /* 0x62D */ u8 field_0x62d; + /* 0x62E */ u8 field_0x62e; + /* 0x62F */ u8 field_0x62f; + /* 0x630 */ u8 field_0x630; + /* 0x631 */ u8 field_0x631; + /* 0x632 */ u8 field_0x632; + /* 0x633 */ u8 field_0x633; + /* 0x634 */ u8 field_0x634; + /* 0x635 */ u8 field_0x635; + /* 0x636 */ u8 field_0x636; + /* 0x637 */ u8 field_0x637; + /* 0x638 */ f32 field_0x638; + /* 0x63C */ f32 field_0x63c; + /* 0x640 */ f32 field_0x640; +}; // Size: 0x644 // // Forward References: @@ -281,24 +198,13 @@ extern "C" void deleteObject__14Z2SoundObjBaseFv(); extern "C" void __ct__16Z2SoundObjSimpleFv(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareDistance(); extern "C" void __ptmf_scall(); extern "C" void _savegpr_27(); extern "C" void _savegpr_28(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); -extern "C" void strcmp(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mCurrentMtx__6J3DSys[48]; -extern "C" extern u32 __float_nan; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -308,10 +214,11 @@ extern "C" void __register_global_object(); /* ############################################################################################## */ /* 80BDF870-80BDF87C 000000 000C+00 11/11 0/0 0/0 .rodata l_swOffset */ -SECTION_RODATA static u8 const l_swOffset[12] = { - 0x00, 0x00, 0x00, 0x00, 0x43, 0x22, 0x00, 0x00, 0xC2, 0x9A, 0x00, 0x00, +static const Vec l_swOffset = { + 0.0f, + 162.0f, + -77.0f, }; -COMPILER_STRIP_GATE(0x80BDF870, &l_swOffset); /* 80BDF87C-80BDF880 00000C 0004+00 0/2 0/0 0/0 .rodata @3718 */ #pragma push @@ -474,7 +381,8 @@ static asm void rideCallBack(dBgW* param_0, fopAc_ac_c* param_1, fopAc_ac_c* par #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// cXyz::~cXyz() +extern "C" asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/__dt__4cXyzFv.s" } @@ -626,7 +534,7 @@ SECTION_DATA static void* l_eventName2 = (void*)(((char*)&d_a_obj_dmelevator__st #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::Create() { +asm int daObjDmElevator_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/Create__17daObjDmElevator_cFv.s" } @@ -678,7 +586,7 @@ COMPILER_STRIP_GATE(0x80BDF8C4, &lit_3940); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::init() { +asm int daObjDmElevator_c::init() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/init__17daObjDmElevator_cFv.s" } @@ -689,7 +597,7 @@ asm void daObjDmElevator_c::init() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::CreateHeap() { +asm int daObjDmElevator_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/CreateHeap__17daObjDmElevator_cFv.s" } @@ -699,7 +607,7 @@ asm void daObjDmElevator_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::create1st() { +asm int daObjDmElevator_c::create1st() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/create1st__17daObjDmElevator_cFv.s" } @@ -718,7 +626,7 @@ COMPILER_STRIP_GATE(0x80BDF8CC, &lit_3988); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::Execute(f32 (**param_0)[3][4]) { +asm int daObjDmElevator_c::Execute(Mtx**) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/Execute__17daObjDmElevator_cFPPA3_A4_f.s" } @@ -1189,16 +1097,23 @@ SECTION_DEAD static char const* const stringBase_80BDF93C = "Timer"; #pragma pop /* 80BDFAB0-80BDFAB8 -00001 0008+00 1/1 0/0 0/0 .data action_table$4279 */ +#ifdef NONMATCHING +static char* action_table[2] = { + "WAIT", + "MOVE", +}; +#else SECTION_DATA static void* action_table[2] = { (void*)(((char*)&d_a_obj_dmelevator__stringBase0) + 0x46), (void*)(((char*)&d_a_obj_dmelevator__stringBase0) + 0x4B), }; +#endif /* 80BDF16C-80BDF320 0018EC 01B4+00 3/3 0/0 0/0 .text demoProc__17daObjDmElevator_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::demoProc() { +asm int daObjDmElevator_c::demoProc() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/demoProc__17daObjDmElevator_cFv.s" } @@ -1233,7 +1148,7 @@ COMPILER_STRIP_GATE(0x80BDF8E8, &lit_4400); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::moveProc() { +asm int daObjDmElevator_c::moveProc() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/moveProc__17daObjDmElevator_cFv.s" } @@ -1243,7 +1158,7 @@ asm void daObjDmElevator_c::moveProc() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::Draw() { +asm int daObjDmElevator_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/Draw__17daObjDmElevator_cFv.s" } @@ -1253,7 +1168,7 @@ asm void daObjDmElevator_c::Draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjDmElevator_c::Delete() { +asm int daObjDmElevator_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/Delete__17daObjDmElevator_cFv.s" } @@ -1301,7 +1216,7 @@ SECTION_DATA extern void* __vt__17daObjDmElevator_c[10] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjDmElevator_create1st(daObjDmElevator_c* param_0) { +static asm void daObjDmElevator_create1st(daObjDmElevator_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/daObjDmElevator_create1st__FP17daObjDmElevator_c.s" } @@ -1312,7 +1227,7 @@ static asm void daObjDmElevator_create1st(daObjDmElevator_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjDmElevator_MoveBGDelete(daObjDmElevator_c* param_0) { +static asm void daObjDmElevator_MoveBGDelete(daObjDmElevator_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/daObjDmElevator_MoveBGDelete__FP17daObjDmElevator_c.s" } @@ -1323,7 +1238,7 @@ static asm void daObjDmElevator_MoveBGDelete(daObjDmElevator_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjDmElevator_MoveBGExecute(daObjDmElevator_c* param_0) { +static asm void daObjDmElevator_MoveBGExecute(daObjDmElevator_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/daObjDmElevator_MoveBGExecute__FP17daObjDmElevator_c.s" } @@ -1334,7 +1249,7 @@ static asm void daObjDmElevator_MoveBGExecute(daObjDmElevator_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjDmElevator_MoveBGDraw(daObjDmElevator_c* param_0) { +static asm void daObjDmElevator_MoveBGDraw(daObjDmElevator_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator/daObjDmElevator_MoveBGDraw__FP17daObjDmElevator_c.s" } diff --git a/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp b/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp index 54d99a789cc..7d7d8a103cf 100644 --- a/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp +++ b/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp @@ -1,39 +1,28 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_fallobj -// +/** + * d_a_obj_fallobj.cpp + * + */ #include "rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/bg/d_bg_w.h" +#include "d/d_procname.h" #include "dol2asm.h" // // Types: // -struct request_of_phase_process_class {}; - -struct csXyz {}; - -struct cXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct fopAc_ac_c {}; - -struct daObjFallObj_c { +class daObjFallObj_c : public dBgS_MoveBgActor { +public: /* 80BE39B8 */ void initBaseMtx(); /* 80BE3A24 */ void setBaseMtx(); - /* 80BE3A88 */ void Create(); + /* 80BE3A88 */ int Create(); /* 80BE3BA8 */ void getFallTime(); /* 80BE3BD4 */ void getFallHeight(); - /* 80BE3C28 */ void CreateHeap(); - /* 80BE3C98 */ void create1st(); - /* 80BE3D24 */ void Execute(f32 (**)[3][4]); + /* 80BE3C28 */ int CreateHeap(); + /* 80BE3C98 */ int create1st(); + /* 80BE3D24 */ int Execute(Mtx**); /* 80BE4138 */ void action(); /* 80BE4228 */ void action_wait(bool); /* 80BE42C0 */ void action_fallStart(); @@ -43,73 +32,29 @@ struct daObjFallObj_c { /* 80BE4670 */ void action_follow_fall(); /* 80BE4700 */ void checkHang(); /* 80BE47A0 */ void checkHang2(); - /* 80BE48A4 */ void Draw(); - /* 80BE4948 */ void Delete(); -}; + /* 80BE48A4 */ int Draw(); + /* 80BE4948 */ int Delete(); -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); - /* 8006FB10 */ void StartQuake(int, int, cXyz); - /* 8006FD94 */ void StopQuake(int); -}; + u32 getTime() { return fopAcM_GetParamBit(this, 8, 8); } + u32 getPos() { return fopAcM_GetParamBit(this, 0x14, 8); } + BOOL checkFallStart() { return fopAcM_SearchByID(mParentPcId)->speed.y != 0.0f; } -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgW {}; - -struct cBgS_PolyInfo {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); - /* 80078950 */ void MoveBGExecute(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct cBgS_LinChk {}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); -}; - -struct Z2SoundObjSimple { - /* 802BE844 */ Z2SoundObjSimple(); -}; - -struct Z2SoundObjBase { - /* 802BDFF8 */ void deleteObject(); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DModel {}; + /* 0x5A0 */ request_of_phase_process_class mPhaseReq; + /* 0x5A8 */ Mtx mMtx; + /* 0x5D8 */ u8 field_0x5d8; + /* 0x5D9 */ u8 field_0x5d9; + /* 0x5DA */ s16 field_0x5da; + /* 0x5DC */ s16 field_0x5dc; + /* 0x5DE */ s16 field_0x5de; + /* 0x5E0 */ s32 field_0x5e0; + /* 0x5E4 */ u8 field_0x5e4; + /* 0x5E5 */ u8 field_0x5e5; + /* 0x5E8 */ J3DModel* mpModel; + /* 0x5EC */ s32 field_0x5ec; + /* 0x5F0 */ u8 field_0x5f0; + /* 0x5F1 */ u8 field_0x5f1; + /* 0x5F4 */ Z2SoundObjSimple mSoundObj; +}; // Size: 0x614 // // Forward References: @@ -182,21 +127,12 @@ extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP extern "C" void cLib_chaseS__FPsss(); extern "C" void deleteObject__14Z2SoundObjBaseFv(); extern "C" void __ct__16Z2SoundObjSimpleFv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareDistance(); extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; // // Declarations: @@ -246,26 +182,20 @@ SECTION_RODATA static f32 const lit_3679 = -6.0f; COMPILER_STRIP_GATE(0x80BE4AB8, &lit_3679); #pragma pop -/* 80BE4B14-80BE4B14 000064 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80BE4B14 = "K_drock00"; -#pragma pop - /* 80BE4B20-80BE4B24 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_obj_fallobj__stringBase0; +static char* l_arcName = "K_drock00"; /* 80BE4B24-80BE4B3C 000004 0018+00 1/1 0/0 0/0 .data l_cull_box */ -SECTION_DATA static u8 l_cull_box[24] = { - 0xC3, 0x48, 0x00, 0x00, 0xC6, 0x1C, 0x40, 0x00, 0xC3, 0x48, 0x00, 0x00, - 0x43, 0x48, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00, +static Vec l_cull_box[2] = { + {-200.0f, -10000.0f, -200.0f}, + {200.0f, 600.0f, 200.0f}, }; /* 80BE3A88-80BE3BA8 000148 0120+00 1/0 0/0 0/0 .text Create__14daObjFallObj_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjFallObj_c::Create() { +asm int daObjFallObj_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/Create__14daObjFallObj_cFv.s" } @@ -324,7 +254,7 @@ asm void daObjFallObj_c::getFallHeight() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjFallObj_c::CreateHeap() { +asm int daObjFallObj_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/CreateHeap__14daObjFallObj_cFv.s" } @@ -334,7 +264,7 @@ asm void daObjFallObj_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjFallObj_c::create1st() { +asm int daObjFallObj_c::create1st() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/create1st__14daObjFallObj_cFv.s" } @@ -394,7 +324,7 @@ COMPILER_STRIP_GATE(0x80BE4AF0, &lit_3823); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjFallObj_c::Execute(f32 (**param_0)[3][4]) { +asm int daObjFallObj_c::Execute(Mtx** i_mtx) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/Execute__14daObjFallObj_cFPPA3_A4_f.s" } @@ -535,7 +465,7 @@ asm void daObjFallObj_c::checkHang2() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjFallObj_c::Draw() { +asm int daObjFallObj_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/Draw__14daObjFallObj_cFv.s" } @@ -545,7 +475,7 @@ asm void daObjFallObj_c::Draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjFallObj_c::Delete() { +asm int daObjFallObj_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/Delete__14daObjFallObj_cFv.s" } @@ -593,7 +523,7 @@ SECTION_DATA extern void* __vt__14daObjFallObj_c[10] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjFallObj_create1st(daObjFallObj_c* param_0) { +static asm void daObjFallObj_create1st(daObjFallObj_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/daObjFallObj_create1st__FP14daObjFallObj_c.s" } @@ -604,7 +534,7 @@ static asm void daObjFallObj_create1st(daObjFallObj_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjFallObj_MoveBGDelete(daObjFallObj_c* param_0) { +static asm void daObjFallObj_MoveBGDelete(daObjFallObj_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/daObjFallObj_MoveBGDelete__FP14daObjFallObj_c.s" } @@ -615,7 +545,7 @@ static asm void daObjFallObj_MoveBGDelete(daObjFallObj_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjFallObj_MoveBGExecute(daObjFallObj_c* param_0) { +static asm void daObjFallObj_MoveBGExecute(daObjFallObj_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/daObjFallObj_MoveBGExecute__FP14daObjFallObj_c.s" } @@ -626,7 +556,7 @@ static asm void daObjFallObj_MoveBGExecute(daObjFallObj_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjFallObj_MoveBGDraw(daObjFallObj_c* param_0) { +static asm void daObjFallObj_MoveBGDraw(daObjFallObj_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj/daObjFallObj_MoveBGDraw__FP14daObjFallObj_c.s" } diff --git a/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp b/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp index 12b51de2dc7..3ec784b7f59 100644 --- a/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp +++ b/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp @@ -1,28 +1,15 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_fireWood -// +/** + * d_a_obj_fireWood.cpp + * + */ #include "rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoHIO_entry_c { - /* 80BE7668 */ ~mDoHIO_entry_c(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daFireWood_c { +class daFireWood_c : public fopAc_ac_c { +public: /* 80BE76B0 */ void setBaseMtx(); /* 80BE7708 */ void create(); /* 80BE79A0 */ void lightInit(); @@ -31,87 +18,38 @@ struct daFireWood_c { /* 80BE7E74 */ bool Draw(); /* 80BE7E7C */ void Delete(); + /* 0x568 */ u8 field_0x568[0x574 - 0x568]; + /* 0x574 */ dCcD_Stts mStts; + /* 0x5B0 */ dCcD_Cyl mCyl; + /* 0x6EC */ cXyz field_0x6ec; + /* 0x6F8 */ u8 field_0x6f8; + /* 0x6F9 */ u8 field_0x6f9; + /* 0x6FC */ u32 field_0x6fc[4]; + /* 0x70C */ u8 field_0x70c; + /* 0x710 */ cXyz field_0x710; + /* 0x71C */ LIGHT_INFLUENCE mLightInfluence; + /* 0x73C */ u8 field_0x73c; + static u8 const mCcDObjInfo[48]; static u8 mCcDCyl[68]; -}; +}; // Size: 0x740 +#ifdef NONMATCHING +class daFireWood_HIO_c : public mDoHIO_entry_c { +public: + /* 80BE762C */ daFireWood_HIO_c(); + /* 80BE7F24 */ virtual ~daFireWood_HIO_c(); + + /* 0x4 */ f32 field_0x4; + /* 0x8 */ f32 field_0x8; + /* 0xC */ u8 field_0xc; +}; +#else struct daFireWood_HIO_c { /* 80BE762C */ daFireWood_HIO_c(); /* 80BE7F24 */ ~daFireWood_HIO_c(); }; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dPa_levelEcallBack {}; - -struct dKy_tevstr_c {}; - -struct csXyz {}; - -struct _GXColor {}; - -struct cXyz {}; - -struct dPa_control_c { - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 80084460 */ void ChkTgHit(); - /* 80084548 */ void GetTgHitGObj(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80BE7910 */ ~cM3dGCyl(); -}; - -struct cM3dGAab { - /* 80BE7958 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct JAISoundID {}; - -struct Vec {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); - /* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct LIGHT_INFLUENCE {}; +#endif // // Forward References: @@ -164,18 +102,14 @@ extern "C" void SetR__8cM3dGCylFf(); extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void __dl__FPv(); -extern "C" void PSMTXTrans(); extern "C" void _savegpr_29(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -207,9 +141,9 @@ SECTION_DATA u8 daFireWood_c::mCcDCyl[68] = { }; /* 80BE8094-80BE80AC 000044 0018+00 1/1 0/0 0/0 .data l_cull_box */ -SECTION_DATA static u8 l_cull_box[24] = { - 0xC2, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC2, 0x48, 0x00, 0x00, - 0x42, 0x48, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00, +static Vec l_cull_box[2] = { + {-50.0f, 0.0f, -50.0f}, + {50.0f, 100.0f, 50.0f}, }; /* 80BE80AC-80BE80CC -00001 0020+00 1/0 0/0 0/0 .data l_daFireWood_Method */ @@ -276,7 +210,8 @@ asm daFireWood_HIO_c::daFireWood_HIO_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm mDoHIO_entry_c::~mDoHIO_entry_c() { +// mDoHIO_entry_c::~mDoHIO_entry_c() +extern "C" asm void __dt__14mDoHIO_entry_cFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood/__dt__14mDoHIO_entry_cFv.s" } @@ -313,7 +248,8 @@ asm void daFireWood_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// cM3dGCyl::~cM3dGCyl() +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood/__dt__8cM3dGCylFv.s" } @@ -323,7 +259,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// cM3dGAab::~cM3dGAab() +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood/__dt__8cM3dGAabFv.s" } @@ -476,8 +413,7 @@ asm daFireWood_HIO_c::~daFireWood_HIO_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void __sinit_d_a_obj_fireWood_cpp() { - nofralloc +asm void __sinit_d_a_obj_fireWood_cpp(){nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood/__sinit_d_a_obj_fireWood_cpp.s" } #pragma pop diff --git a/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.cpp b/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.cpp index b807da4e5d6..aa5d8a3286c 100644 --- a/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.cpp +++ b/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.cpp @@ -1,28 +1,21 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_fireWood2 -// +/** + * d_a_obj_fireWood2.cpp + * + */ #include "rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/cc/d_cc_d.h" +#include "d/d_procname.h" #include "dol2asm.h" +#include "m_Do/m_Do_hostIO.h" // // Types: // -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct mDoHIO_entry_c { - /* 80BE8288 */ ~mDoHIO_entry_c(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daFireWood2_c { +class daFireWood2_c : public fopAc_ac_c { +public: /* 80BE82D0 */ void setBaseMtx(); /* 80BE8328 */ void create(); /* 80BE8640 */ void lightInit(); @@ -30,92 +23,35 @@ struct daFireWood2_c { /* 80BE86FC */ void cutLight(); /* 80BE872C */ void pointLightProc(); /* 80BE87DC */ void Execute(); - /* 80BE8D98 */ bool Draw(); + /* 80BE8D98 */ int Draw(); /* 80BE8DA0 */ void Delete(); + /* 0x568 */ u8 field_0x568[0x574 - 0x568]; + /* 0x574 */ dCcD_Stts mStts; + /* 0x5B0 */ dCcD_Cyl mCyl; + /* 0x6EC */ cXyz field_0x6ec; + /* 0x6F8 */ u8 field_0x6f8; + /* 0x6F9 */ u8 field_0x6f9; + /* 0x6FA */ u8 field_0x6fa; + /* 0x6FB */ u8 field_0x6fb; + /* 0x6FC */ u32 field_0x6fc; + /* 0x700 */ u32 field_0x700; + /* 0x704 */ u32 field_0x704; + /* 0x708 */ u32 field_0x708; + /* 0x70C */ cXyz field_0x70c; + /* 0x718 */ u8 field_0x718; + /* 0x71C */ f32 field_0x71c; + /* 0x720 */ LIGHT_INFLUENCE mLightInfluence; + static u8 const mCcDObjInfo[48]; static u8 mCcDCyl[68]; -}; +}; // Size: 0x740 struct daFireWood2_HIO_c { /* 80BE824C */ daFireWood2_HIO_c(); /* 80BE8E54 */ ~daFireWood2_HIO_c(); }; -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 800352B0 */ void offSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dPa_levelEcallBack {}; - -struct dKy_tevstr_c {}; - -struct csXyz {}; - -struct _GXColor {}; - -struct cXyz {}; - -struct dPa_control_c { - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcCyl {}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 80084460 */ void ChkTgHit(); - /* 80084548 */ void GetTgHitGObj(); -}; - -struct dCcD_Cyl { - /* 800848B4 */ void Set(dCcD_SrcCyl const&); -}; - -struct cM3dGCyl { - /* 8026F1DC */ void SetC(cXyz const&); - /* 8026F1F8 */ void SetH(f32); - /* 8026F200 */ void SetR(f32); - /* 80BE85B0 */ ~cM3dGCyl(); -}; - -struct cM3dGAab { - /* 80BE85F8 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct JAISoundID {}; - -struct Vec {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); - /* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct LIGHT_INFLUENCE {}; - // // Forward References: // @@ -172,16 +108,12 @@ extern "C" void cLib_addCalc__FPfffff(); extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void __dl__FPv(); -extern "C" void PSMTXTrans(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); @@ -287,7 +219,8 @@ asm daFireWood2_HIO_c::daFireWood2_HIO_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm mDoHIO_entry_c::~mDoHIO_entry_c() { +// mDoHIO_entry_c::~mDoHIO_entry_c() +extern "C" asm void __dt__14mDoHIO_entry_cFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__dt__14mDoHIO_entry_cFv.s" } @@ -324,7 +257,8 @@ asm void daFireWood2_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGCyl::~cM3dGCyl() { +// cM3dGCyl::~cM3dGCyl() +extern "C" asm void __dt__8cM3dGCylFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__dt__8cM3dGCylFv.s" } @@ -334,7 +268,8 @@ asm cM3dGCyl::~cM3dGCyl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// cM3dGAab::~cM3dGAab() +extern "C" asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__dt__8cM3dGAabFv.s" } @@ -472,8 +407,8 @@ asm void daFireWood2_c::Execute() { #pragma pop /* 80BE8D98-80BE8DA0 000C38 0008+00 1/1 0/0 0/0 .text Draw__13daFireWood2_cFv */ -bool daFireWood2_c::Draw() { - return true; +int daFireWood2_c::Draw() { + return 1; } /* 80BE8DA0-80BE8DD4 000C40 0034+00 1/1 0/0 0/0 .text Delete__13daFireWood2_cFv */ @@ -491,7 +426,7 @@ asm void daFireWood2_c::Delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daFireWood2_Draw(daFireWood2_c* param_0) { +static asm void daFireWood2_Draw(daFireWood2_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/daFireWood2_Draw__FP13daFireWood2_c.s" } @@ -501,7 +436,7 @@ static asm void daFireWood2_Draw(daFireWood2_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daFireWood2_Execute(daFireWood2_c* param_0) { +static asm void daFireWood2_Execute(daFireWood2_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/daFireWood2_Execute__FP13daFireWood2_c.s" } @@ -511,7 +446,7 @@ static asm void daFireWood2_Execute(daFireWood2_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daFireWood2_Delete(daFireWood2_c* param_0) { +static asm void daFireWood2_Delete(daFireWood2_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/daFireWood2_Delete__FP13daFireWood2_c.s" } @@ -522,7 +457,7 @@ static asm void daFireWood2_Delete(daFireWood2_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daFireWood2_Create(fopAc_ac_c* param_0) { +static asm void daFireWood2_Create(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/daFireWood2_Create__FP10fopAc_ac_c.s" } @@ -542,8 +477,7 @@ asm daFireWood2_HIO_c::~daFireWood2_HIO_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void __sinit_d_a_obj_fireWood2_cpp() { - nofralloc +asm void __sinit_d_a_obj_fireWood2_cpp(){nofralloc #include "asm/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2/__sinit_d_a_obj_fireWood2_cpp.s" } #pragma pop diff --git a/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.cpp b/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.cpp index 11b325dda04..0d04215562c 100644 --- a/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.cpp +++ b/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.cpp @@ -1,87 +1,39 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_ganonwall -// +/** + * d_a_obj_ganonwall.cpp + * + */ #include "rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/d_procname.h" #include "dol2asm.h" // // Types: // -struct request_of_phase_process_class {}; - -struct cXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DMaterialTable {}; - -struct J3DAnmTextureSRTKey {}; - -struct mDoExt_btkAnm { - /* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daObjGWall_c { +class daObjGWall_c : public fopAc_ac_c { +public: /* 80BF4D18 */ void initBaseMtx(); /* 80BF4D54 */ void setBaseMtx(); - /* 80BF4DA8 */ void Create(); - /* 80BF4E8C */ void CreateHeap(); - /* 80BF4FF0 */ void create(); - /* 80BF50A4 */ void execute(); - /* 80BF50CC */ void checkDraw(); - /* 80BF5168 */ void draw(); - /* 80BF5530 */ void _delete(); -}; + /* 80BF4DA8 */ int Create(); + /* 80BF4E8C */ int CreateHeap(); + /* 80BF4FF0 */ int create(); + /* 80BF50A4 */ int execute(); + /* 80BF50CC */ int checkDraw(); + /* 80BF5168 */ int draw(); + /* 80BF5530 */ int _delete(); -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; + u32 getEventBit1() { return fopAcM_GetParamBit(this, 0, 10); } + u32 getEventBit2() { return fopAcM_GetParamBit(this, 10, 10); } -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct JUTNameTab { - /* 802DEAF8 */ void getName(u16) const; -}; - -struct J3DModel {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80BF4FA8 */ ~J3DFrameCtrl(); -}; + /* 0x568 */ request_of_phase_process_class mPhaseReq; + /* 0x570 */ J3DModel* mpModel; + /* 0x574 */ mDoExt_btkAnm* mpBtkAnm; + /* 0x578 */ u16 field_0x578; + /* 0x57A */ u16 field_0x57a; + /* 0x57C */ s16 field_0x57c; +}; // Size: 0x580 // // Forward References: @@ -130,16 +82,10 @@ extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void getName__10JUTNameTabCFUs(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); extern "C" void _savegpr_28(); extern "C" void _restgpr_28(); -extern "C" void strcmp(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; // // Declarations: @@ -149,7 +95,7 @@ extern "C" extern u8 g_env_light[4880]; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void CheckCreateHeap(fopAc_ac_c* param_0) { +static asm int CheckCreateHeap(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/CheckCreateHeap__FP10fopAc_ac_c.s" } @@ -190,39 +136,33 @@ COMPILER_STRIP_GATE(0x80BF55EC, &l_idx); /* 80BF564C-80BF56AC 000060 0060+00 0/1 0/0 0/0 .rodata l_color */ #pragma push #pragma force_active on -SECTION_RODATA static u8 const l_color[96] = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x96, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x64, 0x64, 0x32, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0x64, 0x64, 0x64, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x78, 0x78, 0x78, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xB4, 0xB4, 0xB4, 0xFF, +static const GXColor l_color[24] = { + {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0x96, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0x64, 0x64, 0x32, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0x64, 0x64, 0x64, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, {0x78, 0x78, 0x78, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, + {0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF}, {0xB4, 0xB4, 0xB4, 0xFF}, }; -COMPILER_STRIP_GATE(0x80BF564C, &l_color); #pragma pop /* 80BF56AC-80BF56B0 0000C0 0004+00 1/1 0/0 0/0 .rodata @3681 */ SECTION_RODATA static f32 const lit_3681 = 1000000.0f; COMPILER_STRIP_GATE(0x80BF56AC, &lit_3681); -/* 80BF56D4-80BF56D4 0000E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80BF56D4 = "Y_gwall"; -SECTION_DEAD static char const* const stringBase_80BF56DC = "mat00"; -#pragma pop - /* 80BF56E4-80BF56E8 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_obj_ganonwall__stringBase0; +static char* l_arcName = "Y_gwall"; /* 80BF56E8-80BF56EC -00001 0004+00 1/1 0/0 0/0 .data l_matName */ -SECTION_DATA static void* l_matName = (void*)(((char*)&d_a_obj_ganonwall__stringBase0) + 0x8); +static char* l_matName = "mat00"; /* 80BF4DA8-80BF4E8C 000128 00E4+00 1/1 0/0 0/0 .text Create__12daObjGWall_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGWall_c::Create() { +asm int daObjGWall_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/Create__12daObjGWall_cFv.s" } @@ -266,7 +206,7 @@ SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGWall_c::CreateHeap() { +asm int daObjGWall_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/CreateHeap__12daObjGWall_cFv.s" } @@ -276,7 +216,8 @@ asm void daObjGWall_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// J3DFrameCtrl::~J3DFrameCtrl() +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/__dt__12J3DFrameCtrlFv.s" } @@ -286,7 +227,7 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGWall_c::create() { +asm int daObjGWall_c::create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/func_80BF4FF0.s" } @@ -296,7 +237,7 @@ asm void daObjGWall_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGWall_c::execute() { +asm int daObjGWall_c::execute() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/execute__12daObjGWall_cFv.s" } @@ -306,7 +247,7 @@ asm void daObjGWall_c::execute() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGWall_c::checkDraw() { +asm int daObjGWall_c::checkDraw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/checkDraw__12daObjGWall_cFv.s" } @@ -360,7 +301,7 @@ COMPILER_STRIP_GATE(0x80BF56CC, &lit_3842); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGWall_c::draw() { +asm int daObjGWall_c::draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/draw__12daObjGWall_cFv.s" } @@ -370,7 +311,7 @@ asm void daObjGWall_c::draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGWall_c::_delete() { +asm int daObjGWall_c::_delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/_delete__12daObjGWall_cFv.s" } @@ -381,7 +322,7 @@ asm void daObjGWall_c::_delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjGWall_Draw(daObjGWall_c* param_0) { +static asm int daObjGWall_Draw(daObjGWall_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/daObjGWall_Draw__FP12daObjGWall_c.s" } @@ -391,7 +332,7 @@ static asm void daObjGWall_Draw(daObjGWall_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjGWall_Execute(daObjGWall_c* param_0) { +static asm int daObjGWall_Execute(daObjGWall_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/daObjGWall_Execute__FP12daObjGWall_c.s" } @@ -402,7 +343,7 @@ static asm void daObjGWall_Execute(daObjGWall_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjGWall_Delete(daObjGWall_c* param_0) { +static asm int daObjGWall_Delete(daObjGWall_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/daObjGWall_Delete__FP12daObjGWall_c.s" } @@ -413,10 +354,8 @@ static asm void daObjGWall_Delete(daObjGWall_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjGWall_Create(daObjGWall_c* param_0) { +static asm int daObjGWall_Create(daObjGWall_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall/daObjGWall_Create__FP12daObjGWall_c.s" } #pragma pop - -/* 80BF56D4-80BF56D4 0000E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp b/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp index 736b729893e..5c30a8812dc 100644 --- a/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp +++ b/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp @@ -1,43 +1,25 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_graWall -// +/** + * d_a_obj_graWall.cpp + * + */ #include "rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h" -#include "d/cc/d_cc_d.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daObjGraWall_c { - /* 80C10BF8 */ void Create(); - /* 80C10DD8 */ void Execute(); - /* 80C10E78 */ bool Delete(); +class daObjGraWall_c : public fopAc_ac_c { +public: + /* 80C10BF8 */ int Create(); + /* 80C10DD8 */ int Execute(); + /* 80C10E78 */ int Delete(); /* 80C10E80 */ void col_init(); /* 80C10ED4 */ void col_set(); -}; -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; + /* 0x568 */ dCcD_Stts mStts; + /* 0x5A4 */ dCcD_Cyl mCyl; + /* 0x6E0 */ u8 field_0x6e0; +}; // Size: 0x6E4 // // Forward References: @@ -72,15 +54,12 @@ extern "C" void SetC__8cM3dGCylFRC4cXyz(); extern "C" void SetH__8cM3dGCylFf(); extern "C" void SetR__8cM3dGCylFf(); extern "C" void __dl__FPv(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; // // Declarations: @@ -127,7 +106,7 @@ SECTION_DATA extern void* __vt__8cM3dGAab[3] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGraWall_c::Create() { +asm int daObjGraWall_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall/Create__14daObjGraWall_cFv.s" } @@ -159,15 +138,15 @@ extern "C" asm void __dt__8cM3dGAabFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjGraWall_c::Execute() { +asm int daObjGraWall_c::Execute() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall/Execute__14daObjGraWall_cFv.s" } #pragma pop /* 80C10E78-80C10E80 0002F8 0008+00 1/1 0/0 0/0 .text Delete__14daObjGraWall_cFv */ -bool daObjGraWall_c::Delete() { - return true; +int daObjGraWall_c::Delete() { + return 1; } /* ############################################################################################## */ @@ -180,16 +159,16 @@ COMPILER_STRIP_GATE(0x80C10FB0, &l_DATA); /* 80C10FB8-80C10FFC 000008 0044+00 1/1 0/0 0/0 .rodata l_cyl_src */ const static dCcD_SrcCyl l_cyl_src = { { - {0x0, {{0x0, 0x0, 0x0}, {0x0, 0x0}, 0x19}}, // mObj - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x8}, // mGObjAt - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf + {0x0, {{0x0, 0x0, 0x0}, {0x0, 0x0}, 0x19}}, // mObj + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x8}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf { - {0.0f, 0.0f, 0.0f}, // mCenter - 0.0f, // mRadius - 0.0f // mHeight - } // mCyl + {0.0f, 0.0f, 0.0f}, // mCenter + 0.0f, // mRadius + 0.0f // mHeight + } // mCyl }; /* 80C10E80-80C10ED4 000300 0054+00 1/1 0/0 0/0 .text col_init__14daObjGraWall_cFv */ @@ -216,22 +195,22 @@ asm void daObjGraWall_c::col_set() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjGraWall_Execute(daObjGraWall_c* param_0) { +static asm int daObjGraWall_Execute(daObjGraWall_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall/daObjGraWall_Execute__FP14daObjGraWall_c.s" } #pragma pop /* 80C10F60-80C10F68 0003E0 0008+00 1/0 0/0 0/0 .text daObjGraWall_IsDelete__FP14daObjGraWall_c */ -static bool daObjGraWall_IsDelete(daObjGraWall_c* param_0) { - return true; +static int daObjGraWall_IsDelete(daObjGraWall_c* i_this) { + return 1; } /* 80C10F68-80C10F88 0003E8 0020+00 1/0 0/0 0/0 .text daObjGraWall_Delete__FP14daObjGraWall_c */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjGraWall_Delete(daObjGraWall_c* param_0) { +static asm int daObjGraWall_Delete(daObjGraWall_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall/daObjGraWall_Delete__FP14daObjGraWall_c.s" } @@ -242,7 +221,7 @@ static asm void daObjGraWall_Delete(daObjGraWall_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjGraWall_create(fopAc_ac_c* param_0) { +static asm int daObjGraWall_create(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall/daObjGraWall_create__FP10fopAc_ac_c.s" } diff --git a/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.cpp b/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.cpp index 8fcb73557fe..d4687901ca6 100644 --- a/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.cpp +++ b/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.cpp @@ -1,88 +1,37 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_sekizo -// +/** + * d_a_obj_sekizo.cpp + * + */ #include "rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/bg/d_bg_s.h" +#include "d/bg/d_bg_w.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct cXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct fopAc_ac_c {}; - -struct daObj_Sekizo_c { - /* 80CCDC0C */ void create(); - /* 80CCDD00 */ void CreateHeap(); - /* 80CCDD8C */ void Create(); - /* 80CCDDE8 */ void Delete(); - /* 80CCDE3C */ void Execute(f32 (**)[3][4]); - /* 80CCDEF4 */ void Draw(); +class daObj_Sekizo_c : public dBgS_MoveBgActor, public request_of_phase_process_class { +public: + /* 80CCDC0C */ int create(); + /* 80CCDD00 */ int CreateHeap(); + /* 80CCDD8C */ int Create(); + /* 80CCDDE8 */ int Delete(); + /* 80CCDE3C */ int Execute(Mtx**); + /* 80CCDEF4 */ int Draw(); /* 80CCDFA4 */ void initBaseMtx(); /* 80CCDFE0 */ void setBaseMtx(); + + /* 0x5AC */ J3DModel* mpModel; + /* 0x5B0 */ u8 field_0x5b0; + /* 0x5B1 */ u8 field_0x5b1; + /* 0x5B2 */ u8 field_0x5b2; +}; // Size: 0x5B4 + +class daObj_Sekizo_Param_c { +public: + /* 80CCE118 */ virtual ~daObj_Sekizo_Param_c() {} }; -struct daObj_Sekizo_Param_c { - /* 80CCE118 */ ~daObj_Sekizo_Param_c(); -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgW_Base {}; - -struct dBgW {}; - -struct cBgS_PolyInfo {}; - -struct csXyz {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); - /* 80078950 */ void MoveBGExecute(); -}; - -struct dBgS { - /* 80074A08 */ void Regist(dBgW_Base*, fopAc_ac_c*); -}; - -struct cBgS { - /* 80074250 */ void Release(dBgW_Base*); -}; - -struct J3DModel {}; - // // Forward References: // @@ -130,30 +79,11 @@ extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv(); extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u8 mStayNo__20dStage_roomControl_c[4]; extern "C" void __register_global_object(); -// -// Declarations: -// - -/* ############################################################################################## */ -/* 80CCE174-80CCE174 000000 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80CCE174 = ""; -SECTION_DEAD static char const* const stringBase_80CCE175 = "Sekizo"; -#pragma pop - /* 80CCE17C-80CCE188 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ -SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { +static u8 cNullVec__6Z2Calc[12] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; @@ -171,23 +101,16 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { #pragma pop /* 80CCE19C-80CCE1A4 000020 0008+00 2/3 0/0 0/0 .data l_bmdData */ -SECTION_DATA static u8 l_bmdData[8] = { - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, -}; +static u32 l_bmdData[2] = {4, 1}; /* 80CCE1A4-80CCE1AC 000028 0008+00 0/1 0/0 0/0 .data l_dzbData */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_dzbData[8] = { - 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, -}; +static u32 l_dzbData[2] = {7, 1}; #pragma pop /* 80CCE1AC-80CCE1B4 -00001 0008+00 2/3 0/0 0/0 .data l_resNameList */ -SECTION_DATA static void* l_resNameList[2] = { - (void*)&d_a_obj_sekizo__stringBase0, - (void*)(((char*)&d_a_obj_sekizo__stringBase0) + 0x1), -}; +static char* l_resNameList[2] = {"", "Sekizo"}; /* 80CCE1B4-80CCE1D4 -00001 0020+00 1/0 0/0 0/0 .data daObj_Sekizo_MethodTable */ SECTION_DATA static void* daObj_Sekizo_MethodTable[8] = { @@ -229,7 +152,7 @@ SECTION_DATA extern void* __vt__14daObj_Sekizo_c[10] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObj_Sekizo_c::create() { +asm int daObj_Sekizo_c::create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/create__14daObj_Sekizo_cFv.s" } @@ -239,7 +162,7 @@ asm void daObj_Sekizo_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObj_Sekizo_c::CreateHeap() { +asm int daObj_Sekizo_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/CreateHeap__14daObj_Sekizo_cFv.s" } @@ -249,7 +172,7 @@ asm void daObj_Sekizo_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObj_Sekizo_c::Create() { +asm int daObj_Sekizo_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/func_80CCDD8C.s" } @@ -259,7 +182,7 @@ asm void daObj_Sekizo_c::Create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObj_Sekizo_c::Delete() { +asm int daObj_Sekizo_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/Delete__14daObj_Sekizo_cFv.s" } @@ -270,7 +193,7 @@ asm void daObj_Sekizo_c::Delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObj_Sekizo_c::Execute(f32 (**param_0)[3][4]) { +asm int daObj_Sekizo_c::Execute(Mtx** i_mtx) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/Execute__14daObj_Sekizo_cFPPA3_A4_f.s" } @@ -280,7 +203,7 @@ asm void daObj_Sekizo_c::Execute(f32 (**param_0)[3][4]) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObj_Sekizo_c::Draw() { +asm int daObj_Sekizo_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/Draw__14daObj_Sekizo_cFv.s" } @@ -310,7 +233,7 @@ asm void daObj_Sekizo_c::setBaseMtx() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObj_Sekizo_Create(void* param_0) { +static asm int daObj_Sekizo_Create(void* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/daObj_Sekizo_Create__FPv.s" } @@ -320,7 +243,7 @@ static asm void daObj_Sekizo_Create(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObj_Sekizo_Delete(void* param_0) { +static asm int daObj_Sekizo_Delete(void* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/daObj_Sekizo_Delete__FPv.s" } @@ -330,7 +253,7 @@ static asm void daObj_Sekizo_Delete(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObj_Sekizo_Execute(void* param_0) { +static asm int daObj_Sekizo_Execute(void* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/daObj_Sekizo_Execute__FPv.s" } @@ -340,54 +263,19 @@ static asm void daObj_Sekizo_Execute(void* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObj_Sekizo_Draw(void* param_0) { +static asm int daObj_Sekizo_Draw(void* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/daObj_Sekizo_Draw__FPv.s" } #pragma pop /* 80CCE0D0-80CCE0D8 0005B0 0008+00 1/0 0/0 0/0 .text daObj_Sekizo_IsDelete__FPv */ -static bool daObj_Sekizo_IsDelete(void* param_0) { - return true; +static int daObj_Sekizo_IsDelete(void* i_this) { + return 1; } -/* ############################################################################################## */ -/* 80CCE22C-80CCE238 0000B0 000C+00 2/2 0/0 0/0 .data __vt__20daObj_Sekizo_Param_c */ -SECTION_DATA extern void* __vt__20daObj_Sekizo_Param_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__20daObj_Sekizo_Param_cFv, -}; - /* 80CCE240-80CCE24C 000008 000C+00 1/1 0/0 0/0 .bss @3800 */ static u8 lit_3800[12]; /* 80CCE24C-80CCE250 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */ -static u8 l_HIO[4]; - -/* 80CCE0D8-80CCE118 0005B8 0040+00 0/0 1/0 0/0 .text __sinit_d_a_obj_sekizo_cpp */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void __sinit_d_a_obj_sekizo_cpp() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/__sinit_d_a_obj_sekizo_cpp.s" -} -#pragma pop - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x80CCE0D8, __sinit_d_a_obj_sekizo_cpp); -#pragma pop - -/* 80CCE118-80CCE160 0005F8 0048+00 2/1 0/0 0/0 .text __dt__20daObj_Sekizo_Param_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm daObj_Sekizo_Param_c::~daObj_Sekizo_Param_c() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_sekizo/d_a_obj_sekizo/__dt__20daObj_Sekizo_Param_cFv.s" -} -#pragma pop - -/* 80CCE174-80CCE174 000000 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +static daObj_Sekizo_Param_c l_HIO; diff --git a/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp b/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp index b4e36a82c71..07a79873be5 100644 --- a/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp +++ b/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp @@ -1,88 +1,46 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_stopper2 -// +/** + * d_a_obj_stopper2.cpp + * + */ #include "rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daObjStopper2_c { - /* 80CEF368 */ void getStopModelData(); +class daObjStopper2_c : public fopAc_ac_c { + /* 80CEF368 */ J3DModelData* getStopModelData(); /* 80CEF38C */ void initBaseMtx(); /* 80CEF3C8 */ void setBaseMtx(); - /* 80CEF434 */ void getMaxOffsetY(); - /* 80CEF44C */ void Create(); - /* 80CEF57C */ void CreateHeap(); - /* 80CEF5C8 */ void create(); - /* 80CEF66C */ void execute(); + /* 80CEF434 */ float getMaxOffsetY(); + /* 80CEF44C */ int Create(); + /* 80CEF57C */ int CreateHeap(); + /* 80CEF5C8 */ int create(); + /* 80CEF66C */ int execute(); /* 80CEF6A4 */ void event_proc_call(); /* 80CEF760 */ void actionWait(); /* 80CEF98C */ void actionOrderEvent(); /* 80CEFA60 */ void actionEvent(); /* 80CEFAD4 */ void actionDead(); /* 80CEFAD8 */ void demoProc(); - /* 80CEFD40 */ void draw(); - /* 80CEFDB8 */ void _delete(); -}; + /* 80CEFD40 */ int draw(); + /* 80CEFDB8 */ int _delete(); -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; + u32 getEvId() { return fopAcM_GetParamBit(this, 8, 8); } + u32 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); } + void setAction(u8 i_action) { mAction = i_action; } -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct cXyz {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 800434D8 */ void searchMapEventData(u8); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047698 */ void getEventIdx(fopAc_ac_c*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 80047D4C */ void getIsAddvance(int); - /* 80047E10 */ void getMyActIdx(int, char const* const*, int, int, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); -}; - -struct JAISoundID {}; - -struct Vec {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J3DModel {}; + /* 0x568 */ request_of_phase_process_class mPhaseReq; + /* 0x570 */ J3DModel* mpModel; + /* 0x574 */ f32 field_0x574; + /* 0x578 */ s32 field_0x578; + /* 0x57C */ u16 field_0x57c[4]; + /* 0x584 */ u8 field_0x584; + /* 0x585 */ u8 field_0x585; + /* 0x586 */ u8 mAction; + /* 0x587 */ u8 field_0x587; + /* 0x588 */ u8 field_0x588; +}; // Size: 0x58C // // Forward References: @@ -145,18 +103,12 @@ extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); extern "C" void cLib_chaseF__FPfff(); extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); extern "C" void __ptmf_scall(); extern "C" void _savegpr_26(); extern "C" void _savegpr_28(); extern "C" void _restgpr_26(); extern "C" void _restgpr_28(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" extern u8 data_80CEFFF8[4]; @@ -168,7 +120,7 @@ extern "C" extern u8 data_80CEFFF8[4]; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void CheckCreateHeap(fopAc_ac_c* param_0) { +static asm int CheckCreateHeap(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/CheckCreateHeap__FP10fopAc_ac_c.s" } @@ -191,7 +143,7 @@ SECTION_DEAD static char const* const stringBase_80CEFEE9 = "door-stop.bmd"; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void getStopName() { +static asm char* getStopName() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/getStopName__Fv.s" } @@ -201,7 +153,7 @@ static asm void getStopName() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjStopper2_c::getStopModelData() { +asm J3DModelData* daObjStopper2_c::getStopModelData() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/getStopModelData__15daObjStopper2_cFv.s" } @@ -232,7 +184,7 @@ asm void daObjStopper2_c::setBaseMtx() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjStopper2_c::getMaxOffsetY() { +asm float daObjStopper2_c::getMaxOffsetY() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/getMaxOffsetY__15daObjStopper2_cFv.s" } @@ -285,7 +237,7 @@ SECTION_DATA static void* l_evName[4] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjStopper2_c::Create() { +asm int daObjStopper2_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/Create__15daObjStopper2_cFv.s" } @@ -295,7 +247,7 @@ asm void daObjStopper2_c::Create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjStopper2_c::CreateHeap() { +asm int daObjStopper2_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/CreateHeap__15daObjStopper2_cFv.s" } @@ -305,7 +257,7 @@ asm void daObjStopper2_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjStopper2_c::create() { +asm int daObjStopper2_c::create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/func_80CEF5C8.s" } @@ -315,7 +267,7 @@ asm void daObjStopper2_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjStopper2_c::execute() { +asm int daObjStopper2_c::execute() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/execute__15daObjStopper2_cFv.s" } @@ -491,7 +443,7 @@ asm void daObjStopper2_c::demoProc() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjStopper2_c::draw() { +asm int daObjStopper2_c::draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/draw__15daObjStopper2_cFv.s" } @@ -501,7 +453,7 @@ asm void daObjStopper2_c::draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjStopper2_c::_delete() { +asm int daObjStopper2_c::_delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/_delete__15daObjStopper2_cFv.s" } @@ -511,7 +463,7 @@ asm void daObjStopper2_c::_delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjStopper2_Draw(daObjStopper2_c* param_0) { +static asm int daObjStopper2_Draw(daObjStopper2_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/daObjStopper2_Draw__FP15daObjStopper2_c.s" } @@ -522,7 +474,7 @@ static asm void daObjStopper2_Draw(daObjStopper2_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjStopper2_Execute(daObjStopper2_c* param_0) { +static asm int daObjStopper2_Execute(daObjStopper2_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/daObjStopper2_Execute__FP15daObjStopper2_c.s" } @@ -532,7 +484,7 @@ static asm void daObjStopper2_Execute(daObjStopper2_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjStopper2_Delete(daObjStopper2_c* param_0) { +static asm int daObjStopper2_Delete(daObjStopper2_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/daObjStopper2_Delete__FP15daObjStopper2_c.s" } @@ -542,7 +494,7 @@ static asm void daObjStopper2_Delete(daObjStopper2_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjStopper2_Create(daObjStopper2_c* param_0) { +static asm int daObjStopper2_Create(daObjStopper2_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2/daObjStopper2_Create__FP15daObjStopper2_c.s" } @@ -580,5 +532,3 @@ SECTION_DATA extern void* g_profile_Obj_Stopper2[12] = { (void*)0x02340000, (void*)&l_daObjStopper2_Method, (void*)0x00040100, (void*)0x000E0000, }; - -/* 80CEFEB0-80CEFEB0 000020 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_table/d_a_obj_table.cpp b/rel/d/a/obj/d_a_obj_table/d_a_obj_table.cpp index edd0b355ed8..566b1b40734 100644 --- a/rel/d/a/obj/d_a_obj_table/d_a_obj_table.cpp +++ b/rel/d/a/obj/d_a_obj_table/d_a_obj_table.cpp @@ -1,107 +1,30 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_table -// +/** + * d_a_obj_table.cpp + * + */ #include "rel/d/a/obj/d_a_obj_table/d_a_obj_table.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/bg/d_bg_w.h" +#include "d/d_procname.h" +#include "d/meter/d_meter2_info.h" #include "dol2asm.h" -// -// Types: -// +class daObjTable_c : public dBgS_MoveBgActor { + /* 80D06560 */ int CreateHeap(); + /* 80D065D0 */ int Create(); + /* 80D0695C */ int Execute(Mtx**); + /* 80D06AD8 */ int Draw(); + /* 80D06BC8 */ int Delete(); -struct request_of_phase_process_class {}; + u32 getMessageNo() { return fopAcM_GetParam(this); } -struct cXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct fopAc_ac_c {}; - -struct daObjTable_c { - /* 80D06560 */ void CreateHeap(); - /* 80D065D0 */ void Create(); - /* 80D0695C */ void Execute(f32 (**)[3][4]); - /* 80D06AD8 */ void Draw(); - /* 80D06BC8 */ void Delete(); -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dMsgObject_c { - /* 80238098 */ void endFlowGroup(); -}; - -struct dMsgFlow_c { - /* 80249F00 */ dMsgFlow_c(); - /* 80249F90 */ void init(fopAc_ac_c*, int, int, fopAc_ac_c**); - /* 8024A2D8 */ void doFlow(fopAc_ac_c*, fopAc_ac_c**, int); -}; - -struct dEvt_control_c { - /* 80042518 */ void reset(void*); -}; - -struct dEvent_manager_c { - /* 80046800 */ void setObjectArchive(char*); - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); - /* 80047A78 */ void endCheck(s16); - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); -}; - -struct J3DModel {}; - -struct dDlst_shadowControl_c { - /* 80055C74 */ void setReal(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dBgW {}; - -struct cBgS_PolyInfo {}; - -struct csXyz {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); - /* 80078950 */ void MoveBGExecute(); -}; + /* 0x5A0 */ J3DModel* mpModel; + /* 0x5A4 */ request_of_phase_process_class mPhaseReq; + /* 0x5AC */ dMsgFlow_c mMsgFlow; + /* 0x5F8 */ u32 field_0x5f8; + /* 0x5FC */ s16 field_0x5fc; +}; // Size: 0x600 // // Forward References: @@ -156,17 +79,10 @@ extern "C" void endFlowGroup__12dMsgObject_cFv(); extern "C" void __ct__10dMsgFlow_cFv(); extern "C" void init__10dMsgFlow_cFP10fopAc_ac_ciiPP10fopAc_ac_c(); extern "C" void doFlow__10dMsgFlow_cFP10fopAc_ac_cPP10fopAc_ac_ci(); -extern "C" void PSMTXCopy(); extern "C" void _savegpr_29(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 g_meter2_info[248]; -extern "C" extern u8 j3dSys[284]; // // Declarations: @@ -177,7 +93,7 @@ extern "C" extern u8 j3dSys[284]; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjTable_Draw(daObjTable_c* param_0) { +static asm int daObjTable_Draw(daObjTable_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/daObjTable_Draw__FP12daObjTable_c.s" } @@ -187,15 +103,15 @@ static asm void daObjTable_Draw(daObjTable_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjTable_Execute(daObjTable_c* param_0) { +static asm int daObjTable_Execute(daObjTable_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/daObjTable_Execute__FP12daObjTable_c.s" } #pragma pop /* 80D06484-80D0648C 0000C4 0008+00 1/0 0/0 0/0 .text daObjTable_IsDelete__FP12daObjTable_c */ -static bool daObjTable_IsDelete(daObjTable_c* param_0) { - return true; +static int daObjTable_IsDelete(daObjTable_c* i_this) { + return 1; } /* 80D0648C-80D064B0 0000CC 0024+00 1/0 0/0 0/0 .text daObjTable_Delete__FP12daObjTable_c @@ -203,21 +119,14 @@ static bool daObjTable_IsDelete(daObjTable_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjTable_Delete(daObjTable_c* param_0) { +static asm int daObjTable_Delete(daObjTable_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/daObjTable_Delete__FP12daObjTable_c.s" } #pragma pop -/* ############################################################################################## */ -/* 80D06C0C-80D06C0C 000008 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D06C0C = "Table"; -#pragma pop - /* 80D06C1C-80D06C20 -00001 0004+00 4/4 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_obj_table__stringBase0; +static char* l_arcName = "Table"; /* 80D06C20-80D06C40 -00001 0020+00 1/0 0/0 0/0 .data l_daObjTable_Method */ SECTION_DATA static void* l_daObjTable_Method[8] = { @@ -260,7 +169,7 @@ SECTION_DATA extern void* __vt__12daObjTable_c[10] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjTable_Create(fopAc_ac_c* param_0) { +static asm int daObjTable_Create(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/daObjTable_Create__FP10fopAc_ac_c.s" } @@ -270,7 +179,7 @@ static asm void daObjTable_Create(fopAc_ac_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTable_c::CreateHeap() { +asm int daObjTable_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/CreateHeap__12daObjTable_cFv.s" } @@ -285,7 +194,7 @@ COMPILER_STRIP_GATE(0x80D06C04, &lit_4017); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTable_c::Create() { +asm int daObjTable_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/Create__12daObjTable_cFv.s" } @@ -303,7 +212,7 @@ SECTION_DEAD static char const* const stringBase_80D06C12 = "TABLE_MAP"; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTable_c::Execute(f32 (**param_0)[3][4]) { +asm int daObjTable_c::Execute(Mtx** i_mtx) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/Execute__12daObjTable_cFPPA3_A4_f.s" } @@ -318,7 +227,7 @@ COMPILER_STRIP_GATE(0x80D06C08, &lit_4077); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTable_c::Draw() { +asm int daObjTable_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/Draw__12daObjTable_cFv.s" } @@ -328,10 +237,8 @@ asm void daObjTable_c::Draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTable_c::Delete() { +asm int daObjTable_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_table/d_a_obj_table/Delete__12daObjTable_cFv.s" } #pragma pop - -/* 80D06C0C-80D06C0C 000008 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp b/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp index d7d6e378cbd..39ad6e8b48d 100644 --- a/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp +++ b/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp @@ -9,13 +9,13 @@ #include "f_op/f_op_draw_tag.h" /* 80D12B98-80D12BB8 000078 0020+00 1/1 0/0 0/0 .text CheckCreateHeap__FP10fopAc_ac_c */ -static bool CheckCreateHeap(fopAc_ac_c* i_this) { +static int CheckCreateHeap(fopAc_ac_c* i_this) { return static_cast(i_this)->CreateHeap(); } /* 80D12BB8-80D12BF4 000098 003C+00 1/1 0/0 0/0 .text initBaseMtx__12daObjTMoon_cFv */ void daObjTMoon_c::initBaseMtx() { - field_0x570->setBaseScale(mScale); + mpModel->setBaseScale(mScale); setBaseMtx(); } @@ -23,7 +23,7 @@ void daObjTMoon_c::initBaseMtx() { void daObjTMoon_c::setBaseMtx() { mDoMtx_stack_c::transS(current.pos); mDoMtx_stack_c::YrotM(shape_angle.y); - MTXCopy(mDoMtx_stack_c::now, field_0x570->mBaseTransformMtx); + MTXCopy(mDoMtx_stack_c::now, mpModel->mBaseTransformMtx); } /* 80D12C48-80D12C9C 000128 0054+00 1/1 0/0 0/0 .text Create__12daObjTMoon_cFv */ @@ -31,7 +31,7 @@ int daObjTMoon_c::Create() { field_0x574 = getEventBit1(); field_0x576 = getEventBit2(); initBaseMtx(); - fopAcM_SetMtx(this, field_0x570->getBaseTRMtx()); + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); return 1; } @@ -39,16 +39,16 @@ int daObjTMoon_c::Create() { static const char* l_arcName = "A_TMoon"; /* 80D12C9C-80D12D0C 00017C 0070+00 1/1 0/0 0/0 .text CreateHeap__12daObjTMoon_cFv */ -bool daObjTMoon_c::CreateHeap() { - field_0x570 = mDoExt_J3DModel__create((J3DModelData*)dComIfG_getObjectRes(l_arcName, 3), - 0x80000, 0x11000084); - return field_0x570 != NULL; +int daObjTMoon_c::CreateHeap() { + mpModel = mDoExt_J3DModel__create((J3DModelData*)dComIfG_getObjectRes(l_arcName, 3), 0x80000, + 0x11000084); + return mpModel != NULL ? 1 : 0; } /* 80D12D0C-80D12DC0 0001EC 00B4+00 1/1 0/0 0/0 .text create__12daObjTMoon_cFv */ int daObjTMoon_c::create() { fopAcM_SetupActor(this, daObjTMoon_c); - int phase = dComIfG_resLoad(&field_0x568, l_arcName); + int phase = dComIfG_resLoad(&mPhaseReq, l_arcName); if (phase == cPhs_COMPLEATE_e) { if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x880)) { return cPhs_ERROR_e; @@ -85,11 +85,12 @@ int daObjTMoon_c::draw() { /* 80D12EDC-80D12F10 0003BC 0034+00 1/1 0/0 0/0 .text _delete__12daObjTMoon_cFv */ int daObjTMoon_c::_delete() { - dComIfG_resDelete(&field_0x568, l_arcName); + dComIfG_resDelete(&mPhaseReq, l_arcName); return 1; } -/* 80D12F10-80D12F30 0003F0 0020+00 1/0 0/0 0/0 .text daObjTMoon_Draw__FP12daObjTMoon_c */ +/* 80D12F10-80D12F30 0003F0 0020+00 1/0 0/0 0/0 .text daObjTMoon_Draw__FP12daObjTMoon_c + */ static int daObjTMoon_Draw(daObjTMoon_c* i_this) { return i_this->draw(); } @@ -99,12 +100,14 @@ static int daObjTMoon_Execute(daObjTMoon_c* i_this) { return i_this->execute(); } -/* 80D12F50-80D12F70 000430 0020+00 1/0 0/0 0/0 .text daObjTMoon_Delete__FP12daObjTMoon_c */ +/* 80D12F50-80D12F70 000430 0020+00 1/0 0/0 0/0 .text daObjTMoon_Delete__FP12daObjTMoon_c + */ static int daObjTMoon_Delete(daObjTMoon_c* i_this) { return i_this->_delete(); } -/* 80D12F70-80D12F90 000450 0020+00 1/0 0/0 0/0 .text daObjTMoon_Create__FP12daObjTMoon_c */ +/* 80D12F70-80D12F90 000450 0020+00 1/0 0/0 0/0 .text daObjTMoon_Create__FP12daObjTMoon_c + */ static int daObjTMoon_Create(daObjTMoon_c* i_this) { return i_this->create(); } @@ -118,18 +121,18 @@ static actor_method_class l_daObjTMoon_Method = { /* 80D12FC4-80D12FF4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_TMoon */ extern actor_process_profile_definition g_profile_Obj_TMoon = { - fpcLy_CURRENT_e, // mLayerID - 7, // mListID - fpcPi_CURRENT_e, // mListPrio - PROC_Obj_TMoon, // mProcName - &g_fpcLf_Method.mBase, // mSubMtd - sizeof(daObjTMoon_c), // mSize - 0, // mSizeOther - 0, // mParameters - &g_fopAc_Method.base, // mSubMtd - 569, // mPriority - &l_daObjTMoon_Method, // mSubMtd - 0x40000, // mStatus - fopAc_ACTOR_e, // mActorType - fopAc_CULLBOX_CUSTOM_e, // mCullType + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_Obj_TMoon, // mProcName + &g_fpcLf_Method.mBase, // mSubMtd + sizeof(daObjTMoon_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // mSubMtd + 569, // mPriority + &l_daObjTMoon_Method, // mSubMtd + 0x40000, // mStatus + fopAc_ACTOR_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // mCullType }; diff --git a/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp b/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp index 548f2f94a30..191ca01d5e2 100644 --- a/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp +++ b/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp @@ -1,79 +1,30 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_toaru_maki -// +/** + * d_a_obj_toaru_maki.cpp + * + */ #include "rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h" +#include "d/bg/d_bg_s.h" +#include "d/bg/d_bg_w.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); - /* 80018C8C */ ~fopAc_ac_c(); -}; - -struct daObjToaruMaki_c { +class daObjToaruMaki_c : public fopAc_ac_c, public request_of_phase_process_class { +public: /* 80D13098 */ daObjToaruMaki_c(); - /* 80D130E0 */ ~daObjToaruMaki_c(); - /* 80D1316C */ void createHeap(); - /* 80D132B4 */ void create(); - /* 80D133C0 */ void Delete(); + /* 80D130E0 */ virtual ~daObjToaruMaki_c(); + /* 80D1316C */ int createHeap(); + /* 80D132B4 */ int create(); + /* 80D133C0 */ int Delete(); /* 80D1343C */ void setModelMtx(); - /* 80D134A0 */ void draw(); - /* 80D13524 */ void execute(); -}; + /* 80D134A0 */ int draw(); + /* 80D13524 */ int execute(); -struct dKy_tevstr_c {}; + u32 getNameArg_0() { return fopAcM_GetParamBit(this, 0, 4); } -struct J3DModelData {}; - -struct cXyz {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgW_Base {}; - -struct dBgW { - /* 8007B970 */ dBgW(); -}; - -struct dBgS { - /* 80074A08 */ void Regist(dBgW_Base*, fopAc_ac_c*); -}; - -struct cBgW_BgId { - /* 802681D4 */ void ChkUsed() const; -}; - -struct cBgD_t {}; - -struct cBgW { - /* 80079F38 */ void Set(cBgD_t*, u32, f32 (*)[3][4]); -}; - -struct cBgS { - /* 80074250 */ void Release(dBgW_Base*); -}; - -struct J3DModel {}; + /* 0x574 */ J3DModel* mpModel; + /* 0x578 */ s32 field_0x578; + /* 0x57C */ Mtx mMtx; +}; // Size: 0x5AC // // Forward References: @@ -117,18 +68,11 @@ extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP extern "C" void ChkUsed__9cBgW_BgIdCFv(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); extern "C" void _savegpr_27(); extern "C" void _savegpr_28(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; // // Declarations: @@ -139,25 +83,14 @@ extern "C" extern u8 j3dSys[284]; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjToaruMaki_c_createHeap(fopAc_ac_c* param_0) { +static asm int daObjToaruMaki_c_createHeap(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/daObjToaruMaki_c_createHeap__FP10fopAc_ac_c.s" } #pragma pop -/* ############################################################################################## */ -/* 80D13614-80D13614 000010 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D13614 = "T_Maki1"; -SECTION_DEAD static char const* const stringBase_80D1361C = "T_Maki2"; -#pragma pop - /* 80D13624-80D1362C -00001 0008+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName[2] = { - (void*)&d_a_obj_toaru_maki__stringBase0, - (void*)(((char*)&d_a_obj_toaru_maki__stringBase0) + 0x8), -}; +static char* l_arcName[2] = {"T_Maki1", "T_Maki2"}; /* 80D1362C-80D1364C -00001 0020+00 1/0 0/0 0/0 .data daObjToaruMaki_METHODS */ SECTION_DATA static void* daObjToaruMaki_METHODS[8] = { @@ -208,35 +141,30 @@ asm daObjToaruMaki_c::~daObjToaruMaki_c() { } #pragma pop -/* ############################################################################################## */ /* 80D13604-80D1360C 000000 0008+00 1/1 0/0 0/0 .rodata l_bmdIdx */ -SECTION_RODATA static u8 const l_bmdIdx[8] = { - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x03, -}; -COMPILER_STRIP_GATE(0x80D13604, &l_bmdIdx); +static const u32 l_bmdIdx[2] = {4, 3}; /* 80D1316C-80D132B4 00016C 0148+00 1/1 0/0 0/0 .text createHeap__16daObjToaruMaki_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjToaruMaki_c::createHeap() { +asm int daObjToaruMaki_c::createHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/createHeap__16daObjToaruMaki_cFv.s" } #pragma pop -/* ############################################################################################## */ /* 80D1360C-80D13614 000008 0008+00 1/1 0/0 0/0 .rodata l_heapSize */ -SECTION_RODATA static u8 const l_heapSize[8] = { - 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x0E, 0xB0, +static const u32 l_heapSize[2] = { + 0x2000, + 0x0EB0, }; -COMPILER_STRIP_GATE(0x80D1360C, &l_heapSize); /* 80D132B4-80D133C0 0002B4 010C+00 1/1 0/0 0/0 .text create__16daObjToaruMaki_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjToaruMaki_c::create() { +asm int daObjToaruMaki_c::create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/create__16daObjToaruMaki_cFv.s" } @@ -246,7 +174,7 @@ asm void daObjToaruMaki_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjToaruMaki_c::Delete() { +asm int daObjToaruMaki_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/Delete__16daObjToaruMaki_cFv.s" } @@ -267,7 +195,7 @@ asm void daObjToaruMaki_c::setModelMtx() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjToaruMaki_c::draw() { +asm int daObjToaruMaki_c::draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/draw__16daObjToaruMaki_cFv.s" } @@ -277,7 +205,7 @@ asm void daObjToaruMaki_c::draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjToaruMaki_c::execute() { +asm int daObjToaruMaki_c::execute() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/execute__16daObjToaruMaki_cFv.s" } @@ -288,7 +216,7 @@ asm void daObjToaruMaki_c::execute() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjToaruMaki_create(daObjToaruMaki_c* param_0) { +static asm int daObjToaruMaki_create(daObjToaruMaki_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/daObjToaruMaki_create__FP16daObjToaruMaki_c.s" } @@ -299,7 +227,7 @@ static asm void daObjToaruMaki_create(daObjToaruMaki_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjToaruMaki_Delete(daObjToaruMaki_c* param_0) { +static asm int daObjToaruMaki_Delete(daObjToaruMaki_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/daObjToaruMaki_Delete__FP16daObjToaruMaki_c.s" } @@ -310,7 +238,7 @@ static asm void daObjToaruMaki_Delete(daObjToaruMaki_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjToaruMaki_execute(daObjToaruMaki_c* param_0) { +static asm int daObjToaruMaki_execute(daObjToaruMaki_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/daObjToaruMaki_execute__FP16daObjToaruMaki_c.s" } @@ -320,10 +248,8 @@ static asm void daObjToaruMaki_execute(daObjToaruMaki_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjToaruMaki_draw(daObjToaruMaki_c* param_0) { +static asm int daObjToaruMaki_draw(daObjToaruMaki_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki/daObjToaruMaki_draw__FP16daObjToaruMaki_c.s" } #pragma pop - -/* 80D13614-80D13614 000010 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp b/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp index 22b21d30b88..95b17356dfc 100644 --- a/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp +++ b/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp @@ -1,52 +1,45 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_tornado -// +/** + * d_a_obj_tornado.cpp + * + */ #include "rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h" -#include "d/cc/d_cc_d.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct csXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daObjTrnd_c { +class daObjTrnd_c : public fopAc_ac_c { +public: /* 80D1B998 */ void setPntWind(); /* 80D1BA0C */ void cutPntWind(); /* 80D1BA30 */ void movePntWind(); /* 80D1BC40 */ void setCpsInfo(); /* 80D1BE04 */ void initBaseMtx(); /* 80D1BE24 */ void setBaseMtx(); - /* 80D1BE6C */ void Create(); - /* 80D1BFB0 */ void create(); - /* 80D1C0F0 */ void execute(); - /* 80D1C290 */ bool draw(); - /* 80D1C298 */ void _delete(); -}; + /* 80D1BE6C */ int Create(); + /* 80D1BFB0 */ int create(); + /* 80D1C0F0 */ int execute(); + /* 80D1C290 */ int draw(); + /* 80D1C298 */ int _delete(); -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; + u32 checkSE() { return fopAcM_GetParamBit(this, 8, 1); } + u32 getTimer() { return fopAcM_GetParamBit(this, 0, 8); } + u32 getSwbit() { return fopAcM_GetParamBit(this, 0x18, 8); } -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct WIND_INFLUENCE {}; + /* 0x568 */ dCcD_Stts mStts; + /* 0x5A4 */ dCcD_Cps mCps; + /* 0x6E8 */ Vec field_0x6e8; + /* 0x6F4 */ f32 field_0x6f4; + /* 0x6F8 */ f32 field_0x6f8; + /* 0x6FC */ f32 field_0x6fc; + /* 0x700 */ f32 field_0x700; + /* 0x704 */ f32 field_0x704; + /* 0x708 */ Mtx field_0x708; + /* 0x738 */ s16 field_0x738; + /* 0x73C */ f32 field_0x73c; + /* 0x740 */ WIND_INFLUENCE mWindInfluence; + /* 0x76C */ f32 field_0x76c; +}; // Size: 0x770 // // Forward References: @@ -97,19 +90,13 @@ extern "C" void cLib_addCalc__FPfffff(); extern "C" void cLib_chaseF__FPfff(); extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); extern "C" void __cvt_fp2unsigned(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cps[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CpsAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" f32 Zero__4cXyz[3]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; @@ -308,21 +295,21 @@ COMPILER_STRIP_GATE(0x80D1C3A0, &lit_3762); /* 80D1C3B4-80D1C400 000000 004C+00 1/1 0/0 0/0 .data l_cps_src */ static dCcD_SrcCps l_cps_src = { { - {0x0, {{AT_TYPE_LANTERN_SWING, 0x0, 0x11}, {0x0, 0x0}, 0x0}}, // mObj - {dCcD_SE_NONE, 0x0, 0x0, 0x3, 0x2}, // mGObjAt - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf + {0x0, {{AT_TYPE_LANTERN_SWING, 0x0, 0x11}, {0x0, 0x0}, 0x0}}, // mObj + {dCcD_SE_NONE, 0x0, 0x0, 0x3, 0x2}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf { - {{0.0f, 0.0f, 0.0f}, {0.0f, 3000.0f, 0.0f}, 300.0f}, // mCps - } // mCpsAttr + {{0.0f, 0.0f, 0.0f}, {0.0f, 3000.0f, 0.0f}, 300.0f}, // mCps + } // mCpsAttr }; /* 80D1BE6C-80D1BFB0 00054C 0144+00 1/1 0/0 0/0 .text Create__11daObjTrnd_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTrnd_c::Create() { +asm int daObjTrnd_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado/Create__11daObjTrnd_cFv.s" } @@ -362,7 +349,7 @@ SECTION_DATA extern void* __vt__8cM3dGAab[3] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTrnd_c::create() { +asm int daObjTrnd_c::create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado/func_80D1BFB0.s" } @@ -405,22 +392,22 @@ COMPILER_STRIP_GATE(0x80D1C3AC, &lit_3910); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTrnd_c::execute() { +asm int daObjTrnd_c::execute() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado/execute__11daObjTrnd_cFv.s" } #pragma pop /* 80D1C290-80D1C298 000970 0008+00 1/1 0/0 0/0 .text draw__11daObjTrnd_cFv */ -bool daObjTrnd_c::draw() { - return true; +int daObjTrnd_c::draw() { + return 1; } /* 80D1C298-80D1C2CC 000978 0034+00 1/1 0/0 0/0 .text _delete__11daObjTrnd_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjTrnd_c::_delete() { +asm int daObjTrnd_c::_delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado/_delete__11daObjTrnd_cFv.s" } @@ -430,7 +417,7 @@ asm void daObjTrnd_c::_delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjTrnd_Draw(daObjTrnd_c* param_0) { +static asm int daObjTrnd_Draw(daObjTrnd_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado/daObjTrnd_Draw__FP11daObjTrnd_c.s" } @@ -441,7 +428,7 @@ static asm void daObjTrnd_Draw(daObjTrnd_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjTrnd_Execute(daObjTrnd_c* param_0) { +static asm int daObjTrnd_Execute(daObjTrnd_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado/daObjTrnd_Execute__FP11daObjTrnd_c.s" } @@ -452,7 +439,7 @@ static asm void daObjTrnd_Execute(daObjTrnd_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjTrnd_Delete(daObjTrnd_c* param_0) { +static asm int daObjTrnd_Delete(daObjTrnd_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado/daObjTrnd_Delete__FP11daObjTrnd_c.s" } @@ -463,7 +450,7 @@ static asm void daObjTrnd_Delete(daObjTrnd_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjTrnd_Create(daObjTrnd_c* param_0) { +static asm int daObjTrnd_Create(daObjTrnd_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado/daObjTrnd_Create__FP11daObjTrnd_c.s" } @@ -475,5 +462,3 @@ static asm void daObjTrnd_Create(daObjTrnd_c* param_0) { #pragma force_active on SECTION_DEAD static char const* const stringBase_80D1C3B0 = ""; #pragma pop - -/* 80D1C3B0-80D1C3B0 00005C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.cpp b/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.cpp index ba26f0eba9c..c1445284daf 100644 --- a/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.cpp +++ b/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.cpp @@ -1,92 +1,36 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_well_cover -// +/** + * d_a_obj_well_cover.cpp + * + */ #include "rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/bg/d_bg_w.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct cXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct fopAc_ac_c {}; - -struct daObjWCover_c { +class daObjWCover_c : public dBgS_MoveBgActor { +public: /* 80D36298 */ void initBaseMtx(); /* 80D362D4 */ void setBaseMtx(); - /* 80D36348 */ void Create(); - /* 80D36394 */ void CreateHeap(); - /* 80D36404 */ void create(); - /* 80D364E0 */ void Execute(f32 (**)[3][4]); + /* 80D36348 */ int Create(); + /* 80D36394 */ int CreateHeap(); + /* 80D36404 */ int create(); + /* 80D364E0 */ int Execute(Mtx**); /* 80D3652C */ void action(); /* 80D365B8 */ void modeWait(); /* 80D36790 */ void init_modeBreak(); /* 80D3689C */ void modeBreak(); - /* 80D368A0 */ void Draw(); - /* 80D36944 */ void Delete(); -}; + /* 80D368A0 */ int Draw(); + /* 80D36944 */ int Delete(); -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; + u32 getSwNo() { return fopAcM_GetParam(this); } -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct csXyz {}; - -struct _GXColor {}; - -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 dBgW {}; - -struct cBgS_PolyInfo {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); - /* 80078950 */ void MoveBGExecute(); -}; - -struct J3DModel {}; + /* 0x5A0 */ request_of_phase_process_class mPhaseReq; + /* 0x5A8 */ J3DModel* mpModel; + /* 0x5AC */ u8 field_0x5AC[0x5B0 - 0x5AC]; + /* 0x5B0 */ u8 field_0x5b0; +}; // Size: 0x5B4 // // Forward References: @@ -137,22 +81,12 @@ extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv(); extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv(); extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECSquareDistance(); extern "C" void __ptmf_scall(); extern "C" void _savegpr_26(); extern "C" void _savegpr_29(); extern "C" void _restgpr_26(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; -extern "C" extern u32 __float_nan; extern "C" extern u8 data_80D36B18[4]; // @@ -183,19 +117,12 @@ asm void daObjWCover_c::setBaseMtx() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWCover_c::Create() { +asm int daObjWCover_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/Create__13daObjWCover_cFv.s" } #pragma pop -/* ############################################################################################## */ -/* 80D36A40-80D36A40 000034 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D36A40 = "H_Idohuta"; -#pragma pop - /* 80D36A4C-80D36A58 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -215,13 +142,13 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { #pragma pop /* 80D36A6C-80D36A70 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_obj_well_cover__stringBase0; +static char* l_arcName = "H_Idohuta"; /* 80D36394-80D36404 000174 0070+00 1/0 0/0 0/0 .text CreateHeap__13daObjWCover_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWCover_c::CreateHeap() { +asm int daObjWCover_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/CreateHeap__13daObjWCover_cFv.s" } @@ -229,6 +156,13 @@ asm void daObjWCover_c::CreateHeap() { /* ############################################################################################## */ /* 80D36A70-80D36A7C -00001 000C+00 0/1 0/0 0/0 .data @3731 */ +#ifdef NONMATCHING +typedef void (daObjWCover_c::*modeFunc)(); +static modeFunc l_func[] = { + &daObjWCover_c::modeWait, + &daObjWCover_c::modeBreak, +}; +#else #pragma push #pragma force_active on SECTION_DATA static void* lit_3731[3] = { @@ -256,7 +190,7 @@ SECTION_DATA static u8 l_func[24] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; #pragma pop - +#endif /* 80D36AA0-80D36AC0 -00001 0020+00 1/0 0/0 0/0 .data l_daObjWCover_Method */ SECTION_DATA static void* l_daObjWCover_Method[8] = { (void*)daObjWCover_Create__FP10fopAc_ac_c, @@ -297,7 +231,7 @@ SECTION_DATA extern void* __vt__13daObjWCover_c[10] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWCover_c::create() { +asm int daObjWCover_c::create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/func_80D36404.s" } @@ -308,7 +242,7 @@ asm void daObjWCover_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWCover_c::Execute(f32 (**param_0)[3][4]) { +asm int daObjWCover_c::Execute(Mtx** i_mtx) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/Execute__13daObjWCover_cFPPA3_A4_f.s" } @@ -437,7 +371,7 @@ void daObjWCover_c::modeBreak() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWCover_c::Draw() { +asm int daObjWCover_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/Draw__13daObjWCover_cFv.s" } @@ -447,7 +381,7 @@ asm void daObjWCover_c::Draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWCover_c::Delete() { +asm int daObjWCover_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/Delete__13daObjWCover_cFv.s" } @@ -458,7 +392,7 @@ asm void daObjWCover_c::Delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWCover_Draw(daObjWCover_c* param_0) { +static asm void daObjWCover_Draw(daObjWCover_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/daObjWCover_Draw__FP13daObjWCover_c.s" } @@ -468,7 +402,7 @@ static asm void daObjWCover_Draw(daObjWCover_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWCover_Execute(daObjWCover_c* param_0) { +static asm void daObjWCover_Execute(daObjWCover_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/daObjWCover_Execute__FP13daObjWCover_c.s" } @@ -478,7 +412,7 @@ static asm void daObjWCover_Execute(daObjWCover_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWCover_Delete(daObjWCover_c* param_0) { +static asm void daObjWCover_Delete(daObjWCover_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/daObjWCover_Delete__FP13daObjWCover_c.s" } @@ -489,10 +423,8 @@ static asm void daObjWCover_Delete(daObjWCover_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWCover_Create(fopAc_ac_c* param_0) { +static asm void daObjWCover_Create(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover/daObjWCover_Create__FP10fopAc_ac_c.s" } #pragma pop - -/* 80D36A40-80D36A40 000034 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp b/rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp index ef727ca47d7..e50fc92abb5 100644 --- a/rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp +++ b/rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp @@ -1,92 +1,32 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_window -// +/** + * d_a_obj_window.cpp + * + */ #include "rel/d/a/obj/d_a_obj_window/d_a_obj_window.h" -#include "d/cc/d_cc_d.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/bg/d_bg_w.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct J3DModelData {}; - -struct J3DAnmTransform {}; - -struct mDoExt_bckAnm { - /* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool); - /* 8000D9CC */ void entry(J3DModelData*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct fopAc_ac_c {}; - -struct daObjWindow_c { +class daObjWindow_c : public dBgS_MoveBgActor { +public: /* 80D38758 */ void initBaseMtx(); /* 80D387B8 */ void setBaseMtx(); - /* 80D38840 */ void Create(); - /* 80D388F0 */ void CreateHeap(); - /* 80D38A68 */ void create1st(); - /* 80D38B04 */ void Execute(f32 (**)[3][4]); - /* 80D38F28 */ void Draw(); - /* 80D39000 */ void Delete(); -}; + /* 80D38840 */ int Create(); + /* 80D388F0 */ int CreateHeap(); + /* 80D38A68 */ int create1st(); + /* 80D38B04 */ int Execute(Mtx**); + /* 80D38F28 */ int Draw(); + /* 80D39000 */ int Delete(); -struct dKy_tevstr_c {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dBgW {}; - -struct cBgS_PolyInfo {}; - -struct csXyz {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); - /* 80078950 */ void MoveBGExecute(); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct J3DModel {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80D38A20 */ ~J3DFrameCtrl(); -}; + /* 0x5A0 */ request_of_phase_process_class mPhaseReq; + /* 0x5A8 */ J3DModel* mpModel; + /* 0x5AC */ mDoExt_bckAnm* mpBckAnm; + /* 0x5B0 */ u8 mIdx; + /* 0x5B4 */ dCcD_Stts mStts; + /* 0x5F0 */ dCcD_Cyl mCyl; +}; // Size: 0x72C // // Forward References: @@ -147,21 +87,14 @@ extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void* __nw__FUl(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXMultVec(); extern "C" void _savegpr_29(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; // @@ -228,35 +161,29 @@ SECTION_RODATA static u8 const lit_3664[4] = { COMPILER_STRIP_GATE(0x80D39244, &lit_3664); #pragma pop -/* 80D3927C-80D3927C 000050 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D3927C = "J_KazeD"; -#pragma pop - /* 80D39284-80D39288 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_obj_window__stringBase0; +static char* l_arcName = "J_KazeD"; /* 80D39288-80D392CC 000004 0044+00 1/1 0/0 0/0 .data l_cyl_src */ static dCcD_SrcCyl l_cyl_src = { { - {0x0, {{0x0, 0x0, 0x0}, {0xd8fbfdff, 0x11}, 0x79}}, // mObj - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf + {0x0, {{0x0, 0x0, 0x0}, {0xd8fbfdff, 0x11}, 0x79}}, // mObj + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf { - {0.0f, 0.0f, 0.0f}, // mCenter - 40.0f, // mRadius - 400.0f // mHeight - } // mCyl + {0.0f, 0.0f, 0.0f}, // mCenter + 40.0f, // mRadius + 400.0f // mHeight + } // mCyl }; /* 80D38840-80D388F0 000160 00B0+00 1/0 0/0 0/0 .text Create__13daObjWindow_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWindow_c::Create() { +asm int daObjWindow_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/Create__13daObjWindow_cFv.s" } @@ -314,7 +241,7 @@ SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWindow_c::CreateHeap() { +asm int daObjWindow_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/CreateHeap__13daObjWindow_cFv.s" } @@ -324,7 +251,8 @@ asm void daObjWindow_c::CreateHeap() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// J3DFrameCtrl::~J3DFrameCtrl() +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/__dt__12J3DFrameCtrlFv.s" } @@ -334,7 +262,7 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWindow_c::create1st() { +asm int daObjWindow_c::create1st() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/create1st__13daObjWindow_cFv.s" } @@ -430,7 +358,7 @@ COMPILER_STRIP_GATE(0x80D39278, &lit_3832); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWindow_c::Execute(f32 (**param_0)[3][4]) { +asm int daObjWindow_c::Execute(Mtx** i_mtx) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/Execute__13daObjWindow_cFPPA3_A4_f.s" } @@ -440,7 +368,7 @@ asm void daObjWindow_c::Execute(f32 (**param_0)[3][4]) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWindow_c::Draw() { +asm int daObjWindow_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/Draw__13daObjWindow_cFv.s" } @@ -450,7 +378,7 @@ asm void daObjWindow_c::Draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWindow_c::Delete() { +asm int daObjWindow_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/Delete__13daObjWindow_cFv.s" } @@ -475,7 +403,7 @@ SECTION_DATA extern void* __vt__13daObjWindow_c[10] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWindow_create1st(daObjWindow_c* param_0) { +static asm int daObjWindow_create1st(daObjWindow_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/daObjWindow_create1st__FP13daObjWindow_c.s" } @@ -508,7 +436,7 @@ extern "C" asm void __dt__8cM3dGAabFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWindow_MoveBGDelete(daObjWindow_c* param_0) { +static asm int daObjWindow_MoveBGDelete(daObjWindow_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/daObjWindow_MoveBGDelete__FP13daObjWindow_c.s" } @@ -519,7 +447,7 @@ static asm void daObjWindow_MoveBGDelete(daObjWindow_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWindow_MoveBGExecute(daObjWindow_c* param_0) { +static asm int daObjWindow_MoveBGExecute(daObjWindow_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/daObjWindow_MoveBGExecute__FP13daObjWindow_c.s" } @@ -529,10 +457,8 @@ static asm void daObjWindow_MoveBGExecute(daObjWindow_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWindow_MoveBGDraw(daObjWindow_c* param_0) { +static asm int daObjWindow_MoveBGDraw(daObjWindow_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_window/d_a_obj_window/daObjWindow_MoveBGDraw__FP13daObjWindow_c.s" } #pragma pop - -/* 80D3927C-80D3927C 000050 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.cpp b/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.cpp index d0217bb00b0..651b37196a9 100644 --- a/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.cpp +++ b/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.cpp @@ -1,59 +1,36 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_wood_pendulum -// +/** + * d_a_obj_wood_pendulum.cpp + * + */ #include "rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h" -#include "d/cc/d_cc_d.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - /* 8000CD64 */ void transS(cXyz const&); - - static u8 now[48]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daObjWPndlm_c { +class daObjWPndlm_c : public fopAc_ac_c { +public: /* 80D39418 */ void initBaseMtx(); /* 80D39454 */ void setBaseMtx(); - /* 80D394CC */ void Create(); - /* 80D395C8 */ void CreateHeap(); - /* 80D39638 */ void create(); - /* 80D39978 */ void execute(); - /* 80D39B68 */ void draw(); - /* 80D39BCC */ void _delete(); -}; + /* 80D394CC */ int Create(); + /* 80D395C8 */ int CreateHeap(); + /* 80D39638 */ int create(); + /* 80D39978 */ int execute(); + /* 80D39B68 */ int draw(); + /* 80D39BCC */ int _delete(); -struct dKy_tevstr_c {}; + u32 getArg0() { return fopAcM_GetParamBit(this, 0, 8); } + u32 getArg1() { return fopAcM_GetParamBit(this, 8, 8); } -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct J3DModel {}; + /* 0x568 */ request_of_phase_process_class mPhaseReq; + /* 0x570 */ J3DModel* mpModel; + /* 0x574 */ dCcD_Stts mStts; + /* 0x5B0 */ dCcD_Sph mSph; + /* 0x6E8 */ dCcD_Sph field_0x6e8[2]; + /* 0x958 */ s16 field_0x958; + /* 0x95A */ s16 field_0x95a; + /* 0x95C */ s16 field_0x95c; +}; // Size: 0x960 // // Forward References: @@ -102,9 +79,6 @@ extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP extern "C" void Set__4cCcSFP8cCcD_Obj(); extern "C" void SetC__8cM3dGSphFRC4cXyz(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); extern "C" void __construct_array(); extern "C" void _savegpr_25(); extern "C" void _savegpr_26(); @@ -112,16 +86,12 @@ extern "C" void _savegpr_29(); extern "C" void _restgpr_25(); extern "C" void _restgpr_26(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_SphAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; // // Declarations: @@ -131,7 +101,7 @@ extern "C" extern u8 g_env_light[4880]; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void CheckCreateHeap(fopAc_ac_c* param_0) { +static asm int CheckCreateHeap(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/CheckCreateHeap__FP10fopAc_ac_c.s" } @@ -161,14 +131,14 @@ asm void daObjWPndlm_c::setBaseMtx() { /* 80D39C88-80D39CC8 000000 0040+00 2/2 0/0 0/0 .rodata l_sph_src */ const static dCcD_SrcSph l_sph_src = { { - {0x0, {{AT_TYPE_CSTATUE_SWING, 0x0, 0xd}, {0x0, 0x10}, 0x0}}, // mObj - {dCcD_SE_NONE, 0x0, 0x1, 0x0, 0x8}, // mGObjAt - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf + {0x0, {{AT_TYPE_CSTATUE_SWING, 0x0, 0xd}, {0x0, 0x10}, 0x0}}, // mObj + {dCcD_SE_NONE, 0x0, 0x1, 0x0, 0x8}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf { - {{0.0f, 0.0f, 0.0f}, 150.0f} // mSph - } // mSphAttr + {{0.0f, 0.0f, 0.0f}, 150.0f} // mSph + } // mSphAttr }; /* 80D39CC8-80D39D08 000040 0040+00 0/1 0/0 0/0 .rodata l_sph_src2 */ @@ -176,14 +146,14 @@ const static dCcD_SrcSph l_sph_src = { #pragma force_active on const static dCcD_SrcSph l_sph_src2 = { { - {0x0, {{0x0, 0x0, 0xc}, {0xd8fafdff, 0x11}, 0x0}}, // mObj - {dCcD_SE_NONE, 0x0, 0x1, 0x0, 0x8}, // mGObjAt - {dCcD_SE_NONE, 0x2, 0x0, 0x0, 0x3}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf + {0x0, {{0x0, 0x0, 0xc}, {0xd8fafdff, 0x11}, 0x0}}, // mObj + {dCcD_SE_NONE, 0x0, 0x1, 0x0, 0x8}, // mGObjAt + {dCcD_SE_NONE, 0x2, 0x0, 0x0, 0x3}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf { - {{0.0f, 0.0f, 0.0f}, 120.0f} // mSph - } // mSphAttr + {{0.0f, 0.0f, 0.0f}, 120.0f} // mSph + } // mSphAttr }; #pragma pop @@ -211,27 +181,20 @@ COMPILER_STRIP_GATE(0x80D39D10, &lit_3674); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWPndlm_c::Create() { +asm int daObjWPndlm_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/Create__13daObjWPndlm_cFv.s" } #pragma pop -/* ############################################################################################## */ -/* 80D39D38-80D39D38 0000B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D39D38 = "A_Turuki"; -#pragma pop - /* 80D39D44-80D39D48 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_obj_wood_pendulum__stringBase0; +static char* l_arcName = "A_Turuki"; /* 80D395C8-80D39638 000248 0070+00 1/1 0/0 0/0 .text CreateHeap__13daObjWPndlm_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWPndlm_c::CreateHeap() { +asm int daObjWPndlm_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/CreateHeap__13daObjWPndlm_cFv.s" } @@ -278,7 +241,7 @@ SECTION_DATA extern void* __vt__8cM3dGAab[3] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWPndlm_c::create() { +asm int daObjWPndlm_c::create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/func_80D39638.s" } @@ -362,7 +325,7 @@ COMPILER_STRIP_GATE(0x80D39D34, &lit_3861); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWPndlm_c::execute() { +asm int daObjWPndlm_c::execute() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/execute__13daObjWPndlm_cFv.s" } @@ -372,7 +335,7 @@ asm void daObjWPndlm_c::execute() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWPndlm_c::draw() { +asm int daObjWPndlm_c::draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/draw__13daObjWPndlm_cFv.s" } @@ -382,7 +345,7 @@ asm void daObjWPndlm_c::draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjWPndlm_c::_delete() { +asm int daObjWPndlm_c::_delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/_delete__13daObjWPndlm_cFv.s" } @@ -393,7 +356,7 @@ asm void daObjWPndlm_c::_delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWPndlm_Draw(daObjWPndlm_c* param_0) { +static asm int daObjWPndlm_Draw(daObjWPndlm_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/daObjWPndlm_Draw__FP13daObjWPndlm_c.s" } @@ -403,7 +366,7 @@ static asm void daObjWPndlm_Draw(daObjWPndlm_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWPndlm_Execute(daObjWPndlm_c* param_0) { +static asm int daObjWPndlm_Execute(daObjWPndlm_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/daObjWPndlm_Execute__FP13daObjWPndlm_c.s" } @@ -413,7 +376,7 @@ static asm void daObjWPndlm_Execute(daObjWPndlm_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWPndlm_Delete(daObjWPndlm_c* param_0) { +static asm int daObjWPndlm_Delete(daObjWPndlm_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/daObjWPndlm_Delete__FP13daObjWPndlm_c.s" } @@ -424,10 +387,8 @@ static asm void daObjWPndlm_Delete(daObjWPndlm_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjWPndlm_Create(fopAc_ac_c* param_0) { +static asm int daObjWPndlm_Create(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum/daObjWPndlm_Create__FP10fopAc_ac_c.s" } #pragma pop - -/* 80D39D38-80D39D38 0000B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp b/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp index 8235ac40247..c3ae4031a0b 100644 --- a/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp +++ b/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp @@ -1,93 +1,38 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_zdoor -// +/** + * d_a_obj_zdoor.cpp + * + */ #include "rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h" -#include "d/cc/d_cc_d.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct fopAc_ac_c {}; - -struct daZdoor_c { +class daZdoor_c : public dBgS_MoveBgActor { +public: /* 80D3F65C */ void init_cyl(); /* 80D3F740 */ void set_cyl(); /* 80D3F884 */ void setBaseMtx(); - /* 80D3F8F8 */ void Create(); - /* 80D3F970 */ void CreateHeap(); - /* 80D3F9F0 */ void create1st(); - /* 80D3FACC */ void Execute(f32 (**)[3][4]); - /* 80D3FCE8 */ void Draw(); - /* 80D3FD8C */ void Delete(); -}; + /* 80D3F8F8 */ int Create(); + /* 80D3F970 */ int CreateHeap(); + /* 80D3F9F0 */ int create1st(); + /* 80D3FACC */ int Execute(Mtx**); + /* 80D3FCE8 */ int Draw(); + /* 80D3FD8C */ int Delete(); -struct dKy_tevstr_c {}; + u32 getType() { return fopAcM_GetParamBit(this, 0, 4); } -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C37C */ void getRes(char const*, char const*, dRes_info_c*, int); - /* 8003C6B8 */ void getObjectResName2Index(char const*, char const*); -}; - -struct dBgW {}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80D400F8 */ ~dBgS_ObjAcch(); -}; - -struct cBgS_PolyInfo {}; - -struct csXyz {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); - /* 80078950 */ void MoveBGExecute(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); -}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct J3DModel {}; + /* 0x5A0 */ request_of_phase_process_class mPhaseReq; + /* 0x5A8 */ J3DModel* mpModel; + /* 0x5AC */ dBgS_ObjAcch mObjAcch; + /* 0x784 */ dBgS_AcchCir mAcchCir; + /* 0x7C4 */ dCcD_Stts mStts; + /* 0x800 */ dCcD_Cyl field_0x800[4]; + /* 0xCF0 */ dCcD_Cyl field_0xcf0; + /* 0xE2C */ s16 field_0xe2c; + /* 0xE2E */ s16 field_0xe2e; + /* 0xE30 */ u8 field_0xe30; +}; // Size: 0xE34 // // Forward References: @@ -160,9 +105,6 @@ extern "C" void SetC__8cM3dGCylFRC4cXyz(); extern "C" void cLib_addCalcAngleS__FPsssss(); extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); extern "C" void __construct_array(); extern "C" void _savegpr_23(); extern "C" void _savegpr_26(); @@ -170,89 +112,94 @@ extern "C" void _savegpr_29(); extern "C" void _restgpr_23(); extern "C" void _restgpr_26(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Cyl[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_CylAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; // // Declarations: // -/* ############################################################################################## */ /* 80D401EC-80D40228 000000 003C+00 3/3 0/0 0/0 .rodata l_cyl_data */ -SECTION_RODATA static u8 const l_cyl_data[60] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x0C, 0x00, - 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0x43, 0x16, 0x00, 0x00, +static const cM3dGCylS l_cyl_data[3] = { + {{ + 0.0f, + 0.0f, + 0.0f, + }, + 35.0f, + 400.0f}, + {{ + 0.0f, + 0.0f, + 0.0f, + }, + 35.0f, + 350.0f}, + {{ + 0.0f, + 0.0f, + 0.0f, + }, + 30.0f, + 150.0f}, }; -COMPILER_STRIP_GATE(0x80D401EC, &l_cyl_data); /* 80D40228-80D40264 00003C 003C+00 1/1 0/0 0/0 .rodata l_cyl_data2 */ -SECTION_RODATA static u8 const l_cyl_data2[60] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0xA0, 0x00, - 0x00, 0x43, 0xC8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x42, 0xA0, 0x00, 0x00, 0x43, 0xAF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00, 0x43, 0x16, 0x00, 0x00, +static const cM3dGCylS l_cyl_data2[3] = { + {{ + 0.0f, + 0.0f, + 0.0f, + }, + 80.0f, + 400.0f}, + {{ + 0.0f, + 0.0f, + 0.0f, + }, + 80.0f, + 350.0f}, + {{ + 0.0f, + 0.0f, + 0.0f, + }, + 50.0f, + 150.0f}, }; -COMPILER_STRIP_GATE(0x80D40228, &l_cyl_data2); /* 80D40264-80D4026C 000078 0006+02 0/1 0/0 0/0 .rodata l_open_limit_max */ #pragma push #pragma force_active on -SECTION_RODATA static u8 const l_open_limit_max[6 + 2 /* padding */] = { - 0x4E, - 0x20, - 0x55, - 0x55, - 0x00, - 0x00, - /* padding */ - 0x00, - 0x00, +static const s16 l_open_limit_max[3] = { + 0x4E20, + 0x5555, + 0, }; -COMPILER_STRIP_GATE(0x80D40264, &l_open_limit_max); #pragma pop /* 80D4026C-80D40274 000080 0006+02 0/1 0/0 0/0 .rodata l_open_limit_min */ #pragma push #pragma force_active on -SECTION_RODATA static u8 const l_open_limit_min[6 + 2 /* padding */] = { - 0x13, - 0x88, - 0xAA, - 0xAB, - 0xAE, - 0x39, - /* padding */ - 0x00, - 0x00, +static const s16 l_open_limit_min[3] = { + 0x1388, + 0xAAAB, + 0xAE39, }; -COMPILER_STRIP_GATE(0x80D4026C, &l_open_limit_min); #pragma pop /* 80D40274-80D4027C 000088 0006+02 2/2 0/0 0/0 .rodata l_open_speed */ -SECTION_RODATA static u8 const l_open_speed[6 + 2 /* padding */] = { - 0x00, - 0xFA, - 0x02, - 0x00, - 0x02, - 0x00, - /* padding */ - 0x00, - 0x00, +static const s16 l_open_speed[3] = { + 0x00FA, + 0x0200, + 0x0200, }; -COMPILER_STRIP_GATE(0x80D40274, &l_open_speed); /* 80D4027C-80D40280 000090 0004+00 1/2 0/0 0/0 .rodata @3658 */ SECTION_RODATA static u8 const lit_3658[4] = { @@ -267,7 +214,7 @@ COMPILER_STRIP_GATE(0x80D4027C, &lit_3658); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void checkPlayerPos(daZdoor_c* param_0) { +static asm BOOL checkPlayerPos(daZdoor_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/checkPlayerPos__FP9daZdoor_c.s" } @@ -283,7 +230,7 @@ COMPILER_STRIP_GATE(0x80D40280, &lit_3679); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void doorCoHitCallBack(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, fopAc_ac_c* param_2, +static asm void doorCoHitCallBack(fopAc_ac_c* i_this, dCcD_GObjInf* param_1, fopAc_ac_c* param_2, dCcD_GObjInf* param_3) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/func_80D3F4DC.s" @@ -310,7 +257,7 @@ COMPILER_STRIP_GATE(0x80D4028C, &lit_3714); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void doorTgHitCallBack(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, fopAc_ac_c* param_2, +static asm void doorTgHitCallBack(fopAc_ac_c* i_this, dCcD_GObjInf* param_1, fopAc_ac_c* param_2, dCcD_GObjInf* param_3) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/func_80D3F570.s" @@ -321,31 +268,31 @@ static asm void doorTgHitCallBack(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, fo /* 80D40310-80D40354 000000 0044+00 1/1 0/0 0/0 .data l_cyl_src */ static dCcD_SrcCyl l_cyl_src = { { - {0x0, {{0x0, 0x0, 0x0}, {0xd8fbfdff, 0x11}, 0x19}}, // mObj - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf + {0x0, {{0x0, 0x0, 0x0}, {0xd8fbfdff, 0x11}, 0x19}}, // mObj + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf { - {0.0f, 0.0f, 0.0f}, // mCenter - 35.0f, // mRadius - 400.0f // mHeight - } // mCyl + {0.0f, 0.0f, 0.0f}, // mCenter + 35.0f, // mRadius + 400.0f // mHeight + } // mCyl }; /* 80D40354-80D40398 000044 0044+00 1/1 0/0 0/0 .data l_cyl_src2 */ static dCcD_SrcCyl l_cyl_src2 = { { - {0x0, {{0x0, 0x0, 0x0}, {0x0, 0x0}, 0x79}}, // mObj - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf + {0x0, {{0x0, 0x0, 0x0}, {0x0, 0x0}, 0x79}}, // mObj + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf { - {0.0f, 0.0f, 0.0f}, // mCenter - 80.0f, // mRadius - 400.0f // mHeight - } // mCyl + {0.0f, 0.0f, 0.0f}, // mCenter + 80.0f, // mRadius + 400.0f // mHeight + } // mCyl }; /* 80D3F65C-80D3F740 00029C 00E4+00 1/1 0/0 0/0 .text init_cyl__9daZdoor_cFv */ @@ -411,84 +358,59 @@ asm void daZdoor_c::setBaseMtx() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZdoor_c::Create() { +asm int daZdoor_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/Create__9daZdoor_cFv.s" } #pragma pop -/* ############################################################################################## */ -/* 80D402B0-80D402B0 0000C4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D402B0 = "J_Zdoor"; -SECTION_DEAD static char const* const stringBase_80D402B8 = "J_Rdoor"; -SECTION_DEAD static char const* const stringBase_80D402C0 = "J_STdoa"; -SECTION_DEAD static char const* const stringBase_80D402C8 = "J_Zdoor.bmd"; -SECTION_DEAD static char const* const stringBase_80D402D4 = "J_Rdoor.bmd"; -SECTION_DEAD static char const* const stringBase_80D402E0 = "J_STdoa.bmd"; -#pragma pop - /* 80D40398-80D403A4 -00001 000C+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName[3] = { - (void*)&d_a_obj_zdoor__stringBase0, - (void*)(((char*)&d_a_obj_zdoor__stringBase0) + 0x8), - (void*)(((char*)&d_a_obj_zdoor__stringBase0) + 0x10), +static char* l_arcName[3] = { + "J_Zdoor", + "J_Rdoor", + "J_STdoa", }; /* 80D403A4-80D403B0 -00001 000C+00 1/1 0/0 0/0 .data l_bmdName */ -SECTION_DATA static void* l_bmdName[3] = { - (void*)(((char*)&d_a_obj_zdoor__stringBase0) + 0x18), - (void*)(((char*)&d_a_obj_zdoor__stringBase0) + 0x24), - (void*)(((char*)&d_a_obj_zdoor__stringBase0) + 0x30), +static char* l_bmdName[3] = { + "J_Zdoor.bmd", + "J_Rdoor.bmd", + "J_STdoa.bmd", }; /* 80D3F970-80D3F9F0 0005B0 0080+00 1/0 0/0 0/0 .text CreateHeap__9daZdoor_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZdoor_c::CreateHeap() { +asm int daZdoor_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/CreateHeap__9daZdoor_cFv.s" } #pragma pop -/* ############################################################################################## */ /* 80D402A4-80D402A8 0000B8 0004+00 1/1 0/0 0/0 .rodata estimateSizeTbl$3848 */ -SECTION_RODATA static u8 const estimateSizeTbl[4] = { - 0x0C, - 0xF0, - 0x0D, - 0x30, +static const u16 estimateSizeTbl[2] = { + 0x0CF0, + 0x0D30, }; -COMPILER_STRIP_GATE(0x80D402A4, &estimateSizeTbl); - -/* 80D402B0-80D402B0 0000C4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D402EC = "J_Zdoor.dzb"; -SECTION_DEAD static char const* const stringBase_80D402F8 = "J_Rdoor.dzb"; -SECTION_DEAD static char const* const stringBase_80D40304 = "J_STdoa.dzb"; -#pragma pop /* 80D403B0-80D403BC -00001 000C+00 1/1 0/0 0/0 .data l_dzbName */ -SECTION_DATA static void* l_dzbName[3] = { - (void*)(((char*)&d_a_obj_zdoor__stringBase0) + 0x3C), - (void*)(((char*)&d_a_obj_zdoor__stringBase0) + 0x48), - (void*)(((char*)&d_a_obj_zdoor__stringBase0) + 0x54), +static char* l_dzbName[3] = { + "J_Zdoor.dzb", + "J_Rdoor.dzb", + "J_STdoa.dzb", }; /* 80D3F9F0-80D3FACC 000630 00DC+00 1/1 0/0 0/0 .text create1st__9daZdoor_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZdoor_c::create1st() { +asm int daZdoor_c::create1st() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/create1st__9daZdoor_cFv.s" } #pragma pop -/* ############################################################################################## */ /* 80D402A8-80D402AC 0000BC 0004+00 0/1 0/0 0/0 .rodata @3906 */ #pragma push #pragma force_active on @@ -507,7 +429,7 @@ COMPILER_STRIP_GATE(0x80D402AC, &lit_3907); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZdoor_c::Execute(f32 (**param_0)[3][4]) { +asm int daZdoor_c::Execute(Mtx** i_mtx) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/Execute__9daZdoor_cFPPA3_A4_f.s" } @@ -517,7 +439,7 @@ asm void daZdoor_c::Execute(f32 (**param_0)[3][4]) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZdoor_c::Draw() { +asm int daZdoor_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/Draw__9daZdoor_cFv.s" } @@ -527,7 +449,7 @@ asm void daZdoor_c::Draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZdoor_c::Delete() { +asm int daZdoor_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/Delete__9daZdoor_cFv.s" } @@ -601,7 +523,7 @@ SECTION_DATA extern void* __vt__9daZdoor_c[10] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daZdoor_create1st(daZdoor_c* param_0) { +static asm int daZdoor_create1st(daZdoor_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/daZdoor_create1st__FP9daZdoor_c.s" } @@ -655,7 +577,8 @@ extern "C" asm void __ct__8dCcD_CylFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// dBgS_ObjAcch::~dBgS_ObjAcch() +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/__dt__12dBgS_ObjAcchFv.s" } @@ -666,7 +589,7 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daZdoor_MoveBGDelete(daZdoor_c* param_0) { +static asm int daZdoor_MoveBGDelete(daZdoor_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/daZdoor_MoveBGDelete__FP9daZdoor_c.s" } @@ -677,7 +600,7 @@ static asm void daZdoor_MoveBGDelete(daZdoor_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daZdoor_MoveBGExecute(daZdoor_c* param_0) { +static asm int daZdoor_MoveBGExecute(daZdoor_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/daZdoor_MoveBGExecute__FP9daZdoor_c.s" } @@ -687,7 +610,7 @@ static asm void daZdoor_MoveBGExecute(daZdoor_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daZdoor_MoveBGDraw(daZdoor_c* param_0) { +static asm int daZdoor_MoveBGDraw(daZdoor_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/daZdoor_MoveBGDraw__FP9daZdoor_c.s" } @@ -712,5 +635,3 @@ static asm void func_80D401DC() { #include "asm/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor/func_80D401DC.s" } #pragma pop - -/* 80D402B0-80D402B0 0000C4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp b/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp index 0398cb298f2..c272c3172d3 100644 --- a/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp +++ b/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp @@ -1,95 +1,46 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_zra_freeze -// +/** + * d_a_obj_zra_freeze.cpp + * + */ #include "rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "SSystem/SComponent/c_math.h" +#include "d/a/d_a_player.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CED4 */ void XYZrotM(csXyz const&); - - static u8 now[48]; -}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daZraFreeze_c { +class daZraFreeze_c : public fopAc_ac_c { +public: /* 80D440B8 */ void setBaseMtx(); - /* 80D44124 */ void chkActorInScreen(); - /* 80D442BC */ void Create(); - /* 80D4443C */ void CreateHeap(); + /* 80D44124 */ BOOL chkActorInScreen(); + /* 80D442BC */ int Create(); + /* 80D4443C */ int CreateHeap(); /* 80D444C0 */ void setHitodamaPrtcl(); - /* 80D44698 */ void Execute(); - /* 80D449E0 */ void Draw(); - /* 80D44A84 */ void Delete(); + /* 80D44698 */ int Execute(); + /* 80D449E0 */ int Draw(); + /* 80D44A84 */ int Delete(); + + /* 0x568 */ request_of_phase_process_class mPhaseReq; + /* 0x570 */ J3DModel* mpModel; + /* 0x574 */ Mtx mMtx; + /* 0x5A4 */ s32 field_0x5a4; + /* 0x5A8 */ s32 field_0x5a8; + /* 0x5AC */ s32 field_0x5ac; + /* 0x5B0 */ u8 field_0x5b0; + /* 0x5B1 */ u8 field_0x5b1; + /* 0x5B2 */ u8 field_0x5b2; + /* 0x5B3 */ u8 field_0x5B3[0x5B4 - 0x5B3]; + /* 0x5B4 */ cXyz field_0x5b4; + /* 0x5C0 */ cXyz field_0x5c0; + /* 0x5CC */ s16 field_0x5cc; + /* 0x5CE */ u8 field_0x5ce; + /* 0x5CF */ u8 field_0x5cf; + /* 0x5D0 */ cXyz field_0x5d0; + /* 0x5DC */ s16 field_0x5dc; + /* 0x5DE */ s16 field_0x5de; }; -struct daPy_py_c { - /* 8015F424 */ void checkNowWolfEyeUp(); -}; - -struct dSv_info_c { - /* 80035200 */ void onSwitch(int, int); - /* 80035360 */ void isSwitch(int, int) const; -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; -}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C37C */ void getRes(char const*, char const*, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); -}; - -struct dEvent_manager_c { - /* 80047758 */ void getEventIdx(fopAc_ac_c*, char const*, u8); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct J3DModel {}; - // // Forward References: // @@ -141,21 +92,12 @@ extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP extern "C" void dKy_darkworld_check__Fv(); extern "C" void __mi__4cXyzCFRC3Vec(); extern "C" void cM_rndF__Ff(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVecArray(); -extern "C" void PSVECSquareMag(); extern "C" void _savegpr_24(); extern "C" void _savegpr_29(); extern "C" void _restgpr_24(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 __float_nan; // // Declarations: @@ -209,7 +151,7 @@ COMPILER_STRIP_GATE(0x80D44B58, &lit_3765); #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZraFreeze_c::chkActorInScreen() { +asm BOOL daZraFreeze_c::chkActorInScreen() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/chkActorInScreen__13daZraFreeze_cFv.s" } @@ -219,7 +161,7 @@ asm void daZraFreeze_c::chkActorInScreen() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void createSolidHeap(fopAc_ac_c* param_0) { +static asm int createSolidHeap(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/createSolidHeap__FP10fopAc_ac_c.s" } @@ -230,46 +172,31 @@ static asm void createSolidHeap(fopAc_ac_c* param_0) { SECTION_RODATA static f32 const lit_3840 = 65536.0f; COMPILER_STRIP_GATE(0x80D44B5C, &lit_3840); -/* 80D44B88-80D44B88 000040 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D44B88 = "zrF"; -#pragma pop - /* 80D44BC4-80D44BC8 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_obj_zra_freeze__stringBase0; +static char* l_arcName = "zrF"; /* 80D442BC-80D4443C 00027C 0180+00 1/1 0/0 0/0 .text Create__13daZraFreeze_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZraFreeze_c::Create() { +asm int daZraFreeze_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/Create__13daZraFreeze_cFv.s" } #pragma pop -/* ############################################################################################## */ -/* 80D44B88-80D44B88 000040 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D44B8C = "zrA_a_TW.bmd"; -SECTION_DEAD static char const* const stringBase_80D44B99 = "zrA_pain_TW.bmd"; -SECTION_DEAD static char const* const stringBase_80D44BA9 = "zrA_sol_TW.bmd"; -#pragma pop - /* 80D44BC8-80D44BD4 -00001 000C+00 1/1 0/0 0/0 .data l_bmdName$3845 */ -SECTION_DATA static void* l_bmdName[3] = { - (void*)(((char*)&d_a_obj_zra_freeze__stringBase0) + 0x4), - (void*)(((char*)&d_a_obj_zra_freeze__stringBase0) + 0x11), - (void*)(((char*)&d_a_obj_zra_freeze__stringBase0) + 0x21), +static char* l_bmdName[3] = { + "zrA_a_TW.bmd", + "zrA_pain_TW.bmd", + "zrA_sol_TW.bmd", }; /* 80D4443C-80D444C0 0003FC 0084+00 1/1 0/0 0/0 .text CreateHeap__13daZraFreeze_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZraFreeze_c::CreateHeap() { +asm int daZraFreeze_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/CreateHeap__13daZraFreeze_cFv.s" } @@ -358,7 +285,7 @@ SECTION_DEAD static char const* const stringBase_80D44BB8 = "zora_koori"; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZraFreeze_c::Execute() { +asm int daZraFreeze_c::Execute() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/Execute__13daZraFreeze_cFv.s" } @@ -368,7 +295,7 @@ asm void daZraFreeze_c::Execute() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZraFreeze_c::Draw() { +asm int daZraFreeze_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/Draw__13daZraFreeze_cFv.s" } @@ -378,7 +305,7 @@ asm void daZraFreeze_c::Draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daZraFreeze_c::Delete() { +asm int daZraFreeze_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/Delete__13daZraFreeze_cFv.s" } @@ -389,7 +316,7 @@ asm void daZraFreeze_c::Delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daZraFreeze_Draw(daZraFreeze_c* param_0) { +static asm int daZraFreeze_Draw(daZraFreeze_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/daZraFreeze_Draw__FP13daZraFreeze_c.s" } @@ -399,22 +326,22 @@ static asm void daZraFreeze_Draw(daZraFreeze_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daZraFreeze_Execute(daZraFreeze_c* param_0) { +static asm int daZraFreeze_Execute(daZraFreeze_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/daZraFreeze_Execute__FP13daZraFreeze_c.s" } #pragma pop /* 80D44AF8-80D44B00 000AB8 0008+00 1/0 0/0 0/0 .text daZraFreeze_IsDelete__FP13daZraFreeze_c */ -static bool daZraFreeze_IsDelete(daZraFreeze_c* param_0) { - return true; +static int daZraFreeze_IsDelete(daZraFreeze_c* i_this) { + return 1; } /* 80D44B00-80D44B20 000AC0 0020+00 1/0 0/0 0/0 .text daZraFreeze_Delete__FP13daZraFreeze_c */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daZraFreeze_Delete(daZraFreeze_c* param_0) { +static asm int daZraFreeze_Delete(daZraFreeze_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/daZraFreeze_Delete__FP13daZraFreeze_c.s" } @@ -425,7 +352,7 @@ static asm void daZraFreeze_Delete(daZraFreeze_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daZraFreeze_create(fopAc_ac_c* param_0) { +static asm int daZraFreeze_create(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze/daZraFreeze_create__FP10fopAc_ac_c.s" } @@ -453,5 +380,3 @@ SECTION_DATA extern void* g_profile_OBJ_ZRAFREEZE[12] = { (void*)0x01840000, (void*)&l_daZraFreeze_Method, (void*)0x00044100, (void*)0x000E0000, }; - -/* 80D44B88-80D44B88 000040 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp b/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp index 177c20c1f92..1eab0f36ca6 100644 --- a/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp +++ b/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp @@ -1,137 +1,38 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_obj_zra_rock -// +/** + * d_a_obj_zra_rock.cpp + * + */ #include "rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "d/bg/d_bg_w.h" +#include "d/d_procname.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct mDoMtx_stack_c { - static u8 now[48]; -}; - -struct J3DAnmTevRegKey {}; - -struct J3DMaterialTable { - /* 8032F880 */ void removeTevRegAnimator(J3DAnmTevRegKey*); -}; - -struct mDoExt_brkAnm { - /* 8000D70C */ void init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, f32, s16, s16); - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); -}; - -struct mDoExt_baseAnm { - /* 8000D428 */ void play(); -}; - -struct fopAc_ac_c {}; - -struct daObjZraRock_c { +class daObjZraRock_c : public dBgS_MoveBgActor { +public: /* 80D44CB8 */ void setAttnPos(); /* 80D44D3C */ void setBaseMtx(); /* 80D44DCC */ void setEnvTevColor(); /* 80D44E28 */ void setRoomNo(); - /* 80D44E68 */ void Create(); - /* 80D44FB0 */ void CreateHeap(); - /* 80D450E0 */ void create(); - /* 80D4531C */ void Execute(f32 (**)[3][4]); - /* 80D45374 */ void Draw(); - /* 80D454AC */ void Delete(); -}; + /* 80D44E68 */ int Create(); + /* 80D44FB0 */ int CreateHeap(); + /* 80D450E0 */ int create(); + /* 80D4531C */ int Execute(Mtx**); + /* 80D45374 */ int Draw(); + /* 80D454AC */ int Delete(); -struct dSv_info_c { - /* 80035360 */ void isSwitch(int, int) const; -}; + void setDemoStart() { mDemoStart = 1; } -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct cXyz {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); - /* 8003C6B8 */ void getObjectResName2Index(char const*, char const*); -}; - -struct dBgW_Base {}; - -struct dBgW {}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 80D45264 */ ~dBgS_ObjAcch(); -}; - -struct cBgS_PolyInfo {}; - -struct csXyz {}; - -struct dBgS_MoveBgActor { - /* 80078624 */ dBgS_MoveBgActor(); - /* 800786B0 */ bool IsDelete(); - /* 800786B8 */ bool ToFore(); - /* 800786C0 */ bool ToBack(); - /* 800787BC */ void MoveBGCreate(char const*, int, - void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, - csXyz*, csXyz*), - u32, f32 (*)[3][4]); - /* 800788DC */ void MoveBGDelete(); - /* 80078950 */ void MoveBGExecute(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); -}; - -struct dBgS { - /* 80074BE8 */ void GetPolyColor(cBgS_PolyInfo const&); - /* 80075100 */ void GetRoomId(cBgS_PolyInfo const&); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cBgW_BgId { - /* 802681D4 */ void ChkUsed() const; -}; - -struct cBgS_GndChk { - /* 80267C1C */ cBgS_GndChk(); -}; - -struct cBgS { - /* 80074250 */ void Release(dBgW_Base*); -}; - -struct J3DModel {}; - -struct J3DFrameCtrl { - /* 803283FC */ void init(s16); - /* 80D452D4 */ ~J3DFrameCtrl(); -}; + /* 0x5A0 */ request_of_phase_process_class mPhaseReq; + /* 0x5A8 */ J3DModel* mpModel; + /* 0x5AC */ J3DModel* mpModel2; + /* 0x5B0 */ mDoExt_brkAnm mBrkAnm; + /* 0x5C8 */ dBgS_ObjAcch mObjAcch; + /* 0x7A0 */ dBgS_AcchCir mAcchCir; + /* 0x7E0 */ cBgS_GndChk mGndChk; + /* 0x81C */ u8 mDemoStart; +}; // Size: 0x820 // // Forward References: @@ -201,18 +102,9 @@ extern "C" void ChkUsed__9cBgW_BgIdCFv(); extern "C" void __dl__FPv(); extern "C" void init__12J3DFrameCtrlFs(); extern "C" void removeTevRegAnimator__16J3DMaterialTableFP15J3DAnmTevRegKey(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); extern "C" void _savegpr_29(); extern "C" void _restgpr_29(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_env_light[4880]; -extern "C" extern u8 j3dSys[284]; // // Declarations: @@ -284,7 +176,7 @@ asm void daObjZraRock_c::setRoomNo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjZraRock_c::Create() { +asm int daObjZraRock_c::Create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/Create__14daObjZraRock_cFv.s" } @@ -295,20 +187,14 @@ asm void daObjZraRock_c::Create() { SECTION_RODATA static f32 const lit_3903 = 1.0f; COMPILER_STRIP_GATE(0x80D455D0, &lit_3903); -/* 80D455D4-80D455D4 000010 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80D455D4 = "H_ZraRock"; -#pragma pop - /* 80D455F0-80D455F4 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -SECTION_DATA static void* l_arcName = (void*)&d_a_obj_zra_rock__stringBase0; +static char* l_arcName = "H_ZraRock"; /* 80D44FB0-80D450E0 000370 0130+00 1/0 0/0 0/0 .text CreateHeap__14daObjZraRock_cFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjZraRock_c::CreateHeap() { +asm int daObjZraRock_c::CreateHeap() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/CreateHeap__14daObjZraRock_cFv.s" } @@ -381,7 +267,7 @@ SECTION_DATA extern void* __vt__14daObjZraRock_c[10] = { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjZraRock_c::create() { +asm int daObjZraRock_c::create() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/func_80D450E0.s" } @@ -391,7 +277,8 @@ asm void daObjZraRock_c::create() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// dBgS_ObjAcch::~dBgS_ObjAcch() +extern "C" asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/__dt__12dBgS_ObjAcchFv.s" } @@ -401,7 +288,8 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm J3DFrameCtrl::~J3DFrameCtrl() { +// J3DFrameCtrl::~J3DFrameCtrl() +extern "C" asm void __dt__12J3DFrameCtrlFv() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/__dt__12J3DFrameCtrlFv.s" } @@ -412,7 +300,7 @@ asm J3DFrameCtrl::~J3DFrameCtrl() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjZraRock_c::Execute(f32 (**param_0)[3][4]) { +asm int daObjZraRock_c::Execute(Mtx** i_mtx) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/Execute__14daObjZraRock_cFPPA3_A4_f.s" } @@ -422,7 +310,7 @@ asm void daObjZraRock_c::Execute(f32 (**param_0)[3][4]) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjZraRock_c::Draw() { +asm int daObjZraRock_c::Draw() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/Draw__14daObjZraRock_cFv.s" } @@ -432,7 +320,7 @@ asm void daObjZraRock_c::Draw() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daObjZraRock_c::Delete() { +asm int daObjZraRock_c::Delete() { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/Delete__14daObjZraRock_cFv.s" } @@ -442,7 +330,7 @@ asm void daObjZraRock_c::Delete() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjZraRock_Draw(daObjZraRock_c* param_0) { +static asm int daObjZraRock_Draw(daObjZraRock_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/daObjZraRock_Draw__FP14daObjZraRock_c.s" } @@ -452,22 +340,22 @@ static asm void daObjZraRock_Draw(daObjZraRock_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjZraRock_Execute(daObjZraRock_c* param_0) { +static asm int daObjZraRock_Execute(daObjZraRock_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/daObjZraRock_Execute__FP14daObjZraRock_c.s" } #pragma pop /* 80D45564-80D4556C 000924 0008+00 1/0 0/0 0/0 .text daObjZraRock_IsDelete__FP14daObjZraRock_c */ -static bool daObjZraRock_IsDelete(daObjZraRock_c* param_0) { - return true; +static int daObjZraRock_IsDelete(daObjZraRock_c* i_this) { + return 1; } /* 80D4556C-80D4558C 00092C 0020+00 1/0 0/0 0/0 .text daObjZraRock_Delete__FP14daObjZraRock_c */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjZraRock_Delete(daObjZraRock_c* param_0) { +static asm int daObjZraRock_Delete(daObjZraRock_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/daObjZraRock_Delete__FP14daObjZraRock_c.s" } @@ -478,7 +366,7 @@ static asm void daObjZraRock_Delete(daObjZraRock_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daObjZraRock_create(fopAc_ac_c* param_0) { +static asm int daObjZraRock_create(fopAc_ac_c* i_this) { nofralloc #include "asm/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock/daObjZraRock_create__FP10fopAc_ac_c.s" }