f_op debug work (#2991)

* f_op debug 1

* f_op debug 2

* f_op debug 3

* f_op debug 4

* f_op debug 5

* f_op_debug fix build

* f_op linking

* remove goto in fopac_create

* fix regressions

* fix regressions

* pr comments
This commit is contained in:
Niklas Bauer
2025-12-26 22:17:51 +01:00
committed by GitHub
parent 229527daf7
commit 67b576ad9a
50 changed files with 690 additions and 407 deletions
+1
View File
@@ -5,6 +5,7 @@
#include "d/d_cc_d.h"
#include "d/d_a_itembase_static.h"
#include "f_op/f_op_actor_mng.h"
#include "m_Do/m_Do_ext.h"
struct daItemBase_data {
/* 0x00 */ f32 mGravity;
+4 -3
View File
@@ -294,9 +294,10 @@ public:
return mCannon;
}
static void make_prm(u32* o_params, csXyz* o_paramsEx, u8 param_2, u8 i_itemNo, u8 i_itemBit, u8 i_itemType, u8 param_6) {
o_paramsEx->x = (i_itemBit << 8) | (i_itemNo & 0xFF);
o_paramsEx->z = (param_6 << 13) | (param_2 << 1) | i_itemType;
static u32* make_prm(u32* o_params, csXyz* o_paramsEx, u8 param_2, u8 i_itemNo, u8 i_itemBit, u8 i_itemType, u8 param_6) {
o_paramsEx->x = (i_itemBit << 8) | i_itemNo;
o_paramsEx->z = i_itemType | ((param_6 << 13) | (param_2 << 1));
return o_params;
}
static void make_prm_bokkuri(u32* o_params, csXyz* o_paramsEx, u8 i_itemNo, u8 i_itemBit, u8 i_itemType, u8 param_5) {
+3 -3
View File
@@ -17,15 +17,15 @@ public:
return mNext;
}
u8 checkStreamOn() {
u8 checkStreamOn() const {
return mStreamOn;
}
s32 checkCanoeOn() {
s32 checkCanoeOn() const {
return mParameters;
}
u8 getPower() {
u8 getPower() const {
return mPower;
}
+1 -1
View File
@@ -3622,7 +3622,7 @@ inline int dComIfGp_event_order(u16 i_type, u16 i_prio, u16 i_flags, u16 i_hindF
i_targetActor, i_eventID, i_mapToolId);
}
inline void dComIfGp_event_setGtItm(int i_itemNo) {
inline void dComIfGp_event_setGtItm(u8 i_itemNo) {
g_dComIfG_gameInfo.play.getEvent()->setGtItm(i_itemNo);
}
+7 -1
View File
@@ -150,7 +150,13 @@ public:
#endif
}
BOOL isOrderOK() { return mEventStatus == 0 || mEventStatus == 2; }
BOOL isOrderOK() {
#if DEBUG
return (mEventStatus == 0 || mEventStatus == 2) && !mDebugStb;
#else
return mEventStatus == 0 || mEventStatus == 2;
#endif
}
fopAc_ac_c* getPt1() { return convPId(mPt1); }
fopAc_ac_c* getPt2() { return convPId(mPt2); }
+1
View File
@@ -6,6 +6,7 @@
class dEnemyItem_c {
public:
static void setItemData(u8* data) { mData = data; }
static u8* getItemData() { return mData; }
static u8* mData;
};
+3
View File
@@ -499,6 +499,9 @@ private:
/* 0x01A */ u8 field_0x1a;
/* 0x01B */ u8 field_0x1b;
/* 0x01C */ dPa_simpleEcallBack field_0x1c[25];
#if DEBUG
u8 unk_0x210[0x1CC];
#endif
/* 0x210 */ level_c field_0x210;
#if DEBUG
u8 mSceneCount;
+5 -1
View File
@@ -68,7 +68,11 @@ public:
bool resetGame();
void offReset();
static bool isPause() { return pauseTimer == 0; }
#if VERSION == VERSION_SHIELD_DEBUG
static s8 isPause() { return pauseTimer | nextPauseTimer; }
#else
static s8 isPause() { return pauseTimer; }
#endif
static void setPauseTimer(s8 time) { nextPauseTimer = time; }
static s8 pauseTimer;
+4 -1
View File
@@ -1133,7 +1133,10 @@ public:
static void setProcID(u32 id) { mProcID = id; }
static u32 getProcID() { return mProcID; }
static void setStatusProcID(int i_roomNo, fpc_ProcID i_id) { mStatus[i_roomNo].mProcID = i_id; }
static int getStatusProcID(int i_roomNo) { return mStatus[i_roomNo].mProcID; }
static int getStatusProcID(int i_roomNo) {
JUT_ASSERT(2774, 0 <= i_roomNo && i_roomNo < 64);
return mStatus[i_roomNo].mProcID;
}
static void setRegionNo(int i_roomNo, u8 i_regionNo) { mStatus[i_roomNo].mRegionNo = i_regionNo; }
u8 checkStatusFlag(int i_roomNo, u8 flag) const {