update some actors to use sizeof for mSize, endian swap J2DScreen related structs, add 64bit endian swapping

game appears to be hanging on fully initing some processes, so while there isnt an immediate crash, nothing seems to be happening
This commit is contained in:
CraftyBoss
2026-03-01 04:24:38 -08:00
committed by PJB3005
parent 5832f70384
commit 3e4b9bf59b
30 changed files with 364 additions and 282 deletions
+18 -1
View File
@@ -1071,7 +1071,7 @@ void dEvDtStaff_c::specialProcDirector() {
dStage_MapEvent_dt_c* mapEvent = dEvt_control_c::searchMapEventData(data->unk);
if (mapEvent != NULL) {
if (mapEvent->type == dStage_MapEvent_dt_TYPE_MAPTOOLCAMERA) {
data->unk2 = mapEvent->data.maptool.field_0x14;
data->unk2 = (s16)mapEvent->data.maptool.field_0x14;
} else {
data->unk2 = -1;
}
@@ -1553,11 +1553,28 @@ int dEvDtBase_c::init(char* i_data, int i_roomNo) {
}
if (getFDataNum() > 0) {
#if TARGET_PC
auto data = (f32*)(i_data + getFDataTop());
int num = getFDataNum();
for (int i = 0; i < num; i++)
be_swap(data[i]);
setFDataP(data);
#else
setFDataP((f32*)(i_data + getFDataTop()));
#endif
}
if (getIDataNum() > 0) {
#if TARGET_PC
// endian swap here
auto data = (int*)(i_data + getIDataTop());
int num = getIDataNum();
for (int i = 0; i < num; i++)
be_swap(data[i]);
setIDataP(data);
#else
setIDataP((int*)(i_data + getIDataTop()));
#endif
}
if (getSDataNum() > 0) {