Compiler compatibility, other fixes (#1188)

* add missing data

* fix return value

* d_camera fix

* missing GXEnd

* struct fixes

* fix include
This commit is contained in:
Jcw87
2026-08-28 11:07:33 -07:00
committed by GitHub
parent 77f9369fd6
commit 9234aa8286
19 changed files with 117 additions and 55 deletions
@@ -286,8 +286,10 @@ struct J3DAnmTransformKeyData {
/* 0x08 */ u8 mAttribute;
/* 0x09 */ u8 mDecShift;
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ u16 field_0xc;
/* 0x10 */ int field_0x10;
/* 0x0C */ u16 mTableCount;
/* 0x0E */ u16 mScaleCount;
/* 0x10 */ u16 mRotCount;
/* 0x12 */ u16 mTransCount;
/* 0x14 */ s32 mTableOffset;
/* 0x18 */ s32 mScaleOffset;
/* 0x1c */ s32 mRotOffset;
@@ -17,7 +17,7 @@ struct J3DJointInitData {
}; // Size: 0x30
struct J3DJointBlock {
/* 0x00 */ u8 mMagic[4];
/* 0x00 */ u32 mMagic;
/* 0x04 */ u32 mSize;
/* 0x08 */ u16 mJointNum;
@@ -32,7 +32,7 @@ struct J3DShapeDrawInitData {
};
struct J3DShapeBlock {
/* 0x00 */ u8 mMagic[4];
/* 0x00 */ u32 mMagic;
/* 0x04 */ u32 mSize;
/* 0x08 */ u16 mShapeNum;
-1
View File
@@ -82,7 +82,6 @@ namespace daObjMovebox {
};
Bgc_c();
~Bgc_c();
void gnd_pos(const Act_c*, const BgcSrc_c*, int, f32);
void wrt_pos(const cXyz&);
void wall_pos(const Act_c*, const BgcSrc_c*, int, s16, f32);
+1
View File
@@ -626,6 +626,7 @@ public:
};
BOOL dMap_GetTopBottomFloorNo(dStage_dt_c* stag, u8* bottom_p, u8* top_p);
u8 dMap_GetFloorNoForDmap(dStage_dt_c*, int, f32);
u8 dMap_GetFloorNo(dStage_dt_c*, f32);
inline void dMap_drawPoint(u8 param_1, f32 param_2, f32 param_3, f32 param_4, s8 param_5, s16 param_6, u8 param_7, u8 param_8, u8 param_9) {
+16 -5
View File
@@ -1,16 +1,16 @@
#ifndef D_MINIGAME_TERMINATER_H
#define D_MINIGAME_TERMINATER_H
#include "dolphin/types.h"
#include "d/d_drawlist.h"
class JKRArchive;
class J2DPane;
struct fopMsgM_pane_class;
class dDlst_TerminaterScrnDraw_c {
class dDlst_TerminaterScrnDraw_c : public dDlst_base_c {
public:
void acc(s16, s16, s16) {}
void setScreen(const char*, JKRArchive*);
void setScrnFailed();
void setScrnSuccess(int, int);
@@ -34,17 +34,28 @@ public:
void draw();
};
class dMinigame_Terminater_c {
class dMinigame_Terminater_c : public msg_class {
public:
void getResultRupee() {}
void getResultTime() {}
void setResultRupee(int) {}
void setResultTime(int) {}
void _create();
void _execute();
void _draw();
void _delete();
/* 0x0FC */ dDlst_TerminaterScrnDraw_c* mTerminaterScrnDraw;
/* 0x100 */ request_of_phase_process_class mPhs;
/* 0x108 */ JKRSolidHeap* mHeap;
/* 0x10C */ u32 field_0x10c;
/* 0x110 */ u32 field_0x110;
/* 0x114 */ u16 field_0x114;
/* 0x116 */ u16 field_0x116;
/* 0x118 */ s16 field_0x118;
/* 0x11A */ s16 field_0x11a;
/* 0x11C */ u8 field_0x11c;
};
#endif /* D_MINIGAME_TERMINATER_H */
+1 -1
View File
@@ -193,7 +193,7 @@ JKRArchive* DynamicModuleControl::mountCallback(void* param_0) {
}
mDoDvdThd_callback_c* DynamicModuleControl::mountCreate() {
mDoDvdThd_callback_c::create((mDoDvdThd_callback_func)DynamicModuleControl::mountCallback, NULL);
return mDoDvdThd_callback_c::create((mDoDvdThd_callback_func)DynamicModuleControl::mountCallback, NULL);
}
bool DynamicModuleControl::initialize() {
@@ -496,6 +496,8 @@ void J3DModel::calcAnmMtx() {
getModelData()->getBasicMtxCalc()->recursiveCalc(getModelData()->getRootNode());
}
static f32 J3DUnit01[] = {0.0f, 1.0f};
/* 802EE67C-802EE874 .text calcWeightEnvelopeMtx__8J3DModelFv */
void J3DModel::calcWeightEnvelopeMtx() {
/* Nonmatching */
+1 -1
View File
@@ -453,7 +453,7 @@ void J3DAnmKeyLoader_v15::readAnmTransform(const J3DAnmTransformKeyData* dst) {
/* 80300638-803006D4 .text setAnmTransform__19J3DAnmKeyLoader_v15FP18J3DAnmTransformKeyPC22J3DAnmTransformKeyData */
void J3DAnmKeyLoader_v15::setAnmTransform(J3DAnmTransformKey* dst, const J3DAnmTransformKeyData* data) {
dst->field_0x22 = data->field_0xc;
dst->field_0x22 = data->mTableCount;
dst->mFrameMax = data->mFrameMax;
dst->mAttribute = data->mAttribute;
dst->mDecShift = data->mDecShift;
+1
View File
@@ -453,6 +453,7 @@ void JFWDisplay::clearEfb(int param_0, int param_1, int param_2, int param_3, GX
GXPosition2u16(param_0, param_1 + param_3);
GXTexCoord2u8(0, 1);
GXEnd();
GXSetZTexture(GX_ZT_DISABLE, GX_TF_Z24X8, 0);
GXSetZCompLoc(GX_ENABLE);
+29 -28
View File
@@ -21,6 +21,32 @@
#include "JSystem/JUtility/JUTDataHeader.h"
#include "JSystem/JKernel/JKRHeap.h"
struct JPAEmitterArchiveData_v10 {
/* 0x00 */ u32 magic;
/* 0x04 */ u32 version;
/* 0x08 */ u16 emtrResNum;
/* 0x0A */ u16 texResNum;
};
struct JPAEmitterParticleHeader_v10 {
/* 0x00 */ u32 magic; // 'JEFF'
/* 0x04 */ u32 type; // 'jpa1'
/* 0x08 */ u8 field_0x08[0x0C - 0x08];
/* 0x0C */ u32 blockNum;
/* 0x10 */ u8 field_0x10[0x14 - 0x10];
/* 0x14 */ u8 keyNum;
/* 0x15 */ u8 fldNum;
/* 0x16 */ u8 textureNum;
/* 0x18 */ u16 resID;
};
struct JPAEmitterBlockHeader_v10 {
/* 0x00 */ u32 magic;
/* 0x04 */ u32 size;
/* 0x08 */ u8 field_0x08[0x0C - 0x08];
/* 0x0C */ u8 blockData;
};
static void dummy(u32 texNum) {
JUT_WARN(0, "%s", "This is WRONG Version File\n");
JUT_WARN(0, "%s", "This is NO JPA File\n");
@@ -45,10 +71,11 @@ static void dummy(u32 texNum) {
/* 802590B4-8025917C .text load__31JPAEmitterArchiveLoaderDataBaseFPCUcP7JKRHeapPP18JPAEmitterResourcePP18JPATextureResource */
void JPAEmitterArchiveLoaderDataBase::load(const u8* data, JKRHeap* heap, JPAEmitterResource** dstEmtrRes, JPATextureResource** dstTexRes) {
u32 magic = ((const u32*)data)[0];
const JPAEmitterArchiveData_v10* header = (const JPAEmitterArchiveData_v10*)data;
u32 magic = header->magic;
if (magic == 'JPAC') {
u32 version = ((const u32*)data)[1];
u32 version = header->version;
if (version == '1-00') {
JPAEmitterArchiveLoader_v10 loader;
loader.pHeap = heap;
@@ -66,32 +93,6 @@ void JPAEmitterArchiveLoaderDataBase::load(const u8* data, JKRHeap* heap, JPAEmi
}
}
struct JPAEmitterArchiveData_v10 {
/* 0x00 */ u32 magic;
/* 0x04 */ u32 size;
/* 0x08 */ u16 emtrResNum;
/* 0x0A */ u16 texResNum;
};
struct JPAEmitterParticleHeader_v10 {
/* 0x00 */ u32 magic; // 'JEFF'
/* 0x04 */ u32 type; // 'jpa1'
/* 0x08 */ u8 field_0x08[0x0C - 0x08];
/* 0x0C */ u32 blockNum;
/* 0x10 */ u8 field_0x10[0x14 - 0x10];
/* 0x14 */ u8 keyNum;
/* 0x15 */ u8 fldNum;
/* 0x16 */ u8 textureNum;
/* 0x18 */ u16 resID;
};
struct JPAEmitterBlockHeader_v10 {
/* 0x00 */ u32 magic;
/* 0x04 */ u32 size;
/* 0x08 */ u8 field_0x08[0x0C - 0x08];
/* 0x0C */ u8 blockData;
};
/* 8025917C-8025991C .text load__27JPAEmitterArchiveLoader_v10Fv */
void JPAEmitterArchiveLoader_v10::load() {
const JPAEmitterArchiveData_v10* header = (const JPAEmitterArchiveData_v10*)pData;
+3 -3
View File
@@ -606,7 +606,7 @@ void daObj_hsh_c::initialMsgSetEvent(int staffIdx) {
/* 000019C0-000019E0 .text actionMsgSetEvent__11daObj_hsh_cFi */
BOOL daObj_hsh_c::actionMsgSetEvent(int) {
talk_init();
return talk_init();
}
/* 000019E0-00001A40 .text actionMessageEvent__11daObj_hsh_cFi */
@@ -616,7 +616,7 @@ BOOL daObj_hsh_c::actionMessageEvent(int staffIdx) {
if (p_talkMode != NULL) {
i_talkMode = *p_talkMode;
}
talk(i_talkMode);
return talk(i_talkMode);
}
/* 00001A40-00001ADC .text actionTactEvent__11daObj_hsh_cFi */
@@ -632,7 +632,7 @@ BOOL daObj_hsh_c::actionTactEvent(int staffIdx) {
if (music == i_talkMode) {
onTactCorrect();
}
talk(1);
return talk(1);
}
/* 00001ADC-00001B3C .text initialJudgeEvent__11daObj_hsh_cFi */
+2
View File
@@ -163,6 +163,8 @@ void daObj_Search::Bgc_c::wall_pos(const daObj_Search::Act_c*, cXyz*, cXyz*, boo
/* Nonmatching */
}
bool daObj_Search::Act_c::m_find_flag;
/* 801002D4-801002E0 .text attr__Q212daObj_Search5Act_cCFv */
void daObj_Search::Act_c::attr() const {
/* Nonmatching */
+8 -7
View File
@@ -4832,21 +4832,22 @@ bool dCamera_c::eventCamera(s32) {
mEventData.field_0x1c = 2;
}
u32 evStringData;
if (getEvStringData((char*)&evStringData, "Trim", "CINESCO")) {
if (evStringData == 'STAN') {
char evStringData[12];
if (getEvStringData(evStringData, "Trim", "CINESCO")) {
u32* evStringPtr = (u32*)evStringData;
if (*evStringPtr == 'STAN') {
mEventData.field_0x1c = 0;
}
else if (evStringData == 'VIST') {
else if (*evStringPtr == 'VIST') {
mEventData.field_0x1c = 1;
}
else if (evStringData == 'DEMO') {
else if (*evStringPtr == 'DEMO') {
mEventData.field_0x1c = 3;
}
else if (evStringData == 'NONE') {
else if (*evStringPtr == 'NONE') {
mEventData.field_0x1c = 4;
}
else if (evStringData == 'KEEP') {
else if (*evStringPtr == 'KEEP') {
mEventData.field_0x1c = 999;
}
}
+2 -2
View File
@@ -345,9 +345,9 @@ dStage_FloorInfo_dt_c* dMap_GetFloorInfoDtPFromFloorNo(dStage_FloorInfo_c* floor
}
/* 80045AEC-80045C24 .text dMap_GetFloorNoForDmap__FP11dStage_dt_cif */
int dMap_GetFloorNoForDmap(dStage_dt_c* stag, int param_2, f32 param_3) {
u8 dMap_GetFloorNoForDmap(dStage_dt_c* stag, int param_2, f32 param_3) {
dStage_FloorInfo_c* floor = stag->getFloorInfo();
int floorNo = Floor_1F;
u8 floorNo = Floor_1F;
dStage_FloorInfo_dt_c* floorData = dMap_GetFloorInfoDtP(floor, param_3);
if (floorData) {
-2
View File
@@ -20,8 +20,6 @@
#include "m_Do/m_Do_controller_pad.h"
#include <stdio.h>
u8 dMap_GetFloorNoForDmap(dStage_dt_c*, int, f32);
dMd_HIO_c g_mdHIO;
/* 801A86A4-801A87CC .text __ct__9dMd_HIO_cFv */
+1 -1
View File
@@ -16,7 +16,7 @@
#include "m_Do/m_Do_controller_pad.h"
#include "d/actor/d_a_ship.h"
#include <dolphin/mtx/mtx.h>
#include "printf.h"
#include "stdio.h"
dMf_HIO_c g_mfHIO;
+22
View File
@@ -156,3 +156,25 @@ static BOOL dMinigame_Terminater_Delete(dMinigame_Terminater_c*) {
static cPhs_State dMinigame_Terminater_Create(msg_class*) {
/* Nonmatching */
}
msg_method_class l_dMinigame_Terminater_Method = {
(process_method_func)dMinigame_Terminater_Create,
(process_method_func)dMinigame_Terminater_Delete,
(process_method_func)dMinigame_Terminater_Execute,
(process_method_func)dMinigame_Terminater_IsDelete,
(process_method_func)dMinigame_Terminater_Draw,
};
msg_process_profile_definition g_profile_MINIGAME_TERMINATER = {
/* Layer ID */ fpcLy_CURRENT_e,
/* List ID */ 12,
/* List Prio */ fpcPi_CURRENT_e,
/* Proc Name */ fpcNm_MINIGAME_TERMINATER_e,
/* Proc SubMtd */ &g_fpcLf_Method.base,
/* Size */ sizeof(dMinigame_Terminater_c),
/* Size Other */ 0,
/* Parameters */ 0,
/* Leaf SubMtd */ &g_fopMsg_Method,
/* Draw Prio */ fpcDwPi_MINIGAME_TERMINATER_e,
/* Msg SubMtd */ &l_dMinigame_Terminater_Method,
};
+22
View File
@@ -304,3 +304,25 @@ static cPhs_State dOw_Create(msg_class* i_msg) {
mDoExt_setCurrentHeap(old_heap);
return cPhs_COMPLEATE_e;
}
msg_method_class l_dOperate_wind_Method = {
(process_method_func)dOw_Create,
(process_method_func)dOw_Delete,
(process_method_func)dOw_Execute,
(process_method_func)dOw_IsDelete,
(process_method_func)dOw_Draw,
};
msg_process_profile_definition g_profile_OPERATE_WIND = {
/* Layer ID */ fpcLy_CURRENT_e,
/* List ID */ 12,
/* List Prio */ fpcPi_CURRENT_e,
/* Proc Name */ fpcNm_OPERATE_WIND_e,
/* Proc SubMtd */ &g_fpcLf_Method.base,
/* Size */ sizeof(dOw_c),
/* Size Other */ 0,
/* Parameters */ 0,
/* Leaf SubMtd */ &g_fopMsg_Method,
/* Draw Prio */ fpcDwPi_OPERATE_WIND_e,
/* Msg SubMtd */ &l_dOperate_wind_Method,
};