summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorYunataSavior <58997725+YunataSavior@users.noreply.github.com>2026-01-11 19:49:05 -0800
committerGitHub <noreply@github.com>2026-01-11 19:49:05 -0800
commit24c08d322e32677f804c970c68930295afeb7475 (patch)
treebde0adda8176471e8167ae064b5412aff1992db1 /include
parent6a59c5231fb6807c05532267927c023f6475bed9 (diff)
e_rd, npc_ks dbg work (#3029)
* Partial e_rd, npc_ks dbg work * More e_rd matching * e_rd fixes and dbg ctor matched * obj_ita dbg equiv * e_st dbg almost equiv * Some obj_ladder dbg work * dbg e_rd PR comments * Further e_rd dbg clangd fixes
Diffstat (limited to 'include')
-rw-r--r--include/d/actor/d_a_e_rd.h30
-rw-r--r--include/d/actor/d_a_obj_kago.h6
-rw-r--r--include/d/actor/d_a_obj_ladder.h24
-rw-r--r--include/d/d_s_play.h52
-rw-r--r--include/global.h7
5 files changed, 58 insertions, 61 deletions
diff --git a/include/d/actor/d_a_e_rd.h b/include/d/actor/d_a_e_rd.h
index 90b48ca3f5..90a3fec56a 100644
--- a/include/d/actor/d_a_e_rd.h
+++ b/include/d/actor/d_a_e_rd.h
@@ -7,6 +7,7 @@
#include "d/d_msg_flow.h"
#include "d/d_path.h"
#include "f_op/f_op_actor_mng.h"
+#include "m_Do/m_Do_ext.h"
/**
* @ingroup actors-enemies
@@ -45,9 +46,7 @@ public:
/* 0x06A0 */ s8 field_0x6a0;
/* 0x06A4 */ cXyz field_0x6a4;
/* 0x06B0 */ cXyz field_0x6b0;
- /* 0x06BC */ u8 field_0x6bc[0x6be - 0x6bc];
- /* 0x06BE */ s16 field_0x6be;
- /* 0x06C0 */ s16 field_0x6c0;
+ /* 0x06BC */ csXyz field_0x6bc;
/* 0x06C2 */ s8 field_0x6c2;
/* 0x06C3 */ u8 field_0x6c3;
/* 0x06C4 */ J3DModel* mpEyeModels[2];
@@ -101,22 +100,17 @@ public:
/* 0x09CE */ s16 field_0x9ce;
/* 0x09D0 */ s16 field_0x9d0;
/* 0x09D4 */ cXyz field_0x9d4;
- /* 0x09E0 */ u8 field_0x9e0[0x9ec - 0x9e0];
+ /* 0x09E0 */ cXyz field_0x9e0; // unused, dbg offset 0xa18
/* 0x09EC */ f32 field_0x9ec;
/* 0x09F0 */ f32 field_0x9f0;
/* 0x09F4 */ s16 field_0x9f4;
/* 0x09F6 */ s16 field_0x9f6;
/* 0x09F8 */ s8 field_0x9f8;
- /* 0x09F9 */ u8 field_0x9f9[0xa0c - 0x9f9];
- /* 0x0A0C */ s16 field_0xa0c;
- /* 0x0A0E */ s16 field_0xa0e;
- /* 0x0A10 */ u8 field_0xa10[0xa12 - 0xa10];
- /* 0x0A12 */ s16 field_0xa12;
- /* 0x0A14 */ u8 field_0xa14[0xa16 - 0xa14];
- /* 0x0A16 */ s16 field_0xa16;
- /* 0x0A18 */ s16 field_0xa18;
- /* 0x0A1A */ u8 field_0xa1a[0xa1c - 0xa1a];
- /* 0x0A1C */ s16 field_0xa1c;
+ /* 0x09FC */ cXyz field_0x9fc; // unused, dbg offset 0xa34
+ /* 0x0A08 */ u8 field_0xa08[0x0A0C - 0x0A08];
+ /* 0x0A0C */ csXyz field_0xa0c;
+ /* 0x0A12 */ csXyz field_0xa12;
+ /* 0x0A18 */ csXyz field_0xa18;
/* 0x0A1E */ s8 field_0xa1e;
/* 0x0A1F */ s8 field_0xa1f;
/* 0x0A20 */ u32 field_0xa20;
@@ -136,12 +130,8 @@ public:
/* 0x0AD2 */ s16 field_0xad2[4];
/* 0x0ADA */ s16 field_0xada;
/* 0x0ADC */ s16 field_0xadc;
- /* 0x0ADE */ s16 field_0xade;
- /* 0x0AE0 */ s16 field_0xae0;
- /* 0x0AE2 */ u8 field_0xae2[0xae4 - 0xae2];
- /* 0x0AE4 */ s16 field_0xae4;
- /* 0x0AE6 */ s16 field_0xae6;
- /* 0x0AE8 */ u8 field_0xae8[0xaec - 0xae8];
+ /* 0x0ADE */ csXyz field_0xade; // dbg offset 0xb1c
+ /* 0x0AE4 */ csXyz field_0xae4;
/* 0x0AEC */ f32 field_0xaec;
/* 0x0AF0 */ s16 field_0xaf0;
/* 0x0AF2 */ s16 field_0xaf2;
diff --git a/include/d/actor/d_a_obj_kago.h b/include/d/actor/d_a_obj_kago.h
index 0ffa07fd61..10806570dd 100644
--- a/include/d/actor/d_a_obj_kago.h
+++ b/include/d/actor/d_a_obj_kago.h
@@ -34,10 +34,10 @@ public:
void setHamonPrtcl();
u8 getType() {
- int iVar1 = fopAcM_GetParam(this) & 0xFF;
- u8 rv;
+ u8 adj_arg = argument & 0x7F;
+ u8 iVar1 = fopAcM_GetParam(this) & 0xFF;
- switch ((argument & 127)) {
+ switch (adj_arg) {
case 0:
switch (iVar1) {
case 0:
diff --git a/include/d/actor/d_a_obj_ladder.h b/include/d/actor/d_a_obj_ladder.h
index ff3a376eaf..eb48cf0f16 100644
--- a/include/d/actor/d_a_obj_ladder.h
+++ b/include/d/actor/d_a_obj_ladder.h
@@ -13,6 +13,15 @@
*
*/
namespace daObjLadder {
+ enum Type_e {
+ TYPE_0,
+ TYPE_1,
+ TYPE_2,
+ TYPE_3,
+ TYPE_4,
+ TYPE_5,
+ };
+
class Act_c : public dBgS_MoveBgActor {
public:
enum Prm_e {
@@ -22,15 +31,6 @@ namespace daObjLadder {
PRM_16 = 16,
};
- enum Type_e {
- TYPE_0,
- TYPE_1,
- TYPE_2,
- TYPE_3,
- TYPE_4,
- TYPE_5,
- };
-
enum Mode {
MODE_WAIT,
MODE_DEMOREQ,
@@ -62,15 +62,15 @@ namespace daObjLadder {
int Execute(Mtx**);
int Draw();
- u8 prm_get_evId() {
+ u8 prm_get_evId() const {
return daObj::PrmAbstract(this, PRM_8, PRM_16);
}
- int prm_get_swSave() {
+ int prm_get_swSave() const {
return daObj::PrmAbstract(this,PRM_8, PRM_8);
}
- Type_e prm_get_type() {
+ Type_e prm_get_type() const {
return(Type_e)daObj::PrmAbstract(this,PRM_3, PRM_0);
}
diff --git a/include/d/d_s_play.h b/include/d/d_s_play.h
index 5736f0838c..6698a628e9 100644
--- a/include/d/d_s_play.h
+++ b/include/d/d_s_play.h
@@ -205,107 +205,107 @@ extern dScnPly_preset_HIO_c g_presetHIO;
#define tREG_S(i) g_regHIO.mChildReg[25].mShortReg[i]
#else
// Morita
-#define TREG_F(i) (0)
+#define TREG_F(i) (0.0f)
#define TREG_S(i) (0)
// Matsutani
-#define DREG_F(i) (0)
+#define DREG_F(i) (0.0f)
#define DREG_S(i) (0)
// Iwawaki
-#define IREG_F(i) (0)
+#define IREG_F(i) (0.0f)
#define IREG_S(i) (0)
// Sasa
-#define SREG_F(i) (0)
+#define SREG_F(i) (0.0f)
#define SREG_S(i) (0)
// Umemiya
-#define UREG_F(i) (0)
+#define UREG_F(i) (0.0f)
#define UREG_S(i) (0)
// Ogawa
-#define OREG_F(i) (0)
+#define OREG_F(i) (0.0f)
#define OREG_S(i) (0)
// Sakaguchi
-#define YREG_F(i) (0)
+#define YREG_F(i) (0.0f)
#define YREG_S(i) (0)
// Sakai
-#define KREG_F(i) (0)
+#define KREG_F(i) (0.0f)
#define KREG_S(i) (0)
// Hara
-#define BREG_F(i) (0)
+#define BREG_F(i) (0.0f)
#define BREG_S(i) (0)
// Sumiyoshi
-#define MREG_F(i) (0)
+#define MREG_F(i) (0.0f)
#define MREG_S(i) (0)
// Takeshita
-#define AREG_F(i) (0)
+#define AREG_F(i) (0.0f)
#define AREG_S(i) (0)
// Yoshida
-#define PREG_F(i) (0)
+#define PREG_F(i) (0.0f)
#define PREG_S(i) (0)
// Noma
-#define NREG_F(i) (0)
+#define NREG_F(i) (0.0f)
#define NREG_S(i) (0)
// Nishiwaki
-#define WREG_F(i) (0)
+#define WREG_F(i) (0.0f)
#define WREG_S(i) (0)
// Masaro
-#define JREG_F(i) (0)
+#define JREG_F(i) (0.0f)
#define JREG_S(i) (0)
// Hayakawa
-#define HREG_F(i) (0)
+#define HREG_F(i) (0.0f)
#define HREG_S(i) (0)
// Sadamoto
-#define VREG_F(i) (0)
+#define VREG_F(i) (0.0f)
#define VREG_S(i) (0)
// Nishikawa
-#define XREG_F(i) (0)
+#define XREG_F(i) (0.0f)
#define XREG_S(i) (0)
// Suzuki
-#define ZREG_F(i) (0)
+#define ZREG_F(i) (0.0f)
#define ZREG_S(i) (0)
// Nakanishi
-#define nREG_F(i) (0)
+#define nREG_F(i) (0.0f)
#define nREG_S(i) (0)
// Kuwajima
-#define kREG_F(i) (0)
+#define kREG_F(i) (0.0f)
#define kREG_S(i) (0)
// Okajima
-#define oREG_F(i) (0)
+#define oREG_F(i) (0.0f)
#define oREG_S(i) (0)
// Yamazaki
-#define yREG_F(i) (0)
+#define yREG_F(i) (0.0f)
#define yREG_S(i) (0)
// Ashida
-#define aREG_F(i) (0)
+#define aREG_F(i) (0.0f)
#define aREG_S(i) (0)
// Okada
-#define hREG_F(i) (0)
+#define hREG_F(i) (0.0f)
#define hREG_S(i) (0)
// Takahashi
-#define tREG_F(i) (0)
+#define tREG_F(i) (0.0f)
#define tREG_S(i) (0)
#endif
diff --git a/include/global.h b/include/global.h
index cf8e285c23..d9e3511b22 100644
--- a/include/global.h
+++ b/include/global.h
@@ -138,4 +138,11 @@ static const float INF = 2000000000.0f;
#define ASM
#endif
+// potential fakematch?
+#if PLATFORM_SHIELD
+ #define UNSET_FLAG(var, flag) (var) &= (u16)~(flag)
+#else
+ #define UNSET_FLAG(var, flag) (var) &= ~(flag)
+#endif
+
#endif