mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-09-05 17:47:54 -04:00
f_op work (#3008)
* 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 * f_op debug 6 * f_op debug 7 * f_op debug 8 * f_op debug 9 * f_op debug 10 * f_op work, linking, symbols, heap * regressions 1 * regressions 2 * pr comments
This commit is contained in:
@@ -86,7 +86,9 @@ public:
|
||||
/* vt 0x18 */ virtual void resize(f32 x, f32 y);
|
||||
/* vt 0x1C */ virtual void setCullBack(bool cull);
|
||||
/* vt 0x20 */ virtual void setCullBack(_GXCullMode cmode);
|
||||
/* vt 0x24 */ virtual void setAlpha(u8);
|
||||
/* vt 0x24 */ virtual void setAlpha(u8 alpha) {
|
||||
mAlpha = alpha;
|
||||
};
|
||||
/* vt 0x28 */ virtual bool setConnectParent(bool connected);
|
||||
/* vt 0x2C */ virtual void calcMtx() {
|
||||
if (mPaneTree.getParent() != NULL) {
|
||||
|
||||
@@ -63,6 +63,7 @@ protected:
|
||||
void joinTwoBlocks(CMemBlock* block);
|
||||
|
||||
public:
|
||||
s32 isEmpty();
|
||||
s32 getUsedSize(u8 groupId) const;
|
||||
s32 getTotalUsedSize(void) const;
|
||||
|
||||
|
||||
@@ -63,10 +63,12 @@ namespace JUTAssertion {
|
||||
|
||||
u32 getSDevice();
|
||||
void showAssert_f(u32 device, const char* file, int line, const char* msg, ...);
|
||||
void showAssert_f_va(u32 device, const char* file, int line, const char* msg, __va_list args);
|
||||
void setWarningMessage_f(u32 device, char * file, int line, const char * fmt, ...);
|
||||
void setWarningMessage_f_va(u32 device, const char* file, int line, const char* msg, va_list args);
|
||||
void setLogMessage_f(u32 device, char* file, int line, const char* fmt, ...);
|
||||
void setConfirmMessage(u32 param_1, char* file, int line, bool param_4, const char* msg);
|
||||
|
||||
|
||||
inline void showAssert(u32 device, const char* file, int line, const char* msg) {
|
||||
showAssert_f(device, file, line, "%s", msg);
|
||||
}
|
||||
@@ -76,6 +78,7 @@ namespace JUTAssertion {
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
extern bool sAssertVisible;
|
||||
|
||||
#endif /* JUTASSERT_H */
|
||||
|
||||
@@ -22,6 +22,7 @@ void dDbVw_drawCircle(int i_bufferType, cXyz& i_pos, f32 i_radius, const GXColor
|
||||
void dDbVw_drawSphere(int i_bufferType, cXyz& i_pos, f32 i_size, const GXColor& i_color, u8 i_clipZ);
|
||||
void dDbVw_drawCylinder(int i_bufferType, cXyz& i_pos, f32 i_radius, f32 i_height, const GXColor& i_color, u8 i_clipZ);
|
||||
void dDbVw_drawCylinderM(int i_bufferType, Mtx i_mtx, const GXColor& i_color, u8 i_clipZ);
|
||||
void dDbVw_drawCube8pXlu(cXyz* i_points, const GXColor& i_color);
|
||||
|
||||
inline void dDbVw_drawCube8pOpa(cXyz* i_points, const GXColor& i_color) {
|
||||
dDbVw_drawCube8p(0, i_points, i_color);
|
||||
|
||||
@@ -12,4 +12,10 @@ struct dDvdErrorMsg_c {
|
||||
static u8 execute();
|
||||
};
|
||||
|
||||
#if !PLATFORM_GCN
|
||||
struct dConnectErrorMsg_c {
|
||||
static void disable();
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif /* D_D_ERROR_MSG_H */
|
||||
|
||||
@@ -417,7 +417,7 @@ inline void dMsgObject_changeFlowGroup(s32 flow) {
|
||||
|
||||
inline void dMsgObject_setTalkActor(fopAc_ac_c* actor) {
|
||||
if (dMsgObject_getMsgObjectClass() != NULL) {
|
||||
dMsgObject_c::setTalkActor(actor);
|
||||
dMsgObject_getMsgObjectClass()->setTalkActor(actor);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -445,7 +445,7 @@ inline void dMsgObject_setKillMessageFlag() {
|
||||
}
|
||||
|
||||
inline void dMsgObject_endFlowGroup() {
|
||||
dMsgObject_c::endFlowGroup();
|
||||
dMsgObject_getMsgObjectClass()->endFlowGroup();
|
||||
}
|
||||
|
||||
inline void dMsgObject_setSmellType(u8 type) {
|
||||
|
||||
@@ -30,6 +30,10 @@ inline BOOL dPath_ChkClose(const dPath* i_path) { return i_path->m_closed & 1; }
|
||||
dPath* dPath_GetRoomPath(int path_index, int room_no);
|
||||
dPath* dPath_GetNextRoomPath(dPath const* i_path, int room_no);
|
||||
dPnt* dPath_GetPnt(dPath const* i_path, int pnt_index);
|
||||
#if !PLATFORM_GCN // Fakematch due to differing return type on non-GCN platforms
|
||||
int dPath_GetPolyRoomPathVec(cBgS_PolyInfo const& poly, cXyz* p_pathVec, int* param_2);
|
||||
#else
|
||||
u8 dPath_GetPolyRoomPathVec(cBgS_PolyInfo const& poly, cXyz* p_pathVec, int* param_2);
|
||||
#endif
|
||||
|
||||
#endif /* D_D_PATH_H */
|
||||
|
||||
@@ -19,7 +19,7 @@ enum {
|
||||
/* 0x00C */ PROC_OPENING_SCENE,
|
||||
/* 0x00D */ PROC_NAME_SCENE,
|
||||
/* 0x00E */ PROC_NAMEEX_SCENE,
|
||||
#if VERSION != VERSION_WII_USA_R0
|
||||
#if VERSION != VERSION_WII_USA_R0 && VERSION != VERSION_WII_PAL
|
||||
/* 0x00F */ PROC_WARNING_SCENE,
|
||||
/* 0x010 */ PROC_WARNING2_SCENE,
|
||||
#endif
|
||||
|
||||
+2
-1
@@ -1140,7 +1140,8 @@ public:
|
||||
static void setRegionNo(int i_roomNo, u8 i_regionNo) { mStatus[i_roomNo].mRegionNo = i_regionNo; }
|
||||
|
||||
u8 checkStatusFlag(int i_roomNo, u8 flag) const {
|
||||
return cLib_checkBit(mStatus[i_roomNo].mFlag, flag);
|
||||
JUT_ASSERT(2699, 0 <= i_roomNo && i_roomNo < 64);
|
||||
return cLib_checkBit((u8) mStatus[i_roomNo].mFlag, flag);
|
||||
}
|
||||
|
||||
void onStatusFlag(int i_roomNo, u8 flag) {
|
||||
|
||||
@@ -39,6 +39,17 @@ class cM3dGPla;
|
||||
|
||||
s8 dComIfGp_getReverb(int roomNo);
|
||||
|
||||
namespace fopAcM {
|
||||
extern u8 HeapAdjustEntry;
|
||||
extern u8 HeapAdjustUnk;
|
||||
extern u8 HeapAdjustVerbose;
|
||||
extern u8 HeapAdjustQuiet;
|
||||
extern u8 HeapDummyCreate;
|
||||
extern u8 HeapDummyCheck;
|
||||
extern u8 HeapSkipMargin;
|
||||
extern int HeapAdjustMargin;
|
||||
} // namespace fopAcM
|
||||
|
||||
struct fopAcM_prmBase_class {
|
||||
/* 0x00 */ u32 parameters;
|
||||
/* 0x04 */ cXyz position;
|
||||
@@ -816,22 +827,8 @@ inline void fopAcM_effSmokeSet2(u32* param_0, u32* param_1, cXyz const* param_2,
|
||||
fopAcM_effSmokeSet1(param_0, param_1, param_2, param_3, param_4, param_5, 0);
|
||||
}
|
||||
|
||||
inline void fopAcM_setWarningMessage_f(const fopAc_ac_c* i_actor, const char* i_filename,
|
||||
int i_line, const char* i_msg, ...) {
|
||||
#if DEBUG
|
||||
/* va_list args;
|
||||
va_start(args, i_msg);
|
||||
|
||||
char buf[64];
|
||||
snprintf(buf, sizeof(buf), "<%s> %s", dStage_getName(fopAcM_GetProfName(i_actor),
|
||||
i_actor->argument), i_msg); setWarningMessage_f_va(JUTAssertion::getSDevice(), i_filename,
|
||||
i_line, buf, args);
|
||||
|
||||
va_end(args); */
|
||||
#endif
|
||||
}
|
||||
|
||||
void fopAcM_showAssert_f(const fopAc_ac_c*, const char*, int, const char*, ...);
|
||||
void fopAcM_showAssert_f(const fopAc_ac_c* i_actor, const char* i_filename, int i_line,
|
||||
const char* i_msg, ...) ;
|
||||
|
||||
#define fopAcM_assert(line, actor, COND, msg) \
|
||||
(COND) ? (void)0 : (fopAcM_showAssert_f(actor, __FILE__, line, msg));
|
||||
@@ -839,6 +836,8 @@ void fopAcM_showAssert_f(const fopAc_ac_c*, const char*, int, const char*, ...);
|
||||
#if DEBUG
|
||||
#define fopAcM_setWarningMessage(i_actor, i_filename, i_line, i_msg) \
|
||||
fopAcM_setWarningMessage_f(i_actor, i_filename, i_line, i_msg)
|
||||
void fopAcM_setWarningMessage_f(const fopAc_ac_c* i_actor, const char* i_filename, int i_line,
|
||||
const char* i_msg, ...);
|
||||
#else
|
||||
#define fopAcM_setWarningMessage(...)
|
||||
#endif
|
||||
|
||||
@@ -751,7 +751,7 @@ inline void mDoExt_bckAnmRemove(J3DModelData* i_modelData) {
|
||||
i_modelData->getJointNodePointer(0)->setMtxCalc(NULL);
|
||||
}
|
||||
|
||||
static JKRSolidHeap* mDoExt_createSolidHeap(u32 i_size, JKRHeap* i_parent, u32 i_alignment);
|
||||
JKRSolidHeap* mDoExt_createSolidHeap(u32 i_size, JKRHeap* i_parent, u32 i_alignment);
|
||||
JKRSolidHeap* mDoExt_createSolidHeapFromGame(u32 i_size, u32 i_alignment);
|
||||
void mDoExt_destroySolidHeap(JKRSolidHeap* i_heap);
|
||||
u32 mDoExt_adjustSolidHeap(JKRSolidHeap* i_heap);
|
||||
|
||||
@@ -71,7 +71,9 @@ public:
|
||||
extern mDoHIO_root_c mDoHIO_root;
|
||||
|
||||
void mDoHIO_updateChild(s8 i_no);
|
||||
void mDoHIO_update();
|
||||
inline void mDoHIO_update() {
|
||||
mDoHIO_root.update();
|
||||
};
|
||||
void mDoHIO_deleteChild(s8 i_no);
|
||||
inline s8 mDoHIO_createChild(const char* i_name, JORReflexible* i_node) {
|
||||
return mDoHIO_root.createChild(i_name, i_node);
|
||||
|
||||
@@ -45,7 +45,7 @@ inline void mDoMtx_multVec(CMtxP m, const Vec* src, Vec* dst) {
|
||||
}
|
||||
|
||||
inline void mDoMtx_multVecArray(const Mtx m, const Vec* src, Vec* dst, u32 count) {
|
||||
MTXMultVecArray(m, src, dst, count);
|
||||
PSMTXMultVecArray(m, src, dst, count);
|
||||
}
|
||||
|
||||
inline void mDoMtx_copy(const Mtx src, Mtx dst) {
|
||||
|
||||
Reference in New Issue
Block a user