Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 58 additions & 3 deletions include/d/actor/d_a_fr.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
#ifndef D_A_FR_H
#define D_A_FR_H

#include "d/d_bg_s_acch.h"
#include "d/d_cc_d.h"
#include "d/d_msg_flow.h"
#include "dolphin/types.h"
#include "SSystem/SComponent/c_phase.h"
#include "f_op/f_op_actor_mng.h"

/**
Expand All @@ -13,16 +17,67 @@
*
*/
class fr_class : public fopAc_ac_c {
private:
/* 0x568 */ u8 field_0x568[0x9e8 - 0x568];
public:
/* 0x568 */ u8 field_0x568[0x5ac - 0x568];
/* 0x5AC */ request_of_phase_process_class mPhase;
/* 0x5B4 */ u8 field_0x5b4;
/* 0x5B5 */ u8 field_0x5b5[0x5c4 - 0x5b5];
/* 0x5C4 */ mDoExt_McaMorf* mMorf;
/* 0x5C8 */ mDoExt_btkAnm* mBtkAnm;
/* 0x5CC */ u8 field_0x5cc;
/* 0x5CD */ s8 field_0x5cd;
/* 0x5CE */ s8 field_0x5ce;
/* 0x5CF */ u8 field_0x5cf;
/* 0x5D0 */ s16 field_0x5d0;
/* 0x5D2 */ s16 field_0x5d2;
/* 0x5D4 */ s16 field_0x5d4;
/* 0x5D6 */ u8 field_0x5d6[0x5d8 - 0x5d6];
/* 0x5D8 */ f32 field_0x5d8;
/* 0x5DC */ s16 field_0x5dc[4];
/* 0x5E4 */ s16 field_0x5e4;
/* 0x5E6 */ u8 field_0x5e6[0x5e8 - 0x5e6];
/* 0x5E8 */ f32 field_0x5e8;
/* 0x5EC */ s8 field_0x5ec;
/* 0x5ED */ u8 field_0x5ed[0x5f0 - 0x5ed];
/* 0x5F0 */ f32 field_0x5f0;
/* 0x5F4 */ f32 field_0x5f4;
/* 0x5F8 */ fpc_ProcID field_0x5f8;
/* 0x5FC */ s16 field_0x5fc;
/* 0x5FE */ u8 field_0x5fe[0x600 - 0x5fe];
/* 0x600 */ f32 field_0x600;
/* 0x604 */ dBgS_AcchCir mAcchCir;
/* 0x644 */ dBgS_ObjAcch mAcch;
/* 0x81C */ dCcD_Stts mStts;
/* 0x858 */ dCcD_Sph mSph;
/* 0x990 */ u8 field_0x990;
/* 0x991 */ s8 field_0x991;
/* 0x992 */ s16 field_0x992;
/* 0x994 */ s16 field_0x994;
/* 0x998 */ dMsgFlow_c mMsgFlow;
/* 0x9E4 */ u8 field_0x9e4;
/* 0x9E5 */ u8 field_0x9e5[0x9e8 - 0x9e5];
};

STATIC_ASSERT(sizeof(fr_class) == 0x9e8);

class daFr_HIO_c {
class daFr_HIO_c : public JORReflexible {
public:
/* 805198EC */ daFr_HIO_c();
/* 8051B920 */ ~daFr_HIO_c();

void genMessage(JORMContext*);

/* 0x00 */ J3DFrameCtrl* field_0x0;
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is a fake member, the first 4 bytes should be taken up by the vtable by making the destructor virtual, which should also be inlined

/* 0x04 */ s8 field_0x4;
/* 0x08 */ f32 field_0x8;
/* 0x0C */ f32 field_0xc;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1c;
/* 0x20 */ f32 field_0x20;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ f32 field_0x28;
};


Expand Down
26 changes: 24 additions & 2 deletions include/d/actor/d_a_obj_lp.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,14 @@ struct wd_ss {
public:
/* 80C559C8 */ ~wd_ss();
/* 80C55A04 */ wd_ss();

/* 0x0000 */ J3DModel* mpModel;
/* 0x0004 */ u8 field_0x4[0x10 - 0x4];
/* 0x0010 */ cXyz field_0x10[84];
};

STATIC_ASSERT(sizeof(wd_ss) == 0x400); // Could be incorrect size
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if the size isn't certainly known i'd prefer not putting a static assert for it yet


/**
* @ingroup actors-objects
* @class obj_lp_class
Expand All @@ -18,8 +24,24 @@ struct wd_ss {
*
*/
class obj_lp_class : public fopAc_ac_c {
private:
/* 0x568 */ u8 field_0x568[0xadb8 - 0x568];
public:
/* 0x0568 */ request_of_phase_process_class mPhase;
/* 0x0570 */ u8 field_0x570;
/* 0x0571 */ u8 field_0x571;
/* 0x0572 */ u8 field_0x572;
/* 0x0573 */ u8 field_0x573;
/* 0x0574 */ s16 field_0x574;
/* 0x0576 */ u8 field_0x576[0x57c - 0x576];
/* 0x057C */ wd_ss mWdSs[42];
/* 0xAD7C */ mDoExt_3DlineMat0_c field_0xad7c;
/* 0xAD98 */ int field_0xad98;
/* 0xAD9C */ u8 field_0xad9c[0xadb0 - 0xad9c];
/* 0xADB0 */ u8 field_0xadb0;
/* 0xADB1 */ s8 field_0xadb1;
/* 0xADB2 */ u8 field_0xadb2;
/* 0xADB3 */ u8 field_0xadb3;
/* 0xADB4 */ u8 field_0xadb4;
/* 0xADB5 */ u8 field_0xadb5[0xadb8 - 0xadb5];
};

STATIC_ASSERT(sizeof(obj_lp_class) == 0xadb8);
Expand Down
Loading